Commit Graph

5537 Commits

Author SHA1 Message Date
Haoyu Qiu b2d5a06828 Fix buttons offset to the right when dialog is at minsize 2024-04-18 21:12:34 +08:00
Haoyu Qiu c78e9c3fbd Fix TreeItem button handling
- Fix incorrect tooltip and `get_button_id_at_position()` when column
  title is visible and when RTL layout is used
- Take `button_margin`, `h_separation`, and `item_margin` into account
2024-04-18 18:51:36 +08:00
Rémi Verschelde 2543d192c3
Merge pull request #90842 from timothyqiu/revert-79792
Revert "Correctly display tooltips for buttons in Tree when they overlap cell content
2024-04-18 12:25:08 +02:00
Rémi Verschelde a202027efe
Merge pull request #90838 from bruvzg/btn_theme_rounding
[Button] Fix theme elements size rounding errors not keeping sufficient space for the text.
2024-04-18 12:25:05 +02:00
Rémi Verschelde 0dfb48e58d
Merge pull request #89693 from Calinou/dialogs-add-button-minimum-size
Add minimum width/height to dialog buttons
2024-04-18 12:24:20 +02:00
Rémi Verschelde 043ca7c63c
Merge pull request #88306 from KoBeWi/PropertyListHelper_will_come_for_you
Add PropertyListHelper in all simple cases
2024-04-18 12:24:17 +02:00
Rémi Verschelde 3a88373a4c
Merge pull request #86553 from Koyper/fix_popup_panel_content_scaling
Fix non-embedded tooltips, popups and dialogs resizing to match Viewport content scale factors != 1.0
2024-04-18 12:24:11 +02:00
Haoyu Qiu 00f0043227 Revert "Correctly display tooltips for buttons in Tree when they overlap cell content"
This reverts commit 8278a5f274.
2024-04-18 17:35:26 +08:00
bruvzg 45bde2b5b0
[Button] Fix theme elements size rounding errors not keeping sufficient space for the text. 2024-04-18 11:48:46 +03:00
Hugo Locurcio 1e8526659c
Add minimum width/height to dialog buttons
This makes buttons with short texts such as "OK" or "Close"
easier to click, especially on a touchscreen.

This is exposed to projects via `buttons_min_width` and `buttons_min_height`
theme items in AcceptDialog (and therefore ConfirmationDialog and FileDialog),
with the default values being 0 to preserve compatibility with existing projects.
2024-04-17 23:48:05 +02:00
Koyper 0881c81c13 Fix non-embedded Windows resizing to match Viewport content scale factor 2024-04-17 09:30:16 -05:00
Rémi Verschelde fad6897af0
Merge pull request #90639 from YeldhamDev/stay_open_please
Fix submenus erroneously closing on some occasions
2024-04-17 10:58:46 +02:00
bruvzg 524a20f460
[RTL] Add support for character code bb tag. 2024-04-15 11:25:50 +03:00
Haoyu Qiu 48f1e5b561 Don't store deprecated auto-translate property 2024-04-15 14:23:24 +08:00
Rémi Verschelde 41fc152232
Merge pull request #90633 from YeldhamDev/the_popup_is_not_wearing_any_panels
Remove `Popup`'s unused "panel" style
2024-04-14 14:39:15 +02:00
Michael Alexsander 7c75355541
Remove `Popup`'s unused "panel" style 2024-04-13 15:18:12 -03:00
Michael Alexsander 978ffb39bf
Fix submenus erroneously closing on some occasions 2024-04-13 15:10:19 -03:00
kobewi e95e954c68 Add PropertyListHelper in all simple cases 2024-04-11 18:13:29 +02:00
Rémi Verschelde 42e8f42d87
Merge pull request #90455 from kitbdev/te-fix-caret-line-end
Fix caret last fit when moving to line end
2024-04-10 17:49:53 +02:00
bruvzg d34c1f7733
[RTL] Fix dropcaps and list prefixes not taking visible characters into account. 2024-04-10 11:08:57 +03:00
bruvzg fe8737da49
[RTL] Move shadow and foreground/background boxes drawing into a separate draw steps. 2024-04-09 21:44:53 +03:00
kit a1bde1b9db Fix caret last fit when moving to line end 2024-04-09 14:06:57 -04:00
Michael Alexsander adea1a4b9b
Fix `TabContainer` desync when tabs share names 2024-04-09 02:02:05 -03:00
Michael Alexsander 44e2c56daa
Fix built-in `FileDialog` appearing instead of the native one on some cases 2024-04-06 15:45:45 -03:00
Rémi Verschelde 54116086af
Merge pull request #89956 from KoBeWi/warning!_self_destruct_sequence_activated
Remove Control z-index warning
2024-04-05 12:16:00 +02:00
kobewi c3d2fab1e5 Remove Control z-index warning 2024-04-04 17:22:04 +02:00
Hendrik Brucker a81561cbd9 Add GraphFrame and integrate it in VisualShader 2024-04-04 15:11:00 +02:00
Rémi Verschelde 0df9c16d81
Merge pull request #89993 from Sauermann/fix-textedit-clip-contents
Make `TextEdit.clip_contents` more transparent to users
2024-04-04 14:35:54 +02:00
Rémi Verschelde b345614adb
Merge pull request #89977 from aqfranco/master
Fix TreeItem shows cell edit in the wrong column when `select_mode=Row` and TreeItem has multiple columns
2024-04-04 14:35:44 +02:00
Rémi Verschelde 27dec32699
Merge pull request #89735 from bruvzg/ed_native_fd2
[Native File Dialog] Add support for using native dialogs in the editor.
2024-04-04 14:31:39 +02:00
Rémi Verschelde 2ac88339e4
Merge pull request #89721 from KoBeWi/position_who
Rename some arguments called "position"
2024-04-04 14:31:35 +02:00
Markus Sauermann 94e1943f02 Make `TextEdit.clip_contents` more transparent to users
Instead of ignoring `TextEdit.clip_contents`, use it with a default
value `true`. in the same way as `RichTextLabel`.
2024-03-28 21:07:27 +01:00
Andre Franco 5c19fcbd57 Fix #88892: TreeItem shows cell edit in the wrong column when SelectMode=Row and TreeItem has multiple columns
Editor would not be brought up when clicking on all but the last column on a TreeItem with SelectMode=Row with
multiple columns and when the editor was being brought up when clicking on the last column, it was editing the first column

Fixed draw_item, gui_input and edit_selected functions by setting set_meta parameter for each column
Fixed select_single_item function by changing selected_col depending on input
2024-03-28 15:31:42 +00:00
bruvzg 61f7145f43
[Native File Dialog] Add support for using native dialogs in the editor. 2024-03-28 11:53:03 +02:00
kobewi 25f9f923a1 Rename some arguments called "position" 2024-03-27 01:28:24 +01:00
bruvzg dc01658ee9
[DisplayServer] Add separate feature flags for different native dialog types. 2024-03-26 15:18:06 +02:00
Rémi Verschelde 37766c4ef8
Merge pull request #89625 from kitbdev/not-the-end-of-the-line
Fix TextEdit selection end of line drawing for wrapped lines and gaps
2024-03-26 13:45:22 +01:00
Rémi Verschelde 19a50127e5
Merge pull request #88690 from MajorMcDoom/color-picker-fix
Fix undo/redo behavior of ColorPicker and add ability to cancel/confirm color selection
2024-03-26 13:45:06 +01:00
Rémi Verschelde f371b7fb70 Merge pull request #87883 from TontonSancho/text-skip-occurence
Add 'Skip to next (text) occurrence' feature to text editor
2024-03-25 13:15:56 +01:00
Rémi Verschelde 0acfb38376
Merge pull request #89875 from bruvzg/menu_use_rids
[MenuBar] Use NativeMenu RIDs instead of indices to track items.
2024-03-25 11:19:01 +01:00
Christophe Andral c988bec4b3 Add 'Skip to next (text) occurrence' feature to text editor
Adds `ui_text_skip_selection_for_next_occurrence` action and related implementation to text editor.
This action is bound `Ctrl+Alt+D` shorcut.

Used in conjonction with `ui_add_skip_selection_for_next_occurrence`, it gives the user the ability to select many occurrences of a selection
and avoid some of them.
Used without a previous selection, the action jumps to the next occurrence of the current word under the caret.
2024-03-25 11:12:28 +01:00
bruvzg 5851f1e2dd
[MenuBar] Use NativeMenu RIDs instead of indices to track items. 2024-03-25 10:58:05 +02:00
Zi Ye d827b34ea8 Fixed undo/redo behaviour of color picker and added ability to cancel/confirm color selection. 2024-03-24 15:12:11 -05:00
Alistair Leslie-Hughes 13d83dd4d7 Correct FileDialog Theme overrides
Introduced in 15fd025f90

Fixes #89818
2024-03-24 19:33:05 +11:00
Rémi Verschelde 6ccf425a68
Merge pull request #89664 from voylin/tree-empty-clicked-fix
Fix `empty_clicked` signal in Tree when using `hide_root`
2024-03-24 01:20:59 +01:00
Rémi Verschelde cd4e4c0fcc
Merge pull request #89111 from AThousandShips/vec_use
Use `Vector*` component-wise `min/max/clamp` functions where applicable
2024-03-24 01:14:51 +01:00
Rémi Verschelde e92806c7e7
Merge pull request #88424 from rburing/fti_2d
Physics interpolation (2D)
2024-03-24 01:13:53 +01:00
Rémi Verschelde f0544ebba6
Merge pull request #87874 from AThousandShips/sort_fix
Fix sorting of files/dirs in dialogs
2024-03-24 01:13:12 +01:00
Ricardo Buring 2ed2ccc2d8 Fixed Timestep Interpolation (2D)
Adds fixed timestep interpolation to the rendering server (2D only).
Switchable on and off with a project setting (default is off).

Co-authored-by: lawnjelly <lawnjelly@gmail.com>
2024-03-23 12:28:36 +01:00
voylin d339c71edc Fix empty_clicked signal when hide_root
fix
2024-03-22 09:19:56 +09:00
A Thousand Ships 79ba22a73f
Use `Vector*` component-wise `min/max/clamp` functions where applicable 2024-03-20 13:47:42 +01:00
A Thousand Ships 2cbf469912
Fix sorting of files/dirs in dialogs
Sorts leading `_` before other characters except `.`.
2024-03-20 13:45:47 +01:00
VolTer de8b6f7a3c Add editor settings for autocompletion with NodePath and StringName 2024-03-19 17:23:54 +02:00
kit 63ac8c1106 Fix TextEdit selection end of line drawing 2024-03-18 10:13:21 -04:00
Rémi Verschelde 5f3b284cd9
Merge pull request #89510 from bruvzg/lbl_shadow_step
[Label] Move shadow drawing into a separate draw step.
2024-03-15 11:07:33 +01:00
Rémi Verschelde 70bcf2175c
Merge pull request #89506 from bruvzg/menu_fix1
Fix NativeMenu layout direction on macOS, add extra check for Windows menu.
2024-03-15 10:40:17 +01:00
bruvzg af9e8128f9
[Label] Move shadow drawing into a separate draw step. 2024-03-15 11:24:08 +02:00
bruvzg 3459aaa9d1 Fix NativeMenu layout direction on macOS, add extra check for Windows menu. 2024-03-15 09:48:54 +02:00
kleonc f08e782916 Fix Control::set_global_position for rotated/scaled transforms 2024-03-15 04:19:52 +01:00
Rémi Verschelde 4163fb9c26
Merge pull request #89489 from YeldhamDev/yet_another_etr_fix
Fix some translations not properly falling back
2024-03-14 22:35:41 +01:00
Rémi Verschelde a5a5ce7052
Merge pull request #89469 from garrettgu10/ggu/multicursor-bugfix
Fix bug related to multicursor and backspacing with brackets
2024-03-14 22:35:20 +01:00
Michael Alexsander 05f6c56a48
Fix some translations not properly falling back 2024-03-14 16:38:12 -03:00
Garrett Gu 4ab08fb99f Fix bug related to multicursor and backspacing with brackets 2024-03-14 11:48:48 -05:00
bruvzg ac7583e449
[NativeMenu] Implement native popup menu support on Windows. 2024-03-13 10:51:38 +02:00
Rémi Verschelde 20373d026d
Merge pull request #89419 from KoBeWi/losing_control
Fix some AcceptDialog argument types
2024-03-12 16:28:10 +01:00
kobewi a7b6bcb988 Fix some AcceptDialog argument types 2024-03-12 14:33:43 +01:00
bruvzg 433de7f1a8
[RTL] Use "visible characters" property for inline object visibility 2024-03-12 11:28:45 +02:00
Rémi Verschelde 1bbdbbaada
Merge pull request #89242 from RafaelRain18/master
Fix region section not ignoring #region and #endregion when in a string
2024-03-11 14:02:30 +01:00
Rémi Verschelde 9a098458cc
Merge pull request #85325 from TheSofox/text-edit-undo-fix
Fixes for undo in text editor grouping unrelated actions
2024-03-11 14:02:17 +01:00
Rafael Chuva 8c36282feb Fix region section not ignoring #region and #endregion when in a string
When using the script editor, if the keywords #region and #endregion where
in a string and ate the start of the line, the editor would not ignore them
and count them as the actual keywords, which when folded, would only fold
until the first #endregion in a string, for example.

By checking if these keywords were in a string, this commit now ensures the
editor ignores strings and fold the section correctly.

Fixes #89115.
2024-03-11 00:04:39 +00:00
bruvzg da02ca7e75
[NativeMenu] Add checks to avoid unnecessary warnings.
Added by Rémi: Add dummy NativeMenu to DisplayServerHeadless,
fixing crashes when using `--headless`.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-03-07 00:23:26 +01:00
Rémi Verschelde 13954fc33e
Merge pull request #87452 from bruvzg/native_menu
Move `global_menu_*` methods to a separate `NativeMenu` class.
2024-03-06 13:16:52 +01:00
Rémi Verschelde c84d3385f7
Merge pull request #88300 from FaycalElOuariachi/add-TreeItem-is_visible_in_tree
Add `is_visible_in_tree` in `TreeItem`
2024-03-05 23:44:29 +01:00
Sofox 83dffe4816 Fixes for undo in text editor grouping unrelated actions 2024-03-05 10:25:47 +00:00
Rémi Verschelde 6d1ac18dee
Merge pull request #89158 from bruvzg/rtl_meta_hover_fix
[RTL] Fix meta hover area detection.
2024-03-05 09:56:12 +01:00
Rémi Verschelde 2d408f48e7
Merge pull request #88546 from bruvzg/indent_wrap
[TextEdit] Add support for optional wrapped line indentation.
2024-03-05 09:55:51 +01:00
Faycal ElOuariachi 50cf7e1778 Add is_visible_in_tree in TreeItem 2024-03-05 03:38:33 +01:00
Hugo Locurcio 4f8d7cae26
Add Ctrl + L / Cmd + Shift + G shortcut to focus path bar in FileDialog
This also tweaks EditorFileDialog to use the same shortcut,
while making it select the path text after focusing
(like in most file managers).

Ctrl + L / Cmd + Shift + G can also now be used to focus on the
property name in the project settings editor, as well in the
Input Map, Autoload, Shader Globals and Global Groups tabs.
2024-03-05 00:02:09 +01:00
bruvzg c65a667924
Move `global_menu_*` methods to a separate `NativeMenu` class. 2024-03-04 23:41:41 +02:00
bruvzg 42e6cda14e
[RTL] Fix meta hover area detection. 2024-03-04 22:06:16 +02:00
Rémi Verschelde de59a9547c
Merge pull request #89100 from YeldhamDev/tag,_it_is_you!
Fix issues with text clearing in `RichTextLabel`
2024-03-04 13:34:13 +01:00
Rémi Verschelde aebd746c79
Merge pull request #88068 from WhalesState/grabber
Fix `Slider`'s mouse drag position when grabber is centered
2024-03-04 13:33:15 +01:00
Michael Alexsander d6917d2206
Fix issues with text clearing in `RichTextLabel` 2024-03-02 21:38:32 -03:00
Michael Alexsander 612eed164c
Add auto translation to `Tree` 2024-03-01 12:21:45 -03:00
Rémi Verschelde 8e951fd0a9
Merge pull request #89024 from bruvzg/rtl_hover_meta
[RTL] Add optional `push_meta` argument to control how meta underline is drawn.
2024-03-01 15:00:41 +01:00
Rémi Verschelde c1377920cd
Merge pull request #86743 from Mickeon/autocompletion-optimise-object
Optimise comparisons for Object's `get_argument_options`
2024-03-01 14:56:06 +01:00
Rémi Verschelde 8e45506070
Merge pull request #85801 from HolonProduction/select-whole-words-line-edit
Allow dragging selection when selecting whole words in `LineEdit`
2024-03-01 14:55:53 +01:00
bruvzg 2a3de7adc3
[RTL] Add optional `push_meta` argument to control how meta underline is drawn. 2024-03-01 12:07:06 +02:00
Micky cd2032a90b Optimise Object's `get_argument_options` 2024-02-29 18:00:54 +01:00
Rémi Verschelde 810a0dbff1
Don't access Node3D/Node2D/Control global transform in `reparent` unless needed
Fixes #89002.

Co-authored-by: Tamás Gálffy <ezittgtx@gmail.com>
2024-02-29 14:07:48 +01:00
Rémi Verschelde da916221a7
Merge pull request #88577 from davthedev/itemlist-light-refactor
Fix item positioning, text alignment & unwanted clipping of ItemList items
2024-02-29 13:54:03 +01:00
Michael Alexsander d70c45b5c8
Add option to add built-in strings in the POT generation 2024-02-28 11:34:26 -03:00
Rémi Verschelde b431314e8f
Merge pull request #88794 from ryevdokimov/fix-spinbox
If SpinBox text can't be parsed use last updated text
2024-02-28 09:34:36 +01:00
Robert Yevdokimov 76a6650fd9 If spinbox text can't be parsed use last updated text 2024-02-27 16:20:51 -05:00
David Giardi f63728cb9f Fix item positioning & pointer detection areas of ItemList 2024-02-27 20:03:10 +01:00
Mikael Hermansson f7c1c83daa Fix crash when selecting re-added `Tree` item 2024-02-27 16:34:15 +01:00
Rémi Verschelde 4a4937318b
Merge pull request #88825 from adamscott/add-create-folder-icon
Add create folder icon
2024-02-27 10:18:13 +01:00
Adam Scott fd3666298c
Add create folder icon 2024-02-26 09:04:24 -05:00
Rémi Verschelde 7e567c4777
Merge pull request #88615 from Rindbee/add-h_separation-between-icons-in-CheckButton-and-CheckBox
Add a `h_separation` between icons in `CheckButton`/`CheckBox`
2024-02-26 10:48:54 +01:00
bruvzg dad4aae386
[TextEdit] Add support for optional wrapped line indentation. 2024-02-26 08:20:14 +02:00
Robert Yevdokimov 13e82094ee Remove word duplicates in comments and strings, and fix casing and punctuation 2024-02-23 17:28:28 -05:00
Mounir Tohami 7884d63281 Fix PopupMenu doesn't respect it's ScrollContainer's margins 2024-02-23 15:51:47 +02:00
Rémi Verschelde 12817f2993
Merge pull request #87025 from bruvzg/button_wrap
[Button] Add autowrap feature.
2024-02-23 11:29:32 +01:00
Rémi Verschelde 42a15bcc49
Merge pull request #85477 from KoBeWi/submenus_that_shall_not_be_named
Add methods to add submenus without using names
2024-02-23 11:29:28 +01:00
Rémi Verschelde 3ce9ae71fc
Merge pull request #84906 from /fix-some-defvals 2024-02-23 11:29:22 +01:00
Raul Santos 5ba92e5a57
Fix some DEFVALs to use the right type
- Use `StringName()` in DEFVAL for StringNames.
- Use `Variant()` in DEFVAL for Variants.
2024-02-23 01:50:18 +01:00
Rémi Verschelde 213c835cde
Merge pull request #85017 from Geometror/vs-redesign
Redesign the graph editor for visual shaders
2024-02-22 23:34:19 +01:00
Hendrik Brucker 02a33b67a8 Redesign the graph editor for visual shaders 2024-02-22 20:40:09 +01:00
kobewi aeec3c1309 Add methods to add submenus without using names 2024-02-22 15:13:53 +01:00
Rémi Verschelde a246a4b523
Merge pull request #87967 from jsjtxietian/set_item_submenu
Fix `set_item_submenu` infinite recursion crash
2024-02-22 14:39:06 +01:00
Rémi Verschelde 0a3f162f17
Merge pull request #88494 from AThousandShips/tab_fix
Fix error spam when adding tabs to `TabBar` without deselect
2024-02-22 11:23:15 +01:00
bruvzg 00480fc818
[Button] Add autowrap feature. 2024-02-22 12:11:58 +02:00
jsjtxietian 3525972bc7 Fix `set_item_submenu` infinite recursion crash 2024-02-22 12:37:50 +08:00
风青山 5de496d3b0
Add a `h_separation` between icons in `CheckButton`/`CheckBox`
Previously, the `h_separation` between internal elements and custom elements
was added when `text` was not empty. That is, this `h_separation` does not
exist when there is a valid custom `icon` but `text` is empty.

Now, the `h_separation` between the internal element and the custom element
is added when the internal element and any custom element exist (both width
are greater than `0`).
2024-02-21 17:53:07 +08:00
A Thousand Ships a56c03d495
Fix error spam when adding tabs to `TabBar` without deselect
`current` was allowed to be `-1` when deselection was disabled, causing
errors in other methods when updating the size.
2024-02-20 23:38:20 +01:00
Rémi Verschelde 6037500219
Merge pull request #69032 from KoBeWi/check_every_changed_setting_in_every_group_everywhere()
Use `check_changed_settings_in_group()` everywhere
2024-02-20 19:34:30 +01:00
Michael Alexsander aa258c6c12
Fix `RichTextLabel`'s tag stack being overridden on translation change 2024-02-20 12:19:53 -03:00
Rémi Verschelde 8f1915eb90
Revert "Fix selecting popup menu items on mouse release" 2024-02-20 10:05:41 +01:00
kobewi a031911c82 Use check_changed_settings_in_group() everywhere 2024-02-19 21:34:45 +01:00
Rémi Verschelde a92921ae49
Merge pull request #88479 from passivestar/lineedit-delete-with-selection
Fix `LineEdit` delete all the way to the left/right when something is selected
2024-02-19 10:43:58 +01:00
passivestar c2a4a0d4cb Fix `LineEdit` delete all the way to the left/right when something is selected 2024-02-18 11:58:37 +04:00
jsjtxietian b7028e5f94 Tweak property order in the inspector for TabBar 2024-02-18 12:54:51 +08:00
Rémi Verschelde 21f0529aa9
Revert "Update Node::get_configuration_warnings signature"
This reverts commit d3852deaa4.
2024-02-17 19:03:21 +01:00
Rémi Verschelde 02f4a66c1f
Merge pull request #88145 from Ratamacue9112/tweak-option-button-property-order
Tweak property order in the inspector for OptionButton
2024-02-17 18:31:47 +01:00
Ratamacue9112 45b9cbd904 Tweak property order in the inspector for OptionButton 2024-02-17 11:03:16 +00:00
Michael Alexsander 7b42c24550
Make auto translation inheritable 2024-02-15 16:51:19 -03:00
David Giardi c892fd8691 Fix ItemList click detection gaps 2024-02-15 12:16:31 +01:00
Rémi Verschelde 92951b0295
Merge pull request #86952 from ryevdokimov/fix-selecting-popup-menu-items-on-mouse-release
Fix selecting popup menu items on mouse release
2024-02-14 10:59:40 +01:00
Mounir Tohami fdba051a40 Fix `TabBar` size when theme changes 2024-02-13 18:04:31 +00:00
Rémi Verschelde ace0aeaf4f
Merge pull request #88265 from Calinou/tree-fix-recursive-expand-collapse-shortcuts
Fix recursive Tree expand/collapse shortcuts not working
2024-02-13 17:24:25 +01:00
Rémi Verschelde 40f6dcd4d3
Merge pull request #88162 from KoBeWi/PropertyListHelper_strikes_again
Add PropertyListHelper to PopupMenu
2024-02-13 17:24:22 +01:00
Rémi Verschelde 768ab25562
Merge pull request #88057 from passivestar/cmd-backspace-lineedit
Fix LineEdit behavior for deleting all the way to the left/right
2024-02-13 17:24:18 +01:00
Rémi Verschelde 48e2f43ccf
Merge pull request #87479 from kitbdev/apply-ime
Fix TextEdit IME issues
2024-02-13 17:23:55 +01:00
Rémi Verschelde f5cfc7f203
Merge pull request #86322 from bruvzg/mac_global_index
[MenuBar] Store and use global menu item indices.
2024-02-13 17:23:14 +01:00
Hugo Locurcio 6de0eca6c1
Fix recursive Tree expand/collapse shortcuts not working
This also moves them to use Shift instead of Alt, as was already
done for mouse interactions.

Shortcuts in Tree were also made non-exact matches so they still
work if modifiers are held. This is important for up/down
shortcuts, especially once support for selecting with
Shift + up/down is implemented.
2024-02-13 02:30:48 +01:00
kobewi 4f29ef82db Add PropertyListHelper to PopupMenu 2024-02-11 12:09:55 +01:00
A Thousand Ships 684752e75b
Replace error checks against `size` with `is_empty` 2024-02-09 12:50:15 +01:00
Rémi Verschelde 0bda868f40
Merge pull request #84635 from KoBeWi/all_hail_PropertyListHelper
Add PropertyListHelper
2024-02-09 12:14:01 +01:00
RedMser d3852deaa4 Update Node::get_configuration_warnings signature 2024-02-08 23:05:20 +01:00
Mounir Tohami e6a42e3fc5 Fix `Slider`'s drag mouse position when grabber is centered 2024-02-07 17:19:13 +00:00
passivestar 2c0d0c1473 Fix LineEdit behavior for deleting all the way to the left/right 2024-02-07 16:29:32 +04:00
HolonProduction da6bacbc4a Allow dragging selection when selecting whole words in `LineEdit` 2024-02-05 20:30:53 +01:00
Rémi Verschelde 43a8351263
Merge pull request #87943 from 0x0ACB/tree_recursion
Only recurse depth wise in `Tree::_count_selected_items`
2024-02-05 14:53:46 +01:00
Rémi Verschelde c23cc08b1c
Merge pull request #87880 from kitbdev/fix-textedit-freeze
Fix freeze in TextEdit with `scroll_past_end_of_file` and `fit_content_height`
2024-02-05 14:50:33 +01:00
ACB 43038bbfcb Only recurse depth wise in `Tree::_count_selected_items` 2024-02-04 14:21:03 +01:00
kit 8ddd27ce1e Fix freeze in TextEdit with scroll_past_end_of_file and fit_content_height 2024-02-02 16:45:06 -05:00
Rémi Verschelde 88df5b871f
Merge pull request #87318 from ckaiser/feature/indeterminate_progressbar
Add indeterminate mode to ProgressBar
2024-02-02 12:02:19 +01:00
Rémi Verschelde 58ffe0958a
Merge pull request #74195 from TheSecondReal0/flow-top-to-bottom
Add option to reverse FlowContainer fill direction (HFlow bottom-to-top, VFlow right-to-left)
2024-02-02 12:00:07 +01:00
TheSecondReal0 b8a7270567 Add option to reverse FlowContainer fill direction (HFlow bottom-to-top, VFlow right-to-left) 2024-02-01 10:41:31 -07:00
Christian Kaiser c00bd0008a Add indeterminate mode to ProgressBar 2024-01-31 18:11:18 -03:00
Rémi Verschelde f390b86acd
Merge pull request #87194 from kitbdev/tab-deselect
Allow no tabs to be selected in TabBar and TabContainer
2024-01-30 17:47:54 +01:00
Rémi Verschelde 6c2f412cc7
Merge pull request #84760 from KoBeWi/ultimate_get_property_list_reloaded
Fetch override list from ThemeDB
2024-01-29 21:32:10 +01:00
kit a6af442b05 Apply TextEdit IME on most actions 2024-01-29 15:07:19 -05:00
kit 6e965f6c83 Allow tab deselection 2024-01-29 14:30:34 -05:00
kobewi 7d6ded2027 Fetch override list from ThemeDB 2024-01-29 16:41:57 +01:00
Rémi Verschelde fa48a51183
Merge pull request #87688 from AThousandShips/what_is_this
Remove unnecessary `this->` expressions
2024-01-29 13:18:09 +01:00
A Thousand Ships 15369fdb1d
Remove unnecessary `this->` expressions 2024-01-29 09:59:18 +01:00
radzo73 de5b0d7103 Add `get_button_color(column, id)`
Docs should point to Color constuctor instead of just the class, but I unfortunately cannot.
2024-01-28 19:09:20 -05:00
Rémi Verschelde 0f6e68a44d
Merge pull request #87587 from bruvzg/rtl_image_update_connect
[RTL] Connect image update signals.
2024-01-26 11:49:29 +01:00
Rémi Verschelde d3dfcc5977
Merge pull request #87555 from EIREXE/video_player_unfunny
Replace internal usage of ImageTexture in VideoStreamPlayer for Texture2D
2024-01-26 11:48:42 +01:00
Rémi Verschelde 23275074cb
Merge pull request #86304 from OverloadedOrama/fix-menubar-scaling
Fix `MenuBar` and `MenuButton` hover position scaling properly with the scale factor multiplier
2024-01-26 11:42:59 +01:00
bruvzg 6d17fc1f73
[RTL] Connect image update signals. 2024-01-26 12:18:24 +02:00
Yuri Sizov 672b034076 Merge pull request #87303 from bruvzg/fd_options_no_editor
[Native File Dialog] Add support for adding custom options to the dialogs (w/o editor changes).
2024-01-25 16:26:58 +01:00
Álex Román Núñez c892582779 Replace internal usage of ImageTexture in VideoStreamPlayer for Texture2D 2024-01-24 23:44:46 +01:00
Emmanouil Papadeas e864b26e54 Fix `MenuBar` hover position scaling properly with the scale factor multiplier 2024-01-24 15:22:16 +02:00
Yuri Sizov 9c9a00f3a8 Merge pull request #87432 from Rindbee/fix-set_global_position-in-control
Fix issue where `set_global_position(global_position)` in `Control` resulted in a different result than `global_position`
2024-01-24 14:08:40 +01:00
Yuri Sizov a32a2eaedc Merge pull request #87417 from AThousandShips/tree_clear
Use callable for `TreeItem` custom draw
2024-01-24 14:08:36 +01:00
Yuri Sizov d454fccdb3 Merge pull request #87395 from mrcdk/popupmenu_get_state
Expose `PopupMenu` `get_item_multistate()` and `set/get_item_multistate_max()`
2024-01-24 14:08:32 +01:00
bruvzg a8f521bcad
[Native File Dialog] Add support for adding custom options to the dialogs.
Add support for adding custom options (checkboxes and optionboxes) to the dialogs (both native and built-in).
2024-01-24 15:00:31 +02:00
A Thousand Ships 257d03681c
Use callable for `TreeItem` custom draw
Deprecating old functionality
2024-01-23 12:07:43 +01:00
Yuri Sizov a07df648ec Merge pull request #87474 from Rindbee/fix-forgetting-h_separation-when-internal_elements-exist
Fix forgetting `h_separation` when internal elements exist
2024-01-22 20:39:36 +01:00
mrcdk c9bdccf7f2 Expose PopupMenu get_item_multistate(), get_item_multistate_max() and set_item_multistate_max() 2024-01-22 20:07:19 +01:00
风青山 0c6b6fe749 Fix issue where `set_global_position(global_position)` in `Control` resulted in a different result than `global_position`
Previously, the case where the pivot point was not at the origin was ignored.
2024-01-23 00:05:11 +08:00
风青山 567e76f935 Fix forgetting `h_separation` when internal elements exist 2024-01-22 22:20:01 +08:00
A Thousand Ships 552594ffdc
Redraw `TreeItem` on more changes
* Custom font changes
* Custom draw changes
* Custom as button
2024-01-22 13:51:20 +01:00
kobewi 2c14c0885f Add PropertyListHelper 2024-01-19 20:32:04 +01:00
Yuri Sizov 66b0bd9203 Merge pull request #86158 from Geometror/ge-connection-rework
Rework `GraphEdit` connections (drawing, API, optimizations)
2024-01-18 19:26:56 +01:00
Hendrik Brucker 9d7c2978f4 Rework GraphEdit connections (drawing, API, optimizations)
- GraphEdit now uses Line2D nodes to draw connection lines and uses a dedicated canvas item shader for them
2024-01-18 16:53:15 +01:00
Rindbee f29a7d302e Make the drawing logic clearer in `Button`
The drawing logic follows the calculation logic in `Button::get_minimum_size`.

According to the order of `stylebox`, `icon`, and `text`, and follow properties
such as alignment mode, to fill the display space of the button.

Add a `Button::_set_h_separation_is_valid_when_no_text` for Button derived
classes (like `OptionButton`) that expects a `h_separation` between `icon`
and theme icon even if the `text` is empty.
2024-01-18 22:57:22 +08:00
Rémi Verschelde 04eafd557f
Merge pull request #87249 from bruvzg/macos_menu_clear
[macOS] Do not unbind PopupMenu from global menu on `clear` call.
2024-01-16 15:07:47 +01:00
bruvzg 5a61fecd0e
[macOS] Do not unbind PopupMenu from global menu on `clear` call. 2024-01-16 15:33:14 +02:00
Nicholas Foo c0f8e0061d
Fix RichTextLabel.remove_paragraph crash by popping current 2024-01-16 13:52:19 +02:00
Rémi Verschelde 039379d272
Merge pull request #84193 from kitbdev/dock-manager-extract
Extract `EditorDockManager` from `EditorNode`
2024-01-16 10:35:11 +01:00
kit 2323f040e9 Extract editor dock manager 2024-01-15 15:15:42 -05:00
Rémi Verschelde 3482da422d
Merge pull request #87012 from TheSofox/line-edit-undo-caret-fix
Fix `LineEdit` caret rendering/positioning on Undo.
2024-01-15 13:27:02 +01:00
Rémi Verschelde c1da69d8f2
Merge pull request #86141 from Maran23/popup-hover-height-calc
Fix Popup hover and height calculation are off by some pixels
2024-01-15 13:23:42 +01:00
Robert Yevdokimov 06c2cda848 Fix selecting popup menu items on mouse release 2024-01-14 17:45:52 -05:00
Rémi Verschelde 087a397477
Merge pull request #86301 from KoBeWi/deferred_cleanup
Update deferred calls to use Callables
2024-01-11 17:36:29 +01:00
Rémi Verschelde 365755fb34
Merge pull request #84946 from DarkMessiah/default-theme-checkbox-disabled-state
Use disabled icons for CheckBox in DefaultTheme
2024-01-10 12:03:12 +01:00
Sofox 6888d957dc Fix LineEdit caret rendering/positioning on Undo. 2024-01-09 17:14:55 +00:00
kobewi 0e8f90f4c8 Update deferred calls to use Callables 2024-01-09 16:11:47 +01:00
Rémi Verschelde 4181027596
Merge pull request #84442 from Calinou/colorpicker-allow-more-hex-codes
Allow additional hexadecimal color codes in ColorPicker
2024-01-09 11:27:14 +01:00
Hugo Locurcio 80a770a8ed
Allow additional hexadecimal color codes in ColorPicker
The following formats are now accepted (leading `#` is optional):

- `#1` -> `#111111`
- `#12` -> `#121212`
- `#12345` -> `#11223344` (`5` at the end is discarded)
- `#1234567` -> `#123456` (`7` at the end is discarded)
2024-01-08 20:51:45 +01:00
Rémi Verschelde 129332e3b9
Merge pull request #82468 from kitbdev/tabcontainer-bottom
Option to put TabContainer tabs at bottom
2024-01-08 14:51:37 +01:00
Rémi Verschelde df29fc91ed
Merge pull request #82669 from 4d49/graph-node-slot-custom-icon
Add `set_slot_custom_icon` and `get_slot_custom_icon` to GraphNode
2024-01-08 11:49:46 +01:00
Mansur Isaev 631d722674
Add `set_slot_custom_icon` and `get_slot_custom_icon` to GraphNode 2024-01-08 08:30:10 +01:00
kit f6a212837b TabContainer bottom position 2024-01-06 15:31:08 -05:00
Muller-Castro 96a95cb974 Add const lvalue ref to container parameters 2024-01-05 14:49:57 -03:00
Rémi Verschelde 5eb22a317d
Merge pull request #83577 from DennisManaa/fix-translation-for-item-list
Add automatic translation of items to ItemList
2024-01-04 16:39:36 +01:00
Rémi Verschelde 8c48e99c17
Merge pull request #82894 from Quimisagi/label-align-values-discarded
Add compatibility rename of `(v)align` properties of `Label`
2024-01-04 16:39:04 +01:00
Rémi Verschelde 50a073cb0e
Merge pull request #86732 from TheSofox/line-edit-delete-fix
Make `LineEdit` scrolling show as much text as possible
2024-01-04 14:26:30 +01:00
Rémi Verschelde 6c390b620d
Merge pull request #84445 from Rubonnek/add-const-references-clang-tidy
Add const references detected by clang-tidy
2024-01-04 14:25:33 +01:00
Rémi Verschelde eb830b3484
Merge pull request #72341 from aXu-AP/text_edit_carriage_return_selection
Show selected end of line in TextEdit
2024-01-04 14:24:30 +01:00
Sofox 8661667dde Make LineEdit scrolling show as much text as possible 2024-01-04 04:13:35 +00:00
Rémi Verschelde 5042f543ab
Merge pull request #86460 from reach-satori/double_textchanged_emit
Fix double `text_changed` signal when overwriting selection in LineEdit
2024-01-03 15:47:03 +01:00
Rémi Verschelde 0c36bd791d
Merge pull request #82900 from bruvzg/macos_menu_global_shortcuts
[PopupMenu] Handle shortcuts with "global" flag directly.
2024-01-03 15:41:04 +01:00
Rémi Verschelde 4acfe4aa3c
Merge pull request #86729 from Mickeon/autocompletion-for-all
Fix missing autocompletion for inheriting classes
2024-01-03 10:14:37 +01:00
Rémi Verschelde a6dc1b3907
Merge pull request #84527 from Calinou/colorpicker-display-revert-icon
Display a revert icon on ColorPicker's old sample
2024-01-03 09:59:06 +01:00
Micky ca2f340384 Fix missing autocompletion for inheriting classes 2024-01-03 00:13:04 +01:00
bruvzg 15cdc52658
[PopupMenu] Handle physical_keycode and key_label of shortcuts. 2023-12-30 13:17:46 +02:00
Mateus Reis cab48493d8 Fix double text_changed signal when overwriting selection in LineEdit
The part of gui_input that handles unicode wasn't checking
text_changed_dirty before emitting the signal, unlike the rest of the text editing functions.

Fixes #86451
2023-12-24 14:23:01 +02:00
Haoyu Qiu 58db3e5d7b Emit slider's drag_started signal before the first value change 2023-12-21 11:23:35 +08:00
Yuri Sizov b8635157eb Merge pull request #86218 from TheSofox/arrow-key-scene-tree-nav
Fix `Node` selection when navigating `Tree` with Arrow keys
2023-12-20 15:07:59 +01:00
Yuri Sizov 02bc2a37dd Merge pull request #86118 from TheSofox/complex-undo-select-fix
Fix so undoing complex operations in `TextEdit` will restore selections
2023-12-20 15:07:52 +01:00
Yuri Sizov 40e7192393 Merge pull request #85191 from HolonProduction/off-by-one-code-edit
Fix updating delimiter cache of `CodeEdit` when typing on the first line
2023-12-20 15:07:44 +01:00
Yuri Sizov 3a44484ab8 Merge pull request #83623 from rarysson/label-progressbar-allow-greater
Make ProgressBar reflect the real value in the percent label when "allow greater" is checked
2023-12-20 15:07:30 +01:00
Sofox 4b82cacc21 Fix so undoing complex operations in TextEdit will restore selections. 2023-12-20 00:12:52 +00:00
Yuri Sizov 26834d298d Merge pull request #85652 from rsubtil/bugfix-can_grab_focus
Ensure slider grabs focus only when it can
2023-12-19 20:33:05 +01:00
Yuri Sizov 7182c47309 Merge pull request #85436 from chocola-mint/fix-#85401
Make it possible to show code hint and code completion at the same time
2023-12-19 20:32:50 +01:00
Yuri Sizov 179b8c7973 Merge pull request #84185 from bruvzg/lbl_char_rects
[Label] Add get_character_bounds method to get bounding rectangles of the characters.
2023-12-19 20:32:39 +01:00
Yuri Sizov b9dff50282 Merge pull request #83785 from Geometror/graphedit-dotted-grid
Add dotted grid to GraphEdit
2023-12-19 20:32:35 +01:00
CHM 3744ef50e4 Make it possible to show code hint and code completion at the same time
Make code completion position more consistent

Add whitespace before if
2023-12-19 19:34:34 +01:00
Yuri Sizov 547374b07a Merge pull request #85473 from miv391/fix-horizontal-mouse-wheeling-in-2d-view
Fix horizontal scroll in editor's 2D view
2023-12-19 13:02:04 +01:00
Yuri Sizov 02d4579fa2 Merge pull request #85000 from bruvzg/ed_ui_direction
[Editor] Add option to override editor UI layout direction.
2023-12-19 13:01:35 +01:00
Yuri Sizov 1ecba5d341 Merge pull request #84940 from Calinou/editor-textureprogressbar-inspector-hide-properties
Hide ineffective TextureProgressBar properties in the editor
2023-12-19 13:01:30 +01:00
Yuri Sizov 7aae85edfd Merge pull request #84845 from DarkMessiah/tree-disabled-checkbox
Implement disabled state for Checkbox in Tree
2023-12-19 13:01:25 +01:00
Yuri Sizov 8a9aa30348 Merge pull request #81243 from Sauermann/fix-window-events
Fix internal events not being delivered to some Window types
2023-12-19 13:01:00 +01:00
bruvzg e9c219cff2
[Label] Add get_character_bounds method to get bounding rectangles of the characters. 2023-12-19 13:53:21 +02:00
bruvzg a759d97a51
[MenuBar] Store and use global menu item indices. 2023-12-19 09:57:48 +02:00
Yuri Sizov 1125235c95 Merge pull request #85749 from bs-mwoerner/color_picker_quantize_fix
Fix unnecessarily quantizing current color in color picker
2023-12-18 18:17:53 +01:00
Yuri Sizov 644e236e5c Merge pull request #83987 from bruvzg/macos_window_and_help
[macOS] Add default Window and Help menus, allow special menu customization.
2023-12-18 18:17:41 +01:00
HolonProduction d5847fa54e Fix updating delimiter cache of `CodeEdit` when typing on the first line 2023-12-18 14:07:46 +01:00
Michael Wörner 21d778b0c3 Changed HTML input color_changed logic.
Made the HTML field send change events based on whether the new color's string is different from the previous color's string (instead of whether the new string parses to the current color value).
Previously, updating the color value even when the corresponding string hadn't changed would unnecessarily quantize the color value to 8 bits just by opening/closing the Color Picker.
2023-12-17 15:36:57 +01:00
Sofox f894eb1768 Fixes Node selection when navigating SceneTree with Arrow keys 2023-12-16 19:53:04 +00:00
Wilson E. Alvarez a3cb1b096f
Add const references detected by clang-tidy 2023-12-16 13:36:44 -05:00
Yuri Sizov a5529f759c Merge pull request #86129 from TheSofox/color-picker-memory
Remember last `color_mode` and `picker_shape` in `ColorPicker`s in the editor
2023-12-14 21:22:39 +01:00
Sofox 7979412c75 Remember last 'color_mode' and 'picker_shape' in 'ColorPicker's in the editor 2023-12-14 18:57:57 +00:00
Marius Hanl 18fedd9c13 Fix Popup hover and height calculation are off by some pixels
This was caused by an incorrect calculation of the v_separation where it was not needed
2023-12-14 02:24:25 +01:00
bruvzg 0d44b50520
[macOS] Add default Window and Help menus, allow special menu customization. 2023-12-13 23:20:05 +02:00
Wilson E. Alvarez 80fb8db31f
Remove unnecessary assignments
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2023-12-13 11:06:26 -05:00
Rémi Verschelde 2d5ceaab3e
Merge pull request #86028 from jsjtxietian/prevent-crash-when-notify-change-empty-tree
Prevent crash when calling `set_text()` on a removed TreeItem
2023-12-13 10:32:48 +01:00
jsjtxietian 7a2831db57 Prevent crash when call set_text() on a removed treeItem 2023-12-12 12:58:14 +08:00
Rémi Verschelde 15a03ed98e
Merge pull request #86034 from kleonc/color_picker_alpha_slider_fix_arrow_offset
Fix `ColorPicker`'s alpha slider arrow offset
2023-12-12 00:34:37 +01:00
Rémi Verschelde 4e2350b1af
Merge pull request #82661 from bruvzg/custom_ellipsis
[Text Overrun] Add option to set custom ellipsis character, add support for system font fallback.
2023-12-12 00:15:34 +01:00
kleonc d76d8c5f29 Fix ColorPicker's alpha slider arrow offset 2023-12-11 16:17:45 +01:00
Yuri Sizov 6269341461 Merge pull request #85054 from miv391/highlight-minimap-error-lines
Highlight error lines in minimap
2023-12-08 18:45:54 +01:00
Yuri Sizov 6c86974022 Merge pull request #84122 from kitbdev/fix-dock-visibility
Fix dock visibility issues
2023-12-08 15:23:09 +01:00
Yuri Sizov ae4e48246a Merge pull request #80994 from aitorciki/zoom-from-pan-gesture
Trigger zoom from pan gestures when pressing ctrl
2023-12-08 15:22:43 +01:00
Mika Viskari 609eb8bc01 Highlight error lines in minimap 2023-12-07 16:26:08 +02:00
Rémi Verschelde 8580874d0f
Merge pull request #85363 from bruvzg/rtl_fx_nl
[RTL] Fix CharFX character offset calculation.
2023-12-04 23:12:48 +01:00