Commit Graph

5843 Commits

Author SHA1 Message Date
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
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
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
kobewi
cb4ceb823c Make scan for projects threaded 2024-12-12 22:31:32 +01:00
havi05
b29e93bb51 ItemList - Add Toggle mode 2024-12-12 17:33:04 +01:00
Rémi Verschelde
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
Thaddeus Crews
66dd2895fa Merge pull request #100208 from eviltrout/highlight-bg-fix
Fix user selection on top of `bgcolor` areas in a `RichTextLabel`
2024-12-11 17:36:05 -06:00
Chaosus
9a8d6628de [Scene] Add SceneStringName::hover 2024-12-11 11:11:25 +03:00
Thaddeus Crews
69c67ede17 Merge pull request #88950 from bruvzg/excap
[macOS, Windows] Add support for excluding windows from a screenshot.
2024-12-10 14:16:10 -06:00
bruvzg
9fece033ab [macOS, Windows] Add support for excluding windows from a screenshot. 2024-12-10 11:00:13 +02:00
Chaosus
ba39b078f5 [Scene] Add SceneStringName::FlatButton 2024-12-10 11:12:26 +03:00
Thaddeus Crews
e9679a28ff Merge pull request #91604 from nongvantinh/implement-7946
Save color palette as resources to reuse later
2024-12-09 14:33:29 -06:00
Robin Ward
1e749f628e Fix user selection on top of bgcolor areas in a RichTextLabel 2024-12-09 11:37:37 -05:00
Nông Văn Tình
e6a49ab6ac Save color palette as resources to reuse later
Co-authored-by: Micky <66727710+Mickeon@users.noreply.github.com>
2024-12-06 20:16:06 +07:00
Timo Schwarzer
1daa9a180b Fix Control offset_* property types 2024-12-06 09:06:55 +01:00
bruvzg
121e640637 [RTL] Fix indent in tables and tables in indent. 2024-12-03 23:30:08 +02:00
Thaddeus Crews
44cda51110 Merge pull request #98812 from bruvzg/macos_bundles_as_file
[macOS] Handle bundles as files in the embedded file dialogs.
2024-12-03 14:41:07 -06:00
Thaddeus Crews
6472e9e961 Merge pull request #99310 from syntaxerror247/filedialog_issue
Android: Set default ACCESS_FILESYSTEM root
2024-12-03 14:41:03 -06:00
Thaddeus Crews
ec333a8c32 Merge pull request #99564 from JekSun97/get_connetion_count_method_graphedit
Add `get_connection_count` function to `GraphEdit`
2024-12-03 14:41:02 -06:00
Thaddeus Crews
c72fe8e61f Merge pull request #98082 from bruvzg/rtl_keep_tag_stack
[RTL] Keep tag stack between `append_text` calls.
2024-12-03 14:40:49 -06:00
bruvzg
d5e599f77e [macOS] Handle bundles as files in the embedded file dialogs. 2024-12-03 12:41:52 +02:00
bruvzg
4b23e504e8 [RTL] Keep tag stack between append_text calls. 2024-12-02 18:45:03 +02:00
Pāvels Nadtočajevs
6a331dafe1 Fix native file dialog filter selection in save dialogs. 2024-12-02 18:38:53 +02:00
Anish Mishra
7f64f230a7 Android: Set FileDialog default Filesystem root 2024-12-02 21:58:09 +05:30
Rémi Verschelde
0c4ad02e6d Merge pull request #99668 from bruvzg/rtl_rn_notes
[RTL] Parse "\r\n" as a single paragraph break, add some documentation notes.
2024-12-02 17:20:35 +01:00
Rémi Verschelde
e78ad1dfca Merge pull request #99665 from bruvzg/rtl_clean
[RTL] Fix clearing text with `set_text("")`.
2024-12-02 17:20:31 +01:00
Rémi Verschelde
aab12fd273 Merge pull request #99652 from bruvzg/fd_cd_win
[Windows] Fix root and current folder in native file dialog.
2024-12-02 17:20:27 +01:00
Rémi Verschelde
60e1490df1 Merge pull request #99644 from bruvzg/fd_all_name
Change file dialog all files filter name from `All Files (*)` to `All Files (*.*)`.
2024-12-02 17:20:23 +01:00
Rémi Verschelde
8f79640dc3 Merge pull request #95511 from bruvzg/btn_oversampling_reshape
Reshape and update button on oversampling change.
2024-12-02 17:19:47 +01:00
Pāvels Nadtočajevs
2210dd1126 [RTL] Parse "\r\n" as a single paragraph break, add some documentation notes. 2024-12-02 17:50:04 +02:00
Rémi Verschelde
eefd32ba16 Merge pull request #99915 from bruvzg/lbl_width
[Label] Fix min. width
2024-12-02 15:52:15 +01:00
Rémi Verschelde
715a7bac00 Merge pull request #99906 from bruvzg/lbl_empty_lines
[Label] Fix empty paragraph height.
2024-12-02 15:52:11 +01:00
Rémi Verschelde
204ce5a29a Merge pull request #99882 from vgezer/fixcolorpicker
Add horizontal center for ColorPicker buttons
2024-12-02 15:52:04 +01:00
Rémi Verschelde
6c01b739b0 Merge pull request #99822 from havi05/lineedit-shortcuts
Allow copy/select shortcuts when `editable` is false in `LineEdit`
2024-12-02 15:51:48 +01:00
Rémi Verschelde
2f4f2e26a1 Merge pull request #99708 from Giganzo/rtl-slider
Fix RTL visuals for sliders
2024-12-02 15:51:20 +01:00
Rémi Verschelde
200bb202ba Merge pull request #99481 from bruvzg/meta_tooltip
[RTL] Add tooltip support to meta/url tag.
2024-12-02 15:51:12 +01:00
Rémi Verschelde
e6125ef51b Merge pull request #98763 from AThousandShips/more_sname_uses
Use `SceneStringName` in more places
2024-12-02 15:50:44 +01:00
Rémi Verschelde
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
A Thousand Ships
af56d6e8e8 Use SceneStringName in more places 2024-12-02 14:39:16 +01:00
Pāvels Nadtočajevs
dc71fbacc5 [RTL] Add tooltip support to meta/url tag. 2024-12-02 15:26:14 +02:00
JekSun97
95ca0aa7ad Add get_connetion_count function to GraphEdit 2024-12-02 19:15:37 +06:00
Pāvels Nadtočajevs
e8f3bebb5d [Label] Fix min. width 2024-12-02 07:57:00 +02:00
rune-scape
d58b2e879f Get rid of easily removable uses of const_cast 2024-12-01 17:50:13 -08:00