Commit Graph

4308 Commits

Author SHA1 Message Date
Rémi Verschelde d831ba1d6f
Merge pull request #67534 from KoBeWi/more_OK_in_OKHSL
Improve ColorPicker sliders in OKHSL mode
2022-10-31 10:37:27 +01:00
Rémi Verschelde 68623c75b3
Merge pull request #67496 from Paulb23/text-edit-crashes
Fix TextEdit action and CodeEdit completion crash
2022-10-31 10:32:41 +01:00
Rémi Verschelde 273410ba5a
Merge pull request #67139 from PucklaMotzer09/insert_caret_at_carets
Add Caret Insert Below and Above shortcuts to TextEdit
2022-10-31 10:32:07 +01:00
Rémi Verschelde 996f7e5142
Merge pull request #66352 from arkology/progressbar_atlastexture_radial
Support AtlasTexture in radial modes of TextureProgressBar
2022-10-31 10:31:07 +01:00
Haoyu Qiu 3aed3edc06 Allow selecting SpinBox & LineEdit text when focus enters 2022-10-29 09:58:42 +08:00
Michael Alexsander 4b6e6c6758 Stop centering clicked suggestions in the autocomplete popup 2022-10-28 20:22:28 -03:00
Clay John 0486810697
Merge pull request #67644 from alfredbaudisch/add-selection-next-occurrence
Add Selection and Caret for Next Occurrence of Selection
2022-10-27 17:21:49 -07:00
Michael Alexsander fb8588e68e Fix problems with `tab_changed` signal when removing multiple tabs at once 2022-10-27 03:16:01 -03:00
kobewi c7eb814ede Remove override_selected_font_color property 2022-10-26 12:59:18 +02:00
Marc Gilleron 7543a5e014 Rename queue_delete => queue_free
# Conflicts:
#	editor/plugins/tiles/tiles_editor_plugin.cpp
2022-10-24 22:07:02 +01:00
Clay John 4134f2a464
Merge pull request #67566 from Sauermann/fix-code-simplifications
Code simplifications
2022-10-23 17:02:04 -07:00
Teggy 2b08675f37 Add alignment options to flow container 2022-10-23 13:40:17 +02:00
Alfred Reinold Baudisch 7d15ecc3af Add Selection and Caret for Next Occurrence of Selection
Adds the bind `add_selection_for_next_occurrence` to TextEdit, with CTRL+D as the default shortcut.

When the bind is performed, ff a selection is currently active with the last caret in text fields, searches for the next occurrence of the selection, adds a caret and selects the next occurrence.

If no selection is currently active with the last caret in text fields, selects the word currently under the caret.

The action can be performed sequentially for all occurrences of the selection of the last caret and for all existing carets. The viewport is adjusted to the latest newly added caret.

The bind and the behaviour is similar to VS Code's "Add Selection to Next Find Match" and JetBrains' "Add Selection for Next Occurrence". It takes advantage of the multi-caret API.

The default shortcut for `select_word_under_caret` has been changed to ALT+G, in order to give priority to CTRL+D for `add_selection_for_next_occurrence` to better align with popular IDEs and editors.
2022-10-21 08:26:53 +02:00
George L. Albany d846dd6e91
Make `BaseButton` Shortcut feedback togglable 2022-10-20 02:02:12 -04:00
Max Hilbrunner d148613bb1
Merge pull request #66279 from aaronfranke/control-min-size
Revert `custom_minimum_size` type back to `Vector2` instead of `Vector2i`
2022-10-19 22:40:52 +02:00
kobewi d06a8320e5 Simplify GDVIRTUAL_CALL calls 2022-10-19 00:05:48 +02:00
kobewi b42c1f82fc Improve ColorPicker sliders in OKHSL mode 2022-10-18 23:59:55 +02:00
kobewi e48c5daddf Unify usage of GLOBAL/EDITOR_GET 2022-10-18 19:01:48 +02:00
Markus Sauermann b8031bb7d6 Code simplifications
1. Viewport::get_visible_rect().position is always zero.
So Control::get_window_rect is identical to Control::get_global_rect.
Remove Control::get_window_rect since it is not used in the source code.

2. sqrt(a * a) = abs(a) for doubles

3. Simplify affine_inverse combination

4. Simplify calculation in shaders
2022-10-18 12:47:40 +02:00
PucklaMotzer09 e5354cacd0 Add Caret Insert Below and Above shortcuts to TextEdit 2022-10-18 10:38:53 +02:00
Rindbee 42073fc2bb Use more reasonable scrollable conditions in `ScrollContainer`
The visibility of the `ScrollBar` was used as a condition for judging whether it should scroll.
**Visible** and **scrollable** are currently not the same in some cases (`SCROLL_MODE_SHOW_NEVER`).
This makes `SCROLL_MODE_SHOW_NEVER` not working properly.

This patch will make `SCROLL_MODE_SHOW_NEVER` available, so that the external `SrollBar` can
share the internal `ScrollBar`'s data, we can achieve the purpose of replacing the internal
`ScrollBar` with a custom external one.
2022-10-18 16:32:39 +08:00
arkology 825f5671f1 Support AtlasTexture in radial modes of TextureProgressBar 2022-10-17 20:44:25 +03:00
Paulb23 4bfb1d953c Fix undo redo not adjusting TextEdit viewport to caret 2022-10-16 19:30:03 +01:00
Paulb23 b5dc8e24be Fix crash in code completion when using an invalid / null font 2022-10-16 16:47:27 +01:00
Paulb23 76005e5ff7 Forcibly end current TextEdit action on undo redo 2022-10-16 16:28:22 +01:00
bruvzg 4b1937c73f Abort LineEdit shaping if no font is set to avoid unnecessary error messages. 2022-10-14 12:57:42 +03:00
Rémi Verschelde f32f5b70d8 Merge pull request #67348 from Mickeon/salvage-a-dear-comment
Comment not to remove `data` structs in some Nodes
2022-10-13 18:40:58 +02:00
Micky de9e08da76 Comment not to remove `data` structs in some Nodes 2022-10-13 15:52:35 +02:00
Rémi Verschelde 2ffb609658 Merge pull request #66337 from EricEzaM/sprite-frames
Ensure control built-in shortcuts are matched exactly & add shortcuts for SpriteFrames editor
2022-10-13 15:24:39 +02:00
Rémi Verschelde 17db8be33c Merge pull request #66357 from EricEzaM/shortcut-context-on-node
Move Shortcut Context to control and fix `shortcut_input` with `shortcut_context`
2022-10-13 15:24:30 +02:00
Eric M a3ed9e6f2c Move Shortcut Context to Control and ensure that `shortcut_input` adheres to contexts. Also ensure that controls with no context are only triggered AFTER nodes which do have a context. 2022-10-13 21:07:19 +10:00
MladoniSzabi 3550354fd3 fixed holding alt while zooming zooms in by 2 increments. 2022-10-13 11:38:25 +01:00
Rémi Verschelde fad0327503 Merge pull request #66953 from Sauermann/fix-top-level-connect-error
Fix Control node not disconnecting from signal
2022-10-13 09:04:25 +02:00
Rémi Verschelde 15b68f7601 Merge pull request #67232 from bruvzg/popup_edit
Improve Popup / Window behavior in the edited scene tree.
2022-10-12 14:45:14 +02:00
Paulb23 f3eb543e67 Fix select word under caret using caret col instead of line 2022-10-11 20:32:06 +01:00
Rémi Verschelde f21053d189 Merge pull request #67201 from progsource/richtextlabel-icon-spritesheet
Add Spritesheet support to RichTextLabel BBCode
2022-10-11 13:58:54 +02:00
Petra Baranski 546e017613 Add Spritesheet support to RichTextLabel BBCode
BBCode: [img region=0,0,16,16]res://icon.svg[/img]
2022-10-11 13:04:15 +02:00
bruvzg 2e1fcbe14b
Prevent `Popup`s it the edited scene tree from closing on focus loss. Hide irrelevant `Popup` flags from the editor inspector. 2022-10-11 08:55:00 +03:00
Rémi Verschelde 8017827144 SCons: Re-enable treating `#warning` as error with `werror`
Replace all TODO uses of `#warning` by proper TODO comments, and will open
matching bug reports to keep track of them.

We don't have a great track record fixing TODOs, but I'd wager we're even
worse for fixing these "TODO #warning" so we should prohibit this usage.
2022-10-10 16:12:26 +02:00
Rémi Verschelde ddb97a0b35 Merge pull request #67117 from Jummit/tree-button-color
Expose TreeItem::set_button_color
2022-10-10 13:52:57 +02:00
Rémi Verschelde 4be5660223 Merge pull request #67145 from Paulb23/tab_textedit
Fix inserting tabs in TextEdit
2022-10-10 13:52:42 +02:00
Rémi Verschelde 104af08e9d Merge pull request #65805 from MewPurPur/improve-breakpoint-hovering
Improve bookmark and breakpoint indicators
2022-10-10 10:03:26 +02:00
VolTer d6e60f45a1 Improved breakpoints hover indicator 2022-10-10 04:36:45 +02:00
Haoyu Qiu eac9adf7a1 Don't allow removing TextEdit's main caret 2022-10-10 08:30:23 +08:00
Paulb23 7333aa68f4 Handle tab in TextEdit 2022-10-09 17:46:40 +01:00
Rémi Verschelde 6f6482e82b Merge pull request #67083 from RedMser/label-font-warning
Add warning for missing characters in label font
2022-10-09 18:29:06 +02:00
Rémi Verschelde 49be2d2cf8 Merge pull request #66524 from microaeris/aeris/text-edit-get-scroll-bar
Getters for TextEdit scroll bars
2022-10-09 18:27:30 +02:00
Jummit 1e28675560 Expose TreeItem::set_button_color 2022-10-09 10:37:55 +02:00
Haoyu Qiu 2a921cc9f8 Fix Label text length mismatch after localization 2022-10-08 23:07:19 +08:00
RedMser 9579d49820 Add warning for missing characters in label font 2022-10-08 17:02:25 +02:00
microaeris 215fe852b8 Getters for TextEdit scrollbars 2022-10-07 23:16:04 -07:00
bruvzg 0103af1ddd
Fix MSVC warnings, rename shadowed variables, fix uninitialized values, change warnings=all to use /W4. 2022-10-07 11:32:33 +03:00
Rémi Verschelde 5b7f62af55 Merge pull request #62910 from Vitika9/gsoc-colorpicker-ux
ColorPicker UX
2022-10-07 09:49:29 +02:00
bruvzg a750ca7ec1
Add split caret direction markers. Fix block/overtype caret size. 2022-10-07 08:45:52 +03:00
Rémi Verschelde d414872bfe Merge pull request #66961 from Rindbee/fix-set_custom_color
Fix wrong condition used in `set_custom_color`
2022-10-06 08:56:52 +02:00
Rémi Verschelde f5903215d0 Merge pull request #61902 from Paulb23/multi-caret
Add Multi-caret support to TextEdit
2022-10-06 08:56:34 +02:00
Rindbee f359abbe01 Fix wrong condition used in `set_custom_color` 2022-10-06 12:09:02 +08:00
Markus Sauermann c0f0f26615 Fix Control not disconnecting signal
If a Control has not parent CanvasItem and is set as top_level, then it does not disconnect from the "size_changed" signal when it leaves the Canvas.
This patch corrects this.
2022-10-05 23:35:44 +02:00
Paulb23 e9180241e8 Add multi caret support to CodeEdit 2022-10-05 17:19:26 +01:00
Paulb23 4a9d4e3dad Add mutliple Caret support to TextEdit 2022-10-05 17:19:26 +01:00
Rémi Verschelde 132a0e3242 Merge pull request #66770 from EricEzaM/search-by-event
Add searching by event in Editor Settings shortcuts and Project Settings input map.
2022-10-05 08:34:45 +02:00
Rémi Verschelde 02e9e2d3c0 Merge pull request #66559 from zaevi/fix_ScrollContainer_touch_scroll
Fix ScrollContainer touch-scrolling not working.
2022-10-04 10:30:31 +02:00
Paulb23 7dd3857f7e Move selecion into caret 2022-10-03 14:09:27 +01:00
EricEzaM 272c297931 Improve MenuButton and OptionButton
* MenuButton + OptionButton: Add method `show_popup()` which performs required popup setup before showing (prefer use of this over `get_popup()->popup()`, otherwise GH #66308 occurs)
* MenuButton: Ensure that the menu can be opened with a shortcut, if one is set for the button. (GH #66403). Ensure that popupmenu item shortcuts are checked first before the MenuButton shortcut.
2022-10-03 20:07:39 +10:00
EricEzaM cb6d7fd059 Add searching by event for Editor Settings shortcuts and Project Settings input map.
* Focus into the LineEdit, then perform input to search the list of events by the events assigned.
* New specialised editor-only control for this: EventListenerLineEdit. Line edit is a good candidate for such a control because you can focus it, override it's input handling, and show the event all in one control.
Update InputEventConfigurationDialog to use event listener line edit rather than the separate tabs.
* Cleaner look - no need for tabs.
* Simpler code.
2022-10-03 19:56:34 +10:00
Rémi Verschelde e3464c8fc8 Merge pull request #58995 from Sauermann/fix-mouse-cursor-change-2
Update mouse cursor shape after changes
2022-09-28 20:50:05 +02:00
Rémi Verschelde a9591f3039 Merge pull request #66543 from akien-mga/msvc-warning-c4702
Fix MSVC warning C4702: unreachable code
2022-09-28 20:47:30 +02:00
Zae 186ca020b3 Fix ScrollContainer touch-scrolling not working. 2022-09-29 01:47:03 +08:00
Rémi Verschelde 7ab01450cf Fix MSVC warning C4702: unreachable code
Part of #66537.
2022-09-28 16:46:48 +02:00
Rémi Verschelde 0e53dd642c Fix MSVC warning C4706: assignment within conditional expression
Part of #66537.
2022-09-28 16:05:07 +02:00
Rémi Verschelde 7562932eb2 Merge pull request #66160 from dpalais/double_time
Use double instead of real_t type for time-related parameters and variables
2022-09-27 10:04:10 +02:00
Rémi Verschelde 92371880bd Merge pull request #66445 from EricEzaM/GH-66442-shortcut-change-popupmenu-update
Ensure popup menu redraws items when shortcuts update.
2022-09-27 09:53:52 +02:00
Dave Palais 0c46068af0 Change time parameters and variables to double type
Addresses #65313
2022-09-26 13:52:54 -05:00
Eric M af438ae742 Ensure popup menu redraws items when shortcuts update. 2022-09-26 23:21:32 +10:00
bruvzg 970592274d
[RTL] Fix font variations / OpenType features of theme default font not updated when default font is changed. 2022-09-26 13:04:40 +03:00
Rémi Verschelde 1b31241445 Merge pull request #65540 from MewPurPur/easier-bookmarks
Implement Shift+LMB as a Way to Toggle Bookmarks
2022-09-26 08:20:40 +02:00
Rémi Verschelde 56c7305f70 Merge pull request #66288 from bruvzg/te_fix_color
[TextEdit] Use error/selection font color for the current glyph only, instead of updating cached font color.
2022-09-25 11:04:14 +02:00
Micky 544727ac1e Fix ColorPicker always emitting color_changed on html submit
The color change was always emitted when the the modal was closed, even if it was exactly the same as before.
2022-09-24 18:15:06 +02:00
Eric M 2eda77c682 Ensure all checks of `is_action` in the editor which are for 'shortcut' use, check the action exactly. 2022-09-24 18:01:02 +10:00
bruvzg 3278917c7a
[TextEdit] Use error/selection font color for the current glyph only, instead of updating cached font color. 2022-09-23 11:25:39 +03:00
Rémi Verschelde 1928492b41 Merge pull request #65158 from nongvantinh/fixed-infinite-loop
Fixes engine runs into an infinite loop when searching using FindBar
2022-09-23 09:45:34 +02:00
Aaron Franke c3970f8fe5
Revert custom_minimum_size type back to Vector2 instead of Vector2i 2022-09-22 19:09:12 -05:00
Rémi Verschelde 9f2748f63c Merge pull request #66213 from KoBeWi/not_right_but_works™
Remove duplicate code in ItemList
2022-09-21 18:55:12 +02:00
kobewi 4a0e03cea5 Remove duplicate code in ItemList 2022-09-21 15:37:01 +02:00
Ninni Pipping df9eaf5f47 Tree recursive folding 2022-09-21 13:28:29 +02:00
Rémi Verschelde 11602cbcfd Merge pull request #66126 from RedMser/shortcut-context-inspector
Fix editing `shortcut_context` in inspector
2022-09-21 11:04:44 +02:00
Rémi Verschelde bcf754d735 Merge pull request #66068 from bruvzg/rtl_fx_connected
[RTL] Add option to apply built-in effects to the individual connected glyphs.
2022-09-19 22:05:47 +02:00
Rémi Verschelde 209a837f79 Merge pull request #66112 from Zylann/get_configuration_warnings_psa
Change return type of `get_configuration_warnings` to `PackedStringArray`
2022-09-19 22:03:44 +02:00
RedMser a12c71fff1 Fix #66062: editing shortcut_context in inspector 2022-09-19 19:13:52 +02:00
Marc Gilleron aed3822a93 Change return type of `get_configuration_warnings` to `PackedStringArray` 2022-09-19 16:43:15 +01:00
bruvzg 46af7cbfdd
[RTL] Add option to apply built-in effects to the individual connected glyphs. 2022-09-19 18:10:32 +03:00
Markus Sauermann 52da6f1a44 Update mouse cursor shape after changes
This fixes some cases where the mouse cursor shape did not change automatically, but instead required a MouseMove to update.
2022-09-18 17:15:38 +02:00
Rindbee 65f97c671c Make the inner TabBar in a TabContainer behave as if it were in a Container 2022-09-18 20:55:13 +08:00
Rémi Verschelde 6e8638683e Merge pull request #66012 from Rindbee/fix-TabContainer-minimum_size
Fix minimum size calculation for `TabContainer`
2022-09-18 10:48:08 +02:00
Rindbee 464c374372 Fix minimum size calculation for TabContainer 2022-09-18 06:59:48 +08:00
bruvzg 2a0b4244b7
Fix RichTextLabel not updating on theme/theme override change until text is updated. 2022-09-16 22:24:11 +03:00
Hendrik Brucker 299585fcde Add configuration warning to GraphEdit regarding future refactoring 2022-09-14 18:09:21 +02:00
bruvzg 2aa226f5e1
RTL Improvements
Do not apply negative line separation to the last line.
Ensure all methods immediately update cache in a single thread mode.
Fix bbcode_enabled change not being applied until text is changed.
Fix crash if line height is zero or less.
2022-09-13 11:40:20 +03:00
Yuri Sizov 29c8504dd9 Improve parameter naming and documentation in GraphEdit and GraphNode
Co-authored-by: Maganty Rushyendra <mrushyendra@yahoo.com.sg>
2022-09-09 17:50:44 +03:00
VolTer c8cb93d022 Shift+LMB to Toggle Bookmarks 2022-09-08 22:23:14 +02:00