summaryrefslogtreecommitdiff
path: root/scene/main/viewport.cpp
AgeCommit message (Collapse)Author
2019-05-30Merge pull request #26942 from RandomShaper/fix-vp-issuesRémi Verschelde
Fix Viewport and Camera issues
2019-05-13Implement ability to render viewports directly to screenclayjohn
2019-04-25Cancel tooltip when hiding the node it belongs toJames Buck
2019-04-20Fix disable_3d=yes -Wunused-variable errorsRémi Verschelde
2019-04-10Decrease the default tooltip delay to 0.5 secondsHugo Locurcio
This matches other applications' and OS' tooltip behaviors more closely.
2019-03-30Drop mouseover when mouse not in the windowPedro J. Estébanez
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-30Fix Viewport and Camera issuesPedro J. Estébanez
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-13Merge pull request #26484 from Andrettin/Configurable-Tooltip-OffsetRémi Verschelde
Make the Tooltip Position Offset Configurable
2019-03-09Merge pull request #26851 from RandomShaper/fix-26460-fake-event-floodRémi Verschelde
Fix fake null-motion mouse event flood
2019-03-09Fix fake null-motion mouse event floodPedro J. Estébanez
This commit also improves a bit the code quality by making the intent of fake events (and themselves) more explicit. Fixes #26460.
2019-03-09Fixes UI navigation with joysticksGilles Roudière
2019-03-05Improve/fix pickingPedro J. Estébanez
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-04Update focus mask only if there is a focused control, fixes #26524Juan Linietsky
2019-03-02hide hdr and shadow_contact in gles2clayjohn
2019-03-02Made the tooltip position offset configurableAndrettin
2019-02-22Added a workaround to avoid crashes due to how TileSet editor works, fixes ↵Juan Linietsky
#23672 Also fixed a few uninitialized memory variables.
2019-02-20Add -Wshadow=local to warnings and fix reported issues.marxin
Fixes #25316.
2019-02-14Fix possible crash with an invalid last_mouse_focus pointerMarcelo Fernandez
2019-02-13Fix typos with codespellRémi Verschelde
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-12Scene: Ensure classes match their header filenameRémi Verschelde
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-01-26Rewrite how font oversampling is updated more carefully, fixes #24338Juan Linietsky
2019-01-18respect mouse mode when setting enter/exit notifications and signals, fixes ↵Juan Linietsky
#19785
2019-01-14Added a flag to specify an exported node path must be supplied from scene ↵Juan Linietsky
root, fixes #24412
2019-01-01Update copyright statements to 2019Rémi Verschelde
Happy new year to the wonderful Godot community!
2018-12-19fix near infinite loop when no previous mouse positionArjen van Staalduinen
Added physics_has_last_mousepos to better deal with situations where there is no last_mousepos
2018-12-14Fix touch release event on _gui_inputKonrad Nowakowski
2018-12-09Merge pull request #20609 from YeldhamDev/menu_hover_explicitRémi Verschelde
Make opening menus with the same parent on mouse focus explicit
2018-12-02Add missing validationsGuilherme Felipe
Add missing validations to prevent crash of multiple mouse buttons being pressed
2018-12-01Fix crash when multiple mouse buttons is pressed.Guilherme Felipe
2018-11-28Fixes crash, closes #24038Juan Linietsky
2018-11-28Improved the mouse focus system (mouse keeps focus on a control while ↵Juan Linietsky
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-20Make opening menus with the same parent on mouse focus explicitMichael Alexsander Silva Dias
2018-11-19Properly handle multiple parent drag, fixes #19460Juan Linietsky
2018-11-16Do not allow controls in ignore mouse to get focus via their children, fixes ↵Juan Linietsky
#17955
2018-11-15-Send mouse motion events again to CollisionObjects (Area/Body) if they ↵Juan Linietsky
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-07Merge pull request #21386 from RandomShaper/fix-picking-in-canvas-layersJuan Linietsky
Fix picking in CanvasLayer
2018-11-01Merge pull request #21962 from YeldhamDev/switch_hover_submenuJuan Linietsky
Fix MenuButton hover switching not happening with submenus open
2018-10-25Merge pull request #23091 from aaronfranke/mingw-warningsRémi Verschelde
Fix some compile warnings for Windows from Linux
2018-10-24Add some limits on the Editor SettingsSuperwaitsum
2018-10-19Fix compile warnings for Windows from LinuxAaron Franke
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-09-27Fix warnings about set but unused variables [-Wunused-but-set-variable]Rémi Verschelde
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-14Expose "get_modal_stack_top()" to GDScriptMichael Alexsander Silva Dias
2018-09-12Make core/ includes absolute, remove subfolders from include pathRémi Verschelde
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-11Fix MenuButton hover switching not happening with submenus openMichael Alexsander Silva Dias
2018-08-25Fix picking in CanvasLayerPedro J. Estébanez
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-24Avoid misuse of set_drag_preview() function where it shouldn't be. Closes #20100Juan Linietsky
2018-08-24Make some debug prints verbose-only, remove othersRémi Verschelde
2018-08-21Changes to ClippedCamera, RayCast,Raycast2D and 2D physics API to add ↵Juan Linietsky
ability to choose between bodies and areas when colliding.
2018-07-28fixed uninitialised variable that was causing menu crash.Ibrahn Sahir
2018-07-24Opens the menu with the same parent on mouse focusGuilherme Felipe