Commit Graph

13268 Commits

Author SHA1 Message Date
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
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