1
0
mirror of https://github.com/godotengine/godot.git synced 2026-01-07 19:53:17 +00:00
Commit Graph

5888 Commits

Author SHA1 Message Date
Rémi Verschelde
07093c4a34 Merge pull request #100275 from KoBeWi/highest_level_clearance
Don't emit `text_changed` signal when clearing empty LineEdit
2025-01-07 23:17:13 +01:00
Rémi Verschelde
b194e050d7 Merge pull request #91333 from YeldhamDev/working_on_this_felt_like_constantly_walking_into_rakes
Make `PopupMenu/Panel` shadows properly visible again
2025-01-07 23:17:02 +01:00
bruvzg
cc1db569e1 [TextServer] Improve embedded objects handling performance. 2025-01-07 08:01:29 +02:00
Rémi Verschelde
8c78540d47 Merge pull request #100931 from beicause/color-picker-hue-accuracy-okhsl
ColorPicker: Improve the accuracy of hue slider in OKHSL mode
2025-01-06 22:48:01 +01:00
Rémi Verschelde
c1f65b429d Merge pull request #100329 from eviltrout/add-custom-line-offset
Add `get_selection_line_offset` to `RichTextLabel`
2025-01-06 22:47:33 +01:00
Rémi Verschelde
11f95e7feb Merge pull request #99350 from bruvzg/fs_mime
Support MIME types in file dialog filters on macOS and Linux.
2025-01-06 22:46:59 +01:00
Rémi Verschelde
f99a465956 Merge pull request #81532 from wlsnmrk/button-focus-loss-event-fix
Fix `button_up` and `button_down` signals with focus changes or multiple inputs
2025-01-06 22:46:26 +01:00
Pāvels Nadtočajevs
e1f129cb52 Support MIME types in file dialog filters on macOS and Linux. 2025-01-04 22:05:35 +02:00
LuoZhihao
9eeeadb037 ColorPicker: Improve the accuracy of hue slider in OKHSL mode 2025-01-04 21:36:27 +08:00
Rémi Verschelde
32b081b2ff Merge pull request #101005 from Sauermann/fix-graph-node-crash
Fix nullptr crash with freed `GraphNode` in GraphEditArranger
2025-01-03 00:50:02 +01:00
Rémi Verschelde
2f4cb705c3 Merge pull request #100930 from beicause/fix-color-picker-cursor-position-in-okhsl
ColorPicker: Fix cursor position in OKHSL wheel
2025-01-03 00:49:37 +01:00
Rémi Verschelde
703552c51b Merge pull request #100240 from WhalesState/line-edit-focus
`LineEdit` add member `keep_editing_on_text_submit`
2025-01-03 00:48:34 +01:00
Mounir Tohami
e89c196a80 LineEdit add member keep_editing_on_text_submit.
Allow users to exit edit mode when Enter is pressed.
2025-01-02 23:41:27 +02:00
Markus Sauermann
54373160df Fix Crash with GraphNode
When using `queue_free()` on GraphNodes, `p_from` can become `nullprt`.
This PR adds a check to prevent crashes in these situations.
2025-01-01 22:20:57 +01:00
LuoZhihao
47db9c0405 ColorPicker: Fix cursor position in OKHSL wheel 2024-12-30 22:25:20 +08:00
A Thousand Ships
a1846b27ea Improve use of Ref.is_null/valid
Use `is_null` over `!is_valid` and vice versa.
2024-12-23 16:35:02 -05:00
Thaddeus Crews
98c3138804 Merge pull request #92717 from KoBeWi/twisted_frying_pan
Add warped panning to every ViewPanner instance
2024-12-23 11:15:16 -06:00
Yufeng Ying
73d85f46c9 Remove unused headers in scene.
Co-authored-by: Thaddeus Crews <repiteo@outlook.com>

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-12-24 00:40:09 +08:00
Rémi Verschelde
a7a2a12bfd Merge pull request #100671 from bruvzg/get_menu
[MenuBar] Use PopupMenu title property as a menu name.
2024-12-20 23:57:47 +01:00
Rémi Verschelde
8a743f23e6 Merge pull request #98385 from RandomShaper/thread_yield
Rationalize busy waits
2024-12-20 23:56:39 +01:00
Pāvels Nadtočajevs
9604e98a52 [MenuBar] Use PopupMenu title property as a menu name. 2024-12-20 23:35:07 +02:00
kobewi
9a96393f46 Add warped panning to every ViewPanner instance 2024-12-20 17:40:27 +01:00
Thaddeus Crews
ddf6e9e3eb Merge pull request #100595 from bruvzg/win_drv_letter
[Windows, FileDialog] Prepend drive letter to the absolute paths without drive letter.
2024-12-19 20:00:15 -06:00
Thaddeus Crews
075567a5b3 Merge pull request #100456 from Sauermann/proposal-hovered-connection-highlight
Highlight hovered `GraphEdit` connection by widening the line
2024-12-19 20:00:08 -06:00
Thaddeus Crews
cbfc34d279 Merge pull request #100444 from Sauermann/fix-view-panner-mouse-warp
Fix `ViewPanner` panning-mouse-warp
2024-12-19 20:00:01 -06:00
Markus Sauermann
0a875ab3bb Highlight hovered GraphEdit connection by widening the line
This change causes the connections to be additionally highlighted by
widening the line with a configurable factor.
2024-12-20 00:55:35 +01:00
Markus Sauermann
4887172a59 Fix ViewPanner panning mouse warp
Currently the mouse cursor jumps in unexpected ways, when a `ViewPanner`
is used in SubViewports or embedded Windows.

This is caused by providing wrong coordinate systems to
Input::warp_mouse_motion.

This PR replaces the use of `Input::warp_mouse_motion` with
`Viewport::wrap_mouse_in_rect` and makes sure, that the correct
coordinate systems are used.

This change makes it necessary, that all classes, that currently
use ViewPanner, need to provide the correct Viewport to ViewPanner.
2024-12-20 00:28:49 +01:00
bruvzg
b9a00feb66 [Windows, FileDialog] Prepend drive letter to the absolute paths without drive letter. 2024-12-19 09:47:46 +02:00
Rémi Verschelde
e69a5618c0 Merge pull request #100494 from havi05/bbcode-rainbow-effect
Fix `RichTextLabel` bbcode rainbow play reversed and paused
2024-12-18 17:23:36 +01:00
Rémi Verschelde
ed51ec999c Merge pull request #100451 from larspet/update-syntax-highlight
Clear syntax highlighter cache when theme or syntax highlighter is changed
2024-12-17 16:19:37 +01:00
Rémi Verschelde
b69a28a613 Merge pull request #100429 from havi05/itemlist-draw-focus-syle-last
`Itemlist` draw focus stylebox after items
2024-12-17 16:19:25 +01:00
Rémi Verschelde
98ca63ae47 Merge pull request #99849 from Sauermann/fix-menu-button-hover
Fix `switch_on_hover` for `MenuButton`
2024-12-17 16:19:03 +01:00
Rémi Verschelde
1c94d13e21 Merge pull request #99721 from ryevdokimov/fix-spin-box
Fix removing last digit in spinbox while `update_on_text_changed` is true
2024-12-17 16:18:58 +01:00
havi05
b905014128 Fix RichTextLabel bbcode rainbow play reversed and paused 2024-12-16 23:52:26 +01:00
Markus Sauermann
9c5886f95a Fix switch_on_hover for MenuButton
Previously, embedded Windows (the opened menu) were not accounted for
when checking for `switch_on_hover`.

`gui_get_hovered_control()` is more appropriate to check for the hover
status of other `MenuButton` nodes at the mouse position.

Explain the usage of the incorrectly used function in a comment.
2024-12-16 22:11:42 +01:00
havi05
0ee78a79cf Itemlist - draw focus stylebox after items 2024-12-16 19:49:14 +01:00
Thaddeus Crews
4d4c229a83 Merge pull request #100432 from markdibarry/add_get_line_range_rtl
Add `get_line_range()` to `RichTextLabel`
2024-12-16 12:09:54 -06:00
Thaddeus Crews
9c9af038d5 Merge pull request #91060 from dalexeev/code-edit-add-doc-tooltips
Code Editor: Add documentation tooltips
2024-12-16 12:09:45 -06:00
Thaddeus Crews
017f0eb33a Merge pull request #97449 from Geometror/ge-connections-prop
[GraphEdit] Make connections a property
2024-12-16 12:09:43 -06:00
Thaddeus Crews
ee7de7d088 Merge pull request #99361 from havi05/itemlist-hover-on-selected
`ItemList` highlight selected items and draw `cursor`-stylebox last
2024-12-16 12:09:42 -06:00
Rémi Verschelde
08508d2e01 Merge pull request #99700 from hpvb/scene_tree_editor_performance
Improve Scene Tree editor performance
2024-12-16 17:16:00 +01:00
Hendrik Brucker
e5be03a42b [GraphEdit] Make connections a property 2024-12-16 02:28:34 +01:00
Mark DiBarry
53a1be61a1 Add get_line_range to RTL 2024-12-15 19:09:42 -05:00
Lars Pettersson
2c16cfb52a Clear cache on syntax highlighter or theme change 2024-12-15 22:41:30 +01:00
Danil Alexeev
80d11500b5 Code Editor: Add documentation tooltips 2024-12-15 10:51:33 +03:00
havi05
b05111799b ItemList - highlight selected items && draw cursor last 2024-12-14 19:03:43 +01:00
Rémi Verschelde
ffe0cdebab Merge pull request #99355 from havi05/itemlist-toggle-mode
Add `Toggle` selection mode to `ItemList`
2024-12-14 18:25:25 +01:00
Rémi Verschelde
36c6ce92db Merge pull request #97660 from HolonProduction/completion-cancelation-🌈
GUI: Only cancel completion with the `ui_cancel` action
2024-12-14 18:25:13 +01:00
Pedro J. Estébanez
4f8dd96b3d Rationalize busy waits 2024-12-13 10:14:26 +01:00
HP van Braam
6f7525c396 Improve Scene Tree editor performance
We now cache the Node*<>TreeItem* mapping in the SceneTreeEditor. This
allows us to make targeted updates to the Tree used to display the scene
tree in the editor.

Previously on almost all changes to the scene tree the editor would
rebuild the entire widget, causing a large number of deallocations an
allocations. We now carefully manipulate the Tree widget in-situ saving
a large number of these allocations.

In order to know what Nodes need to be updated we add a
editor_state_changed signal to Node, this is a TOOLS_ENABLED,
editor-only signal fired when changes to Node happen that are relevant
to editor state.

We also now make sure that when nodes are moved/renamed we don't check
expensive properties that cannot contain NodePaths. This saves a lot of
time when SceneTreeDock renames a node in a scene with a lot of
MeshInstances. This makes renaming nodes go from ~27 seconds to ~2
seconds on large scenes.

SceneTreeEditor instances will now also not do all of the potentially
expensive update work if they are invisible. This behavior is turned off
by default so it won't affect existing users. This change allows the
editor to only update SceneTreeEditors that actually in view. In
practice this means that for most changes instead of updating 6
SceneTreeEditors we only update 1 instantly, and the others only when
they become visible.

There is definitely more that could be done, but this is already a
massive improvement. In complex scenes we see an improvement of 10x,
things that used to take ~30 seconds now only take 2.

This fixes #83460

I want to thank KoBeWi, TokisanGames, a-johnston, aniel080400 for
their tireless testing. And AeioMuch for their testing and providing a
fix for the hover issue.
2024-12-12 22:47:05 +01:00