Commit Graph

887 Commits

Author SHA1 Message Date
Haoyu Qiu a6a89356b7 Fix CanvasLayer visibility toggle can only run once per frame 2022-12-04 14:49:19 +08:00
Rémi Verschelde af635f05bf
Merge pull request #68630 from m4gr3d/fix_input_event_screen_drag_routing_3x
[3.x] Fix routing of `InputEventScreenDrag` events to `Control` nodes
2022-12-01 18:13:52 +01:00
Markus Sauermann 0ae562c9dc Update root order on layer change
When the layer of a CanvasLayer changes, the order of roots needs to be recalculated.

(cherry picked from commit 8d60e8b5d4)
2022-12-01 10:23:04 +08:00
Lyuma 099e90e00d Make Node editable_instance methods available to GDScript
(cherry picked from commit 7eb6ae2798)
2022-12-01 10:15:06 +08:00
Fredia Huya-Kouadio b28bcb4cfc Fix the logic used to route `InputEventScreenDrag` events to `Control` nodes. 2022-11-30 14:16:26 -08:00
Haoyu Qiu 3b869e8027
Fix crash of queue_free() when main loop is not SceneTree
(cherry picked from commit 3b08d0e852)
2022-11-30 15:44:49 +01:00
Nong Van Tinh ffbaa7fff0 Enhance null checking for input event 2022-11-27 15:01:34 +07:00
Rémi Verschelde 80b50e59d5
Merge pull request #67612 from timothyqiu/who-ami-i-3.x
[3.x] Fix get_path() error when calling get_node()
2022-10-31 12:25:12 +01:00
Haoyu Qiu 5d6dc206bc Fix get_path() error when calling get_node() 2022-10-19 13:05:41 +08:00
Micky 6102f3cfc2 [3.x] Rename `set_indexed` & `get_child`'s params to be clearer
3.x backport of #67300 and #64463.
2022-10-12 20:55:41 +02:00
lawnjelly 17f42e8e66 Improve signal already connected error message
The signal already connected message is improved to provide the names of the objects involved.
2022-09-21 07:52:30 +01:00
kobewi 0511f48c49 Fix Viewport size change not updating textures
(cherry picked from commit 3a4a4aeade)
2022-09-05 15:35:45 +02:00
kobewi 737bfa57d3 Allow to change the Stop shortcut used at runtime
(cherry picked from commit 409613ba7b)
2022-09-05 15:35:45 +02:00
Rémi Verschelde c551a79084
Merge pull request #65063 from Atlinx/fix/65033_fix-hdr-warning
Disable HDR warning for Viewport on GLES2 projects
2022-08-30 08:38:06 +02:00
Atlinx e3b3462187 Remove HDR warning if on low end 2022-08-29 19:14:30 -04:00
Michael Alexsander 1e80b17a8d Fix some corner cases in the `Menu/OptionButton` item auto-highlight 2022-08-28 01:45:08 -03:00
Yuri Sizov 72d1156286 Remove Inspector tooltip hack that never actually worked 2022-08-26 17:12:46 +03:00
Rémi Verschelde 91a6e08c12
Merge pull request #48157 from madmiraal/fix-46438-3.x
[3.x] Fix mouse_over not dropped when mouse leaves window
2022-08-05 22:37:17 +02:00
Rémi Verschelde 25c87e99cf
Merge pull request #61578 from YuriSizov/core-fix-events-for-moved-nodes-3.x 2022-08-05 19:33:25 +02:00
Rémi Verschelde 818f1eed31 Code quality: Fix header guards consistency
Adds `header_guards.sh` bash script, used in CI to validate future
changes. Can be run locally to fix invalid header guards.
2022-07-25 14:53:37 +02:00
Marcel Admiraal fb4e1d2d02 Set initial SceneTree processes times to 0.0 2022-07-17 09:02:20 +01:00
Marcel Admiraal 0992621200 Fix mouse_over not dropped when mouse leaves window 2022-07-03 09:49:56 +01:00
reduz 995281ca90 Fix editor-only visibility for lights
* Update visibility again for editor-only lights if owner changes.

Fixes #26399, supersedes #52327

(cherry picked from commit d69e3791bf)
2022-07-03 03:21:51 +02:00
Rémi Verschelde df70aa1772
Merge pull request #57566 from Calinou/viewport-shadow-atlas-clamp-sizes 2022-07-03 03:08:03 +02:00
Rémi Verschelde 3d19f21576
Merge pull request #49967 from Calinou/viewport-2d-hdr-print-warning 2022-07-03 02:41:26 +02:00
hilfazer fe21fb175c print_stray_nodes() also prints node's script 2022-07-03 01:00:58 +02:00
Rémi Verschelde 0cb897421a Node: Rename `child_exited_tree` to `child_exiting_tree`
The name was confusing as this signal is emitted around the same time as
`tree_exiting` and `NOTIFICATION_EXIT_TREE`, i.e. while the child node is
still in tree.

Fixes #59210.

(cherry picked from commit 3e6de687b8)
2022-06-20 15:00:09 +02:00
lawnjelly ba74643594 Force unsigned behaviour for bitfield enums
Some compilers (notably MSVC) were using signed values for bitfield enums. This was causing problems where 2 bits were used to store 4 or less enum values, where they were being treated as negative numbers.

This PR explicitly requests these enums to be treated as unsigned values.
2022-06-06 16:58:21 +01:00
Haoyu Qiu d043f91b79 Fix `Viewport.own_world` documentation
Also fixed the naming of the setter's parameter and made an `if` block
straightforward.
2022-06-06 21:34:36 +08:00
Rémi Verschelde a6b27b526f
Merge pull request #60822 from lawnjelly/fti_add_child_reset 2022-06-03 14:56:19 +02:00
Yuri Sizov 6d53c60bf7 Mark node groups as dirty for every children if parent is moved 2022-05-31 21:23:16 +03:00
Rémi Verschelde 67208ae80b
Merge pull request #60402 from Calinou/httprequest-timeout-float 2022-05-20 15:27:29 +02:00
Haoyu Qiu 58650af062 Make auto_accept_quit and quit_on_go_back properties 2022-05-14 18:24:43 +08:00
Hugo Locurcio 069c955af7
Use a floating-point number for the `timeout` property in HTTPRequest
This allows for greater precision when specifying a timeout in
HTTPRequest in `3.x`, similar to what is already possible in `master`.
2022-05-11 08:41:40 +02:00
lawnjelly 328866ee6a Physics Interpolation - Reset on adding child to SceneTree
For convenience, branches added to the SceneTree now have physics interpolation reset after the first update of the transform to the VisualServer.
2022-05-10 11:09:20 +01:00
lawnjelly 0ab077fcef Physics Interpolation - add interpolation mode property to node
Exposes the "interpolated" flag on nodes via a property, physics_interpolation_mode.

Mode can be INHERIT, OFF and ON. This makes it easy to turn off interpolation for nodes in the editor, versus via code.
2022-05-07 13:51:49 +01:00
lawnjelly df7fab51a3 Physics Interpolation - Flush transforms after physics tick
Leftover transforms from the physics tick were being flushed during idle, which was causing problems for physics interpolation.

This PR flushes the transforms at the end of the physics tick when physics interpolation is active.
2022-05-04 20:30:46 +01:00
Rémi Verschelde 6ee64331db
Merge pull request #60527 from KoBeWi/unique_names_demastered 2022-05-02 10:48:27 +02:00
Haoyu Qiu 153dc4d57e Backport the new Tween system as SceneTreeTween
Co-authored-by: Tomasz Chabora <kobewi4e@gmail.com>
2022-04-29 20:01:12 +08:00
Haoyu Qiu d088128b43 Remove duplicate editor settings definitions 2022-04-27 15:26:46 +08:00
kobewi e1c74ae83f Implement Scene Unique Nodes 2022-04-26 13:55:48 +02:00
Rémi Verschelde e1eb3c2fb1
Merge pull request #60147 from lawnjelly/interpolation_out_of_scenario 2022-04-13 17:08:08 +02:00
Hugo Locurcio cd1432eb12
Hide Viewport properties not applicable to the current rendering backend
This also adds a missing property range hint for the Sharpen Intensity
property (similar to the project setting).
2022-04-12 18:11:45 +02:00
lawnjelly d2b1d29634 Physics interpolation - Move out of Scenario
Move VisualServer interpolation data out of Scenario and into VisualServerScene, so the interpolation data and enabled status is now common to all Scenarios.

Fix physics interpolation in multithreaded mode by ensuring tick and pre-draw are called.
2022-04-11 15:04:24 +01:00
Rémi Verschelde 21c3048397 Add missing argument names in bindings 2022-04-04 12:56:59 +02:00
Fredy Huya-Kouadio cb0b2aefc3 Android port of the Godot Editor
These set of changes focus primarily on getting the core logic and overall Godot Editor UI and functionality up and running natively on Android devices.
UI tweaks / cleanup / polish, as well configuration for Android specific functionality / restrictions will be addressed in follow-up PRs iteratively based on feedback.

Co-authored-by: thebestnom <shoval.arad@gmail.com>
2022-03-28 07:54:10 -07:00
Markus Sauermann 62fa80afd7 Cleanup internal GUI state, if event is accepted in _input. 2022-03-14 18:36:31 +01:00
Rémi Verschelde fdaf0de3f0
Merge pull request #59100 from RandomShaper/mouse_drop_on_disable_3.x 2022-03-14 11:25:12 +01:00
Pedro J. Estébanez 3d7821bf1f Drop mouse focus and over when gui input is globally disabled
Since some porjects may be relying on the former behavior, this is opt-in via a new project setting, disabled by default, but enabled for new projects, since it's the new standard behavior (and the only one in 4.0).
2022-03-14 11:06:26 +01:00
Rémi Verschelde 08c3e00b95
Merge pull request #55355 from ConteZero/drag_and_drop_3.x 2022-03-14 08:43:22 +01:00