Commit Graph

5313 Commits

Author SHA1 Message Date
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
Rémi Verschelde f444818c7e
Merge pull request #84794 from akien-mga/videoplayer-fix-reloading-translation-remapped-stream
VideoPlayer: Fix reloading translation remapped stream
2023-12-04 23:05:15 +01:00
Rémi Verschelde cbae80006c
Merge pull request #82079 from RoyBerube/OutputScroll
Enable scrolling of output with UI scale changes
2023-12-04 22:57:33 +01:00
bruvzg 56579f397d
[Text Overrun] Add option to set custom ellipsis character, add support for system font fallback. 2023-12-04 08:21:42 +02:00
Ricardo Subtil fde51aeb28 Ensure slider grabs focus only when it can 2023-12-02 11:06:06 +00:00
Mika Viskari 187bb61e7b Fix horizontal mouse wheeling in 2D editor view 2023-11-28 17:36:02 +02:00
bruvzg 7a59efac32
[RTL] Fix CharFX character offset calculation. 2023-11-26 00:07:46 +02:00
Stanislav Labzyuk ff59496632 Use disabled icons for CheckBox in DefaultTheme 2023-11-19 22:01:53 +01:00
bruvzg 932174fedf
[Editor] Add option to override editor UI layout direction. 2023-11-17 14:56:45 +02:00
Lera Elvoé 60cb44e84c
Add GraphEdit connection layer child as internal 2023-11-17 15:29:39 +03:00
Hugo Locurcio 9f1870ec49
Hide ineffective TextureProgressBar properties in the editor
Radial fill properties only have an effect when using a radial fill mode.
Stretch margin properties only have an effet when Nine Patch Stretch
is enabled.
2023-11-15 18:35:54 +01:00
Stanislav Labzyuk ff8797e980 Implement disabled state for Checkbox in Tree 2023-11-15 17:13:34 +01:00
Markus Sauermann fa02d19fd1 Fix internal events not being delivered to some Window types
`AcceptDialog`, `Popup` and `PopupMenu` no longer subscribe to
"window_input" signal, because that is only sent if it is not an
internal signal.

Instead they receive events in `_input_from_window`. They ensure that
the event is also propagated to their super-function, just like
previously the signals would be treated.
2023-11-14 20:29:17 +01:00
Hendrik Brucker 1a8e676131 Add different grid patterns to GraphEdit 2023-11-14 19:48:31 +01:00
Rémi Verschelde c26b36e0e5
Merge pull request #84870 from jsjtxietian/add-set-selected-protection
Make Tree's `set_selected` check if the TreeItem belongs to the tree
2023-11-14 19:31:47 +01:00
bruvzg 4a82d3b16d
[RTL] Fix excessive underline and table border draw calls. 2023-11-14 08:31:44 +02:00
jsjtxietian b79cac6d2d Make Tree's set_selected check if treeitem belongs to the tree 2023-11-14 11:34:00 +08:00
jsjtxietian 306a8eec58 Add protection in RichTextLabel.update_image to prevent crash 2023-11-13 18:01:14 +08:00
Rémi Verschelde 7d0c561e02
VideoPlayer: Fix reloading translation remapped stream
Fixes #43917.
2023-11-12 15:22:16 +01:00
Rarysson Guilherme beeca2ae82 Make ProgressBar show the real percent when allow greater/lesser is checked 2023-11-11 11:18:41 -03:00
coumcashier 1533292f09 Fix storing invalid item height values in `ItemList`
The height of the last N items is incorrectly overwritten with
the max height of first row (N = number of columns). This happen
in the first iteration of the while loop. Moving this code inside
if (all_fit) makes sure the last rows height is only updated at
the end when max height (max_h) is calculated for the last row.
2023-11-10 19:54:31 +01:00
Rémi Verschelde c2246a5a6f
Merge pull request #84668 from YuriSizov/gui-dont-warn-when-popup-subs-are-nameless
Allow auto-generated node names in `PopupMenu::add_submenu_item`
2023-11-09 18:10:35 +01:00
Rémi Verschelde f7a701587e
Merge pull request #84662 from YuriSizov/gui-warn-about-autowrapping
Warn about autowrapped labels in containers
2023-11-09 18:09:25 +01:00
Rémi Verschelde d36cc7313e
Merge pull request #84547 from kitbdev/mouse-notif-3
Make Mouse Enter/Exit notifications match Mouse Events
2023-11-09 18:08:37 +01:00
Yuri Sizov edcad2ea88 Allow auto-generated node names in `PopupMenu::add_submenu_item` 2023-11-09 17:12:41 +01:00
Yuri Sizov 58a3cfa192 Warn about autowrapped labels in containers 2023-11-09 16:33:46 +01:00
kit d24d73ba31 Make mouse-enter/exit notifications match mouse event propagation
`NOTIFICATION_MOUSE_ENTER` and `NOTIFICATION_MOUSE_EXIT` now includes
the areas of children control nodes if the mouse filters allow it.

In order to check if a Control node itself was entered/exited, the newly
introduced `NOTIFICATION_MOUSE_ENTER_SELF` and
`NOTIFICATION_MOUSE_EXIT_SELF` can be used.

Co-authored-by: Markus Sauermann <6299227+Sauermann@users.noreply.github.com>
2023-11-09 09:11:59 -05:00
Rémi Verschelde cfcb0a1efc
Merge pull request #84605 from bruvzg/fix_list_al
[RTL] Fix list bullet alignment.
2023-11-08 19:10:47 +01:00
bruvzg e1c6dd522b
[RTL] Fix list bullet alignment. 2023-11-08 08:26:30 +02:00
Hugo Locurcio 079f1c8ead
Display a revert icon on ColorPicker's old sample
This denotes that the color can be clicked to revert to the old color.
2023-11-07 10:04:39 +01:00
Roy Berube a7b2e090ad Enable scrolling of output with UI scale changes 2023-11-06 12:17:49 -07:00
DinDotDout 15ec132ea2 Fix ColorPicker shape icon is invisible until shape is changed 2023-11-06 18:08:48 +01:00
Aitor Guevara 6b45694836 Trigger zoom from pan gestures when pressing ctrl
Enables zooming using pan + ctrl on macOS trackpads / Magic Mouse.
Windows and Linux don't emit pan gesture events, so shouldn't be
affected. Not tested on Android.
2023-11-01 17:49:04 +01:00
Rémi Verschelde 3d0041ff97
Merge pull request #84287 from bruvzg/rtl_img_resize_and_dropcap_flow
[TextServer] Fix line breaks for dropcap and resizing embedded objects.
2023-11-01 15:11:20 +01:00
Rémi Verschelde cfbccdbf44
Merge pull request #84183 from jsjtxietian/fix-activate_item_by_event-crash
Fix `activate_item_by_event` infinite recursion crash
2023-11-01 15:10:08 +01:00
jsjtxietian 137b25cf53 Fix `activate_item_by_event` infinite recursion crash 2023-11-01 10:29:59 +08:00
bruvzg 9ad55dc32d
[TextServer] Fix line breaks for dropcap and resizing embedded objects. 2023-10-31 22:39:42 +02:00
David Crespo 0be873bed2 Add compability rename of (v)align properties of Label 2023-10-31 14:39:57 -05:00
bruvzg 75d22aa816
[RTL] Fix underline/strikethrough line color changes. 2023-10-31 09:34:43 +02:00
kit a2674463fa fix dock visibility issues 2023-10-30 10:52:07 -04:00
aXu-AP 16e0fcd04a Show selected end of line in TextEdit
Continues selection box at the end of line if eol/carriage return is selected.
2023-10-30 12:49:30 +02:00
Rémi Verschelde 214405350f
Merge pull request #84113 from BlueCube3310/texture2d-dropdown-fix
Change dropdown type filter from Texture to Texture2D in certain nodes
2023-10-28 18:36:32 +02:00
BlueCube3310 bd67e0a0bc Change dropdown type filter to Texture2D in certain nodes 2023-10-28 17:39:47 +02:00
Rémi Verschelde 17da2c5b53
Merge pull request #83963 from YeldhamDev/try_active_tabs_first
Fix disabled tabs being selected when removing the current one
2023-10-28 12:31:38 +02:00
Rémi Verschelde 51875ac998
Merge pull request #83678 from qycyfjy/master
Fixing visual shader crash when arranging
2023-10-28 12:30:51 +02:00
Rémi Verschelde 924d861f6c
Merge pull request #84001 from chybby/83801-truncate-custom-icons
Fix TreeItem truncating node names too much when using a custom icon
2023-10-27 11:38:32 +02:00
kit 8985a46bdd TabBar save current tab 2023-10-26 18:32:22 -04:00
Adam Chyb 1785978872 Fix TreeItem truncating node names too much when using a custom icon
Fixes #83801.
2023-10-27 00:30:48 +11:00
Rémi Verschelde 71bef69318
Merge pull request #83966 from kitbdev/fix-tabcontainer-drag
Fix `TabContainer` drag to rearrange issue
2023-10-26 09:01:09 +02:00
Rémi Verschelde d2982000a4
Merge pull request #83961 from bruvzg/menu_bar_update_size
[Menu Bar] Update min. size when items are added/removed/changed.
2023-10-26 09:00:20 +02:00
Rémi Verschelde cb167fd84c
Merge pull request #83952 from AThousandShips/popup_crash
Ensure input event is valid in `PopupMenu::activate_item_by_event`
2023-10-26 08:59:57 +02:00
Rémi Verschelde 70f50c9751
Merge pull request #83946 from timothyqiu/text-edit-placeholder
Translate TextEdit placeholder
2023-10-26 08:59:33 +02:00
Rémi Verschelde e566167b48
Merge pull request #83925 from jsjtxietian/fix-timer-error-when-base-button-leave-tree-and-feedback
Fix BaseButton `shortcut_feedback`'s timer will raise error when the button is removed from the scene tree
2023-10-26 08:58:22 +02:00
kit b7884878fb Fix TabContainer drag to rearrange 2023-10-25 16:22:32 -04:00
Michael Alexsander c3fc87964f
Fix disabled tabs being selected when removing the current one 2023-10-25 16:46:54 -03:00
bruvzg 961e8af8bb
[Menu Bar] Update min. size when items are added/removed/changed. 2023-10-25 22:27:44 +03:00
A Thousand Ships f721b34b4e Ensure input event is valid in `PopupMenu::activate_item_by_event` 2023-10-25 17:45:01 +02:00
Haoyu Qiu d53529f488 Translate TextEdit placeholder 2023-10-25 22:51:17 +08:00
jsjtxietian 47d601b316 Fix BaseButton.shortcut_feedback's timer raises errors
when a button is removed from the scene tree
2023-10-25 14:47:25 +08:00
Hendrik Brucker 9391046c32 Fix GraphNode slot index inconsistency. 2023-10-24 16:19:33 +02:00
Hugo Locurcio d335155b46
Increase precision of RAW mode in ColorPicker
This sets the slider step to `0.001` but keeps SpinBox arrow increments
at `0.01`.
2023-10-23 18:33:56 +02:00
DennisManaa 1a1c542836 Implement automatic translation for ItemList 2023-10-23 10:14:08 +02:00
kit 701c8d8323 Fix tab dragging issues 2023-10-22 13:58:31 -04:00
qycyfjy 91894a2a5d Fixing iterator invalidation 2023-10-20 22:13:46 +08:00
Rémi Verschelde 68a183a2d9
Merge pull request #83626 from YuriSizov/control-less-is-more-as-in-less-excessive-notifications-is-more-performance
Add bulk change guards to successive theme overrides in Editor and GUI
2023-10-20 15:12:11 +02:00
Rémi Verschelde a434062e2c
Merge pull request #81724 from jsjtxietian/fix-line-edit-secret-char-hard-to-change
Make LineEdit secret character easier to change and enter
2023-10-20 15:07:29 +02:00
Yuri Sizov 215e036600 Add bulk change guards to successive theme overrides in Editor and GUI 2023-10-19 18:14:14 +02:00
jsjtxietian 6950aab078 Make LineEdit secret character easier to change and enter
1. Allow values longer than 1 character in the property,
    but trim characters after the first one.
2. Allow empty strings, this acts like if a space was used as a secret character,
    so that an error isn't printed when you erase all characters in the property.
2023-10-19 21:32:38 +08:00
Rémi Verschelde 0f710e688c
Merge pull request #83517 from YuriSizov/for-NON-separator-items-add-some-padding-for-the-content
Fix incorrect offset of `PopupMenu` separator icons
2023-10-18 16:54:52 +02:00
Rémi Verschelde 680b59954b
Merge pull request #81638 from jsjtxietian/fix-spinBox-reset-text-when-redraw
Fix SpinBox will reset unsubmited text when redrawing
2023-10-18 16:54:32 +02:00
Rémi Verschelde 024172b4eb
Merge pull request #82409 from KoBeWi/3_in_1
Document, cleanup and fix some theme properties
2023-10-18 00:00:36 +02:00
Yuri Sizov ccb989569d Fix incorrect offset of `PopupMenu` separator icons 2023-10-17 20:38:35 +02:00
Rémi Verschelde 3e8dc9df0a
Merge pull request #83286 from bronsonholden/fix-text-edit-hscroll-jitter
Remove vertical scrollbar padding from line width calc
2023-10-17 16:12:58 +02:00
Rémi Verschelde 72b14b54a1
Merge pull request #73502 from Kurble/text-edit-scrolling-precision
Fix code editor scrolling experience on track pads
2023-10-16 12:58:57 +02:00
Wierdox 7b33ad354a Fix phantom tab right button. 2023-10-13 16:34:05 -07:00
Rémi Verschelde 74d7796dbd
Merge pull request #80916 from ajreckof/fix-deferred-mode-not-working-for-color-picker-sliders
Fix ColorPicker deferred mode not working for sliders.
2023-10-13 22:15:45 +02:00
Bronson Holden ed16df1807 Remove vertical scrollbar padding from line width calc
Visibility of the vertical scrollbar is already accounted for in
`_update_wrap_at_column` which in turn affects max line width of
the text area.
2023-10-13 10:50:01 -07:00
ajreckof 3160add2b0 Fix ColorPicker deferred mode not working for sliders. 2023-10-13 14:35:47 +02:00
Danil Alexeev 881fe67d94
Code Editor: Fix regression with using doc comments for code regions 2023-10-13 09:38:03 +03:00
Bram Buurlage 1cf6b2cc2e
Put cheaper condition first
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2023-10-12 12:27:35 +02:00
Rémi Verschelde 49cdd330be
Merge pull request #81034 from garychia/open_folder
FileDialog: Avoid selecting the first item automatically in Open Folder Mode
2023-10-10 22:49:16 +02:00
Rémi Verschelde 6f8b7e9895
Merge pull request #83065 from KoBeWi/tree_works_in_mysterious_ways
Allow clicking buttons of non-selectable TreeItems
2023-10-10 12:34:22 +02:00
Rémi Verschelde added7d154
Merge pull request #83062 from bruvzg/no_dup_es
Do not apply extra spacing twice.
2023-10-10 09:12:17 +02:00
kobewi 7fb0cf2bd9 Allow clicking buttons of non-selectable TreeItems 2023-10-09 22:41:36 +02:00
bruvzg 100565a0c9
Do not apply extra spacing twice. 2023-10-09 21:38:23 +03:00
Rémi Verschelde a1d7c62df7
Merge pull request #83003 from AThousandShips/null_check_extra
Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable
2023-10-09 15:37:14 +02:00
Rémi Verschelde 4f85375b17
Merge pull request #82970 from bruvzg/rtl_round
[RTL] Remove unnecessary glyph position rounding.
2023-10-09 15:35:32 +02:00
Rémi Verschelde c1fed53943
Merge pull request #80271 from Ymanawat/optionmenu-scroll-test
Fix scrolling on keyboard/controller input
2023-10-09 15:30:57 +02:00
Rémi Verschelde c6635b4640
Merge pull request #71519 from adamscott/fix-code-completion-home-end
Fix code completion override of home and end keys
2023-10-09 15:30:27 +02:00
A Thousand Ships f18aa00e85 Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable 2023-10-08 17:23:33 +02:00
jsjtxietian 61be3eafc0 Fix spinBox will reset text when redrawing 2023-10-08 20:03:08 +08:00
bruvzg 49595ca225
[RTL] Remove unnecessary glyph position rounding. 2023-10-08 12:38:06 +03:00
Adam Scott 25cbb682f5
Fix code completion override of home and end keys 2023-10-06 14:48:45 -04:00
kobewi 1fee40a189 Accept cancel event when unfocusing LineEdit 2023-10-06 16:00:56 +02:00
Rémi Verschelde 3075e4ef1d
Merge pull request #82811 from MewPurPur/more-line-edit-organization
Place LineEdit secret in its own section
2023-10-06 12:52:58 +02:00
bruvzg f93e254b58
[PopupMenu] Handle shortcuts with "global" flag directly. 2023-10-06 11:16:41 +03:00
kobewi 09b30be86d Add vararg call() method to C++ Callable 2023-10-05 11:35:29 +02:00
Rémi Verschelde aa554e8278
Merge pull request #82694 from BrianMacIntosh/master
"Whole Words" search can detect word boundaries inside the search term.
2023-10-05 10:08:58 +02:00
MewPurPur dc2e0aab6f Place LineEdit secret in its own section 2023-10-04 22:41:45 +03:00
Rémi Verschelde e8e79c9195
Merge pull request #82776 from MewPurPur/more-text-edit-organization
Organize TextEdit's inspector
2023-10-04 15:46:05 +02:00
Rémi Verschelde 4321806e46
Merge pull request #82743 from bruvzg/fd_no_editor
[File Dialog] Do not open native file dialogs in the edited scene.
2023-10-04 15:44:29 +02:00
Rémi Verschelde d5db0e5032
Merge pull request #81218 from bruvzg/_temp_fs
[Native File Dialogs] Improve filter list handling, add selected filter to the callback.
2023-10-04 15:34:16 +02:00
MewPurPur 38210dbe27 Organize TextEdit's inspector 2023-10-04 13:24:29 +03:00
bruvzg d1aaa914f3
[macOS] Add `about_to_open` and `popup_hide` callback for the global menus, move part of logic to the PopupMenu to allow live menu modification. 2023-10-04 09:49:51 +03:00
bruvzg 2d9ba45e76
[File Dialog] Do not open native file dialogs in the edited scene. 2023-10-03 23:02:12 +03:00
bruvzg 43e4708dff
[Native File Dialogs] Improve filter list handling, add selected filter to the callback. 2023-10-03 19:26:16 +03:00
Rémi Verschelde b11309ddb6
Merge pull request #81633 from matorin57/code-completion-popup
Avoid resetting the code completion popup excessively
2023-10-03 17:20:49 +02:00
Rémi Verschelde 530e01b478
Merge pull request #80409 from bruvzg/est_title_size
[DisplayServer] Add method to estimate window title bar size.
2023-10-03 17:12:18 +02:00
Rémi Verschelde 9e8a93a5a9
Merge pull request #78762 from Sauermann/fix-svc-event-filter
Enable `InputEvent`-filtering in `SubViewportContainer`
2023-10-03 17:10:34 +02:00
bruvzg 72e2e47059
[DisplayServer] Add method to estimate window title bar size. 2023-10-03 16:13:52 +03:00
Brian MacIntosh 676627e1d1 "Whole Words" search can detect word boundaries inside the search term.
For example, searching for ".func" will now match in "a.func" even with Whole Words enabled.
2023-10-02 13:47:59 -07:00
Markus Sauermann 781cecdc23 Enable filtering `InputEvent`-sending in `SubViewportContainer`
Introduce an user overridable function, that allows filtering, if
an `InputEvent` should be sent to `SubViewport` children.
2023-10-02 19:51:49 +02:00
Rémi Verschelde 57a6813bb8
Merge pull request #81582 from YuriSizov/graph-toolbarniceness
Make `GraphEdit` toolbar more customizable
2023-10-02 15:18:42 +02:00
Rémi Verschelde 2d6cee48f6
Merge pull request #80555 from GrammAcc/fix-80507
AssetLib: Fix long plugin names breaking the UI
2023-10-02 15:18:38 +02:00
Yuri Sizov b07c664af9 Make `GraphEdit` toolbar more customizable
Also adds a semi-transparent background
to make the toolbar stand out in front of nodes.
2023-10-02 13:43:08 +02:00
Rémi Verschelde 1e819ae3aa
Merge pull request #82590 from YuriSizov/window-you-come-to-me-on-this-day-the-day-when-my-child-becomes-exclusive-with-a-transient-parent-to-ask-for-this
Add more context to some `Window` errors
2023-10-02 13:16:39 +02:00
Rémi Verschelde bc118b36ac
Merge pull request #82370 from YuriSizov/graphs-request-rename-close-delete-please
Rename close requests to delete requests in `GraphEdit`
2023-10-02 13:16:28 +02:00
Rémi Verschelde 0d034447b7
Merge pull request #81648 from 4d49/fix-tab-metadata
Remove the equality check for `TabBar.set_tab_metadata`
2023-10-02 13:16:23 +02:00
Rémi Verschelde 0c7ac25b47
Merge pull request #81174 from BlueCube3310/tree-range-fix
Fix TreeItem range slider not working properly
2023-10-02 13:16:03 +02:00
Rémi Verschelde e95b7e84a4
Merge pull request #80844 from dalexeev/fix-callable-expected-argc
Fix expected argument count for `Callable` call errors
2023-10-02 13:15:53 +02:00
GrammAcc d63a88bef1 AssetLib: Fix long plugin names breaking the UI
The UI was extending past the screen width when loading a page diplaying
a plugin with an especially long title in the asset store plugin.

I implemented a new `EditorAssetLibraryItem::clamp_width` method that
checks that the title text is not longer than the column width minus
some padding and truncates it if it is.

I also noticed that the nav buttons for paginated results were causing the UI to extend past
the screen width on higher editor scales since they were hardcoded to
show ten page buttons if there were enough results. I modified the
pagination slightly to display a dynamic number of nav buttons based on
the editor scale in order to fix this other cause of the same problem.

I had to use the font of the `title`, which is a `LinkButton` in order
to determine the text width, so I added a public getter `get_button_font` to the `LinkButton` class.
2023-09-30 18:16:39 -05:00
Yuri Sizov 53172d9860 Add more context to some `Window` errors 2023-09-30 21:44:05 +02:00
Rémi Verschelde b97af40ac1
Merge pull request #82552 from bruvzg/fd_visible
[FileDialog] Make set_visible compatible with native dialogs.
2023-09-30 11:03:55 +02:00
Bram Buurlage a18f443846 Use Math::round() instead of round() for rounding the scroll position 2023-09-30 11:00:24 +02:00
Bram Buurlage 6ffa9b0635 Editor: fix code editor scrolling experience on track pads 2023-09-30 10:55:14 +02:00
bruvzg c52db6190c
[FileDialog] Make set_visible compatible with native dialogs. 2023-09-30 00:40:49 +03:00
Rémi Verschelde 7469b43392
Merge pull request #77804 from ajreckof/prevent-disapearance-of-mouse-when-SpinBox-is-hidden-while-doing-a-drag-modification
Prevent disappearance of mouse when SpinBox is hidden while dragging
2023-09-29 19:45:03 +02:00
Danil Alexeev aff767ef07
Fix expected argument count for `Callable` call errors 2023-09-29 20:00:10 +03:00
Yuri Sizov 4f0e2ea86e Merge pull request #80699 from aXu-AP/spin-box-comma-decimals
Allow comma as a decimal separator for SpinBox
2023-09-28 20:04:02 +02:00
Rémi Verschelde 048abcb2bb
Merge pull request #82384 from YeldhamDev/corner_cases_man_i_swear
Make hovered tabs be drawn with the unselected's width at minimum
2023-09-27 14:03:43 +02:00
kobewi cfb6d25d30 Document, cleanup and fix some theme properties 2023-09-27 00:06:15 +02:00
Michael Alexsander decae848a8
Make hovered tabs be drawn with the unselected's width at minimum 2023-09-26 15:08:47 -03:00
Yuri Sizov 378ab38b1f Rename close requests to delete requests in `GraphEdit` 2023-09-26 16:41:39 +02:00
Rémi Verschelde ca8b229e1c
Merge pull request #80410 from bruvzg/rtl_img_features
[RTL] Add support for image dynamic updating, padding, tooltips and size in percent.
2023-09-26 13:44:46 +02:00
Rémi Verschelde 21cdedb79c
Merge pull request #77819 from 0xafbf/char-fx-tests
Make it possible to change character transform in RichTextEffect
2023-09-26 13:44:28 +02:00
bruvzg bc6585a5a7
[RTL] Add support for image dynamic updating, padding, tooltips and size in percent. 2023-09-26 09:39:51 +03:00
PucklaMotzer09 d2e651f403 Add Duplicate Lines shortcut to CodeTextEditor
This keyboard shortcut has been made with inspiration from the VS Code keyboard shortcut editor.action.copyLinesDownAction. It duplicates all selected lines and inserts them below no matter where the caret is within the line.
2023-09-25 23:41:31 +02:00
Rémi Verschelde e4cfd4e26a
Merge pull request #82195 from AThousandShips/radian_fix
Replace `radians` range hint with `radians_as_degrees`
2023-09-25 17:18:38 +02:00
Rémi Verschelde 8ddf73c74d
Merge pull request #81939 from YuriSizov/gui-flat-and-depressed
Replace flat buttons with flat-styled buttons with a visible pressed state
2023-09-25 17:18:29 +02:00
Rémi Verschelde 91420573c0
Merge pull request #79965 from KoBeWi/popup_menu_sidequest
Free submenu children when clearing PopupMenu
2023-09-25 17:17:55 +02:00
Rémi Verschelde c57d9f3483
Merge pull request #79104 from DrRevert/focusable_tabs_refactor
Allow to focus individual tabs in `TabBar`/`TabContainer`
2023-09-25 17:17:51 +02:00
Rémi Verschelde 3408aab7c6
Merge pull request #76027 from AThousandShips/focus_direction
Expose finding valid focus neighbors of a `Control` by side
2023-09-25 17:17:33 +02:00
kobewi df24882f9a Free submenu children when clearing PopupMenu 2023-09-25 16:45:41 +02:00
A Thousand Ships e45927b2f2 Replace `radians` range hint with `radians_as_degrees` 2023-09-25 08:50:19 +02:00
Rémi Verschelde df0a822323
Merge pull request #82236 from Chubercik/item_list_separator_fix
Remove the separator from ItemList's thumbnails mode
2023-09-24 23:37:20 +02:00
Rémi Verschelde 42fb795eb8
Merge pull request #80227 from raulsntos/get_tab_bar
Expose the `TabBar` of a `TabContainer`
2023-09-24 23:30:56 +02:00
Jakub Marcowski 2e28fb7cdd Remove the separator from ItemList's thumbnail mode 2023-09-24 13:06:11 +02:00
Raul Santos 408a08f2c1
Expose the `TabBar` of a `TabContainer`
Add `TabContainer::get_tab_bar` method to retrieve the `TabBar` of a `TabContainer`.
2023-09-22 20:08:28 +02:00
aXu-AP 4d3dc0e944 Use comma as a decimal separator for SpinBox
Add support for comma ',' as a decimal separator for SpinBox. This implementation allows for expressions like `pow(2, 3)` to be used as well. If you use comma to separate decimals, use semicolon `;` to separate function parameters.
Change EditorSpinSlider behavior to match.
2023-09-21 15:45:37 +03:00
DESKTOP-UT43QTQ\Garrigan-Desktop 303d0994e9 Avoid resetting the code completion popup excessively 2023-09-20 15:49:25 -05:00
Rémi Verschelde 73d7651784
Merge pull request #81921 from YuriSizov/gui-less-friendliness
Connect `CodeHighlighter` with `TextEdit` without friend-access
2023-09-20 13:10:00 +02:00
Yuri Sizov 4bd569be95 Replace flat buttons with flat-styled buttons with a visible pressed state 2023-09-19 22:36:29 +02:00
Yuri Sizov fee1fb8290 Connect `CodeHighlighter` with `TextEdit` without friend-access 2023-09-19 14:36:38 +02:00
ajreckof 6afadbaa9f Replace Ctrl in editor shortcuts with Cmd or Ctrl depending on platform 2023-09-19 10:29:07 +02:00
Rémi Verschelde 77623d0a36
Merge pull request #81354 from MJacred/textedit_pixel_pos_fix
Fix `TextEdit.get_rect_at_line_column returning` negative pos even though cursor is in viewable area of the control
2023-09-18 10:37:59 +02:00
Arkadiusz Marcin Kołek 18811ac814 Allow to focus individual tabs in TabBar/TabContainer 2023-09-17 18:49:48 +02:00
Rémi Verschelde 4a48fd4b9f
Merge pull request #63634 from Spartan322/itemlist-predraw-size
Expose and rename ItemList's `_check_shape_changed` to `force_update_list_size`
2023-09-17 14:45:19 +02:00
George L. Albany 421e8c5455
Expose force_update_list_size
Rename ItemList::_check_shape_changed to force_update_list_size

`force_update_list_size` is especially useful for updating the auto_height_value early
2023-09-15 13:18:02 -04:00
PrecisionRender 76fad10978 Expose `PopupMenu` `activate_item_by_event` method 2023-09-15 10:27:49 -05:00
Yuri Sizov 325ec7fdda Merge pull request #81600 from aaronfranke/fix-graph-edit-valid-port-conn-type
Fix GraphEdit port valid connections incorrectly checking sides
2023-09-14 15:21:59 +02:00
Yuri Sizov 56e54b49b6 Merge pull request #81551 from YuriSizov/gui-cache-all-the-theme
Bind remaining theme properties to their respective classes
2023-09-14 15:21:45 +02:00
Mansur Isaev 4982bec8b7 Removes the equality check for `set_tab_metadata`
Makes the code equivalent to the `Tree.set_metadata` code.

Fix: https://github.com/godotengine/godot/issues/81647
2023-09-14 17:07:14 +04:00
Yuri Sizov fe000277ea Bind remaining theme properties to their respective classes
This adds binds for GraphEdit/GraphElement/GraphNode, which were
skipped before due to a rework. This also adds binds for Window,
which was skipped before due to a complicated code organization.

Also adds theme cache entries/direct cache access to a few places
that previously missed it. Some theme properties are now exposed
to other classes via friendships or public getters for convenience.

This removes all string-based theme access from scene/ classes.
2023-09-13 19:31:35 +02:00
Aaron Franke 366e54b0a3
Fix GraphEdit port valid connections incorrectly checking sides 2023-09-12 20:46:43 -05:00
A Thousand Ships a29416e332 [Scene,Main] Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable 2023-09-12 12:53:06 +02:00
Rémi Verschelde 5c43e4c1ef
Fix various typos with codespell
Using 2.2.6.dev180+ge3a2cfbd.
2023-09-12 08:54:18 +02:00
Rémi Verschelde 6a007c7512
Merge pull request #81546 from YuriSizov/there-isnt-enough-room-for-two-ways-to-customize-a-dialog-in-this-town-boy
Hide the `dialog_text` property from `FileDialog`
2023-09-12 08:51:09 +02:00
Jean-Michel Bernard 67dce301aa Add code region folding to CodeEdit 2023-09-11 18:36:40 +02:00
Yuri Sizov d0e26572fe Hide the `dialog_text` property from `FileDialog`
It's useless in `FileDialog`, because dialogs can have either
a text label or a custom layout, and `FileDialog` already
has a custom layout.
2023-09-11 16:24:54 +02:00
Rémi Verschelde 013bbd1a1e
Merge pull request #81477 from timothyqiu/aligned
Fix submenu alignment with parent menu item
2023-09-11 15:38:54 +02:00
Rémi Verschelde d08401236c
Merge pull request #81312 from YuriSizov/theme-static-binds
Register theme properties with ThemeDB
2023-09-11 15:38:06 +02:00
Rémi Verschelde ca2d5b25fd
Merge pull request #81094 from OXTyler/81071
Fix SpinBox not clearing text on improper input
2023-09-11 15:37:18 +02:00
Rémi Verschelde afd01030a8
Merge pull request #80956 from MarcusElg/deselectmulticaret
Deselect multi caret when alt clicking on it
2023-09-11 15:36:21 +02:00
Yuri Sizov 2924bfd4d3 Register theme properties with ThemeDB 2023-09-11 13:45:23 +02:00
MJacred 6170381bd7 Fix TextEdit.get_rect_at_line_column returning negative pos even though cursor is in viewable area of the control 2023-09-11 12:32:36 +02:00
Haoyu Qiu e5ad35a95f Fix submenu alignment with parent menu item 2023-09-09 14:32:21 +08:00
kobewi db4daa5249 Fix FindReplaceBar losing focus too early 2023-09-08 14:46:34 +02:00
Rémi Verschelde baad99220e
Merge pull request #81443 from bruvzg/le_off_del
[LineEdit] Update line edit offset on text delete.
2023-09-08 11:50:49 +02:00
bruvzg 6a1fdc213c
[LineEdit] Update line edit offset on text delete. 2023-09-08 08:58:51 +03:00
Hendrik Brucker 5afe78bd9c Clean up/refactor GraphNode and make it more flexible
Split GraphNode into GraphElement and GraphNode, add custom
titlebar, and adjust theming.
2023-09-07 17:29:06 +02:00
Rémi Verschelde 23ab351a9b
Merge pull request #81396 from bruvzg/te_idir
Fix TextEdit placeholder with Inherited text direction.
2023-09-07 13:54:33 +02:00
Rémi Verschelde 7663c69922
Merge pull request #81388 from YuriSizov/core-gdvirtual-but-less-confused-about-itself
Extract `ScriptInstance` into its own file to simplify includes
2023-09-07 13:53:45 +02:00
Rémi Verschelde 4bf3de7853
Merge pull request #81383 from AThousandShips/valid_remove
Remove unnecessary validity checks from `Button` and `TextureRect`
2023-09-07 13:53:20 +02:00
bruvzg 3842694d4f
Fix TextEdit placeholder with Inherited text direction. 2023-09-07 08:26:10 +03:00
Yuri Sizov d8ff69d53c Extract ScriptInstance to simplify includes
This allows to include script_instance.h directly in the
generated gdvirtual.gen.inc, and remove excessive includes
from the codebase.

This should also allow Resource to use GDVIRTUAL macros,
which wasn't possible previously due to a circular dependency.
2023-09-06 22:54:38 +02:00
Yuri Sizov 58126e479c Introduce the concept of global theme contexts
This commit adds the default theme context, which replaces
the need to manually check the project and the default theme
all the time; simplifies related code.

It also adds framework for custom theme contexts, to be used
by the editor. Custom contexts can be attached to any node,
and not necessarily a GUI/Window node. Contexts do no break
theme inheritance and only define which global themes a node
uses as a fallback.

Contexts propagate NOTIFICATION_THEME_CHANGED when one of their
global themes changes. This ensures that global themes act just
like themes assigned to individual nodes and can be previewed
live in the editor.
2023-09-06 19:40:43 +02:00
A Thousand Ships 380db4d03e Remove unnecessary validity checks from `Button` and `TextureRect`
The one in `TextureRect` appears to be a leftover from earlier code, and
the one in `Button` was copied from there.
2023-09-06 16:39:06 +02:00
Yuri Sizov 6f87ab7244 Merge pull request #81268 from timothyqiu/icon-scale-changes
Fix ItemList not updating when icon scale changes
2023-09-06 14:49:13 +02:00
Yuri Sizov 3c63dce3cd Merge pull request #80573 from KoBeWi/2k_lines_of_changes_created_at_2AM
Add EditorStringNames singleton
2023-09-06 14:49:02 +02:00
Rémi Verschelde 92da5a7654
Merge pull request #79792 from Miguel0312/SceneTreeTooltips
Correctly display tooltips for buttons in Tree when they overlap cell content
2023-09-04 09:07:24 +02:00
kobewi 6de34fde27 Add EditorStringNames singleton 2023-09-03 19:58:18 +02:00
Marcus Elg aac10705d7 Deselect multi caret when alt clicking on it 2023-09-03 19:22:33 +02:00
Haoyu Qiu 1bf4c12c0a Fix ItemList not update when icon scale changes 2023-09-03 19:10:24 +08:00
Rémi Verschelde ae7bab8c37
Merge pull request #81040 from Ymanawat/control-theme-80989
Fix setting TabContainer's `font_hovered_color` theme property
2023-08-31 08:54:29 +02:00
Yogendra Manawat a16fdb05ae Fix scrolling popup_menu On keyboard/controller input 2023-08-30 23:31:22 +05:30
BlueCube3310 c759ac0e4f Fix TreeItem range slider not working 2023-08-30 19:17:13 +02:00
Yogendra Manawat d7bf05b490 Fix TabContainer's font_hovered_color theme property 2023-08-30 21:25:41 +05:30
Chia-Hsiang Cheng 749db00227 Draw separators before selected style boxes 2023-08-30 16:32:58 +08:00
kobewi e21c30ec11 Unfocus LineEdit when pressing Escape 2023-08-29 14:53:49 +02:00
Tyler 468e57dfe5 fixes issue 81071 2023-08-28 17:09:48 -04:00
Rémi Verschelde 541674d106
Merge pull request #81076 from Jordyfel/spinbox
Only allow finite numbers in `Range.value`.
2023-08-28 20:38:22 +02:00
Rémi Verschelde ba1089689a
Merge pull request #80954 from bruvzg/sp_per_font
[Text Server] Store extra spacing of individual font variations.
2023-08-28 20:37:58 +02:00
Jordyfel 78304282f0 Only allow finite numbers in Range.value. 2023-08-28 17:03:17 +03:00
Rémi Verschelde 713bfaf5ea
Merge pull request #81064 from bruvzg/rtl_char_count_line_edge
[RTL] Fix character line index for non-visual characters and characters on the line edge.
2023-08-28 12:12:22 +02:00
Rémi Verschelde 2c0a74a149
Merge pull request #80105 from Sauermann/fix-global-transform
Fix global transform validity for `Node2D` and `Control`
2023-08-28 12:03:53 +02:00
Rémi Verschelde b00796eb1a
Merge pull request #79818 from garychia/select_all
RichTextLabel: Ensure the `select_all` function selects all items
2023-08-28 12:03:29 +02:00
bruvzg 2273509721
[RTL] Fix character line index for non-visual characters and characters on the line edge. 2023-08-28 10:50:01 +03:00
Miguel Pereira 8278a5f274 Correctly display tooltips for buttons in Tree when they overlap cell content 2023-08-27 18:21:12 +02:00
Chia-Hsiang Cheng f93f1952cb Avoid selecting the first item automatically in Open Folder Mode 2023-08-27 17:25:17 +08:00
bruvzg 88177a5a58
[RTL] Use list iterators for item/paragraph removal. 2023-08-25 17:49:13 +03:00
Chia-Hsiang Cheng d66c7a2ac5 Ensure the 'select_all' function selects all items 2023-08-25 21:07:33 +08:00
Danil Alexeev 07d23489f4
GUI: Fix text overlapping icon in `Tree` 2023-08-24 22:09:02 +03:00
A Thousand Ships e70b83c7a0 Expose finding valid focus neighbors of a `Control` by side
Exposes the functionality used for ui navigation
2023-08-24 18:25:35 +02:00
bruvzg 5453503697
[Text Server] Store extra spacing of individual font variations. 2023-08-24 11:58:12 +03:00
Andrés Botero eee95aff04 Add transform support to CharFXTransform
Use absolute transforms for CharFX

fix formatting
2023-08-23 00:18:37 -05:00
Rémi Verschelde 8e0346bade
Merge pull request #80848 from bruvzg/rtl_lang
[RTL] Adds "lang" tag to allow overriding language specific text rendering without starting a new paragraph.
2023-08-21 19:32:29 +02:00
bruvzg 299808cc26
[RTL] Adds "lang" tag to allow overriding language specific text rendering without starting a new paragraph. 2023-08-21 14:56:43 +03:00
bruvzg cd6b0368f6
[RTL] Fix remove_paragraph crashes. 2023-08-21 14:36:07 +03:00
jsjtxietian 70dad7e5a3 Fixes a text find perf issue, if can't find any
match words, just early break the while loop. This
will improve a lot when p_search.length is way too
long since p_from_column will only plus 1 every loop
2023-08-20 21:48:25 +08:00
Rémi Verschelde b51ee8b029
Merge pull request #80650 from bruvzg/comp_char_fix
[TextServer] Fix system font fallback and caret/selection behavior for composite characters.
2023-08-18 17:24:54 +02:00
Rémi Verschelde 0fff0b1054
Merge pull request #80203 from WhalesState/Dev2
Add shortcut handling to `OptionButton`
2023-08-17 11:24:14 +02:00
Rémi Verschelde ef77ae7d6c
Merge pull request #74250 from daBlesr/bugfix-selection-signals-when-disabled-or-not-selectable
ItemList: Clarify distinction between disabled and selected in sending signals
2023-08-17 11:19:17 +02:00
Rémi Verschelde 4b11bc2b34
Merge pull request #36493 from KoBeWi/echo_menus
Add option to allow echo events in menu shortcuts
2023-08-17 11:18:50 +02:00
Niels Drost fa63107bd1
ItemList: Clarify distinction between disabled and selected in sending signals
disabled -> not sending any signal at all (activated, selected, deselected, ...)
selected -> only possible when not disabled, and when selectable

Fixes #74086.
2023-08-17 10:34:18 +02:00
Tomasz Chabora 3dd881b4e4 Add option to allow echo events in menu shortcuts 2023-08-16 16:59:17 +02:00