Commit Graph

2948 Commits

Author SHA1 Message Date
Rémi Verschelde 818f1eed31 Code quality: Fix header guards consistency
Adds `header_guards.sh` bash script, used in CI to validate future
changes. Can be run locally to fix invalid header guards.
2022-07-25 14:53:37 +02:00
Rémi Verschelde be5051422b Revert "Call update_scrollbars() in sort_children() so the max is set properly so you can set scroll_container.scroll_vertical instantly after adding children to a scroll container."
This reverts commit b73d2980b7.

This caused a regression. Fixes #63417.
2022-07-25 11:29:33 +02:00
Jason Knight b73d2980b7 Call update_scrollbars() in sort_children() so the max is set properly so you can set scroll_container.scroll_vertical instantly after adding children to a scroll container. 2022-07-21 12:25:50 -06:00
SnailRhymer efed5087ae Change code folding behavior to include terminal indented comments
Previously, when folding a block of code that finished with an indented comment (i.e. one indented as much as or more than the starting indent of the code), that comment would be left out of the fold. Change the behavior to include such comments, but still leave less-indented ones out.
2022-07-17 17:38:51 +01:00
Brian Semrau ce24b48e50 Add support for multiple virtual keyboard types 2022-07-07 14:22:28 -04:00
Thakee Nathees da626d8922 Fix FileDialog file name autocompletion with filters
Fixes #38195.

(cherry picked from commit 446f1b7052)
2022-07-06 11:39:04 +02:00
Haoyu Qiu d86a2d57cf Fix LineEdit caret after using arrow key to deselect 2022-07-06 09:32:39 +08:00
Hana 36ff8962cc
remove redundant check preventing checkbox theme style to apply hover_pressed 2022-07-02 20:53:02 +02:00
kobewi 14f69acaa4 Fix find_next_valid_focus() freeze
(cherry picked from commit 8d62b736b2)
2022-07-01 14:00:55 +02:00
kobewi f659869a45 Fix find_next_valid_focus() freeze
(cherry picked from commit d9ede52ded)
2022-06-30 19:23:01 +02:00
ConteZero a13b3028a2 Add an option to drag'n'drop selected text in TextEdit
(cherry picked from commit 5d56efcaa4)
2022-06-30 19:23:01 +02:00
Rémi Verschelde 0c5c5381d7
Merge pull request #61980 from KoBeWi/obliterate_scroll
Disable scroll when dragging at edges of TextEdit
2022-06-14 23:47:17 +02:00
kobewi 053fdb8872 Disable scroll when dragging at edges of TextEdit 2022-06-14 23:36:54 +02:00
Rémi Verschelde 606ec57d2c
Merge pull request #61985 from bruvzg/win_net_share3
[Windows, 3.x] Add support for handling network share paths.
2022-06-13 09:16:13 +02:00
bruvzg 64a107508a
[3.x] Improve RTL table fill. 2022-06-13 09:57:35 +03:00
bruvzg 11a7997a67 [Windows, 3.x] Add support for handling network share paths. 2022-06-13 09:24:35 +03:00
Rémi Verschelde 4987cd43bf
Merge pull request #61346 from AaronRecord/fix-scrollbars-initializing 2022-06-10 14:24:27 +02:00
bruvzg f5fa1ca944
Add readable export errors. Add RTL image vertical alignment support. 2022-06-08 17:56:28 +03:00
Rémi Verschelde 70951b3a9c
Merge pull request #61728 from YeldhamDev/always_clear_backport
[3.x] Take into account the clear icon's size even when not visible in `LineEdit`s
2022-06-07 14:16:32 +02:00
Rémi Verschelde e80dfb7b12
Merge pull request #61687 from YeldhamDev/double_hover_fix
Fix hover being drawn twice inside `PopupMenu`s
2022-06-06 13:17:25 +02:00
Michael Alexsander 43b0e054be Take into account the clear icon's size even when not visible in `LineEdit`s 2022-06-05 16:22:01 -03:00
Michael Alexsander b4e4f88cd9 Fix specific bug related to submenus in `PopupMenu` 2022-06-04 13:26:12 -03:00
Michael Alexsander 78fdebf8cc Fix hover being drawn twice inside `PopupMenu`s 2022-06-04 02:51:22 -03:00
Yuri Sizov 8ed297fc83 Fix theme propagation for children of top level controls 2022-06-01 03:56:51 +03:00
Rémi Verschelde b44928586b
Merge pull request #61483 from kleonc/popup-update-exclusive-when-shown
[3.x] Allow changing `exclusive` of already popped up `Popup`
2022-05-31 12:14:37 +02:00
Haoyu Qiu 1e6747d185 Fix LineEdit clear button for asymmetric stylebox 2022-05-28 19:51:50 +08:00
kleonc 9ba598f94f Allow changing `exclusive` of already popped up Popup 2022-05-28 01:10:49 +02:00
kleonc 736b0c4e97 PopupMenu Fix hover stylebox overflowing horizontally 2022-05-27 23:35:17 +02:00
Aaron Record ae9e523025 [3.x] Allow ScrollBar params of a ScrollContainer to be modified from _ready()
Cherrypicks b8610dbd31
2022-05-23 21:46:59 -06:00
bruvzg dc6d8d6098
Backport Label3D node implementation and Sprite*3D material render priority. 2022-05-23 09:14:41 +03:00
Haoyu Qiu 4a03bc8f75 Update last min size when Control becomes visible
(cherry picked from commit 4ac999cc3f)
2022-05-22 19:43:56 +02:00
Daniel Kariv 47ead8504a add check for selection when try to push a meta.
Add a check for when we select a text but end on a link. Before it would act as if we just click an link, but now it changes it so if we click-drag over a link, we could select it (and not move to other page).

(cherry picked from commit e6c909b489)
2022-05-22 19:26:45 +02:00
Rémi Verschelde 78a9d21da3
Merge pull request #61185 from okla/3.x 2022-05-19 12:02:14 +02:00
Sergey Pershenkov 46ab2512b8 Return -1 from get_selected_id() when not selected
Partial cherry pick from 3b146c5eaa
2022-05-19 12:42:54 +03:00
Rémi Verschelde b7523a953f Revert invalid PopupMenu breaking change from #61102
Fixes #61179.
2022-05-19 10:02:02 +02:00
Yuri Rubinsky 32b9818965 Add node list param to GraphEdit::delete_nodes_request signal 2022-05-18 12:36:00 +03:00
Rémi Verschelde 281c5c9a56
Merge pull request #61102 from okla/3.x
[3.x] Make various improvements to OptionButton
2022-05-16 23:51:55 +02:00
Sergey Pershenkov 431c032d8c Make various improvements to OptionButton
- Allow OptionButton selection to be set to -1 to signify no selection, both via API and in the editor.
- Reset OptionButton selection to -1 when the selected item has been removed.
- Fully convert PopupMenu to a zero-based ID system, which improves an inconsistency in generated IDs when making new items in the editor.

(cherry picked from commit 3b146c5eaa)
2022-05-16 22:47:46 +03:00
Markus Sauermann ff52becb47 Distribute remaining pixel to expanding childs of GridContainer
(cherry picked from commit 6b3207644b)
2022-05-16 21:12:21 +02:00
Hendrik Brucker 7a4187495d Fix button icon expansion calculation with empty text
(cherry picked from commit c09a5e2774)
2022-05-16 17:14:43 +02:00
FireForge f17c5fa7bd Add interpolation modes to Gradient
- Linear, Constant, and Cubic interpolation modes
- Partial backport of #53321
2022-05-12 14:24:04 -05:00
Rémi Verschelde 20c72e8275
Merge pull request #60891 from YeldhamDev/pm_sep_font 2022-05-09 13:57:02 +02:00
Haoyu Qiu 20d3632268 Fix tree button icon not centered vertically 2022-05-09 10:53:02 +08:00
Michael Alexsander 2e4e76b2e3 Add `font_separator` to `PopupMenu` 2022-05-08 14:11:59 -03:00
Michael Alexsander 4f70201fbe Fix separator height influencing labeled variation in `PopupMenu` 2022-05-07 21:15:57 -03:00
Rémi Verschelde e61c4dd787
Merge pull request #60282 from YeldhamDev/backwards_relationships_are_even_harder 2022-05-02 09:49:09 +02:00
bruvzg ff381f6e84
Fixed implementation of RTL remove_line()
Co-authored-by: Eric M <itsjusteza@gmail.com>
2022-04-29 10:59:31 +03:00
Rémi Verschelde 510ed791f9
Merge pull request #60554 from timothyqiu/editor-settings-cleanup 2022-04-27 11:51:03 +02:00
Rémi Verschelde 3b2ed9bdd6
Merge pull request #60330 from Calinou/aspectratiocontainer-add-property-hint-3.x 2022-04-27 10:17:04 +02:00
Haoyu Qiu d088128b43 Remove duplicate editor settings definitions 2022-04-27 15:26:46 +08:00
Haoyu Qiu d43b4039db Fix Label autowrap for CJK text 2022-04-18 21:54:46 +08:00
Hugo Locurcio 90044d6ac9
Add a property hint for AspectRatioContainer's `ratio` property
Zero or negative ratios are not valid, so the property hint prevents
choosing such values.

The property hint allows using 4 decimals so that common aspect ratios
like 16/9 can be specified with a good level of precision.
2022-04-17 22:04:39 +02:00
Michael Alexsander b6c501f9b0 Draw relationship lines for items offscreen 2022-04-15 16:31:15 -03:00
Michael Alexsander 21bdadbf79 Fix `GridContainer` not ignoring toplevel children
(cherry picked from commit 506d8ba526)
2022-04-14 21:36:07 +02:00
Rémi Verschelde 8182a754d2
Merge pull request #59827 from ConteZero/fix_right_menu 2022-04-14 21:29:57 +02:00
Rémi Verschelde 4e4f6311b6
Merge pull request #60233 from ZheisterCoding/leading-space-fix-3.x
Fixed leading spaces pushing text outside Label autowrap boundary problem
2022-04-14 12:15:33 +02:00
DESKTOP-893BK8A\howar c0513268bd Fixed #59985 leading spaces autowrap boundary problem
Bug problem:
No condition for when the first character of the label is a space character

Fix:
Added an IF condition for when the first character is a space character
The autowrap boundary treat this space character as another dummy word in the WordCache linked list and proceed to function normally, by detecting when line width is 0
2022-04-14 16:05:35 +07:00
Haoyu Qiu 19a0145742 Fix undo history for function name autocompletion 2022-04-14 14:37:31 +08:00
Eric McGuirk f82cd740cf Fix toggling GraphEdit's minimap with `minimap_enabled`
Fixes #53831.

(cherry picked from commit b1441bbcfc)
2022-04-13 11:43:49 +02:00
kobewi bf6e7dc6f6 Fix GraphEdit's valid connections being reversed
(cherry picked from commit b29aff8dac)
2022-04-13 11:43:49 +02:00
Haoyu Qiu 1d476d7737 Consider chained operation when selecting text in TextEdit::undo()
(cherry picked from commit 8cefbfcf43)
2022-04-13 11:43:49 +02:00
Yuri Roubinsky e54a4646c7 Add selection getter methods to `LineEdit`
Co-authored-by: Yuri Roubinsky <chaosus89@gmail.com>
2022-04-12 14:31:51 +02:00
ConteZero 820728aa52 [3.x] Expose get_selected_text in RichTextLabel 2022-04-05 22:38:10 +02:00
Rémi Verschelde 20b08185f3
Merge pull request #59894 from ConteZero/richtextlabel_deselect_3.x 2022-04-05 00:01:27 +02:00
ConteZero 5e714051ea [3.x] Add deselect() to RichTextLabel 2022-04-04 22:46:13 +02:00
Markus Sauermann 9a9f86ec12 Fix event transform in ViewportContainer 2022-04-04 22:34:49 +02:00
Rémi Verschelde 21c3048397 Add missing argument names in bindings 2022-04-04 12:56:59 +02:00
Haoyu Qiu 1136a9b58a Add missing CheckBox & CheckButton editor icons
Co-authored-by: Silc 'Tokage' Renew <tokage.it.lab@gmail.com>
Co-authored-by: Yuri Sizov <yuris@humnom.net>
2022-04-04 12:15:46 +08:00
ConteZero 57b616fb21 Fix Right-Click clearing selection 2022-04-03 10:18:12 +02:00
Haoyu Qiu f9da6f6978 Extract theme property names for localization 2022-04-01 11:35:02 +08:00
Paweł Fertyk 32cdf9fad2 Fix get_visible_line_count in RichTextLabel with newlines
Fixed #59359.
2022-03-31 22:28:40 +02:00
Haoyu Qiu d537a88299 Add item tooltip access to OptionButton
(cherry picked from commit a635ecf6d4)
2022-03-17 14:45:19 +01:00
taigi100 b33eed23ae Fix children visibility check
(cherry picked from commit 280956ddc3)
2022-03-17 14:45:19 +01:00
Haoyu Qiu 72837b8ecd Fix RichTextLabel underlining does not respect visible character 2022-03-16 17:54:07 +08:00
Haoyu Qiu c0bd05762e Revert "Fixed underlines and striketrough not respecting visible character"
This reverts commit 8bbcc624fd.
2022-03-16 17:40:14 +08:00
Haoyu Qiu fd968157a4 Revert "Fixed 0 width issue of rich text label"
This reverts commit a1155b86e4.
2022-03-16 17:40:09 +08:00
ConteZero 2ff0735329 Added primary clipboard for Linux 2022-03-14 15:28:36 +01:00
ConteZero 0ffacff998 [3.x] Add option to make selection unique 2022-03-14 09:48:09 +01:00
Rémi Verschelde 08c3e00b95
Merge pull request #55355 from ConteZero/drag_and_drop_3.x 2022-03-14 08:43:22 +01:00
ConteZero 4167e98088 Add drag and drop to TextEdit, LineEdit, RichTextLabel 2022-03-14 08:15:25 +01:00
Hugo Locurcio caf2c20655 Don't store and show current file/directory/path FileDialog properties
These properties are only useful at run-time, so they don't need
to be displayed in the editor and stored.

(cherry picked from commit 2ad6e11b78)
2022-03-13 15:46:01 +01:00
Haoyu Qiu 7d219b6793 Fix RichTextLabel shadow color when text has transparency 2022-03-12 11:02:27 +08:00
miremrie 8a6b066ab7 Allow absolute file paths in file dialogs
(cherry picked from commit a5e30c0228)
2022-03-10 17:18:41 +01:00
Haoyu Qiu db9d426798 Remove extra separator when TextEdit is read only and unselectable
(cherry picked from commit 933211cb0c)
2022-03-10 16:19:30 +01:00
Wilson E. Alvarez c37be0f31b
Expose TextEdit get_visible_rows() and get_total_visible_rows() to GDScript 2022-03-08 22:32:22 -05:00
janglee a1155b86e4 Fixed 0 width issue of rich text label
Fixes #37746

(cherry picked from commit 5e64c146bc)
2022-03-02 11:00:26 +01:00
janglee 8bbcc624fd Fixed underlines and striketrough not respecting visible character
(cherry picked from commit 9c2c2ab2b0)
2022-03-02 11:00:26 +01:00
Yuri Sizov df13466139 Add type variations to Theme 2022-02-17 15:24:10 +03:00
Haoyu Qiu 8231303dec Backport FlowContainer 2022-02-11 14:48:40 +08:00
Rémi Verschelde 0c7c640112
Merge pull request #57643 from YeldhamDev/smarter_pm_focus_port 2022-02-10 16:52:08 +01:00
Haoyu Qiu a3f6033513 Improve TreeItem button API 2022-02-08 23:56:19 +08:00
Raul Santos 1d3de163dc Add alignment options to icons on buttons.
They can now be centered and right-aligned.

Co-authored-by: jitspoe <jitspoe@yahoo.com>
2022-02-07 21:29:37 +01:00
Rémi Verschelde 689f59dca0
Merge pull request #53463 from lawnjelly/vital_redraws
Add editor vital redraws only option
2022-02-04 21:42:49 +01:00
Michael Alexsander f63bea9ef2 Make popup menus focus items automatically when not using the mouse 2022-02-04 17:20:26 -03:00
kobewi 621cf7d8d5 Update the minimum size of ViewportContainer 2022-02-02 13:21:03 +01:00
lawnjelly a0c6d16c90 Add editor vital redraws only option
When editor continuous redraws is switched off, the editor only redraws when a redraw_request was issued by an element in the scene. This works well in most situations, but when scenes have dynamic content they will continuously issue redraw_requests.

This can be fine on high power desktops but can be an annoyance on lower power machines.

This PR splits redraw requests into high and low priority requests, defaulting to high priority. Requests due to e.g. shaders using TIME are assigned low priority.

An extra editor setting is used to record the user preference and an extra option is added to the editor spinner menu, to allow the user to select between 3 modes:

* Continuous
* Update all changes
* Update vital changes
2022-02-02 11:26:45 +00:00
kleonc 32d83053c4
TextureButton Fix logic for drawing only the focus texture
(cherry picked from commit 078b8c25ce)
2022-01-31 22:54:25 +01:00
mashumafi a118837af4 Fix button icon_color_disabled alpha channel 2022-01-30 13:15:05 -05:00
bruvzg f8f83f05f2
Fix RichTextLabel uninitialized content height value. 2022-01-20 13:53:52 +02:00
Rémi Verschelde c938104a88
Merge pull request #56630 from Pineapple/replace-find-last 2022-01-18 16:36:52 +01:00