8171c06036
Merge pull request #102865 from Giganzo/tree-keyboard-nav-rtl
...
Fix Tree keyboard navigation in RTL direction
2025-03-05 12:08:05 -06:00
571cd4de7d
Keep editor SceneTree buttons attached to the cell in Right-To-Left
...
Update tree.cpp.
Fix #102191 .
Update scene/gui/tree.cpp
Co-Authored-By: Tomasz Chabora <kobewi4e@gmail.com >
2025-03-04 03:38:41 +08:00
00527d0588
Fix Tree hover position with multiple columns
2025-02-19 17:09:38 +01:00
26cbaca446
Fix Tree Mouse hover position
2025-02-16 08:45:09 -05:00
bd63123835
Fix Tree keyboard navigation in RTL direction
2025-02-14 16:35:44 +01:00
f418603522
Merge pull request #102749 from timothyqiu/tree-buttons-offset
...
Fix TreeItem button tooltip trigger area offset
2025-02-12 11:21:15 +01:00
387d0e7100
Fix TreeItem button tooltip trigger area offset
2025-02-12 14:26:13 +08:00
5bfc4a5b06
Fix tree selecting hidden items
2025-02-10 02:41:16 +01:00
7f4097a83a
Merge pull request #102116 from Giganzo/tree-get_item_rect
...
Fix `get_item_area_rect` when tree is scrolled
2025-02-05 11:33:58 +01:00
886e5d8084
Don't return Tree items outside visible rect
2025-02-02 00:17:41 +01:00
bde87db443
Fix get_item_area_rect when tree is scrolled
2025-01-30 12:27:03 +01:00
0dc6b7c056
Merge pull request #101280 from Sauermann/fix-focus-rect-meta-access
...
Fix `__focus_rect` meta access error when resizing `Tree`
2025-01-27 09:46:23 -06:00
672fd7b0bb
Merge pull request #101842 from havi05/tree-fix-ui_select
...
Tree - fix `ui_select`
2025-01-21 11:55:28 -06:00
7ad545e091
Merge pull request #101160 from havi05/tree-fix-cursor-selection
...
Tree - fix cusor selection in `multi` selection-mode
2025-01-20 16:25:46 -06:00
522d6fed70
Tree - fix ui_select
2025-01-20 17:23:37 +01:00
f134769506
Fix various typos
...
* Add TODO notes for typos that should be fixed for 5.0
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com >
2025-01-08 14:47:42 +02:00
2a72f78427
Fix __focus_rect meta access when resizing Tree
...
`NOTIFICATION_RESIZED` outputs errors, if `select_mode == SELECT_ROW`.
This PR unifies the access to the item focus rect.
2025-01-08 10:53:46 +01:00
ab5176dfa5
Tree - fix cusor selection in multi selection-mode
2025-01-05 22:23:51 +01:00
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
08508d2e01
Merge pull request #99700 from hpvb/scene_tree_editor_performance
...
Improve Scene Tree editor performance
2024-12-16 17:16:00 +01:00
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
9d10e42a41
Merge pull request #98766 from Calinou/tree-drag-and-drop-use-process
...
Fix Tree drag-and-drop scrolling having low FPS at low Physics Ticks per Second
2024-12-12 14:09:55 +01:00
e6125ef51b
Merge pull request #98763 from AThousandShips/more_sname_uses
...
Use `SceneStringName` in more places
2024-12-02 15:50:44 +01:00
d2c82a8ffc
Merge pull request #97378 from rune-scape/less-const-cast
...
Get rid of easily removable uses of `const_cast`
2024-12-02 15:50:06 +01:00
af56d6e8e8
Use SceneStringName in more places
2024-12-02 14:39:16 +01:00
d58b2e879f
Get rid of easily removable uses of const_cast
2024-12-01 17:50:13 -08:00
77549dd1f3
[Tree] Allow disabling auto generated tooltip for TreeItem
2024-12-01 14:39:51 +01:00
1cad5525d6
Merge pull request #96841 from maidopi-usagi/tree_item_height_cache
...
[Tree] Improve Tree Performance by replacing computed height with TreeItem's cached minimum size
2024-11-10 12:12:45 -06:00
07b7af0c81
replace computed height with cached item minimum size
2024-11-07 03:28:08 +08:00
49f918e596
Fix issue where scrolling to item center would overflow on top
2024-11-05 12:50:34 -05:00
bb813ba7bc
Fix Tree drag-and-drop scrolling having low FPS at low Physics Ticks per Second
...
Scrolling is now performed in process instead of physics process.
This makes scrolling much smoother if Physics Ticks per Second is lower
than the rendered FPS.
2024-11-02 18:45:28 +01:00
b7a0971ad2
Merge pull request #97934 from adamscott/give-AThousandShips-a-break
...
[Codestyle] Set clang-format `RemoveSemicolon` rule to `true`
2024-10-29 19:25:36 -05:00
4aad050067
Merge pull request #97157 from pafuent/fixing_tree_item_get_prev_wrap
...
Fix `TreeItem` `get_prev*` methods when `p_wrap` is `true`
2024-10-25 13:03:42 -05:00
0d350e7108
Set clang-format RemoveSemicolon rule to true
...
- Set clang-format `Standard` rule to `c++20`
2024-10-25 13:49:43 -04:00
b3bcb2dc14
Merge pull request #98299 from timothyqiu/tree-coordinate
...
Fix button click detection when `Tree` is rotated
2024-10-21 16:39:31 -05:00
17642692c5
Fix button click detection when Tree is rotated
2024-10-18 22:43:48 +08:00
ebe1a2d7ec
Add hover state to Tree items display
2024-10-17 00:21:52 +02:00
19081a850d
Merge pull request #95889 from KoBeWi/tree_growing_sideways
...
Allow horizontal scrolling in Tree using Shift
2024-10-04 22:43:17 +02:00
3c365a7fa5
Add auto translate mode for cells in Tree
2024-10-01 21:24:10 +08:00
9c0afbb15c
Fixing TreeItem get_prev_xxx methods when p_wrap is true
...
Fixes #85032
The code that fix the issue is courtesy of @Jesusemora, I just added
unit tests for it and did a rebase with the latest changes on master.
Co-authored-by: Jesusemora <32273722+Jesusemora@users.noreply.github.com >
2024-09-23 17:11:02 -03:00
cc52112144
Merge pull request #96643 from bruvzg/fs_links
...
[FileSystem Dock] Add symlink indicator and tooltip.
2024-09-12 10:28:44 +02:00
325c1cffc4
Merge pull request #96232 from AThousandShips/tree_navigate_row
...
[Tree] Improve navigation with row select mode
2024-09-08 23:21:44 +02:00
da4f5fb953
[FileSystem Dock] Add symlink indicator and tooltip.
2024-09-06 14:55:07 +03:00
13a90e938f
Merge pull request #70096 from rune-scape/stringname-dict
...
StringName Dictionary keys
2024-09-03 17:38:06 +02:00
168676a7c5
Merge pull request #96000 from kerstop/deadzone_slider_fix
...
Fix deadzone slider not working correctly
2024-09-03 11:43:20 +02:00
68a04bbf9a
Merge pull request #96142 from timothyqiu/one-signal-to-invalidate-them-all
...
Fix collapsing `TreeItem` not updating horizontal scrollbar
2024-09-02 18:08:07 +02:00
154049ce17
StringName Dictionary keys
...
also added 'is_string()' method to Variant
and refactored many String type comparisons to use it instead
2024-08-29 13:39:27 -07:00
5c21c0d8d3
[Tree] Improve navigation with row select mode
...
Allows navigating with the `ui_left/right` actions when selecting rows,
fixing a navigation inconsistency
2024-08-28 18:32:45 +02:00
d16dcbb3ac
Fix collapsing TreeItem not updating horizontal scrollbar
2024-08-27 11:49:27 +08:00
2fd39eca30
fix deadzone slider not working correctly
2024-08-23 12:29:24 -05:00