Commit graph

261 commits

Author SHA1 Message Date
qarmin 4e5310cc60 Some code changed with Clang-Tidy 2019-06-26 15:08:25 +02:00
Rémi Verschelde 5c66771e3e
Merge pull request #29283 from qarmin/fix_some_always_same_values
Remove always true/false values
2019-06-20 21:10:10 +02:00
qarmin 072e40368e Fix always true/false values 2019-06-20 16:59:48 +02:00
JohnJLight 38d3bfe971 Made use of semicolons more consitent, fixed formatting 2019-06-19 15:24:31 +02:00
Rémi Verschelde 62b868fd37
Merge pull request #26942 from RandomShaper/fix-vp-issues
Fix Viewport and Camera issues
2019-05-30 18:31:15 +02:00
clayjohn 65c211d303 Implement ability to render viewports directly to screen 2019-05-13 15:20:15 -07:00
James Buck bc7863775c Cancel tooltip when hiding the node it belongs to 2019-04-25 11:19:31 -05:00
Rémi Verschelde f25b057846 Fix disable_3d=yes -Wunused-variable errors 2019-04-20 11:07:58 +02:00
Hugo Locurcio 73ad31c0fa
Decrease the default tooltip delay to 0.5 seconds
This matches other applications' and OS' tooltip behaviors
more closely.
2019-04-10 19:45:29 +02:00
Pedro J. Estébanez 5b00cd89d3 Drop mouseover when mouse not in the window
Not that this is critical, but it makes behavior of GUI and 2D/3D picking consistent among them.

This also contributes to dropping GUI focus when the mouse leaves the window (in addition to when it loses focus).
2019-03-30 00:26:16 +01:00
Pedro J. Estébanez e3fc5fb1db Fix Viewport and Camera issues
1. Consider 'own_world' as well as 'world' to stop propagating enter/exit world notifications.
2. Clean & fix handling of camera currency.

This fixes some random crashes and error logs in the editor; namely
- when enabling/disabling own world in a Viewport;
- when switching back from a subscene displayed into a main scene's Viewport;
- when exiting the editor after any of them;
- memory corruption (can that explain certain other seemingly unrelated crash reports?).

This also fixes situations where a Viewport and its main Camera get out of sync about which World is relevant to them.
2019-03-30 00:25:26 +01:00
Rémi Verschelde 775e74e0d4
Merge pull request #26484 from Andrettin/Configurable-Tooltip-Offset
Make the Tooltip Position Offset Configurable
2019-03-13 20:12:22 +01:00
Rémi Verschelde bba854bac6
Merge pull request #26851 from RandomShaper/fix-26460-fake-event-flood
Fix fake null-motion mouse event flood
2019-03-09 22:40:53 +01:00
Pedro J. Estébanez f757460ec8 Fix fake null-motion mouse event flood
This commit also improves a bit the code quality by making the intent of fake events (and themselves) more explicit.

Fixes #26460.
2019-03-09 22:04:17 +01:00
Gilles Roudière ede5306d7c Fixes UI navigation with joysticks 2019-03-09 21:09:20 +01:00
Pedro J. Estébanez 82902656ac Improve/fix picking
Acknowledge mouse button events as position tellers (to make picking more solid; for instance, the touch mouse is raised with a mouse unpressed event that may have a more current position)
Forget mouse position for physics if touch mouse raised (because the position known as last is no longer meaningful)
Remove needless check for mouse over/exit (now there's code to inject an spurious move for cases where camera/objects have moved)
Restrict 2D mouse over/exit to mouse events (including emulated from touch; true touches shouldn't trigger the signals)

Fixes #26460.
2019-03-05 22:33:34 +01:00
Juan Linietsky 03cafd4895 Update focus mask only if there is a focused control, fixes #26524 2019-03-04 10:26:48 -03:00
clayjohn 95837049e8 hide hdr and shadow_contact in gles2 2019-03-02 19:01:26 -08:00
Andrettin 30c07c1ae1 Made the tooltip position offset configurable 2019-03-02 12:11:42 +01:00
Juan Linietsky 7f63b0e8cd Added a workaround to avoid crashes due to how TileSet editor works, fixes #23672
Also fixed a few uninitialized memory variables.
2019-02-22 17:42:29 -03:00
marxin 8d51618949 Add -Wshadow=local to warnings and fix reported issues.
Fixes #25316.
2019-02-20 19:44:12 +01:00
Marcelo Fernandez 761caac0b2 Fix possible crash with an invalid last_mouse_focus pointer 2019-02-14 22:16:56 -03:00
Rémi Verschelde 5fc86026ca Fix typos with codespell
Using codespell 1.14.0.

Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
doubleclick
lod
nd
numer
que
te
unselect
EOF
$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2019-02-13 09:23:29 +01:00
Rémi Verschelde c5dcbeb160 Scene: Ensure classes match their header filename
Also drop some unused files.

Renamed:
- `scene/2d/navigation2d.h` -> `navigation_2d.h`
- `scene/2d/screen_button.h` -> `touch_screen_button.h`
- `scene/3d/scenario_fx.h` -> `world_environment.h`
- `scene/audio/audio_player.h` -> `audio_stream_player.h`
- `scene/resources/bit_mask.h` -> `bit_map.h`
- `scene/resources/color_ramp.h` -> `gradient.h`
- `scene/resources/shape_line_2d.h` -> `line_shape_2d.h`
- `scene/resources/scene_format_text.h` -> `resource_format_text.h`
- `scene/resources/sky_box.h` -> `sky.h`

Dropped:
- `scene/resources/bounds.h`
2019-02-12 17:21:48 +01:00
Juan Linietsky b203f80dfc Rewrite how font oversampling is updated more carefully, fixes #24338 2019-01-26 14:57:17 -03:00
Juan Linietsky 93d8f3cdd5 respect mouse mode when setting enter/exit notifications and signals, fixes #19785 2019-01-18 17:53:36 -03:00
Juan Linietsky 91290f0ded Added a flag to specify an exported node path must be supplied from scene root, fixes #24412 2019-01-14 15:46:56 -03:00
Rémi Verschelde b16c309f82 Update copyright statements to 2019
Happy new year to the wonderful Godot community!
2019-01-01 12:58:10 +01:00
Arjen van Staalduinen ef9313f415 fix near infinite loop when no previous mouse position
Added physics_has_last_mousepos to better deal with
situations where there is no last_mousepos
2018-12-19 13:35:41 +01:00
Konrad Nowakowski 7491e910f3 Fix touch release event on _gui_input 2018-12-14 18:28:11 +00:00
Rémi Verschelde bf59b73250
Merge pull request #20609 from YeldhamDev/menu_hover_explicit
Make opening menus with the same parent on mouse focus explicit
2018-12-09 23:15:33 +01:00
Guilherme Felipe 26c1af4848 Add missing validations
Add missing validations to prevent crash of multiple mouse buttons being
pressed
2018-12-02 22:38:54 -02:00
Guilherme Felipe ea6a5bb8fb Fix crash when multiple mouse buttons is pressed. 2018-12-01 11:25:43 -02:00
Juan Linietsky 167eb269ec Fixes crash, closes #24038 2018-11-28 13:10:23 -03:00
Juan Linietsky 39028cc161 Improved the mouse focus system (mouse keeps focus on a control while buttons are pressed). Fixes #19154 and likely many others.
WARNING: Test well in every OS, if mouse wheel events are not properly sent as pressed+unpressed pair, it will fail and break (and the OS needs to be fixed). Only tested on X11 so far.
2018-11-28 09:33:13 -03:00
Michael Alexsander Silva Dias da7d3c5a58 Make opening menus with the same parent on mouse focus explicit 2018-11-20 20:37:45 -02:00
Juan Linietsky 55ded6b2de Properly handle multiple parent drag, fixes #19460 2018-11-19 18:38:07 -03:00
Juan Linietsky 3331ececc4 Do not allow controls in ignore mouse to get focus via their children, fixes #17955 2018-11-16 13:47:21 -03:00
Juan Linietsky 80a90ca824 -Send mouse motion events again to CollisionObjects (Area/Body) if they move, even if mouse does not. Fixes #16536 (likely many others should check)
-Add ability for viewports to set input events as handled locally
2018-11-15 13:56:57 -03:00
Juan Linietsky daa1686772
Merge pull request #21386 from RandomShaper/fix-picking-in-canvas-layers
Fix picking in CanvasLayer
2018-11-07 17:51:27 -03:00
Juan Linietsky 65e3ef705b
Merge pull request #21962 from YeldhamDev/switch_hover_submenu
Fix MenuButton hover switching not happening with submenus open
2018-11-01 17:01:51 -03:00
Rémi Verschelde 9de724f327
Merge pull request #23091 from aaronfranke/mingw-warnings
Fix some compile warnings for Windows from Linux
2018-10-25 15:09:11 +02:00
Superwaitsum e5041ad0f5 Add some limits on the Editor Settings 2018-10-24 19:46:33 -05:00
Aaron Franke dc2e73499a Fix compile warnings for Windows from Linux
At least the ones I got when I compiled it using Mingw64 POSIX on Xubuntu 18.04. Plus use the Size2 of get_window_size() directly, rather than reconstructing it.
2018-10-19 09:11:14 -04:00
Rémi Verschelde d95bbb8922 Fix warnings about set but unused variables [-Wunused-but-set-variable]
Fixes the following GCC 5 warnings:
```
drivers/gles2/rasterizer_canvas_gles2.cpp:814:8: warning: variable 'rt_size' set but not used [-Wunused-but-set-variable]
drivers/gles2/rasterizer_scene_gles2.cpp:2270:11: warning: variable 'vp_height' set but not used [-Wunused-but-set-variable]
drivers/gles2/rasterizer_scene_gles2.cpp:2673:22: warning: variable 'e' set but not used [-Wunused-but-set-variable]
drivers/gles2/rasterizer_scene_gles2.cpp:715:7: warning: variable 'no_cull' set but not used [-Wunused-but-set-variable]
drivers/gles2/shader_gles2.cpp:693:14: warning: variable 'cc' set but not used [-Wunused-but-set-variable]
drivers/gles3/rasterizer_canvas_gles3.cpp:1226:8: warning: variable 'rt_size' set but not used [-Wunused-but-set-variable]
drivers/gles3/rasterizer_scene_gles3.cpp:3039:10: warning: variable 'contrib' set but not used [-Wunused-but-set-variable]
drivers/gles3/rasterizer_scene_gles3.cpp:4504:32: warning: variable 'vp_height' set but not used [-Wunused-but-set-variable]
editor/editor_inspector.cpp:272:9: warning: variable 'guide_color' set but not used [-Wunused-but-set-variable]
editor/editor_themes.cpp:1067:14: warning: variable 'alpha3' set but not used [-Wunused-but-set-variable]
editor/editor_themes.cpp:263:8: warning: variable 'script_bg_color' set but not used [-Wunused-but-set-variable]
editor/plugins/collision_shape_2d_editor_plugin.cpp:326:11: warning: variable 'cpoint' set but not used [-Wunused-but-set-variable]
editor/plugins/mesh_editor_plugin.cpp:72:9: warning: variable 'size' set but not used [-Wunused-but-set-variable]
editor/plugins/shader_editor_plugin.cpp:471:12: warning: variable 'mpos' set but not used [-Wunused-but-set-variable]
editor/plugins/shader_editor_plugin.cpp:89:8: warning: variable 'basetype_color' set but not used [-Wunused-but-set-variable]
editor/plugins/shader_editor_plugin.cpp:90:8: warning: variable 'type_color' set but not used [-Wunused-but-set-variable]
editor/plugins/shader_editor_plugin.cpp:92:8: warning: variable 'string_color' set but not used [-Wunused-but-set-variable]
modules/visual_script/visual_script_editor.cpp:2521:7: warning: variable 'seq_connect' set but not used [-Wunused-but-set-variable]
platform/android/export/export.cpp:580:12: warning: variable 'styles_count' set but not used [-Wunused-but-set-variable]
platform/android/export/export.cpp:584:12: warning: variable 'styles_offset' set but not used [-Wunused-but-set-variable]
platform/osx/export/export.cpp:464:9: warning: variable 'zerr' set but not used [-Wunused-but-set-variable]
scene/2d/tile_map.cpp:260:10: warning: variable 'tcenter' set but not used [-Wunused-but-set-variable]
scene/3d/light.cpp:166:7: warning: variable 'editor_ok' set but not used [-Wunused-but-set-variable]
scene/3d/navigation.cpp:566:11: warning: variable 'closest_navmesh' set but not used [-Wunused-but-set-variable]
scene/gui/rich_text_label.cpp:869:8: warning: variable 'size' set but not used [-Wunused-but-set-variable]
scene/main/viewport.cpp:705:14: warning: variable 'xform' set but not used [-Wunused-but-set-variable]
scene/main/viewport.cpp:706:8: warning: variable 'ss' set but not used [-Wunused-but-set-variable]
scene/main/viewport.cpp:726:14: warning: variable 'xform' set but not used [-Wunused-but-set-variable]
scene/main/viewport.cpp:727:8: warning: variable 'ss' set but not used [-Wunused-but-set-variable]
scene/resources/material.cpp:430:7: warning: variable 'using_world' set but not used [-Wunused-but-set-variable]
servers/visual/shader_language.cpp:2026:7: warning: variable 'all_const' set but not used [-Wunused-but-set-variable]
servers/visual/visual_server_scene.cpp:1383:28: warning: variable 'z_max_cam' set but not used [-Wunused-but-set-variable]
```

Also fixes two [-Wunused-value] warnings:
```
scene/gui/text_edit.cpp:4405:20: warning: statement has no effect [-Wunused-value]
servers/visual/visual_server_scene.cpp:905:48: warning: value computed is not used [-Wunused-value]
```

Some of those are bugs and need further work, they are identified with
`// FIXME` comments.
2018-09-27 16:25:24 +02:00
Michael Alexsander Silva Dias 585ad5c8ea Expose "get_modal_stack_top()" to GDScript 2018-09-14 16:35:52 -03:00
Rémi Verschelde 277b24dfb7 Make core/ includes absolute, remove subfolders from include path
This allows more consistency in the manner we include core headers,
where previously there would be a mix of absolute, relative and
include path-dependent includes.
2018-09-12 09:52:22 +02:00
Michael Alexsander Silva Dias 592eda7ad9 Fix MenuButton hover switching not happening with submenus open 2018-09-11 01:44:19 -03:00
Pedro J. Estébanez 6d0f4a4ad7 Fix picking in CanvasLayer
New APIs in 2D physics allow intersection queries filtered by CanvasLayer object instance id. Viewport keep an inventory of its descendant CanvasLayers and takes advantage of all that to test picking with the mouse/touch position correctly transformed for each CanvasLayer.
2018-08-25 00:03:26 +02:00
Juan Linietsky 683c3f2fcf Avoid misuse of set_drag_preview() function where it shouldn't be. Closes #20100 2018-08-24 10:30:11 -03:00