Commit graph

5562 commits

Author SHA1 Message Date
Rémi Verschelde
b4eacfe0ce
Merge pull request #95285 from Calinou/codeedit-completion-color-background-translucent
Draw a checkerboard behind translucent colors in CodeEdit autocompletion previews
2024-08-27 22:27:49 +02:00
Rémi Verschelde
9e1c63a051
Merge pull request #94748 from aaronp64/tree_perf
Improve `Tree` performance
2024-08-27 22:27:30 +02:00
Rémi Verschelde
62e98edf0f
Merge pull request #83070 from aaronfranke/textedit-fit-width
Implement fit content width in TextEdit
2024-08-27 22:27:09 +02:00
Rémi Verschelde
5a61e10e09
Merge pull request #89265 from davthedev/spinbox-buttons-refactor
Improve SpinBox interaction, split arrows, add theme attributes
2024-08-27 16:54:39 +02:00
Rémi Verschelde
a041772ecf
Merge pull request #93940 from Mickeon/deprecate_RichTextLabel_is_ready
Add RichTextLabel `is_finished()`, deprecate `is_ready()`
2024-08-26 23:28:42 +02:00
Rémi Verschelde
588cf16630
Merge pull request #84840 from kleonc/control-get-transform-simplification
Simplify `Control` internal transform calculation
2024-08-26 23:28:08 +02:00
Rémi Verschelde
c9e5008966
Merge pull request #95857 from KoBeWi/novel_variant_of_0
Always store ID of PopupMenu items
2024-08-25 20:18:14 +02:00
David Giardi
e371587147 Improve SpinBox interaction, split arrows, add theme attributes 2024-08-23 18:21:20 +02:00
Rémi Verschelde
091212b4f1
Merge pull request #93602 from aaronp64/inspector_latency
Improve Editor Inspector/Theme item lookup performance
2024-08-22 00:10:26 +02:00
aaronp64
7593e55527 Improve Editor Inspector/Theme item lookup performance
Changes to reduce the latency between changing node selection in the editor and seeing the new node reflected in the Inspector tab

- Use Vector instead of List for ThemeOwner::get_theme_type_dependencies and related functions
- Use Vector instead of List for ThemeContext::themes, set_themes(), and get_themes()
- Add ClassDB:get_inheritance_chain_nocheck to get all parent/ancestor classes at once, to avoid repeated ClassDB locking overhead
- Update BIND_THEME_ITEM macros and ThemeDB::update_class_instance_items to use provided StringNames for call to ThemeItemSetter, instead of creating a new StringName in each call

These changes reduce the time taken by EditorInspector::update_tree by around 30-35%
2024-08-20 13:39:40 -04:00
kobewi
5279fec60f Always store ID of PopupMenu items 2024-08-20 15:33:21 +02:00
Rémi Verschelde
a105553a1d
Merge pull request #92841 from kleonc/menu-bar-proper-canvas-transform-popup-calculation
Fix `MenuBar` popup placement assuming it's in viewport default canvas
2024-08-19 16:04:54 +02:00
Rémi Verschelde
db5003519a
Merge pull request #89554 from smnast/backspace-unfold
Fix backspace always unfolding previous line
2024-08-19 16:04:34 +02:00
kleonc
5be4eb9fc6 Simplify Control internal transform calculation 2024-08-19 12:14:41 +02:00
kit
93a81dd7aa Fix TextEdit caret movement at start of wrapped lines 2024-08-16 15:52:03 -04:00
Micky
edb3d99942 Add RichTextLabel is_finished(), deprecate is_ready() 2024-08-16 20:08:38 +02:00
Rémi Verschelde
f01e052162
Merge pull request #95549 from timothyqiu/split-translation-server
Split `TranslationServer` into its own file
2024-08-16 14:36:16 +02:00
Rémi Verschelde
aed6c351c6
Merge pull request #95301 from bruvzg/rtl_sel_fixes
Fix `TextServer::shaped_text_*_character_pos` for the first character of wrapped string. Allow starting/ending RTL selection before line start.
2024-08-16 14:33:26 +02:00
Haoyu Qiu
7343dc3a5d Split TranslationServer into its own file 2024-08-15 15:00:47 +08:00
bruvzg
7f6c14522c
Stop popup release timeout on click. 2024-08-12 19:35:20 +03:00
Hugo Locurcio
fb88658cc8
Draw a checkerboard behind translucent colors in CodeEdit autocompletion previews
This makes translucent colors easier to interpret as such
and is consistent with how they're displayed in ColorPicker.
2024-08-09 00:03:11 +02:00
bruvzg
932acce8f2
Fix TextServer::shaped_text_*_character_pos for the first character of wrapped string. Allow starting/ending RTL selection before line start. 2024-08-09 00:03:00 +03:00
bruvzg
460b538746
[PopupMenu] Increase mouse button release timeout and reset it from post_popup. 2024-08-07 10:22:12 +03:00
Rémi Verschelde
c81aa6e1fc
Merge pull request #95122 from kleonc/tab_bar_clear_close_button_rect
Clear `TabBar` tab close button's rect after it's hidden
2024-08-06 12:31:57 +02:00
Aaron Franke
3b8afcd10c
Implement fit content width in TextEdit
Co-authored-by: Kit Bishop <kitbdev@gmail.com>
2024-08-04 15:14:56 -07:00
kleonc
d1740e6cbf Clear TabBar tab close button's rect after it's hidden 2024-08-04 11:59:37 +02:00
Hendrik Brucker
1f0eddca70 Fix GraphEdit port snapping in certain edge cases 2024-08-02 12:38:53 +02:00
Rémi Verschelde
6e50da8a37
Merge pull request #94931 from KoBeWi/1_window_1_hack
Use legacy color picking in single window mode
2024-08-01 00:06:38 +02:00
Rémi Verschelde
5271a39279
Merge pull request #94810 from maidopi-usagi/graphedit_signal_fix
[GraphEdit] Correctly disconnect signal to `connection_layer`
2024-07-30 12:28:55 +02:00
kobewi
385284311a Use legacy color picking in single window mode 2024-07-29 23:44:01 +02:00
Rémi Verschelde
46aff5ce10
Merge pull request #94848 from kitbdev/fix-placeholder-fit-content
Fix TextEdit placeholder fit content height
2024-07-29 15:17:32 +02:00
kit
b6c054e793 Fix TextEdit placeholder fit content height 2024-07-27 17:14:51 -04:00
kit
36677798f1 Fix TextEdit scroll properties editor hint suffix 2024-07-26 18:18:29 -04:00
maidopi-usagi
04705d2899 Fix leaked signal connection to connection_layer. 2024-07-27 01:34:03 +08:00
aaronp64
040f241f39 Improve Tree performance
Added TreeItem::last_child to avoid needing to iterate through all children to get to the end.  This mainly helps in cases where one TreeItem has many children (1000s), and new children are added to the end, as each add had to iterate through all previously added children.
2024-07-26 11:32:45 -04:00
Rémi Verschelde
73bcfec23a
Merge pull request #94621 from Giganzo/scroll-container-rtl-fix
ScrollContainer: Fix RTL on follow focus
2024-07-25 09:15:06 +02:00
Rémi Verschelde
05504ebf27
Merge pull request #94439 from kitbdev/fix-reopen-hscroll
Fix ScriptEditor scrolling horizontally when reopening script
2024-07-23 15:55:32 +02:00
Giganzo
7e549aa52e Fix rtl on follow focus
Change right_margin to side_margin
2024-07-23 10:29:55 +02:00
Rémi Verschelde
6694f55f40
Merge pull request #94606 from bruvzg/rtl_msdf_r
[RTL] Fix text size rounding with MSDF fonts.
2024-07-22 14:13:17 +02:00
Rémi Verschelde
3018178d3f
Merge pull request #94286 from aaronp64/flowcontainer_resort_crash
Avoid `FlowContainer` crash with `TextureRect` using EXPAND_FIT_* expand modes
2024-07-22 14:12:48 +02:00
bruvzg
93ccf8e9e4
[RTL] Fix text size rounding with MSDF fonts. 2024-07-22 07:48:29 +03:00
aaronp64
5682cc7b81 Avoid FlowContainer crash with TextureRect using EXPAND_FIT_* expand modes
When a FlowContainer had a TextureRect child using any of the EXPAND_FIT_* expand modes, it could crash when changing the FlowContainer's minimum size, or that of its children.  This was due to the TextureRect resizing in FlowContainer::_resort, updating its minimum size, and triggering another _resort.  If the TextureRect's minimum size changed in a way that caused any of the FlowContainer's children to be put on a different line, it could repeatedly cause _resort to be called again, moving the children back and forth between the old and new lines.

This change is for FlowContainer::_resort to give a warning for TextureRects with EXPAND_FIT_* expand modes when multiple lines are used, and just keep the TextureRect size the same in that case.  This is similar to the check added to AspectRatioContainer in godotengine#73396, but attempting to still support it in FlowContainer when possible.  In the case where the TextureRect is forced to stay the same size, there may be some overlap between the FlowContainer's children, but should no longer crash.
2024-07-21 13:09:22 -04:00
Rémi Verschelde
7d71b4be37
Merge pull request #94422 from m4gr3d/fix_input_locking_issue
Fix input lock issue when drag scrolling on a `Tree` element on touchscreen devices
2024-07-18 15:38:17 +02:00
A Thousand Ships
832695eb2c
[Tests] Fix various unit tests on minimal builds 2024-07-18 15:17:28 +02:00
Fredia Huya-Kouadio
70d450d086 Fix issue causing input lock when drag scrolling a Tree element on touchscreen devices
Prior to this fix, scrolling via mouse drag on touchscreen devices, and
drag&drop operation on a `TreeItem` element would conflict with each other
preventing the drag scroll from being released when the mouse button is
released.

The issue is addressed by disabling drag&drop when drag scrolling is ongoing.
2024-07-18 04:09:54 -07:00
Rémi Verschelde
fa2266716e
Merge pull request #94363 from bruvzg/fix_code_completion_scroll
[macOS] Fix code completion list scrolling with trackpad.
2024-07-17 15:45:10 +02:00
Rémi Verschelde
5da03541a1
Merge pull request #93749 from alvinhochun/gui-snap-to-pixel-round-halfway-to-positive
Change GUI controls pixel snap to round halfway towards positive infinity (`floor(x + 0.5)`)
2024-07-17 15:44:43 +02:00
A Thousand Ships
d4cf294b35
Fix potential null access in TextEdit 2024-07-17 13:35:22 +02:00
Rémi Verschelde
78120c66cc
Merge pull request #94085 from anniryynanen/min-size-hidden-parent
Fix container minimum size with hidden parent
2024-07-17 11:43:07 +02:00
kit
f8df6b1c70 Fix ScriptEditor scrolling horizontally on reopen 2024-07-16 11:19:58 -04:00