Commit graph

13445 commits

Author SHA1 Message Date
Rémi Verschelde
b00796eb1a
Merge pull request #79818 from garychia/select_all
RichTextLabel: Ensure the `select_all` function selects all items
2023-08-28 12:03:29 +02:00
bruvzg
2273509721
[RTL] Fix character line index for non-visual characters and characters on the line edge. 2023-08-28 10:50:01 +03:00
Yuri Sizov
fd2ec47ec9 Move default theme files to scene/theme
This also puts the default theme icons into their own folder.
2023-08-28 00:23:38 +02:00
Miguel Pereira
8278a5f274 Correctly display tooltips for buttons in Tree when they overlap cell content 2023-08-27 18:21:12 +02:00
Yuri Sizov
4b7d0c84a1 Fix multiple usability issues in the texture region editor
- Correctly display atlas textures when used by other objects.
- Make region handles easier to hit in ninepatchable objects.
- Correctly initialize and restore various visual properties.
- Improve code quality.
2023-08-27 14:25:49 +02:00
Dragos Daian
f9435b6d72 Expose the get_rid method of Joint2D and Joint3D
update occurance of get_joint

Update documentation as per feedback.

update

update

Co-Authored-By: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2023-08-27 00:34:47 +03:00
Jordyfel
9819ffb166 Implement window center function. 2023-08-26 21:34:21 +03:00
KurtBliss
dbb01bc451 Fixed, chance of crash when Control overrides mouse input on Area2D
Made Viewport::_cleanup_mouseover_colliders queue up mouse_exit and
mouse_shape_exit signals to emit and at the end of the function's
execution to avoid potential crashes.
2023-08-25 17:51:38 -04:00
bruvzg
88177a5a58
[RTL] Use list iterators for item/paragraph removal. 2023-08-25 17:49:13 +03:00
Chia-Hsiang Cheng
d66c7a2ac5 Ensure the 'select_all' function selects all items 2023-08-25 21:07:33 +08:00
Marcus Elg
936fd8db38 Fix GPUParticle2D offset stutter 2023-08-25 09:59:05 +02:00
Danil Alexeev
07d23489f4
GUI: Fix text overlapping icon in Tree 2023-08-24 22:09:02 +03:00
A Thousand Ships
e70b83c7a0 Expose finding valid focus neighbors of a Control by side
Exposes the functionality used for ui navigation
2023-08-24 18:25:35 +02:00
Yuri Sizov
6ab34005ad Extract editor scene tabs into their own component 2023-08-24 12:24:29 +02:00
bruvzg
5453503697
[Text Server] Store extra spacing of individual font variations. 2023-08-24 11:58:12 +03:00
Andrés Botero
eee95aff04 Add transform support to CharFXTransform
Use absolute transforms for CharFX

fix formatting
2023-08-23 00:18:37 -05:00
Rémi Verschelde
8e0346bade
Merge pull request #80848 from bruvzg/rtl_lang
[RTL] Adds "lang" tag to allow overriding language specific text rendering without starting a new paragraph.
2023-08-21 19:32:29 +02:00
Rémi Verschelde
ddb7430536
Merge pull request #80847 from bruvzg/rtl_rem_para
[RTL] Fix `remove_paragraph` crashes
2023-08-21 19:32:25 +02:00
Rémi Verschelde
cc01b28886
Merge pull request #80779 from Chaosus/cpuparticles_converter
Implement conversion from `CPUParticles` to `GPUParticles` (3D/2D)
2023-08-21 19:26:48 +02:00
bruvzg
299808cc26
[RTL] Adds "lang" tag to allow overriding language specific text rendering without starting a new paragraph. 2023-08-21 14:56:43 +03:00
bruvzg
cd6b0368f6
[RTL] Fix remove_paragraph crashes. 2023-08-21 14:36:07 +03:00
Rémi Verschelde
76a4b5d710
Merge pull request #80809 from jsjtxietian/early-quit-in-_get_column_pos_of_word
Edit early in `TextEdit::_get_column_pos_of_word` to improve highlight performace
2023-08-21 08:25:26 +02:00
Rémi Verschelde
4bba963f0a
Merge pull request #80782 from KoBeWi/MessLibrary
Cleanup MeshLibrary changed signals
2023-08-21 08:23:48 +02:00
Rémi Verschelde
b24eb34669
Merge pull request #80780 from HolonProduction/sub-window-focus-crash
Fix crash when hiding subwindow during popup of new subwindow
2023-08-21 08:23:23 +02:00
HolonProduction
e2cea458a3 Fix crash when hiding subwindow during popup of new subwindow 2023-08-20 17:51:54 +02:00
jsjtxietian
70dad7e5a3 Fixes a text find perf issue, if can't find any
match words, just early break the while loop. This
will improve a lot when p_search.length is way too
long since p_from_column will only plus 1 every loop
2023-08-20 21:48:25 +08:00
kobewi
ecc3944b1e Cleanup MeshLibrary changed signals 2023-08-19 11:56:31 +02:00
Yuri Roubinski
7fcb91f077 Implement conversion from CPUParticles to GPUParticles (3D/2D) 2023-08-19 11:58:57 +03:00
Rémi Verschelde
b51ee8b029
Merge pull request #80650 from bruvzg/comp_char_fix
[TextServer] Fix system font fallback and caret/selection behavior for composite characters.
2023-08-18 17:24:54 +02:00
kobewi
a88e3b8604 Improve scene tiles workflow 2023-08-18 13:55:30 +02:00
Rindbee
bd42d337df Fix the behavior of the resource property of the sub-scene root node on instantiation
The sub-scene root node will be set successively in the sub-scene and the main scene.

The PR is simply to determine intent from the record. Mainly the cases when
`resource_local_to_scene` is enabled in main scene.

When updating resources according to the records of the main scene, use the
`scene_unique_id` in the main scene to prevent the ID of the resource from
changing continuously when saving the scene.
2023-08-18 19:08:34 +08:00
Rémi Verschelde
d81767495a
Merge pull request #80512 from mihe/global-basis
Add `global_basis` property to `Node3D`
2023-08-18 09:31:41 +02:00
A Thousand Ships
b060a22719 Pass missing arguments to TileMap::get_used_cells_by_id 2023-08-17 19:55:56 +02:00
Rémi Verschelde
0511f9d9a7
Merge pull request #80708 from garychia/anim_seek
Ensure methods skipped by `AnimationPlayer::seek` are not called
2023-08-17 15:44:03 +02:00
Rémi Verschelde
e73a4a382e
Merge pull request #79201 from Rindbee/fix-setup-state-not-cleared
Clear the previously set state when configuring for a new scene root node
2023-08-17 15:43:38 +02:00
Rémi Verschelde
446dfdbd87
Merge pull request #80329 from xiongyaohua/path3d_tilt_gizmo
Add handles to control Curve3D tilt
2023-08-17 12:29:55 +02:00
Rémi Verschelde
e6e79255ed
Merge pull request #77943 from aaronfranke/mass-dist
Add Mass Distribution, Deactivation, Solver inspector property groups
2023-08-17 12:26:59 +02:00
Chia-Hsiang Cheng
125ae78a89 Ensure methods skipped by AnimationPlayer::seek are not called 2023-08-17 17:35:54 +08:00
Rémi Verschelde
c5a7462a00
Merge pull request #80702 from KoBeWi/lagging_animation
Fix initial value with delay in PropertyTweener
2023-08-17 11:28:15 +02:00
Rémi Verschelde
06eade1bc2
Merge pull request #80367 from garychia/anim_signals
Avoid emitting signals if the animation is not ready to be processed
2023-08-17 11:25:28 +02:00
Rémi Verschelde
0fff0b1054
Merge pull request #80203 from WhalesState/Dev2
Add shortcut handling to `OptionButton`
2023-08-17 11:24:14 +02:00
Rémi Verschelde
37d213b24e
Merge pull request #79972 from smix8/navgenerator_multithreading_4.x
Add multi-threaded NavMesh baking to NavigationServer
2023-08-17 11:22:11 +02:00
Rémi Verschelde
ef77ae7d6c
Merge pull request #74250 from daBlesr/bugfix-selection-signals-when-disabled-or-not-selectable
ItemList: Clarify distinction between disabled and selected in sending signals
2023-08-17 11:19:17 +02:00
Rémi Verschelde
4b11bc2b34
Merge pull request #36493 from KoBeWi/echo_menus
Add option to allow echo events in menu shortcuts
2023-08-17 11:18:50 +02:00
Niels Drost
fa63107bd1
ItemList: Clarify distinction between disabled and selected in sending signals
disabled -> not sending any signal at all (activated, selected, deselected, ...)
selected -> only possible when not disabled, and when selectable

Fixes #74086.
2023-08-17 10:34:18 +02:00
kobewi
1660575bd8 Fix initial value with delay in PropertyTweener 2023-08-17 10:28:26 +02:00
bitsawer
26e3443eef Fix Shader and ShaderInclude resource loading 2023-08-17 11:17:54 +03:00
Tomasz Chabora
3dd881b4e4 Add option to allow echo events in menu shortcuts 2023-08-16 16:59:17 +02:00
Rémi Verschelde
77fd8f3416
Merge pull request #80673 from YeldhamDev/give_me_my_windows!
Allow to get a list of visible embedded `Window`s
2023-08-16 16:56:31 +02:00
Rémi Verschelde
e31cb25d50
Merge pull request #79165 from Koyper/enable_missing_tree_title_font_settings
Enabled missing Tree title button font and font size theme settings
2023-08-16 16:54:55 +02:00
Rémi Verschelde
c081d1bd24
Merge pull request #78816 from kleonc/scene-tree-fix-drag-drop-to-parent-with-internal-nodes
Fix drag-dropping nodes to parent with internal nodes
2023-08-16 16:54:06 +02:00
Michael Alexsander
de27df5da3
Allow to get a list of visible embedded Windows 2023-08-16 10:42:08 -03:00
Koyper
e84588987a Enabled missing Tree title button font and font size theme settings. 2023-08-16 08:10:31 -05:00
Rémi Verschelde
ed81c93be7
Merge pull request #80658 from Sch1nken/tilemap-erase-scenes
TileMap: Check for possible scenes to be erased
2023-08-16 09:18:11 +02:00
Rémi Verschelde
ed1180a97e
Merge pull request #80638 from sepTN/fix-particle-shader-rand
Fix particle shader deterministic random values
2023-08-16 09:16:14 +02:00
Rémi Verschelde
da80a033f1
Merge pull request #80606 from bruvzg/rtl_scroll_hide
[RTL] Improve scroll bar responsiveness during updates.
2023-08-16 09:14:40 +02:00
Rémi Verschelde
a7dc4c22a9
Merge pull request #80334 from Sauermann/fix-window-out-of-viewport-events
Fix nodes receiving mouse events in black bars of `Window`
2023-08-16 09:12:42 +02:00
Rémi Verschelde
132b97c325
Merge pull request #79747 from kleonc/canvas_modulate_fix_updating_logic
Fix `CanvasModulate` logic for modulating the canvas
2023-08-16 09:12:18 +02:00
Sch1nken
7aa90d1667 Check for possible scenes to be erased 2023-08-15 15:17:06 +02:00
bruvzg
5d3fcc5766
[TextServer] Fix system font fallback and caret/selection behavior for composite characters. 2023-08-15 11:42:40 +03:00
Septian
cb7400d67a Fix particle shader deterministic random values 2023-08-15 15:06:37 +07:00
bruvzg
3709ca5404
[RTL] Improve scroll bar responsiveness during updates. 2023-08-14 11:36:05 +03:00
Rémi Verschelde
0308422f46
Merge pull request #80594 from rsubtil/fix_window_input_event
Support other input methods on Popup/Dialogs' `_input_from_window`
2023-08-14 09:38:08 +02:00
Rémi Verschelde
8b3de35c64
Merge pull request #79867 from WhalesState/master
Fix Camera2D is not working inside a MainScreenEditorPlugin
2023-08-14 09:36:06 +02:00
Mounir Tohami
4e4a725fff Fix Camera2D is not working inside EditorPlugin 2023-08-13 22:14:13 +00:00
Ricardo Subtil
f0927250ca Support controller input on popup/dialogs 2023-08-13 17:32:08 +01:00
Daniel Roberts
46e395abb1 Add handles to control Curve3D tilt 2023-08-12 14:55:38 +08:00
Mikael Hermansson
8be20c495c Add global_basis property to Node3D 2023-08-11 11:41:49 +02:00
Rémi Verschelde
a8edbcfe13
Merge pull request #80485 from Calinou/volumetric-fog-clamp-length
Clamp Volumetric Fog Length property to prevent rendering issues
2023-08-11 10:33:23 +02:00
Rémi Verschelde
33198d0df0
Merge pull request #75784 from Riteo/int-scale
Add content scale stretch modes, implement integer scaling
2023-08-11 10:32:11 +02:00
Riteo
87cfc415a3 Add content scale stretch modes, implement integer scaling
Integer scaling is achieved (after aspect expansion) by "lying" to the
stretching code about the window's size, telling it that it's always an
integer multiple of the viewport so that it only gets stretched to an
integer factor.

This approach works with all stretch and aspect modes and doesn't
require handling for each, only requiring to "loosen up" some
self-excluding conditions (in other words, replacing some `else if`s
with just `if`s) regarding viewport offset and margin calculation (black
bars).

Includes a tiny usability change that adds a range hint for the content
scale factor between 0.5 to 8.0.

Co-Authored-By: Hugo Locurcio <hugo.locurcio@hugo.pro>
2023-08-10 19:45:47 +02:00
Hugo Locurcio
8041cff865
Clamp Volumetric Fog Length property to prevent rendering issues
A length of 0 units doesn't make sense anyway.
2023-08-10 15:55:36 +02:00
ajreckof
1eb3d99ff7 Fix CodeEdit completion being very slow in certain cases 2023-08-10 08:15:41 +02:00
Rémi Verschelde
7257d1667e
Merge pull request #80441 from Calinou/editor-torusmesh-inspector-hint-or-greater
Allow setting values greater than the maximum in TorusMesh inspector
2023-08-10 00:43:27 +02:00
Rémi Verschelde
f6b9d445b5
Merge pull request #80285 from YeldhamDev/just_a_little_bit
Further separate icon from text of buttons in both editor and default themes
2023-08-09 15:20:25 +02:00
Rémi Verschelde
3a0086eb6f
Merge pull request #78426 from Daylily-Zeleen/daylily-zeleen/graph_edit_virtual
Make GraphEdit's cpp virtuals equal to gdscript.
2023-08-09 15:20:07 +02:00
Markus Sauermann
59c13fea5d Fix nodes receiving mouse events in black bars of Window
Previously for InputEvents there was no distinction between
Window-area and Viewport-area.
This was problematic in cases where stretching was used and the Window
contained black bars at the sides of the Viewport.
This PR separates the area of Window and Viewport regarding InputEvents.
2023-08-09 12:34:22 +02:00
Hugo Locurcio
acd5dee478
Allow setting values greater than the maximum in TorusMesh inspector
This is consistent with other PrimitiveMeshes' behavior.
2023-08-09 10:14:00 +02:00
Daylily-Zeleen
2f0639e7ae Make GraphEdit's cpp virtuals equal to gdscript. 2023-08-09 00:21:35 +08:00
Rindbee
4795c3cdfa Clear the previously set state when configuring for a new scene root node
Saving a subscene causes the main scene to be re-instantiated. And the resource
instance in the main scene will be reused when the main scene is re-instantiated.
So for resources with `resource_local_to_scene` enabled, resetting state may be
necessary (at least for `ViewportTexture`).
2023-08-08 23:49:53 +08:00
Rémi Verschelde
0ce1ca4677
Merge pull request #80402 from timothyqiu/overrun-icon
Fix Button text when overrun is not trim nothing
2023-08-08 17:00:46 +02:00
Rémi Verschelde
70e77a8383
Merge pull request #80381 from Calinou/audio-bus-master-use-scenestringnames
Use StringName consistently to refer to the Master audio bus name
2023-08-08 16:59:11 +02:00
Rémi Verschelde
b49478acce
Merge pull request #80366 from timothyqiu/option-button-lean-and-mean
Fix OptionButton min size when fit longest item is enabled
2023-08-08 16:58:23 +02:00
Rémi Verschelde
46c9a1427d
Merge pull request #80364 from Calinou/control-escape-dismiss-tooltips
Dismiss currently visible or upcoming tooltips when pressing Escape
2023-08-08 16:57:59 +02:00
Rémi Verschelde
1163dac9e3
Merge pull request #80215 from clayjohn/HDR-2D
Add option to enable HDR rendering in 2D
2023-08-08 16:57:33 +02:00
Rémi Verschelde
af722e2bab
Merge pull request #80187 from Sauermann/fix-mouseover-error-handling
Handle potential platform-specific `Window` mouse-enter/exit bugs gracefully
2023-08-08 16:57:09 +02:00
Rémi Verschelde
14256a2395
Merge pull request #78468 from KoBeWi/enmarginalization
Fix ColorPicker margin theme property
2023-08-08 16:55:32 +02:00
Markus Sauermann
2f8673dc07 Handle potential platform-specific Window mouse-enter/exit bugs gracefully
Also replace `DEV_ASSERT` by `WARN_PRINT_ONCE`.
2023-08-08 13:05:18 +02:00
Markus Sauermann
152572ac38 Fix global transform validity for Node2D and Control
Set global transform to invalid when changing transform
2023-08-08 12:22:55 +02:00
Haoyu Qiu
7f70ac56a0 Fix Button text when overrun is not trim nothing 2023-08-08 15:08:28 +08:00
Hugo Locurcio
6307b0be3c
Dismiss currently visible or upcoming tooltips when pressing Escape
This is standard UI behavior in most applications out there.
2023-08-08 07:40:39 +02:00
Michael Alexsander
98bdb56815
Further separate icon from text of buttons in both editor and default themes 2023-08-07 13:22:39 -03:00
Hugo Locurcio
49b6067aba Use StringName consistently to refer to the Master audio bus name 2023-08-07 18:06:17 +02:00
smix8
8686e84b44 Add multi-threaded NavMesh baking to NavigationServer
Adds multi-threaded NavMesh baking to NavigationServer.
2023-08-07 17:14:37 +02:00
Rémi Verschelde
169a28bd0f
Merge pull request #80362 from Calinou/string-use-unicode-compiletime
Use compile-time Unicode string conversion
2023-08-07 14:55:58 +02:00
Rémi Verschelde
7eb047a5ed
Merge pull request #79643 from smix8/navgenerator_4.x
Move navigation mesh baking to NavigationServer
2023-08-07 14:48:15 +02:00
Faolan
b3b791350b
Move registration of fallbacks property in the base Font class 2023-08-07 13:46:44 +02:00
Rémi Verschelde
faaf27f284
Fix various typos with codespell
Also includes typo fixes from #79993, #80068, #80276, and #80303.

Co-authored-by: betalars <contact@betalars.de>
Co-authored-by: spaceyjase <429978+spaceyjase@users.noreply.github.com>
Co-authored-by: Swarkin <102416174+Swarkin@users.noreply.github.com>
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-08-07 13:09:47 +02:00
Chia-Hsiang Cheng
ef5d0b1c06 Avoid emitting signals if the animation is not ready to be processed 2023-08-07 18:21:28 +08:00
Haoyu Qiu
5dd854513e Fix OptionButton min size when fit longest item is enabled 2023-08-07 17:25:10 +08:00
clayjohn
57eb762bae Add option to enable HDR rendering in 2D
This is needed to allow 2D to fully make use of 3D effects (e.g. glow), and can be used to substantially improve quality of 2D rendering at the cost of performance

Additionally, the 2D rendering pipeline is done in linear space (we skip linear_to_srgb conversion in 3D tonemapping) so the entire Viewport can be kept linear.
This is necessary for proper HDR screen support in the future.
2023-08-07 11:24:03 +02:00
Hugo Locurcio
e9f723006a
Use compile-time Unicode string conversion
Thanks to this syntax introduced in C++11, this reduces the amount of work
that needs to be performed at run-time while making the code more terse.
2023-08-07 10:38:16 +02:00
Aaron Franke
49e0a01bf1
Add Mass Distribution, Deactivation, Solver inspector property groups 2023-08-06 21:26:33 -05:00
Danil Alexeev
5fb975e4a5
GUI: Fix Tree performance regression by using cache 2023-08-04 16:11:26 +03:00
Yuri Sizov
a56e960150 Merge pull request #71233 from PrecisionRender/barycentric-coords
Add ability to get face index and barycentric coordinates from raycast
2023-08-03 22:37:30 +02:00
smix8
744fa87da2 Move navigation mesh baking to NavigationServer
Moves navigation mesh baking to NavigationServer.
2023-08-03 19:49:07 +02:00
Rémi Verschelde
725beaa7af
Merge pull request #80219 from YeldhamDev/override_all_the_things
Improve `Window._get_contents_minimum_size()`'s code
2023-08-03 15:33:37 +02:00
Michael Alexsander
6d2453425b
Improve Window._get_contents_minimum_size()'s code 2023-08-03 10:25:05 -03:00
Rémi Verschelde
4c70849b3b
Merge pull request #80168 from akien-mga/extension-compat
Fix or workaround recent extension API compatibility issues
2023-08-03 15:12:38 +02:00
Rémi Verschelde
f9d960c925
Merge pull request #80178 from YeldhamDev/override_all_the_things
Expose `Window`'s `_get_contents_minimum_size()` to scripting
2023-08-03 14:46:52 +02:00
Rémi Verschelde
ae8f1015e0
Merge pull request #79064 from MewPurPur/rename-button-pressed-THIS-IS-NOT-A-COMPAT-BREAK
Rename `button_pressed` default signal binding to avoid shadowing
2023-08-03 14:46:39 +02:00
Rémi Verschelde
858e8748e8
Fix or workaround recent extension API compatibility issues
- Add compatibility methods for `RenderingDevice::shader_create_from_bytecode`
  and `CodeEdit::get_text_for_symbol_loopup`.
- Silence errors which now have compatibility methods.
- Acknowledge GraphEdit/GraphNode compat breakage, intended and WIP.
2023-08-03 12:07:21 +02:00
Mounir Tohami
2cec27a3f1 Add shortcut handling to OptionButton 2023-08-03 08:38:20 +00:00
PrecisionRender
af7f787c6e Add ability to get barycentric coordinates from ray 2023-08-02 15:16:44 -05:00
Yuri Sizov
237bd0a615
Merge pull request #80117 from Sauermann/fix-actually-store-safe-rect
Actually store safe-rect in embedder
2023-08-02 21:48:02 +02:00
Michael Alexsander
f270163ab0
Expose Window's _get_contents_minimum_size() to scripting 2023-08-02 14:40:38 -03:00
Markus Sauermann
1e9d241809 Actually store safe-rect in embedder
`sw` is a copy and not a reference.
Add unit-test for this case.
2023-08-02 17:51:52 +02:00
Rémi Verschelde
3e958cfa8d
Merge pull request #79705 from 398utubzyt/gui/snap-charfx-fix
GUI: Snap CharFX offset to nearest pixel when setting is enabled
2023-08-02 12:18:46 +02:00
Rémi Verschelde
d8cbb6d645
Merge pull request #79563 from danny88881/drag-and-drop-text-setting
Add drag'n'drop text option for `LineEdit` and `RichTextLabel`
2023-08-02 12:17:56 +02:00
Rémi Verschelde
2a9aaae8a5
Merge pull request #79293 from ItsNL/add-accept-dialog-close-on-unfocused
Check `FLAG_POPUP` to close an AcceptDialog when parent is focused
2023-08-02 12:17:06 +02:00
Rémi Verschelde
b156e24216
Merge pull request #77280 from Rindbee/fix-unnecessary-break-in-Label
Fix unnecessary break when calculating the height of visible lines
2023-08-02 12:15:24 +02:00
Markus Sauermann
8c1ce404d7 Fix crash on Windows when closing Window
Send `WINDOW_EVENT_MOUSE_EXIT` when a window is destroyed.

Ensure, that on Windows, the event_callback is still valid during
destroying the `Window`.
2023-08-02 00:17:25 +02:00
Yuri Sizov
9fe9922dd9 Merge pull request #80122 from timothyqiu/rid-id
Fix "a number is required" error when printing RID
2023-08-01 20:04:04 +02:00
Yuri Sizov
e810671116 Merge pull request #79977 from Owl-A/bugfix
Add state sync after call to `_integrate_forces` in `_body_state_changed`
2023-08-01 20:03:47 +02:00
Yuri Sizov
88068a0374 Merge pull request #79946 from Ymanawat/propagate-check-79942
Fix Tree check propagation not unchecking parent items
2023-08-01 20:03:43 +02:00
Yuri Sizov
defaac6058 Merge pull request #67791 from Sauermann/fix-visual-mouse-notifications
Refactor mouse_entered and mouse_exited signals
2023-08-01 20:03:33 +02:00
Haoyu Qiu
35f28407d9 Fix "a number is required" error when printing RID 2023-08-01 23:30:21 +08:00
Yuri Sizov
8965e24dde Merge pull request #79874 from clayjohn/PlaceholderTexture-rid
Lazily allocate RIDs for PlaceholderTextures to avoid allocating GPU resources unless used
2023-08-01 17:25:37 +02:00
Yuri Sizov
c9aa2131dc Merge pull request #79710 from AThousandShips/video_play
Fix incorrect virtual function in `VideoStream.set_paused`
2023-08-01 17:25:25 +02:00
Yuri Sizov
fd1ee5d56b Merge pull request #79332 from AThousandShips/mp_crash
Prevent crash when accessing `Node` Multiplayer from thread
2023-08-01 17:25:07 +02:00
Chinmay Awale
c118256865 added state sync after call to _integrate_forces 2023-08-01 19:03:43 +05:30
Markus Sauermann
1c3c17c608 Refactor mouse_entered and mouse_exited notifications
The previous implementation for signals mouse_entered and mouse_exited
had shortcomings that relate to focused windows and pressed mouse buttons.
For example a Control can be hovered by mouse, even if it is occluded by
an embedded window.

This patch changes the behavior, so that Control and Viewport send
their mouse-enter/exit-notifications based solely on mouse position,
visible area, and input restrictions and not on which window has
focus or which mouse buttons are pressed. This implicitly also
changes when the mouse_entered and mouse_exited signals are sent.

This functionality can not be implemented as a part of
Viewport::_gui_input_event, because of its interplay with Windows and
because Viewport::_gui_input_event is based on input and not on
visibility.
2023-08-01 13:28:49 +02:00
Yogendra Manawat
f0362cd37b Fixed Tree Selection Bug 2023-07-29 00:30:39 +05:30
detomon
d275a7487d Initialize MSDF parameters in BaseMaterial3D with default 2023-07-28 13:24:44 +02:00
Yuri Sizov
1e314d5501
Merge pull request #79941 from KoBeWi/scene_tile_devastation
Properly clear scene tiles
2023-07-27 19:09:40 +02:00
kobewi
055b9892d2 Properly clear scene tiles 2023-07-27 01:31:20 +02:00
Markus Sauermann
7fead979d6 Disable error condition for accessing safe rect
This PR removes the error-message, which is currently expected to happen.
The task of correctly fixing the underlying problem of window popup
closing is more complex, so this PR solves the immediate
error-notification-problem.
2023-07-26 20:21:30 +02:00
Yuri Sizov
7305318a88 Merge pull request #79913 from bruvzg/lbl_min_h_line
[Label] Remove extra line spacing from Label minimum size calculations.
2023-07-26 18:40:42 +02:00
Yuri Sizov
d50c52652f Merge pull request #79805 from kumikumi/fix-subviewport-cursor
Prevent SubViewportContainer overriding Subviewport's cursor with its own cursor
2023-07-26 18:40:30 +02:00
Yuri Sizov
712f49ec57 Merge pull request #79766 from Sauermann/fix-window-determinant-zero
Add determinant check for minimized windows
2023-07-26 18:40:26 +02:00
Yuri Sizov
1de9171c32 Merge pull request #79443 from Sauermann/fix-ingore-hovering
Fix physics passive hovering with `MOUSE_FILTER_IGNORE`
2023-07-26 18:40:14 +02:00
Yuri Sizov
d49ea2b7d8 Merge pull request #79288 from BastiaanOlij/custom_texture_api
Add custom texture create function
2023-07-26 18:40:01 +02:00
Yuri Sizov
67873d0d5d Merge pull request #79248 from Sauermann/fix-svc-focus-propagation
Make `SubViewportContainer` event propagation aware of focused Control
2023-07-26 18:39:57 +02:00
Yuri Sizov
6f6f7db911 Merge pull request #79129 from smix8/navbase_enabled_4.x
Add NavigationServer API to enable regions and links
2023-07-26 18:39:47 +02:00
Yuri Sizov
e8df8c5e2c Merge pull request #78988 from RandomShaper/fix_change_scene
Reimplement scene change
2023-07-26 18:39:43 +02:00
Bastiaan Olij
63d6e9c557 Add custom texture create function 2023-07-26 20:46:34 +10:00
bruvzg
16d7e0bf98
[Label] Remove extra line spacing from Label minimum size calculations. 2023-07-26 08:15:53 +03:00
smix8
69fad39cf5 Add NavigationServer API to enable regions and links
Adds NavigationServer API to enable regions and links.
2023-07-26 01:20:15 +02:00
Patrick
65b0989f68 Additional Visual Shader Nodes
* RotationByAxis Visual Shader Node added
* WorldPositionFromDepth Visual Shader Node added
* ScreenNormalWorldSpace Visual Shader Node added
2023-07-26 00:39:12 +02:00
Yuri Sizov
a581bf0a24 Merge pull request #79879 from KoBeWi/the_tweenld
Improve and clarify paused Tweens
2023-07-25 21:51:35 +02:00
Yuri Sizov
ee1be950a1 Merge pull request #79786 from smix8/navmesh_max_edge_len_4.x
Disable NavigationMesh `edge_max_length` property by default
2023-07-25 21:26:16 +02:00
Yuri Sizov
4b0d1026af Merge pull request #78365 from smix8/ps_navmap_default_up_4.x
Add ProjectSettings navigation map default up
2023-07-25 21:25:50 +02:00
kobewi
dbecf8bd1a Improve and clarify paused Tweens 2023-07-25 13:29:30 +02:00
clayjohn
d61d498632 Lazily allocate RIDs for PlaceholderTextures to avoid allocating GPU resources unless used 2023-07-25 10:49:35 +02:00
Yuri Sizov
f6187014ec Merge pull request #79851 from timothyqiu/null-tileset
Fix crash when executing `TileMap.fix_invalid_tiles`
2023-07-24 19:33:55 +02:00
Yuri Sizov
d06779cc07 Merge pull request #79782 from guemax/remove-spaces-from-input-of-html-color-in-color-picker
Remove spaces from input of HTML color in color picker
2023-07-24 19:33:34 +02:00
Yuri Sizov
beb9c3834d Merge pull request #79713 from smix8/legacy_navmesh_struct_4.x
Remove unused struct from NavigationMesh
2023-07-24 19:33:15 +02:00
Yuri Sizov
6fb5d9e1e6 Merge pull request #79485 from smix8/tilemap_cell_size_4.x
Set default `cell_size` on new TileMap Layer navigation layer maps
2023-07-24 19:32:50 +02:00
Yuri Sizov
2f4c962929 Merge pull request #79434 from Calinou/2d-editor-allow-float-bone-size
Allow using floating-point bone sizes and outline widths in the 2D editor
2023-07-24 19:32:42 +02:00
Yuri Sizov
752b89dc36 Merge pull request #79403 from TokageItLab/fix-negative-timescale-transition
Fix `AnimationNodeTransition` with negative time scale
2023-07-24 19:32:37 +02:00
Yuri Sizov
fb2c3ae8f7 Merge pull request #79308 from Geometror/refactor-graphedit
Clean up/refactor GraphEdit
2023-07-24 19:32:33 +02:00
Yuri Sizov
52078dc994 Merge pull request #79157 from smix8/navmesh_clear_4.x
Add `clear` function to NavigationMesh / NavigationPolygon
2023-07-24 19:32:24 +02:00
Yuri Sizov
2bd904e3db Merge pull request #73196 from Vilcrow/fix-lookup-symbol
Fix jumping to function definition using `Ctrl+LMB` or the "Lookup Symbol" button
2023-07-24 19:32:12 +02:00
Yuri Sizov
d6bb6d42b2 Merge pull request #71394 from Ithamar/feat-imagetexlay-ser
Fix ImageTextureLayered serialisation issues
2023-07-24 19:32:06 +02:00
Hendrik Brucker
a38fd09669 Clean up/refactor GraphEdit 2023-07-24 18:37:23 +02:00
Yuri Sizov
91258e52be
Merge pull request #79307 from Geometror/remove-graph-node-comment
Remove GraphNode's comment property and related functionality
2023-07-24 16:56:41 +02:00
Haoyu Qiu
a7ab7e469b Fix crash when executing TileMap.fix_invalid_tiles 2023-07-24 20:01:27 +08:00
Mikko Ankkala
96b26574b9 Don't override SubViewport's cursor with SubViewportContainer's cursor
Add a warning for having a non-default value of `mouse_default_cursor_shape` in SubViewportContainer

Add test
2023-07-23 22:27:55 +03:00
Ithamar R. Adema
f37c2b5be2 Fix ImageTextureLayered serialisation issues. 2023-07-23 13:54:04 +02:00
smix8
c63125c317 Disable NavigationMesh edge_max_length property by default
Disables NavigationMesh edge_max_length property by default.
2023-07-22 14:09:15 +02:00
guemax
d934d00828
Remove spaces from input of HTML color in color picker
Fixes #79338
2023-07-22 12:11:28 +02:00
Markus Sauermann
e0bce0bd7f Add determinant check for minimized windows
When the Window is minimized, the transform-determinant can be 0.
Add a check to prevent this case.
2023-07-22 00:02:37 +02:00
smix8
671839d5cd Set default cell_size on new TileMap Layer navigation layer maps
Sets default cell_size on new TileMap Layer navigation layer maps.
2023-07-21 18:02:21 +02:00
Yuri Sizov
4770e87616 Merge pull request #79655 from kleonc/scene-dubugger-remove-outdated-error-check
Fix arg count checks in `SceneDebugger`
2023-07-21 17:55:02 +02:00
Yuri Sizov
7a313318b2 Merge pull request #79645 from adamscott/fix-camera-2d-editor
Fix Camera2D crash when edited scene root is null
2023-07-21 17:54:58 +02:00
Yuri Sizov
1843781918 Merge pull request #79640 from Calinou/default-theme-scale-fix-corner-radius
Fix corner radius not scaling with theme scale in the default theme
2023-07-21 17:54:54 +02:00
Yuri Sizov
e38dc58199 Merge pull request #76759 from Nidjo123/master
Fix RichTextLabel character line and paragraph index getters
2023-07-21 17:54:11 +02:00
Yuri Sizov
7835d42971 Merge pull request #79618 from HolonProduction/deleting-terrains-crash
Fix crash when deleting tileset terrains
2023-07-21 17:15:48 +02:00
Yuri Sizov
6a30f64dc8 Merge pull request #79595 from TokageItLab/rbmap-animblendtree
Make `AnimationNodeBlendTree` use `RBMap` insteads `HashMap`
2023-07-21 17:15:42 +02:00
Yuri Sizov
15c0e40375 Merge pull request #79546 from Sauermann/fix-input-handled-physics
Separate input-handled-state for different events during physics-picking
2023-07-21 17:15:36 +02:00
Yuri Sizov
de0f7935dd Merge pull request #79524 from aaronfranke/gds-test-inst-placeholder
Change GDScript tests to use InstancePlaceholder as the example abstract class
2023-07-21 17:15:32 +02:00
Yuri Sizov
4d42d6fdf6 Merge pull request #78706 from RedworkDE/node-rename-inplace
Allow renaming child nodes in `_ready`
2023-07-21 17:15:26 +02:00
Yuri Sizov
ac0204b201 Merge pull request #78328 from groud/tilemap_layers_as_another_class
Move TileMap layers to their own class
2023-07-21 17:15:18 +02:00
kleonc
f12164d311 Fix CanvasModulate logic for updating canvas modulate 2023-07-21 15:33:36 +02:00
smix8
81930c6719 Remove unused struct from NavigationMesh
Removes unused struct from NavigationMesh.
2023-07-20 18:16:32 +02:00
Gilles Roudière
d6379e9a93 Move TileMap layers to their own class 2023-07-20 17:23:38 +02:00
Ninni Pipping
2284689b0e Fix incorrect virtual function in VideoStream.set_paused 2023-07-20 15:55:18 +02:00
398utubzyt
aac2dfc1b4 Snap CharFX transforms to pixels when enabled 2023-07-20 06:01:08 -07:00
Yuri Roubinski
01101134f4 Make the dragging connections more user-friendly in visual shaders 2023-07-20 15:00:19 +03:00
unknown
cfe98c57b9 Add drag and drop option for line edit and rich text label 2023-07-19 22:18:34 -04:00
Markus Sauermann
b408b05d7d Fix physics passive hovering for some cases
When the parent `SubViewportContainer` ignores mouse with
`MOUSE_FILTER_IGNORE` and also when the mouse is over a `Control`-node,
then the `SubViewport` shouldn't create mouse-move-events for passive
hovering.
2023-07-19 19:25:04 +02:00
kleonc
95809e58d5 Fix arg count checks in SceneDebugger 2023-07-19 18:13:15 +02:00
NL
a77d8b3eb5 Check FLAG_POPUP to close an AcceptDialog when parent is focused 2023-07-19 16:06:02 +02:00
Adam Scott
deb45c0cab
Fix Camera2D crash when edited scene root is null 2023-07-18 20:36:40 -04:00
Hugo Locurcio
4198fc9827
Fix corner radius not scaling with theme scale in the default theme
This also uses rounding consistently for scale multipliers, so that
behavior is more predictable with non-integer scale factors like `1.25`
and `1.5`.
2023-07-19 00:00:40 +02:00
Yuri Sizov
e8aa8c17d2
Merge pull request #79574 from bruvzg/win_nat_d
[Windows] Implement native file selection dialog support.
2023-07-18 19:04:40 +02:00
HolonProduction
89c39c7f9d Fix crash when deleting terrains 2023-07-18 17:52:32 +02:00
bruvzg
d3ca91ad6a [Windows] Implement native file selection dialog support. 2023-07-18 17:23:58 +03:00
Yuri Sizov
182b94c86a Merge pull request #79465 from smix8/navregion_bake_deferred_4.x
Make NavigationRegion3D baking NavMesh on the main thread not finish deferred
2023-07-18 13:15:15 +02:00
Silc Lizard (Tokage) Renew
a3cdacdc4e Make AnimationNodeBlendTree use RBMap insteads HashMap 2023-07-18 17:57:53 +09:00
Markus Sauermann
e6386bc843 Make SubViewportContainer event propagation aware of focused Control
Propagate `InputEvents` without position either
- during the Input-stage, when it has focus or
- during the Unhandled-Input-stage, otherwise

This makes sure that Gui-Input happens in the correct order.

Move "Unhandled key Input" handling before "Unhandled Input" handling,
so that Unicode input with Alt / Ctrl modifiers are sent to the nodes
in the correct order.

Change the default focus mode of `SubViewportContainer` from
`FOCUS_NONE` to `FOCUS_CLICK`, to automatically remove focus from
other `Control`-nodes, when clicking inside a `SubViewport`.
2023-07-17 22:38:35 +02:00
kobewi
de4a3fa151 Unify and streamline connecting to Resource changes 2023-07-17 19:35:57 +02:00
Yuri Sizov
5954c58ee1
Merge pull request #79494 from timothyqiu/no-longer
Update OptionButton min size when disabling Fit to Longest Item
2023-07-17 19:12:03 +02:00
Yuri Sizov
38ccab2ab3
Merge pull request #79138 from aaronfranke/camera-exposure-range-hint
Change property hint range for camera attributes exposure multiplier
2023-07-17 17:17:16 +02:00
Hendrik Brucker
a29a680920 Extract StyleBoxFlat, StyleBoxTexture and StyleBoxLine in their own file 2023-07-17 13:25:00 +02:00
Hugo Locurcio
a39190a18f
Allow using floating-point bone sizes and outline widths in the 2D editor
This is useful when animating pixel art sprites in the 2D editor,
as a value of `1` is often too large when zoomed in.
2023-07-17 12:44:09 +02:00
Markus Sauermann
95d294b97a Separate input-handled-state for different events during physics-picking
Currently the input-handled-state for different events can interfere with
each other.
This PR makes sure, that the input_handled_state is reset before
processing and InputEvent during physics-picking.
2023-07-16 14:36:18 +02:00
Aaron Franke
6a8a9cd279
Change GDScript tests to use InstancePlaceholder as the example abstract 2023-07-15 18:28:08 -05:00
Haoyu Qiu
5384c1a579 Update OptionButton min size when disabling Fit to Longest Item 2023-07-15 11:10:23 +08:00
Yuri Sizov
a7583881af Merge pull request #68460 from Geometror/split_texture_src
Extract and reorganize texture resource classes
2023-07-14 21:28:06 +02:00
Hendrik Brucker
7e21eb7e00 Extract and reorganize texture resource classes 2023-07-14 20:04:21 +02:00
Maxim Kulkin
058604f5b8 Fix crash when saving resources with circular references
When saving resources, marking of already seen resources was
done too late, causing infinite loop traversing referenced resources
and eventual stack overflow. The change marks traversed resource
before descending to it's children, thus when this resource is
encountered again, it is already marked as seen and traversal stops.
2023-07-14 19:20:04 +02:00
Yuri Sizov
0f7625ab46 Merge pull request #76859 from HolonProduction/emission-finished-gpu
Add `finished` signal to GPUParticles
2023-07-14 18:50:56 +02:00
Yuri Sizov
a91f0e6bca Merge pull request #76853 from HolonProduction/emission_finished
Add `finished` signal to CPUParticles
2023-07-14 18:50:51 +02:00
Yuri Sizov
7b0f8d76ad Merge pull request #79455 from timothyqiu/button-clip-internal
Fix Button clipping when internal margins exist
2023-07-14 18:50:15 +02:00
Yuri Sizov
16565fb630 Merge pull request #79426 from sepTN/fix-basis-tweening
Fix `tween_property` on "Basis" to properly update its value
2023-07-14 18:50:12 +02:00
Yuri Sizov
d8c0d63f07 Merge pull request #79393 from Sauermann/fix-window-focux-indicator
Add a default theme for unfocused Windows
2023-07-14 18:50:01 +02:00
Yuri Sizov
ab77d4494d Merge pull request #79392 from smix8/navobstacle2d_debug_pos_4.x
Fix NavigationObstacle2D debug position
2023-07-14 18:49:57 +02:00
Yuri Sizov
177768a7e4 Merge pull request #79373 from KoBeWi/no_need
Convert some Callables to `callable_mp()`
2023-07-14 18:49:53 +02:00
Yuri Sizov
892bc5f966 Merge pull request #79330 from mihe/ray-cast-back-faces
Add `hit_back_faces` property to `RayCast3D`
2023-07-14 18:49:49 +02:00
Yuri Sizov
ead69eba96 Merge pull request #79287 from bitsawer/fix_shader_type_detection
Fix shader type detection
2023-07-14 18:49:44 +02:00
Yuri Sizov
de14f09c1d Merge pull request #79279 from kleonc/animation-fix-transform-subtracting
Fix `Animation::subtract_variant` for affine transforms
2023-07-14 18:49:40 +02:00
Yuri Sizov
5c56206e6c Merge pull request #79011 from bruvzg/pop_all
[RTL] Add `pop_all`, `push_context` and `pop_context` methods, and use it for `print_rich` to avoid unclosed tags.
2023-07-14 18:49:21 +02:00
smix8
bb5f16033d Make NavigationRegion3D baking NavMesh on the main thread not finish deferred
Makes NavigationRegion3D baking NavMesh on the main thread not finish deferred.
2023-07-14 16:15:14 +02:00
Haoyu Qiu
71430cdd48 Fix Button clipping when internal margins exist 2023-07-14 13:59:16 +08:00
Septian
eb7f87e9a8 Fix tween_property on "Basis" to properly update its value 2023-07-13 23:07:23 +07:00
Silc Lizard (Tokage) Renew
1ac2bdd97b Fix NodeTransition with negative time scale 2023-07-13 08:38:53 +09:00
Markus Sauermann
576980f960 Add a default theme for unfocused Windows
At the moment it is impossible to distinguish between focused and
unfocused embedded Windows.
Add a new `theme_item` that is used for coloring the border of
unfocused Windows.
2023-07-12 22:35:03 +02:00
smix8
2512157294 Fix NavigationObstacle2D debug position
Fixes NavigationObstacle2D debug position.
2023-07-12 22:21:58 +02:00
bruvzg
4790da7900
[macOS] Implement optional native file selection dialog support for sandboxed apps. 2023-07-12 22:36:24 +03:00
Yuri Sizov
f49169d6d6 Merge pull request #79037 from dinoplane/move-cached-values
Move cached values into `color_mode.cpp` and apply fixes to OKHSL
2023-07-12 21:02:47 +02:00
Yuri Sizov
a927b22f65 Merge pull request #77257 from rakkarage/tile_animation_sync
Add `TileSetAtlasSource::TileAnimationMode` options and allow to shuffle tile animations
2023-07-12 21:02:31 +02:00
S.V.I. Vilcrow
56e2fad319 Fixed the jumping to function definition using 'Ctrl+LMB' and the 'Lookup Symbol' button. 2023-07-12 21:30:35 +03:00
Yuri Sizov
f53329d045 Merge pull request #78890 from KoBeWi/who_needs_restart_anyway
Allow change import type without restarting editor
2023-07-12 17:16:53 +02:00
Yuri Sizov
7ff2a93952 Merge pull request #72248 from RedwanFox/mainloop_init_order_fix
Ensure that SceneTree is initialized and finalized at correct time
2023-07-12 17:16:05 +02:00
Yuri Sizov
223370cb64 Merge pull request #78383 from Sauermann/fix-physics-object-init
Fix Physics Picking captured Object initialization
2023-07-12 17:15:45 +02:00
Yuri Sizov
4e66c4cdd9 Merge pull request #77191 from smix8/navigationregion_map_change_4.x
Add NavigationRegion function to change navigation map
2023-07-12 17:15:13 +02:00
Yuri Sizov
5058831cf6 Merge pull request #78100 from KoBeWi/commit_necromancy
Use S, V in hue bar of ColorPicker
2023-07-12 17:15:03 +02:00
Yuri Sizov
1978b7c717 Merge pull request #77858 from kinami-imai/expose_videostreamplayer_video_length
Expose VideoStreamPlayer video length
2023-07-12 17:14:44 +02:00
Yuri Sizov
216aa450a6 Merge pull request #77857 from kinami-imai/add_loop_property_to_videostreamplayer
Add `loop` property to VideoStreamPlayer
2023-07-12 17:14:38 +02:00
kobewi
edd23074a2 Convert some Callables to callable_mp() 2023-07-12 15:33:54 +02:00
Yuri Sizov
5167bed9f0 Merge pull request #79053 from Daylily-Zeleen/daylily-zeleen/rich_text_label_missing_default_method_value
Bind missing default value for `RichTextLabel` methods.
2023-07-12 15:09:41 +02:00
Yuri Sizov
509645b038 Merge pull request #78777 from YeldhamDev/tab_hover_fix
Fix delay on tab resizing when (un)hovering tabs
2023-07-12 15:09:31 +02:00
Yuri Sizov
5dff3c4484 Merge pull request #78538 from Sauermann/fix-code-simplifications
Remove unnecessary value assignments throughout the codebase
2023-07-12 15:09:26 +02:00
Yuri Sizov
631d51c46c Merge pull request #78476 from Sauermann/fix-embedded-safe-area
Embedded Popups store their safe_rect in their embedder
2023-07-12 15:09:20 +02:00
Yuri Sizov
b54d6cf466 Merge pull request #78393 from AThousandShips/tree_tooltip
Add ability to set the tooltip text of a `TreeItem` button
2023-07-12 15:09:09 +02:00
Yuri Sizov
6960a1d0e8 Merge pull request #78248 from felaugmar/load-svg-adjustable-scale
Added `Image::load_svg_from_(buffer|string)`
2023-07-12 15:09:03 +02:00
Yuri Sizov
7550b02dfc Merge pull request #77117 from Calinou/richtextlabel-add-pulse-effect
Add a `[pulse]` built-in effect to RichTextLabel
2023-07-12 15:08:43 +02:00
Yuri Sizov
b4a11294e6 Merge pull request #75460 from joao-pedro-braz/add_new_item_stylebox_to_the_tree_control
Add a new "inner_item_margin" Theme constant to the Tree control
2023-07-12 15:08:36 +02:00
Yuri Sizov
53d0e6c2d5 Merge pull request #73691 from Chaosus/vs_depth
Add DEPTH to the visual shader output (for spatial mode)
2023-07-12 14:18:41 +02:00