Commit Graph

5244 Commits

Author SHA1 Message Date
Rémi Verschelde ca18a02e00
Merge pull request #62744 from AThousandShips/tree_h_scroll 2022-07-08 11:51:07 +02:00
Rémi Verschelde 7d3ff927de
Merge pull request #62075 from Vitika9/gsoc-colorpicker 2022-07-08 09:06:47 +02:00
bruvzg 8f6c4956ca
Fix regressions from Font refactor
Remove unnecessary font override
Fixes button outline draw when it should not, causing button colors to be slightly off
2022-07-08 08:27:18 +03:00
bruvzg a319e6e623
Fix regressions from Font refactor
Fixes `p_font.is_null()` errors due to incorrect resource type used.
Fixes code editor font not set correctly, and OpenType features applied to the wrong font.
2022-07-07 15:11:08 +03:00
Ninni Pipping bed65894d3 Horizontal scroll for Tree 2022-07-07 12:58:44 +02:00
Vitika9 0011d93c81 ColorPicker Refactor 2022-07-06 22:11:43 +05:30
MinusKube ed68f867fb Fix range slider in tree not updating text value 2022-07-06 17:43:16 +02:00
bruvzg 344ba0ffaf
Refactor Font configuration and import UI, and Font resources. 2022-07-06 14:12:36 +03:00
Hugo Locurcio 983ce7e9f3
Disable Expand by default in VideoStreamPlayer
This ensures videos are always visible as soon as a video file
is specified in the VideoStreamPlayer node. The node will no longer
be resized to 0×0 by default, making the video invisible in the process
(even if the audio can still be heard).
2022-07-06 00:51:27 +02:00
Rémi Verschelde 5f386fecf0
Merge pull request #62721 from Nolkaloid/line_edit-caret-blink-fix
Change LineEdit caret blink to use internal process
2022-07-05 17:00:58 +02:00
Nolkaloid 9dc58511c6 Change LineEdit caret blink to use process
Now using internal process for blinking instead of a Timer node
2022-07-05 00:02:44 +02:00
kobewi 41f6e7c50e Allow to disable TextEdit vertical scroll 2022-07-04 15:02:15 +02:00
Rémi Verschelde 1d06fec535
Merge pull request #62448 from MinusKube/completion-scroll-click
Add the ability to drag the code completion scrollbar using the mouse click
2022-07-04 10:13:20 +02:00
Thakee Nathees 446f1b7052 Fix FileDialog file name autocompletion with filters
Fixes #38195.
2022-07-04 01:26:34 +02:00
MinusKube 336400dc42 Add the ability to drag the code completion scrollbar using the mouse click 2022-07-03 23:47:52 +02:00
Rémi Verschelde daec5bed57
Merge pull request #59089 from KoBeWi/I_am_root
Add `root_subfolder` to FileDialog
2022-07-01 11:53:33 +02:00
kobewi 8d62b736b2 Fix find_next_valid_focus() freeze 2022-07-01 00:25:10 +02:00
kobewi d9ede52ded Fix find_next_valid_focus() freeze 2022-06-30 16:22:40 +02:00
TechnoPorg d45ad9bc58 Use single-precision floats in GradientEdit
Gradient itself only uses single-precision floats, so using double-precision floats in GradientEdit is both unnecessary, and creates casting issues.
2022-06-28 11:55:08 -06:00
kobewi 9d48cd502b Add root_subfolder to FileDialog 2022-06-28 18:56:18 +02:00
K. S. Ernest (iFire) Lee 9ddebc0c22 Add a const call mode to Object, Variant and Script.
For this to work safely (user not call queue_free or something in the expression), a const call mode was added to Object and Variant (and optionally Script).

This mode ensures only const functions can be called, making it safe to use from the editor.

Co-Authored-By: reduz <reduzio@gmail.com>
2022-06-27 13:33:06 -07:00
Rémi Verschelde 1c7971d11c
Merge pull request #37764 from KoBeWi/video_pauser 2022-06-27 14:50:29 +02:00
Rémi Verschelde 82a56e5c42
Merge pull request #61587 from YuriSizov/control-fix-theme-owner-toplevel
Fix theme propagation for children of top level controls and windows
2022-06-27 12:03:36 +02:00
Rémi Verschelde af694245f5
Merge pull request #62221 from ConteZero/drag_and_drop_option
Add an option to drag'n'drop selected text in ``TextEdit``
2022-06-26 16:02:52 +02:00
ConteZero 5d56efcaa4 Add an option to drag'n'drop selected text in TextEdit 2022-06-26 15:22:02 +02:00
kobewi e69f3d527c Properly handle game pause in VideoPlayer 2022-06-26 01:56:30 +02:00
Rémi Verschelde ec2e7ea98c
Merge pull request #61435 from nathanfranke/tab-container-repaint
repaint tab container when changing tab visibility (fixes filesystem tab disappearing)
2022-06-25 23:14:18 +02:00
Rémi Verschelde 21c79d7515
Merge pull request #62311 from KoBeWi/anuluj
Replace some TTRCs with RTRs
2022-06-25 14:27:20 +02:00
Rindbee c10304415f Fix ProgressBar's minimum size not updating when toggling its percent_visible 2022-06-25 15:39:39 +08:00
Nathan Franke 085ec68dfe
repaint tab container when changing tab visibility 2022-06-23 18:20:00 -05:00
Pierre-Thomas Meisels 5ad1a1b5e7 enhancement: rename exposed property Control::minimum_size to Control::custom_minimum_size 2022-06-23 18:06:10 +02:00
kobewi cd02cb27af Replace some TTRCs with TTRs 2022-06-22 16:04:33 +02:00
FireForge 88589c091b Improve TileSet editor and add more suffixes 2022-06-20 15:28:19 -05:00
bruvzg b5c96df277
Move duplicate AutoWrap, Overrun and VisibleChar behavior enums to the TextServer. 2022-06-16 16:49:37 +03:00
Rémi Verschelde 778a9fce77
Merge pull request #61997 from Rindbee/fix-ColorPicker-wrong-sampling
Fix wrong sampling in ColorPicker
2022-06-15 12:48:23 +02:00
FireForge f85eb4164a Expose PopupMenu set/get_item_horizontal_offset()
- Renames setter from set_item_h_offset()
- Adds getter
2022-06-15 02:08:44 -05:00
Rindbee fd285e19ed Fix the bug that the sampling position is reversed, make eyedrop reusable. 2022-06-15 12:44:36 +08:00
kobewi 5553e27fe8 Add vector value linking
Co-authored-by: redlamp <244062+redlamp@users.noreply.github.com>
2022-06-14 14:58:44 +02:00
Rémi Verschelde e95f4eb5a7
Merge pull request #61819 from bruvzg/button_overrun 2022-06-13 11:02:04 +02:00
Rémi Verschelde ae5a962cc4
Merge pull request #61842 from bruvzg/popup_fixes_sw 2022-06-13 10:51:46 +02:00
bruvzg ba6cb84d01
[RTL] Fix underline/overline/strikethrough interaction with the "visible characters" property. 2022-06-13 10:53:55 +03:00
bruvzg f7269fe878
Single-window mode popups and edited scene windows fixes.
Fix single-window mode popup not closing when OptionBox is clicked.
Fix single-window mode submenus closing when parent menu item, that was used to open it is clicked (using same safe-area logic as platform specific code).
Disallow windows that are part of an edited scene from being set as exclusive or popup to prevent it from locking up the editor.
2022-06-13 09:56:08 +03:00
FireForge 4678736a39 Add suffixes to all nodes and resources 2022-06-11 09:41:05 -05:00
iwek 082cf5440e Fix setting line edit caret after dobule and triple click 2022-06-10 00:18:25 +02:00
Hugo Locurcio 08e804b3b7
Fix infinite loop when calling `Control.popup_centered_minsize()`
Co-authored-by: sriramun <sriramun2@gmail.com>
2022-06-09 20:20:53 +02:00
bruvzg 906e9b6ac5
Add overrun behavior to the Button. 2022-06-08 19:02:27 +03:00
Rémi Verschelde d52a79ad22
Merge pull request #59786 from V-Sekai/ok_color
Allow picking similar colours using OKHSL.
2022-06-07 20:52:32 +02:00
K. S. Ernest (iFire) Lee 1b776a6e7a Allow picking similar colours using OKHSL. 2022-06-07 05:53:27 -07:00
Rémi Verschelde 70757ad7df
Merge pull request #61726 from YeldhamDev/always_clear
Take into account the clear icon's size even when not visible in `LineEdit`s
2022-06-07 14:16:13 +02:00
bruvzg fc77f983cb
[RTL] Stop processing thread before deleting scroll bar. 2022-06-06 23:46:22 +03:00
Rémi Verschelde 52952edafc
Merge pull request #61724 from iwek7/fixing_rich_text_label
Fix richTextLabel scroll showing
2022-06-06 10:39:39 +02:00
iwek c179ba665a Fix richTextLabel scroll showing 2022-06-05 20:33:17 +02:00
Michael Alexsander 71c8fb26e0 Take into account the clear icon's size even when not visible in `LineEdit`s 2022-06-05 15:13:19 -03:00
Rindbee a14f7c4027 Fix strange behavior with list close tags and empty list tags
Fix the first two points in #61621.

Support for two  writing ways: compact or loose. The loose one is designed for easy editing in the editor.
For this, the first blank line (if exists) right after the list tags (`[ol]`, `[/ol]`, `[ul]`, and `[/ul]`)
will be ignored.

Make sure the empty list contains at least one item, that is, an empty list is ultimately a list with one item.
As a reminder here is a list.
2022-06-05 01:33:09 +08:00
Rémi Verschelde 52e36ab80e
Merge pull request #61631 from iwek7/redundant_min_call 2022-06-02 18:20:45 +02:00
iwek 848e759d88 Remove redundant min call when setting line 2022-06-02 15:52:09 +02:00
Hendrik Brucker c6a39cd952 Fix enclosed nodes calculation of GraphEdit comment nodes 2022-06-02 13:14:46 +02:00
Yuri Sizov ba273c6c5f Fix theme propagation for children of top level controls and windows 2022-06-01 04:20:00 +03:00
monkeyman192 5c29a7dbc5 Handle drawing of relationship lines better to take in to account invisible children 2022-06-01 00:23:33 +10:00
Rémi Verschelde cf9aad63ba
Merge pull request #61453 from m3g4d1v3r/master
Fix #61444: Executing Tree.scroll_to_item crashes Godot
2022-05-31 12:28:50 +02:00
Rémi Verschelde cea54a0357
Merge pull request #61489 from Rindbee/reset-buttons_visible-to-false-if-tabs-is-empty
Reset buttons_visible to false while tabs is empty in TabBar::_update_cache
2022-05-31 12:19:36 +02:00
Rémi Verschelde a837accc5d
Merge pull request #61495 from timothyqiu/asymmetric-le
Fix LineEdit clear button for asymmetric stylebox
2022-05-31 08:55:21 +02:00
Hendrik Brucker 70c234f3e3 Improve Graphedit connection lines 2022-05-30 17:33:01 +02:00
Hendrik Brucker 771cb1261a Improve and fix the GraphNode port hotzones
Co-authored-by: Ansraer <jacky2611@gmail.com>
2022-05-30 15:48:58 +02:00
Haoyu Qiu e021fc9419 Fix LineEdit clear button for asymmetric stylebox 2022-05-28 19:50:35 +08:00
Rindbee a3b23f6b67 Reset buttons_visible to false while tabs is empty in TabBar::_update_cache 2022-05-28 12:54:45 +08:00
m3g4d1v3r ee89c65b11 Add nullptr handling of argument pointer in Tree::scroll_to_item 2022-05-26 23:56:52 -03:00
monkeyman192 d4aa6e5366 Check visibility of items before drawing their relationship lines 2022-05-26 23:25:42 +10:00
Nathan Franke 2d14164bca
tree: always emit item_edited 2022-05-26 05:12:57 -05:00
Rémi Verschelde 2998be4f99
Merge pull request #60061 from monkeyman192/allow_treeitem_visible
Allow TreeItem nodes to toggle visibility
2022-05-24 10:53:41 +02:00
Rémi Verschelde bd8d91254c
Merge pull request #61106 from snailrhymer/animation-library-fixes
Fix errors and improve UX relating to new animation libraries
2022-05-24 10:51:31 +02:00
Rémi Verschelde 65dd1bf023
Merge pull request #47665 from trollodel/tree_more_buttons_signals 2022-05-24 10:50:55 +02:00
Rémi Verschelde 9923851370 Fix typos with codespell
Using codespell 2.2-dev from current git.
2022-05-23 21:32:19 +02:00
Haoyu Qiu 4ac999cc3f Update last min size when Control becomes visible 2022-05-22 15:50:13 +08:00
trollodel 307427af89 Add the button pressed to some signals in Tree 2022-05-21 17:16:52 +02:00
reduz 45af29da80 Add a new HashSet template
* Intended to replace RBSet in most cases.
* Optimized for iteration speed
2022-05-20 22:40:38 +02:00
Rémi Verschelde 136da4d3bc
Merge pull request #61182 from danielkariv/fix_misclick_selection 2022-05-20 15:38:22 +02:00
Aaron Franke 5dc3bfb80e
Use suffixes for units in nodes and resources 2022-05-19 14:34:27 -05:00
Rémi Verschelde b9bb3de6a1
Merge pull request #61142 from bruvzg/rtl_threaded 2022-05-19 14:27:48 +02:00
Aaron Record 900c676b02 Use range iterators for RBSet in most cases 2022-05-19 12:09:16 +02:00
Daniel Kariv e6c909b489 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).
2022-05-19 11:55:14 +03:00
bruvzg cfcdfc38e2
[RTL] Add support for shaping in background thread. 2022-05-19 09:34:44 +03:00
Rémi Verschelde c0d189fbb8
Merge pull request #60955 from pfertyk/issue-60668-fix-get-breakpointed-lines-crash
Fix `get_breakpointed_lines` crashing Godot
2022-05-18 22:55:30 +02:00
Yuri Sizov 21b253a870 Define some Theme data structures with using for readability 2022-05-18 18:17:47 +03:00
Rémi Verschelde 5c79782c7e
Merge pull request #61088 from groud/keep_unhandled_events_on_pass 2022-05-17 23:50:55 +02:00
Rémi Verschelde 3ad751f7e0
Merge pull request #60867 from KoBeWi/μtext
Remove font height restriction from Button
2022-05-17 19:02:35 +02:00
Gilles Roudière 6db8b7616d Keep input event as unhandled if they go through a control set to MOUSE_FILTER_PASS 2022-05-17 15:41:58 +02:00
Rémi Verschelde 3506825930
Merge pull request #61112 from Chaosus/graph_edit_delete_nodes_param 2022-05-17 13:10:04 +02:00
Rémi Verschelde ccdd85d8e7
Merge pull request #61001 from derammo/derammo_popup_conditional_hide 2022-05-17 12:56:53 +02:00
Yuri Rubinsky c84d050980 Add node list param to `GraphEdit::delete_nodes_request` signal 2022-05-17 13:28:21 +03:00
SnailRhymer d79818acb6 Fix errors and improve UX relating to new animation libraries
- Fix a bug causing an error message when a scene containing an AnimationPlayer with a reset track is saved, by correctly referencing the temporary "default" library.
- Make library dropdown in new animation window assign correct library when creating an animation.
- Similarly allow choice of library when duplicating animation.
- Make library dropdown default to library of currently selected animation.
- Make library dropdown show when exactly one library exists, and it isn't [Global]. Include [Global] on the dropdown in this case (will be newly created if dialog is confirmed).
- When appending (x) to avoid New Anim name collisions, correctly check target library instead of [Global].
- Add parentheses when appending x when duplicating animations in the library editor, for consistency.
- Change titles and prompts to be distinct in name/rename/duplicate dialiogs.
- Fix bug in OprionButton.get_selectable_item(true) when last is not selectable.
- Fix issues where animation wasn't found on deletion/rename by correctly prepending library name.
- Remove an extraneous print_line from animation_track_editor.
- Add messages to errors when an animation isn't found.
2022-05-17 00:02:51 +01:00
Paweł Fertyk 3d5dd91f22 Fix get_breakpointed_lines crashing Godot
Fixes #60668.
2022-05-16 18:46:01 +02:00
monkeyman192 31381f8c9e Allow TreeItem nodes to toggle visibility 2022-05-16 23:55:05 +10:00
Rémi Verschelde fa2b3269ae
Merge pull request #59231 from Sauermann/fix-top-level-identification 2022-05-16 15:10:27 +02:00
Rémi Verschelde 9efb134469
Merge pull request #59799 from Sauermann/fix-gridcontainer-remaining-pixel 2022-05-16 15:04:48 +02:00
Rémi Verschelde df2de05c5f
Merge pull request #60463 from Geometror/improve-vs-1 2022-05-16 13:50:42 +02:00
Rémi Verschelde 7b571ab8f7
Merge pull request #60986 from fire-forge/capitalism 2022-05-16 13:49:14 +02:00
reduz 746dddc067 Replace most uses of Map by HashMap
* Map is unnecessary and inefficient in almost every case.
* Replaced by the new HashMap.
* Renamed Map to RBMap and Set to RBSet for cases that still make sense
  (order matters) but use is discouraged.

There were very few cases where replacing by HashMap was undesired because
keeping the key order was intended.
I tried to keep those (as RBMap) as much as possible, but might have missed
some. Review appreciated!
2022-05-16 10:37:48 +02:00
derammo 47d0dc8a41 popup deferred hide suppressed if reopened
popup no longer tries to close itself a second time
popup no longer closes after having been reopened
fixed bug in RenameDialog not calling base (by inspection)
fixes #59181
fixes #60921
reverts #59287
2022-05-13 09:30:00 -04:00
bruvzg 081b6b8053
Add ALT NUM+ {hex code} character input support for LineEdit, TextEdit and CodeEdit. 2022-05-13 09:33:24 +03:00
FireForge 88a8038387 Capitalize/fix some property enum hints 2022-05-12 15:03:16 -05:00
reduz 8b7c7f5a75 Add a new HashMap implementation
Adds a new, cleaned up, HashMap implementation.

* Uses Robin Hood Hashing (https://en.wikipedia.org/wiki/Hash_table#Robin_Hood_hashing).
* Keeps elements in a double linked list for simpler, ordered, iteration.
* Allows keeping iterators for later use in removal (Unlike Map<>, it does not do much
  for performance vs keeping the key, but helps replace old code).
* Uses a more modern C++ iterator API, deprecates the old one.
* Supports custom allocator (in case there is a wish to use a paged one).

This class aims to unify all the associative template usage and replace it by this one:
* Map<> (whereas key order does not matter, which is 99% of cases)
* HashMap<>
* OrderedHashMap<>
* OAHashMap<>
2022-05-12 11:21:29 +02:00
Rémi Verschelde 694baff233
Merge pull request #60932 from Geometror/button-fix-expand-icon 2022-05-10 22:58:56 +02:00
Hendrik Brucker c09a5e2774 Fix button icon expansion calculation with empty text 2022-05-10 22:27:48 +02:00
floppyhammer f76d417d8a Add fill_mode to ProgressBar 2022-05-10 19:34:48 +08:00
kobewi 20cfe6e229 Simplify anchor metadata 2022-05-09 18:51:13 +02:00
Rémi Verschelde 5013c1d5b6
Merge pull request #60890 from pfertyk/issue-60866-fix-backspace-selection-left 2022-05-09 15:52:56 +02:00
Paweł Fertyk d1aed90976 Fix backspace when selection reaches left edge
Fixes #60866.
2022-05-09 14:16:28 +02:00
Haoyu Qiu 96cd2d9f52 Fix tree button icon not centered vertically 2022-05-09 10:53:09 +08:00
kobewi 800d5567a1 Remove font height restriction from Button 2022-05-08 13:33:57 +02:00
Vitika9 aef3b5681d Changed signals of ItemList 2022-05-06 13:09:04 +05:30
kobewi 1dc7bcc83c Cleanup metadata usage 2022-05-06 00:27:10 +02:00
Hugo Locurcio b6e9314564
Merge pull request #59185 from NeilKleistGao/master 2022-05-05 16:41:39 +02:00
Rémi Verschelde d5d86cb26e
Merge pull request #60571 from Sauermann/fix-control-screen-position
Inlcude CanvasLayer transform into calculation of Control screen position
2022-05-03 15:26:39 +02:00
Hugo Locurcio 180e5d3028
Remove `RES` and `REF` typedefs in favor of spelled out `Ref<>`
These typedefs don't save much typing compared to the full `Ref<Resource>`
and `Ref<RefCounted>`, yet they sometimes introduce confusion among
new contributors.
2022-05-03 01:43:50 +02:00
Rémi Verschelde c273ddc3ee Style: Partially apply clang-tidy's `cppcoreguidelines-pro-type-member-init`
Didn't commit all the changes where it wants to initialize a struct
with `{}`. Should be reviewed in a separate PR.

Option `IgnoreArrays` enabled for now to be conservative, can be
disabled to see if it proposes more useful changes.

Also fixed manually a handful of other missing initializations / moved
some from constructors.
2022-05-02 16:28:25 +02:00
Hendrik Brucker 6d876baf60 Improve the VisualShader/VisualScript editor UI 2022-04-30 03:56:57 +02:00
Nathan Franke 925e54ad65
fix lines ending in comments causing auto indent 2022-04-28 20:07:10 -05:00
Rémi Verschelde 9101c5b499
Merge pull request #52624 from e8newallm/52577
Corrected ordering of Left/Top/Right/Bottom properties
2022-04-28 17:57:02 +02:00
Markus Sauermann f01e1ce1dd Inlcude CanvasLayer transform into calculation of Control screen position 2022-04-28 00:18:32 +02:00
Rémi Verschelde 8c2b9801fd
Merge pull request #60438 from Paulb23/text-edit-tests
Add TextEdit unit tests and multiple fixes.
2022-04-25 23:39:30 +02:00
Rindbee 44e32ba75c Fix font_size not working in TabContainer 2022-04-25 23:22:59 +08:00
Rémi Verschelde 02bb8e948f
Merge pull request #60261 from fire-forge/theme-prop-renames 2022-04-25 16:20:19 +02:00
Rémi Verschelde 49a7f929a6
Merge pull request #60123 from KoBeWi/borrowed
ItemList selection bug && navigation bug fixed
2022-04-25 16:18:58 +02:00
Thakee Nathees 09835f3cc5 ItemList selection bug && navigation bug fixed
Co-authored-by: kobewi <kobewi4e@gmail.com>
2022-04-24 00:31:02 +02:00
FireForge 3073b85de9 Rename theme properties to include underscores
- check_vadjust -> check_v_adjust
- close_h_ofs -> close_h_offset
- close_v_ofs -> close_v_offset
- commentfocus -> comment_focus
- hseparation -> h_separation
- ofs -> offset
- selectedframe -> selected_frame
- state_machine_selectedframe -> state_machine_selected_frame
- table_hseparation -> table_h_separation
- table_vseparation -> table_v_separation
- vseparation -> v_separation
2022-04-23 11:16:18 -05:00
Paulb23 7f62a74927 Multiple small TextEdit Bug Fixes
Fixed line_drawing_cache not containing anything
Fixed is_move_caret_on_right_click_enabled requiring the context menu to be enabled
Fixed when selecting_enabled is false not disabling shift + click
Fixed when selecting_enabled is false not being able to drag the caret
Fixed _delete emitting signals when nothing had changed.
Fixed insert_line_at up causing a visual update
Fixed get_pos_at_line_column returning a valid position when it was invalid
Fixed set_caret_column unnecessary emitting "caret_changed" when the column is greater then the line
Fixed select_word_under_caret not accepting the edges of words
Fixed select_word_under_caret moving the caret to the start of the line when no word was found
Fixed get_selection_line and get_selection_column not checking if the selection was enabled
Fixed set_line_as_center_visible throwing errors if it would show line 0
Fixed set_line_as_center_visible being off by one
Fixed set_line_as_last_visible not being able to show the first line
Fixed pressing UP and the end of a wrapped line sending the caret to col 0 rather then then persevering the position.
2022-04-22 17:53:14 +01:00
bruvzg be611c1c05
Implement Label3D node.
Add "generate_mipmap" font import option.
Add some missing features to the Sprite3D.
Move BiDi override code from Control to TextServer.
Add functions to access TextServer font cache textures.
Add MSDF related flags and shader to the standard material.
Change standard material cache to use HashMap instead of Vector.
2022-04-22 12:08:46 +03:00
Hugo Locurcio d1c2a0df4e
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:03:47 +02:00
Michael Alexsander bab2f3c021 Add `font_separator` and related properties to `PopupMenu` 2022-04-13 23:46:35 -03:00
Rémi Verschelde 3b57c2ce6b
Merge pull request #60221 from YeldhamDev/grid_toplevel_fix
Fix `GridContainer` not ignoring toplevel children
2022-04-14 00:33:52 +02:00
Michael Alexsander 506d8ba526 Fix `GridContainer` not ignoring toplevel children 2022-04-13 18:09:51 -03:00
Michael Alexsander 59c3d4e17f Fix and tweak labeled separator in `PopupMenu` 2022-04-13 17:13:29 -03:00
ConteZero 6530e55f2d Fix select_all() crash in RichTextLabel 2022-04-13 15:41:34 +02:00
bruvzg 8b0761d1fd
Fix sub-menu keyboard navigation. 2022-04-13 09:58:38 +03:00
Rémi Verschelde d9cb39c2e8
Merge pull request #60170 from ConteZero/context_menu 2022-04-12 18:42:58 +02:00
ConteZero 645aded7e9 Add context menu to RichTextLabel 2022-04-12 16:28:38 +02:00
Rémi Verschelde 5974e1432e
Merge pull request #60085 from YeldhamDev/relationships_are_hard 2022-04-11 23:36:13 +02:00
Rémi Verschelde 9d86e4f446
Merge pull request #59927 from Zylann/fix_graphnode_title_trim
Fix GraphNode not resizing with larger title
2022-04-11 21:07:40 +02:00
Eric McGuirk b1441bbcfc Fix toggling GraphEdit's minimap with `minimap_enabled`
Fixes #53831.
2022-04-11 17:52:04 +02:00
Rémi Verschelde b936359e07
Merge pull request #60026 from ConteZero/shortcut_keys_enabled 2022-04-11 17:50:41 +02:00
Rémi Verschelde 4ab86c6731
Merge pull request #59980 from reduz/animation-libraries 2022-04-11 14:18:35 +02:00
Rémi Verschelde 5613ac37d6
Merge pull request #59440 from bruvzg/fd_ref_counted 2022-04-11 14:12:18 +02:00
Rémi Verschelde f44e5dba6d
Merge pull request #60124 from KoBeWi/sepyt_noitcennoc_dilav 2022-04-11 12:52:13 +02:00
reduz 6f401439f8 Implement Animation Libraries
* Instead of containing single animations, AnimationPlayer now contains libraries.
* Libraries, in turn, contain the animations.

This paves the way for implementing the possibility of importing scenes as animation libraries, finally allowing to import animations separate from the 3D models.

Missing (will be done on separate PRs):

* Make it possible to import scenes (dae/fbx/gltf) as animation libraries.
* Make it possible for AnimationTree to import animation libraries on its own, so it does not rely on AnimationPlayer for everything.
2022-04-11 12:51:54 +02:00
bruvzg 9381acb6a4
Make FileAccess and DirAccess classes reference counted. 2022-04-11 13:28:51 +03:00
kobewi b29aff8dac Fix GraphEdit's valid connections being reversed 2022-04-11 00:34:59 +02:00
ConteZero addadaaa24 Add select_all() to RichTextLabel 2022-04-10 18:03:10 +02:00
Michael Alexsander 335068e89b Draw relationship lines for items offscreen 2022-04-09 20:59:17 -03:00
ConteZero a3d82f5afb Fix shortcut_keys_enabled in TextEdit 2022-04-08 15:13:32 +02:00
bruvzg f851c4aa33
Fix some issues found by cppcheck. 2022-04-06 14:34:37 +03:00
bruvzg 9c61fa7ad8
[RTL] Improve table cell selection. 2022-04-06 09:03:08 +03:00
Marc Gilleron 79c6d7ad7f Fix GraphNode not resizing with larger title 2022-04-05 21:57:54 +01:00
bruvzg d1207a0504
[Input] Add extra `shortcut_input` input processing step to process Unicode character input with Alt / Ctrl modifiers, after processing of shortcuts. 2022-04-05 13:46:45 +03:00
Haoyu Qiu 8cefbfcf43 Consider chained operation when selecting text in TextEdit::undo() 2022-04-05 09:12:10 +08:00
Rémi Verschelde f454cea785
Merge pull request #58452 from marcgpuig/text-edit-backspace-fix 2022-04-04 23:58:33 +02:00
Rémi Verschelde f8ab79e68a Zero initialize all pointer class and struct members
This prevents the pitfall of UB when checking if they have been
assigned something valid by comparing to nullptr.
2022-04-04 19:49:50 +02:00
Rémi Verschelde e659eb66a0
Merge pull request #59874 from ConteZero/richtextlabel_deselect 2022-04-04 16:57:11 +02:00
ConteZero 45159e88e1 Add deselect() to RichTextLabel 2022-04-04 16:06:57 +02:00
Rémi Verschelde 338b23d572
Merge pull request #59513 from BastiaanOlij/openxr_actionmap_editor 2022-04-04 14:26:28 +02:00
Bastiaan Olij 9b7b9de0e5 Add action map editor for OpenXR 2022-04-04 18:43:29 +10:00
Marc Garcia Puig f22d257025 Fixed ctrl + backspace on empty lines
Fix <word><space><caret> scenario

Fix move left & right for lines without words
2022-04-04 01:21:16 +02:00
jmb462 0d17903bd5 Fix TextEdit v_scroll_speed invalid values breaks wheel scrolling 2022-04-03 21:07:39 +02:00
Markus Sauermann 6b3207644b Distribute remaining pixel to expanding childs of GridContainer 2022-04-01 19:04:07 +02:00
Markus Sauermann 249d6a4225 Fix how Root Control Node is determined 2022-04-01 13:34:57 +02:00
C.Even 2080077c9c Fix that slow mouse wheel scroll has no zoom effect on 2D editor
* scroll_vec in ViewPanner::gui_input is multiplied by float factors, 
  so it should be a Vector2 rather than Vector2i
* Fixes #57423
2022-04-01 18:34:00 +08:00
Rémi Verschelde 4263f02f28
Merge pull request #59764 from reduz/blender-import-autodetect 2022-04-01 11:42:05 +02:00
reduz e32215fbad Add Blender install autodetection and configuration.
This PR is a continuation to #54886

* Changed Blender path editor setting from binary to installation.
* Add a class to query whether the format is supported.
* This class allows to create proper editors to configure support.

**NOTE**: This PR only provides autodetection on Linux. Code needs to be added for Windows and MacOS to autodetect the Blender installation.

Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
Co-authored-by: Pedro J. Estébanez <pedrojrulez@gmail.com>
2022-04-01 11:01:12 +02:00
NeilKleistGao d8946a7111 Remove metadata `_edit_layout_mode` and `_edit_use_custom_anchors` if they have default values 2022-04-01 13:38:32 +08:00
Haoyu Qiu 2f20ff0ed6 Extract theme property names for localization 2022-04-01 11:35:22 +08:00
Michael Alexsander b8ce726dd0 Small fixes for `TabContainer` 2022-03-31 16:43:09 -03:00
Rémi Verschelde a647fb3e62 Fix typos with codespell
Using codespell 2.2-dev from current git.

Fix a couple incorrect uses of gendered pronouns.
2022-03-31 14:07:29 +02:00
Rémi Verschelde fc4e9d6299
Merge pull request #59702 from Sauermann/fix-subviewport-container-event-transform
Fix event transform in SubViewportContainer
2022-03-31 11:07:21 +02:00
Markus Sauermann 0472839509 Fix Control::warp_mouse to respect canvas transform 2022-03-30 23:18:23 +02:00
Markus Sauermann c8573ea3df Fix event transform in SubViewportContainer
The transform does not take the canvas transform into account.
2022-03-30 20:56:36 +02:00
Pierre-Thomas Meisels 63f7f44ccb Make vararg method bind no return and return
Type emit_signal exposed method return type

set UndoRedo add_do_method and add_undo_method exposed return void

Set TreeItem::_call_recursive_bind returns void

Set _rpc_bind and _rpc_id_bind returns void in Node

Set _call_group and _call_group_flags method returns void in SceneTree

Set godot-cpp-test CI flag to false
2022-03-30 11:43:12 +02:00
Rémi Verschelde 324215c485
Merge pull request #59525 from fire-forge/fix-group-names 2022-03-28 21:44:35 +02:00
FireForge 88b09694e7 Fix inspector group name capitalization 2022-03-28 14:02:06 -05:00
Rémi Verschelde 7119d355eb String: Remove TTR and DTR defines in non-tools build
This ensures we don't use TTR in runtime code, as it's specifically meant
to source translations for the editor.
2022-03-28 20:26:35 +02:00
Rémi Verschelde abbb0dc082
Merge pull request #59548 from akien-mga/obj-remove-unused-categories 2022-03-28 14:17:24 +02:00
Rémi Verschelde 143d13717b
Merge pull request #59553 from reduz/script-extension-support 2022-03-28 13:35:21 +02:00
reduz 360dea5348 Add GDExtension support to Script
* Ability to create script languages from GDExtension
* Some additions to gdnative_extension.h to make this happen
* Moved the GDExtension binder to core

This now allows creating scripting languages from GDExtension, with the same ease as if it was a module. It replaces the old PluginScript from Godot 3.x.
Warning: GodotCPP will need to be updated to support this (it may be a bit of work as ScriptInstance needs to be created over there again).
2022-03-27 16:13:00 +02:00
Markus Sauermann 0494e024d8 Rename warp mouse functions to warp_mouse 2022-03-27 14:12:01 +02:00
Rémi Verschelde f0407ad14d
Merge pull request #59336 from YeldhamDev/where_we_dropping_boys 2022-03-26 23:30:07 +01:00
Markus Sauermann 356fac206d Add configuration warning for SubViewportContainer 2022-03-26 20:33:45 +01:00
Rémi Verschelde 5371009d8e Object: Remove unused category boilerplate
We might want to re-add something like this if/when we find a good use case
for it and do the effort to categorize all objects in the API properly.

Until then, it's better to remove that boilerplate since it's not needed.

Closes #18711.
2022-03-26 15:46:01 +01:00
reduz 09b951b99b Refactor Object metadata
* API kept the same (Although functions could be renamed to set_metadata/get_metadata in a later PR), so not much should change.
* Metadata now exposed as individual properties.
* Properties are editable in inspector (unless metadata name begins with _) under the metadata/ namespace.
* Added the ability to Add/Remove metadata properties to the inspector.

This is a functionality that was requested very often, that makes metadata work a bit more similar to custom properties in Blender.
2022-03-24 14:21:52 +01:00
Rémi Verschelde 3586f559d1
Merge pull request #59403 from fire-forge/textureprogressbar-group
Fix "Stretch Margin" group in TextureProgressBar
2022-03-22 23:03:39 +01:00
Michael Alexsander 94b8f38de2 Add visual marker when dragging and dropping tabs 2022-03-21 22:16:29 -03:00
FireForge e41a890498 Remove unnecessary "Percent" group in ProgressBar 2022-03-21 17:21:56 -05:00
FireForge ed79931be9 Fix "Stretch Margin" group in TextureProgressBar 2022-03-21 17:18:45 -05:00
Rémi Verschelde 81c2d7a82a
Merge pull request #59322 from YeldhamDev/groups_arent_bools 2022-03-19 18:09:46 +01:00
Michael Alexsander e289e864d8 Fix `tabs_rearrange_group` property being exposed as a `bool` instead of a `int` 2022-03-19 13:15:51 -03:00
kobewi 342dac77d4 Hide text and icon properties in OptionButton 2022-03-19 13:36:10 +01:00
Rémi Verschelde 19950076b1
Merge pull request #58394 from bruvzg/rtl_hint 2022-03-18 14:49:13 +01:00
Rémi Verschelde 5c8bd6fd71
Merge pull request #58233 from bruvzg/gde_ts 2022-03-18 14:29:58 +01:00
Michael Alexsander deb1342036 Make `TabBar/Container` default their alignments to the left instead of center 2022-03-17 18:12:23 -03:00
bruvzg f19cd44346
Unify TextServer built-in module and GDExtension code. 2022-03-17 08:15:29 +02:00
Haoyu Qiu a635ecf6d4 Add item tooltip access to OptionButton 2022-03-17 13:50:16 +08:00
taigi100 280956ddc3 Fix children visibility check 2022-03-16 15:51:27 +02:00
风青山 f789c17690 Fix text buf does not clear when calling the method set_item_text in PopupMenu 2022-03-15 21:49:00 +08:00
Rémi Verschelde 47c35f5b96
Merge pull request #59108 from KoBeWi/somewhere_on_the_screen 2022-03-13 18:10:33 +01:00
bruvzg aada395354
Fix text clipping on the right side. 2022-03-13 17:26:00 +02:00
kobewi bcf13dc175 Expose methods for screen-space transforms 2022-03-13 16:05:08 +01:00
Haoyu Qiu d62e8bbc74 Fix RichTextLabel shadow color when text has transparency 2022-03-13 19:57:56 +08:00
Rémi Verschelde 71da4c4132
Merge pull request #54399 from Calinou/filedialog-current-properties-hint-no-editor
Don't store and show current file/directory/path FileDialog properties
2022-03-12 20:48:32 +01:00
Rémi Verschelde d7019de7e3
Merge pull request #59061 from fazil47/graph_edit_offset_fix 2022-03-12 15:03:38 +01:00
Fazil Babu a3598b487a popup_request signal emits mouse click position 2022-03-12 14:00:04 +05:30
kobewi 42078dec9f Allow negative indexes in ItemList and PopupMenu 2022-03-12 01:14:03 +01:00
Rémi Verschelde 3f3826edb8
Merge pull request #59007 from novaplusplus/code_edit_from_to_error_fix 2022-03-11 16:06:00 +01:00
Rémi Verschelde 768f9422bc Convert uses of `DirAccess *` to `DirAccessRef` to prevent memleaks
`DirAccess *` needs to be deleted manually, and this is often forgotten
especially when doing early returns with `ERR_FAIL_COND`.
`DirAccessRef` is deleted automatically when it goes out of scope.

Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2022-03-11 09:13:11 +01:00
nova++ 4b8fa3716f Fix "p_from_line > p_to_line" errors in text edit
Done via making the function more robust to different inputs
2022-03-11 01:13:45 -05:00
reduz 6f51eca1e3 Discern between virtual and abstract class bindings
* Previous "virtual" classes (which can't be instantiated) are not corretly named "abstract".
* Added a new "virtual" category for classes, they can't be instantiated from the editor, but can be inherited from script and extensions.
* Converted a large amount of classes from "abstract" to "virtual" where it makes sense.

Most classes that make sense have been converted. Missing:

* Physics servers
* VideoStream
* Script* classes.

which will go in a separate PR due to the complexity involved.
2022-03-10 12:28:11 +01:00
Markus Sauermann 40c08e522f Revert "Update mouse cursor shape after changes"
This reverts commit 0fce98b4b5.
2022-03-10 09:43:06 +01:00
reduz 21637dfc25 Remove VARIANT_ARG* macros
* Very old macros from the time Godot was created.
* Limited arguments to 5 (then later changed to 8) in many places.
* They were replaced by C++11 Variadic Templates.
* Renamed methods that take argument pointers to have a "p" suffix. This was used in some places and not in others, so made it standard.
* Also added a dereference check for Variant*. Helped catch a couple of bugs.
2022-03-09 18:39:13 +01:00
Rémi Verschelde a2d67c2fff
Merge pull request #58913 from Sauermann/fix-mouse-cursor-change 2022-03-09 09:05:20 +01:00
Markus Sauermann 0fce98b4b5 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-03-09 07:54:03 +01:00
Michael Alexsander 182e038af5 Replace `TabBar`'s `min_width` with `max_tab_width` and expose it 2022-03-09 01:48:18 -03:00
Marcel Admiraal 507f72db8e Rename Control's Rect properties to exclude rect_ part 2022-03-08 16:30:35 +00:00
Rémi Verschelde 45fa14e1ae
Merge pull request #58850 from YeldhamDev/more_tab_regressions 2022-03-08 14:28:39 +01:00
Rémi Verschelde 761398556e
Merge pull request #58887 from cesarizu/bbcode_align_left 2022-03-08 12:52:54 +01:00
Rémi Verschelde 8ca4bd2755
Merge pull request #58879 from Calinou/basebutton-shortcut-context-fix-typo 2022-03-08 12:52:28 +01:00
César Izurieta 42f1697857 Add support to align to left to bbcode 2022-03-08 01:36:19 -05:00
Paweł Fertyk 5381a27f79 Fix crash with all_tabs_in_front
Fixes #58790.
2022-03-08 00:19:21 +01:00
Hugo Locurcio be5116c4a4
Fix typo in BaseButton shortcut context methods 2022-03-07 22:36:12 +01:00
Michael Alexsander c0381594c3 Fix regressions with nameless and icon-only tabs 2022-03-06 22:17:35 -03:00
kobewi 2057ea2883 Remove duplicate editor settings definitions 2022-03-06 22:05:49 +01:00
Rémi Verschelde def893b3d4
Merge pull request #58805 from KoBeWi/meh_custom
Remove custom_* prefixes compatibility
2022-03-06 10:16:53 +01:00
kobewi 7d44bb8f06 Remove set_as_minsize() 2022-03-06 00:57:42 +01:00
kobewi c003ab43c3 Remove custom_* prefixes compatibility 2022-03-05 21:35:10 +01:00
kobewi b3864db7e0 Change tabs_rearrange_group to property 2022-03-05 21:03:01 +01:00
Michael Alexsander ebf630441f Fix renaming `TabContainer` children not updating tab names when outside the tree 2022-03-04 18:26:08 -03:00
Rémi Verschelde 7de48982fe
Merge pull request #58691 from miremrie/absolute-file-path-in-file-browser 2022-03-04 12:25:15 +01:00
Rémi Verschelde 9d5d20ae6d
Merge pull request #58687 from YeldhamDev/the_beast_has_been_slain 2022-03-04 12:18:55 +01:00
Rémi Verschelde 8845798b44
Merge pull request #58739 from Calinou/control-add-constructors
Add optional constructor arguments to more Control nodes
2022-03-04 11:42:53 +01:00
Hugo Locurcio a06f82ca4d
Add optional constructor arguments to more Control nodes
This can be used to make editor code more compact.
However, as of writing, these constructor arguments cannot be used
from the scripting API.

This was already provided for Label and CheckBox, but it was missing
for other Control nodes where it made sense to provide a default value.
2022-03-04 09:48:41 +01:00
Haoyu Qiu 933211cb0c Remove extra separator when TextEdit is read only and unselectable 2022-03-04 16:25:25 +08:00
Michael Alexsander a811ebf699 Make `TabContainer` use `TabBar` internally 2022-03-03 21:49:58 -03:00
Hugo Locurcio 816d332e51
Fix LineEdit and TextEdit carets disappearing at theme scales below 1.0
This fixes carets disappearing in the editor when the Editor Scale
setting is set below 100%.
2022-03-03 00:15:48 +01:00
miremrie a5e30c0228 Allow absolute file paths in file dialogs 2022-03-02 19:42:39 +01:00
Rémi Verschelde 1b446ebcd4
Merge pull request #58559 from fazil47/scene-tree-icon-focus
Double clicking scene tree icon focuses that node
2022-03-01 08:46:14 +01:00
Rémi Verschelde c8e62555f6
Merge pull request #58477 from AlbertFay/text-under-scrollbar 2022-03-01 01:32:36 +01:00
Paulb23 7f5782047e Fixed caret change signal emission 2022-02-28 19:01:44 +00:00
Fazil Babu f2b0bd54b2 Double clicking scene tree icon focuses that node 2022-02-27 17:16:45 +05:30
albertfay1121 dba0d52349 Fixed bug with text going under scrollbar
added classes reference update
2022-02-25 13:45:38 -08:00
bruvzg 74ff5921d6 Improve popup window handling.
Add window FLAG_POPUP and a platform specific routines to control popup auto-hiding and event forwarding.
2022-02-25 09:33:27 +02:00
bruvzg 7385c3602d
Add RichTextLabel "hint" tag. 2022-02-21 19:34:16 +02:00
Rémi Verschelde 417698c202
Merge pull request #58042 from Sauermann/fix-viewport-border-notifications
Fix Viewport mouse enter+exit notifications
2022-02-19 09:07:07 +01:00
Rémi Verschelde 51a00c2855
Merge pull request #58182 from akien-mga/style-cleanup-if-semicolons-deadcode 2022-02-16 16:55:07 +01:00
Rémi Verschelde eeda603355
Merge pull request #58055 from markdibarry/add_get_line_offset 2022-02-16 14:07:23 +01:00
Rémi Verschelde fe8f4cebce
Merge pull request #58154 from markdibarry/fix_scroll_to_line 2022-02-16 14:07:06 +01:00
Rémi Verschelde b8b4580448
Style: Cleanup single-line blocks, semicolons, dead code
Remove currently unused implementation of TextureBasisU, could be re-added
later on if needed and ported.
2022-02-16 14:06:29 +01:00
Markus Sauermann 415042ac89 Connect notifications from Container to Viewport
mouse enter+exit
2022-02-15 22:41:30 +01:00
markdibarry 4d53c086ff Fix scroll_to_line ignoring line separation 2022-02-15 12:52:11 -05:00
Rémi Verschelde 0f5455230c
Use `switch` consistently in `_notification` (`scene` folder) 2022-02-15 18:44:55 +01:00
Rémi Verschelde 11572c6e30
Editor: Cleanup some includes dependencies
Removes some unnecessary includes from `editor_node.h`, and instead add
those where they're used.

Removes unnecessary `editor_node.h` includes in various editor classes.

Renames `dynamicfont` to `dynamic_font` in a couple files.

Misc cleanup while jumping through that rabbit hole.
2022-02-15 14:54:15 +01:00
Rémi Verschelde 760a95e86a
Merge pull request #57877 from bruvzg/subpixel_gl_pos 2022-02-15 13:58:38 +01:00
Rémi Verschelde 89996be091
Merge pull request #57988 from markdibarry/add_get_last_visible_character_line 2022-02-14 15:22:03 +01:00
Rémi Verschelde af98de8823
Merge pull request #58089 from YeldhamDev/crashy_tabs 2022-02-14 15:21:18 +01:00
Michael Alexsander 2b4d417e99 Fix crash when removing tabs from `TabBar` 2022-02-14 01:58:17 -03:00
markdibarry c0caafe960 Add offset methods for lines and paragraphs in RichTextLabel
Adds `get_line_offset` and `get_paragraph_offset` methods to `RichTextLabel`

Fix arg mismatch
2022-02-13 13:15:21 -05:00
markdibarry ae7eec53c0 Add get_character_line method for RichTextLabel
Adds the ability to get the line number of provided character position

Fix arg name

Add get_character_paragraph

Replaced glyph logic with code suggestions, added get_character_paragraph method

Run doctool

Use built-in method

Replace TS access with built in method
2022-02-13 11:12:12 -05:00
Yuri Sizov ddc8ec6b44 Limit inspector updates when dragging anchored controls 2022-02-13 00:19:06 +03:00
bruvzg 29199579f7
Add sub-pixel glyph positioning support. 2022-02-12 19:55:52 +02:00
Rémi Verschelde 732725d663
Merge pull request #58006 from bruvzg/fix_rtl_img_resize 2022-02-12 15:28:26 +01:00
bruvzg d7f6a4853a
[RTL] Fix "img" tag not setting image size. 2022-02-12 11:48:56 +02:00
Hendrik Brucker b396fd4eef Improve compilation speed (forward declarations/includes cleanup) 2022-02-12 02:46:22 +01:00
bruvzg 2e01a0d7a3
[RTL / Label] Reorganize property order to ensure "visible_characters" / "percent_visible" are set after the "text". 2022-02-11 12:31:13 +02:00
Rémi Verschelde 9abf5f01fd
Merge pull request #55207 from ConteZero/rich_text_label_drag 2022-02-10 22:14:08 +01:00
Rémi Verschelde 69ddf2fd05
Merge pull request #55157 from pycbouh/control-inspector-reorg 2022-02-10 22:13:28 +01:00
ConteZero cb222f6c9d Add drag to RichTextLabel 2022-02-10 20:24:28 +01:00
Yuri Sizov 107b6f299c Reorganize inspector layout workflow for Control nodes 2022-02-10 20:29:34 +03:00
Rémi Verschelde d6abf8f158
Merge pull request #57873 from markdibarry/add_get_content_width_RichTextLabel 2022-02-10 18:24:13 +01:00
markdibarry 29c21ac590 Add get_content_width method
Adds a get_content_width method to RichTextLabel
2022-02-10 10:56:11 -05:00
Rémi Verschelde 1bdb82c64e
Fix typos with codespell
Using codespell 2.2-dev from current git.

Added `misc/scripts/codespell.sh` to make it easier to run it once in a
while and update the skip and ignore lists.
2022-02-10 12:30:19 +01:00
Rémi Verschelde f88a83f611
Merge pull request #57810 from timothyqiu/tree-button-id 2022-02-09 11:11:01 +01:00
Rémi Verschelde 196801fc64
Merge pull request #57837 from YeldhamDev/that_was_pointless 2022-02-09 09:38:39 +01:00
Michael Alexsander ef81dc1831 Remove code to update the layout direction of submenus from `PopupMenu` 2022-02-09 01:36:20 -03:00
Markus Sauermann 35806c1511 Adjust id creation in PopupMenu to avoid duplicate ids 2022-02-09 01:17:55 +01:00
Rémi Verschelde 8907c566ed
Merge pull request #57773 from pfertyk/issue_57710_tabbar_update_hover 2022-02-08 23:12:05 +01:00
Paweł Fertyk 2d82e076f4 Fix `TabBar._update_hover` crash
Fixes #57710.
2022-02-08 22:06:58 +01:00
Haoyu Qiu 374299c6fb Improve TreeItem button API 2022-02-08 23:56:13 +08:00
Rémi Verschelde b6ddf4a629
Merge pull request #57692 from YeldhamDev/popping_options 2022-02-08 14:04:28 +01:00
Rémi Verschelde e26598b4a1
Merge pull request #40140 from hinlopen/tree-scroll-center 2022-02-08 13:43:19 +01:00
Rémi Verschelde fc076ece3d
Revert "Add missing SNAME macro optimization to all theme methods call"
This reverts commit a988fad9a0.

As discussed in #57725 and clarified in #57788, `SNAME` is not meant to be used
everywhere but only in critical code paths. For theme methods specifically, it
was by design that only getters use `SNAME` and not setters.
2022-02-08 10:17:25 +01:00
Michael Alexsander 59e9a8c275 Fix theming for floating window docks 2022-02-07 09:55:25 -03:00
Rémi Verschelde b024602660
Merge pull request #57725 from jmb462/missing-sname-theme-setters 2022-02-07 11:46:25 +01:00
Michael Alexsander 8bde86da10 Make popups from `MenuButton`, `OptionButton`, and submenus obey the layout direction 2022-02-06 23:07:08 -03:00
jmb462 a988fad9a0 Add missing SNAME macro optimization to all theme methods call 2022-02-06 23:06:11 +01:00
Rémi Verschelde 784b74ef56
Merge pull request #57721 from YeldhamDev/separate_from_separators
Better handle icons and checkboxes with separators in `PopupMenu`
2022-02-06 21:24:06 +01:00
Michael Alexsander 989caab0ad Better handle icons and checkboxes with separators in `PopupMenu` 2022-02-06 16:05:45 -03:00
Michael Alexsander 21bf23d966 Enhancements and fixes for `OptionButton` and `PopupMenu` 2022-02-06 16:03:18 -03:00
jmb462 1ce81dc5f2 Add missing SNAME macro optimization in some function calls 2022-02-06 15:54:04 +01:00
Ger Hean 8acc8838c4 Add shortcut_cell double click functionality 2022-02-05 19:06:54 +08:00
Stijn Hinlopen 31824420e4 Center when scrolling to tree item. 2022-02-05 10:59:33 +01:00
kobewi e714f5e56e Rework TextureButton stretch 2022-02-05 02:11:32 +01:00
bruvzg 244db37508
Cleanup and move char functions to the `char_utils.h` header. 2022-02-04 11:35:01 +02:00
Rémi Verschelde f8f19b313d
Merge pull request #57562 from AnilBK/string-add-contains
String: Add contains().
2022-02-03 22:21:24 +01:00
Anilforextra adbe948bda String: Add contains(). 2022-02-04 01:28:02 +05:45
Rémi Verschelde 5e39a8eded
Merge pull request #56992 from YeldhamDev/smarter_popmenu_focus 2022-02-03 17:15:06 +01:00
bruvzg ead6f67670
Add auto-wrap mode property to the RichTextLabel, set default auto-wrap mode to AUTOWRAP_WORD_SMART to match 3.x behavior. 2022-02-03 16:04:07 +02:00
Gilles Roudière 73e784de1e Remove get_focus_owner() from Control, replaced by get_viewport()->gui_get_focus_owner() 2022-02-03 11:59:32 +01:00
Rémi Verschelde 36880714e4
Merge pull request #57517 from groud/viewport_expose_gui_focus 2022-02-03 11:20:20 +01:00
bruvzg 215bede6ff
[TextServer] Add function to change font, font size, and OpenType features without invalidating line break points, justification points, or recreating shaped text buffer. 2022-02-02 11:20:44 +02:00
Gilles Roudière 3521eecb4c Exposes gui_release_focus and gui_get_focus_owner to Viewport 2022-02-01 15:07:22 +01:00
Rémi Verschelde d4e21b7d62
Merge pull request #57358 from akien-mga/signal-bindings-object 2022-02-01 14:24:47 +01:00
Rémi Verschelde f1bff648f2
Merge pull request #57355 from akien-mga/method-bindings-clearer-types 2022-02-01 14:24:35 +01:00
Rémi Verschelde 45553fd586
Merge pull request #56970 from YeldhamDev/rise_tabbar_rise 2022-01-31 21:46:07 +01:00
Michael Alexsander 64c4a5b283 Bring `TabBar` to full parity with the `TabContainer` implementation. 2022-01-31 15:35:54 -03:00
Rémi Verschelde 7da9e31f66
Merge pull request #57405 from kleonc/texture_button_focus_only_logic_fix 2022-01-31 18:22:58 +01:00
Rémi Verschelde 74b1e77938
Merge pull request #57276 from IgorKordiukiewicz/fix-auto-brace-complete-wrap-on-selection 2022-01-31 18:14:01 +01:00
Rémi Verschelde 777c821748
Merge pull request #57462 from mashumafi/master-fix-button-icon-alpha3
Fix button icon_disabled_color alpha channel
2022-01-31 14:53:22 +01:00
Rémi Verschelde 7cb25c2870
Merge pull request #57456 from Paulb23/placeholder-color
Move placeholder colour to theme item
2022-01-31 14:52:34 +01:00
bruvzg e1148cc452 Revert "Fix control node transform animation jitter with pivot offset"
This reverts commit dfb7d46a2a.
2022-01-31 13:30:35 +02:00
mashumafi c317a97359 Fix button icon_color_disabled alpha channel 2022-01-30 14:25:42 -05:00
Paulb23 1cd1df5dc3 Move placeholder color to theme item 2022-01-30 17:56:23 +00:00
Igor Kordiukiewicz f170d6a171 With auto_brace_complete enabled, selected text now gets wrapped by braces 2022-01-30 17:33:13 +01:00
kleonc 078b8c25ce TextureButton Fix logic for drawing only the focus texture 2022-01-29 16:00:30 +01:00
Nathan Franke 8a0a3accee
simplify formatting scripts, add a clang-tidy script, and run clang-tidy 2022-01-29 04:41:03 -06:00
eikobear 3b146c5eaa 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.
2022-01-28 17:03:45 -05:00
Rémi Verschelde 7c3003fcbe
Improve some signal bindings to use specific `Object` subtypes 2022-01-28 15:35:40 +01:00
Rémi Verschelde 7072b359b4
Improve some method bindings to use specific `Object` subtypes
This was made possible by changes to `VariantCaster` which now make
it possible to pass any `Object`-derived type as pointer.
2022-01-28 15:07:22 +01:00
Rémi Verschelde 38c6611b91
Merge pull request #57344 from bruvzg/rtl_fix_tab_offset 2022-01-28 14:04:33 +01:00
bruvzg a2f5f7cccf Fix RTL table offset, if indent is set. 2022-01-28 12:27:47 +02:00
Rémi Verschelde 9686d680b7
Merge pull request #57116 from bruvzg/win_net_share 2022-01-28 11:03:23 +01:00
bruvzg 978f2edeea [RTL] Fix calculation of the last line height. 2022-01-28 10:13:23 +02:00
Rémi Verschelde e6caaf4c80
Merge pull request #57205 from TechnoPorg/variant-template-cast
Allow method binds to take Object subclasses as arguments
2022-01-27 23:46:37 +01:00
bruvzg 0014f0233a
[RTL] Fix min. height calculation when fit_content_height is enabled. 2022-01-27 12:05:21 +02:00
Rémi Verschelde 899cd34426
Merge pull request #57281 from Rubonnek/rename-subsequence 2022-01-27 11:03:13 +01:00
Wilson E. Alvarez 3eb5e0ac50
Rename String::is_subsequence_ofi to String::is_subsequence_ofn 2022-01-26 18:03:56 -05:00
bruvzg cf3d3a6ffa
Fix RichTextLabel [ol type=1] tag closing. 2022-01-26 13:52:24 +02:00
Paulb23 e911eee21b Fix TextEdit placeholder not checking line count 2022-01-25 17:41:05 +00:00
Michael Alexsander 73c225838f Make popup menus focus items automatically when not using the mouse 2022-01-25 13:51:56 -03:00
TechnoPorg 051ef479c9 Allow method binds to take Object subclasses as arguments
This commit adds a condition to VariantCaster that casts Variants of type OBJECT to any type T, if T is derived from Object.
This change enables a fair bit of code cleanup. First, the Variant implicit cast operators for Node and Control can be removed, which allows for some invalid includes to be removed. Second, helper methods in Tree whose sole purpose was to cast arguments to TreeItem * are no longer necessary.
A few small changes also had to be made to other files, due to the changes cascading down all the includes.
2022-01-25 09:03:36 -07:00
Rémi Verschelde 7cbe1835f9
Merge pull request #57189 from bruvzg/fix_shortcut_context_unset 2022-01-25 14:44:30 +01:00
bruvzg 306b98638e
Allow unsetting `shortcut_context`. 2022-01-25 14:17:45 +02:00
kobewi 342a31e326 Fix 2D Pan Tool 2022-01-24 22:21:19 +01:00
Rémi Verschelde 33960b3b87
Merge pull request #55884 from preslavnpetrov/ctrl-enter-deleting-selection-fix-master 2022-01-24 21:33:14 +01:00
bruvzg cba8280515 [Windows] Add support for handling network share paths. 2022-01-24 16:22:59 +02:00
Rémi Verschelde 06abfd8c13
Merge pull request #57100 from Paulb23/textedit-placeholder 2022-01-24 09:43:33 +01:00
Preslavb 6f1089af86 Fix selection being deleted and indentation not being accounted for 2022-01-23 23:14:35 +00:00
Rémi Verschelde bd4d57ede2
BaseButton: Rename `pressed` property to `button_pressed`
This fixes a conflict with the `pressed` signal.

The new name is temporary and only intended to solve the conflict for upcoming
alpha builds. Discussions are still ongoing regarding the BaseButton API and
how to rename and refactor more of its properties, signals and methods to have
a clearer API in 4.0.
2022-01-23 22:15:09 +01:00
Paulb23 09212ba151 Add Placeholder to TextEdit 2022-01-23 20:19:36 +00:00
bruvzg 268bab077f
[RTL] Fix missing line separation in the paragraph offset and click calculation. 2022-01-23 19:09:14 +02:00
kobewi 98692d68c3 Minor tweaks and fixes to panning 2022-01-23 13:49:53 +01:00
Rémi Verschelde e363f404a5
Merge pull request #57000 from KoBeWi/UNLIMITED_PANNING 2022-01-23 00:47:52 +01:00
kobewi 1422c756ed Rename request_code_completion signal 2022-01-22 14:04:35 +01:00
kobewi 74bfe88267 Add ViewPanner to 2D editor 2022-01-21 18:35:06 +01:00
Rémi Verschelde c70ce4d487
Merge pull request #56124 from KoBeWi/font_slayer 2022-01-21 12:52:24 +01:00
Rémi Verschelde 6f764e6291
Merge pull request #56963 from KoBeWi/wszystkie_pliki 2022-01-21 12:51:58 +01:00
Yuri Roubinsky 8fc0dd9997
Merge pull request #57001 from bruvzg/popup_dialog_fix 2022-01-20 20:22:47 +03:00
Rémi Verschelde eacde082a5
Merge pull request #53276 from Phischermen/propagate_check 2022-01-20 16:37:16 +01:00
bruvzg 5a97184931 [Windows] Fix pop-up dialogs instantly closing. 2022-01-20 16:51:35 +02:00
Rémi Verschelde d661835a18
Merge pull request #54729 from Paulb23/text-edit-callable 2022-01-19 21:36:56 +01:00
Paulb23 f43f68f605 Convert TextEdit callbacks to Callable 2022-01-19 17:26:22 +00:00
kobewi 74d08a305e Fix FileDialog localization issues 2022-01-19 17:04:06 +01:00
Hugo Locurcio 84a69d7429 Improve the default project theme
The new default project theme uses StyleBoxFlat extensively for
a more modern design and better scalability to multiple resolutions.

SVG icons are now used in place of PNG icons. While this does not
allow for true vector-based icon drawing (icons are still rasterized
at load-time), this makes the design work easier for contributors
and opens the door to vector drawing in the future (e.g. with polygons
or SDFs).

Like for editor icons, the SVG header file is now built automatically
when a SVG file is changed. This removing the need for running
`make_header.py` manually (TODO).

The "Use Hidpi" project setting has been removed in favor of a
"Default Theme Scale" project setting, which allows creating the
default theme at a higher/lower scale than the default.
This can be used when designing GUIs with a high base resolution
to ensure crisp visuals.

Co-authored-by: Yuri Sizov <yuris@humnom.net>
2022-01-19 18:46:01 +03:00
Yuri Sizov bcbbbeb050 Ignore layout and translation changes in Controls outside of tree 2022-01-19 18:02:22 +03:00
Rémi Verschelde 82efb1d262
Merge pull request #53923 from KoBeWi/RichBugLabel 2022-01-19 15:23:13 +01:00
kobewi 42c79161c2 Fix bottom line in editor log 2022-01-19 14:26:31 +01:00
Kevin Fischer a4bac268c9 Addded methods to propagate checks & refactored classes to use new methods. 2022-01-18 19:21:59 -08:00
Yuri Sizov 3f5ed098bb Fix RichTextLabel tables shrinking expanded columns when there is not enough space 2022-01-19 00:44:19 +03:00
Yuri Sizov 3b1c02a139 Fix RichTextLabel not respecting line separation in several cases 2022-01-18 23:01:01 +03:00
Rémi Verschelde 030638e5b4
Merge pull request #56104 from Geometror/add-flow-layout-container
Add FlowContainer
2022-01-18 20:26:29 +01:00
Rémi Verschelde ce2b5bdfa8
Merge pull request #52969 from bruvzg/locale_detection 2022-01-18 15:43:04 +01:00
Rémi Verschelde 7c771ea310
Merge pull request #47522 from madmiraal/rename-test_width-test_height 2022-01-18 13:39:57 +01:00
bruvzg 40c56ed410
Improve locale detection.
Use separate language, script and country lists.
Add locale selection dialog and property hint.
2022-01-18 14:30:00 +02:00
bruvzg e02a097280
[TextServer] Implement locale and context sensitive case conversion functions. 2022-01-17 14:23:36 +02:00
Rémi Verschelde 8958e1b352
Merge pull request #56720 from volokh0x/to-fix-#56274 2022-01-16 15:54:42 +01:00
volokh0x 034f31aa5c Save clear action of TextEdit in history when used from context menu 2022-01-16 15:00:57 +02:00
Ricardo Buring 4562106cbf OptionButton::pressed(): give focus to selected 2022-01-15 22:52:12 +01:00
Rémi Verschelde cba3d5f34d
Merge pull request #56457 from gerhean/focus_file_text_after_popup 2022-01-14 21:17:59 +01:00
Rémi Verschelde 66c9002dab
Merge pull request #56787 from bruvzg/fix_guidelines
Fix CodeEdit guidelines position.
2022-01-14 19:53:20 +01:00
Rémi Verschelde 6689a9360c
Merge pull request #56756 from KoBeWi/great_unification_theory 2022-01-14 16:13:53 +01:00
bruvzg 85424afee6
Fix CodeEdit guidelines position. 2022-01-14 15:51:07 +02:00
kobewi fbb5580b3d Add ViewPanner to more editors 2022-01-14 13:09:39 +01:00
Rémi Verschelde e529803ef9
Merge pull request #56738 from YeldhamDev/improve_tab_consistency 2022-01-14 10:42:30 +01:00
Rémi Verschelde a987ebfde2
Merge pull request #56714 from bruvzg/fix_alignment_break_overrun 2022-01-13 10:20:02 +01:00
Rémi Verschelde f6792eacf5
Merge pull request #54956 from Calinou/lineedit-textedit-add-caret-width-theme-item
Add a theme constant to change LineEdit and TextEdit's caret width
2022-01-13 09:21:01 +01:00
bruvzg baec983d8a
[TextServer] Improvements for line breaking, "Fill" alignment, overrun, and interaction between these modes.
Fix "Fill" alignment processing wrong side of the text if overrun trim was applied.
Improve "Fill" alignment to avoid adding excessive subsequent spaces or elongations.
Add font detection to the overrun, to correctly add ellipsis (was using last glyph font, which doesn't necessary have dot character).
Improve line breaking to avoid adding excessive subsequent soft break points for languages without word separator.
Port missing overrun/justification code to the Fallback text server.
Fix inferred text direction detection by controls.
Add tests for "Fill" alignment and line breaking glyph flags.
2022-01-13 08:53:28 +02:00
Michael Alexsander a989dc019b Improve looks and consistency of tabs 2022-01-12 22:11:43 -03:00
Rémi Verschelde 585231a172
Merge pull request #56492 from akien-mga/remove-author-docstrings 2022-01-12 15:24:17 +01:00
Rémi Verschelde f135c950a5
Merge pull request #56709 from YeldhamDev/die_monster_you_dont_belong_in_this_world 2022-01-12 11:37:04 +01:00
Rémi Verschelde b5495783b2
Merge pull request #53185 from KoBeWi/viewing_pan 2022-01-12 11:36:41 +01:00
Michael Alexsander cb1a648f42 Fix several issues in ´TabBar´ 2022-01-12 00:17:36 -03:00
Ger Hean 9dbe314da6 Create function focus_file_text
This function focuses the text field when saving a file
It is called when the save file dialogue is opened
2022-01-12 01:34:04 +08:00
Rémi Verschelde 019474f2b8
Merge pull request #56586 from dalexeev/rtl-bracket-escapes 2022-01-11 16:17:16 +01:00
kobewi ba7ed05792 Unify panning in sub-editors and make it configurable 2022-01-11 13:57:19 +01:00
Rémi Verschelde 46624388d4
Merge pull request #56322 from madmiraal/fix-42450 2022-01-11 11:33:59 +01:00
Haoyu Qiu df1c64feba Fix BBCode underline prevents strikethrough from rendering 2022-01-11 12:54:04 +08:00
Rémi Verschelde b52f90e795
Merge pull request #56637 from KoBeWi/maxxxxxxcroll
Set max value of inactive TextEdit scrolls to 0
2022-01-10 22:15:57 +01:00
Rémi Verschelde 7faf02383c
Merge pull request #55225 from bruvzg/fix_ligature_cursor_and_ot_features 2022-01-10 13:32:54 +01:00
Rémi Verschelde 5f7bbf4d33
Merge pull request #55456 from KoBeWi/break_all_the_things 2022-01-10 12:36:21 +01:00
bruvzg 8c973f21ee
Fix glyph index for bitmap fonts.
Fix TextEdit glyph position rounding.
2022-01-10 08:00:27 +02:00
bruvzg c89ee71297
Fix button multiline text alignment. 2022-01-09 21:25:28 +02:00
bruvzg c89c515ccf
[TextServer] Improve ligature cursor handling.
Fix mid-grapheme hit test.
Fix OpenType features property handling, add default features override option.
Enable mid-grapheme cursor by default.
2022-01-09 19:03:48 +02:00
kobewi 892d93759c Set max value of inactive TextEdit scrolls to 0 2022-01-09 01:45:07 +01:00
kobewi b403954e41 Improve FileDialog filters 2022-01-08 16:27:15 +01:00
Rémi Verschelde 13d25f9980
Merge pull request #56608 from jmb462/itemlist_item_selectable
Expose selectable property of ItemList's Item and set default to true
2022-01-08 11:48:33 +01:00
Rémi Verschelde cb7daddbeb
Merge pull request #54647 from rafallus/fix/popupmenu_ids
Fix `PopupMenu` items id range in inspector
2022-01-08 11:39:09 +01:00
rafallus 38d578e24e Fix `PopupMenu` items id range in inspector 2022-01-07 19:58:09 -06:00
jmb462 cf5cad7126 Expose selectable property of ItemList's Item 2022-01-08 00:32:12 +01:00
Hugo Locurcio f6443beade
Add a theme constant to change LineEdit and TextEdit's caret width
This can be useful to improve caret visibility, especially at
larger font sizes. This can also be used for accessibility purposes.
2022-01-07 20:51:22 +01:00
Rémi Verschelde c09c4e0154
Merge pull request #56575 from HaSa1002/drag-signal-began
Rename GraphEdit `connection_drag_begun` to `connection_drag_started`
2022-01-07 20:41:39 +01:00
kobewi 562fc4cc0d Rename TextureRect.expand to ignore_texture_size 2022-01-07 20:21:17 +01:00
Johannes Witt 4c5ceb1a97
Rename GraphEdit connection_drag_begun to connection_drag_started 2022-01-07 18:25:03 +01:00
Rémi Verschelde 6a27d7361a
Merge pull request #56321 from pycbouh/core-use-gdvirtual-everywhere 2022-01-07 16:14:28 +01:00
Hendrik Brucker 40ee2b8953 Add FlowContainer 2022-01-07 15:51:49 +01:00
Rémi Verschelde d2772af0d8
Merge pull request #54351 from LeaoLuciano/leak-remove-line-richtextlabel 2022-01-07 15:22:24 +01:00
Rémi Verschelde fcc2648e18
Fix missing arg name in bindings for GDExtension API 2022-01-07 14:24:06 +01:00
Rémi Verschelde 7640dc2c73
Merge pull request #55775 from timothyqiu/slider-drag 2022-01-07 13:02:40 +01:00
Rémi Verschelde 096a13b3bb
Merge pull request #56472 from KoBeWi/now_focus 2022-01-07 10:49:05 +01:00
Danil Alexeev 884f1acff8
Add BBCode escape sequences 2022-01-07 11:40:13 +03:00
Rémi Verschelde dc7235b71c
Merge pull request #54560 from rafallus/tab_items 2022-01-07 00:46:46 +01:00
Johannes Witt 0505b08a56
Add `GraphEdit` drag notifications
This commit adds two signals:
 * connection_drag_begun, which is emitted when a connection is started
   to be created by the user and
 * `connection_drag_ended`, which is emitted when no longer a connection
   is created.

Additionally `force_connection_drag_end()` adds the possibility to end
the connection dragging. If called from user code, no other connection
request signals are invoked. This is useful to add `GraphNode`s via
shortcuts while the user is dragging a connection to directly connect
the newly added node.
2022-01-06 17:51:40 +01:00
Tomasz Chabora e72adab511 Update the minimum size of ViewportContainer 2022-01-06 15:43:12 +01:00
Rémi Verschelde a2a4ec7cb5
Merge pull request #56376 from pycbouh/theme-tombe-les-theme-properties 2022-01-06 11:33:43 +01:00
Rémi Verschelde b238218363
Merge pull request #55851 from Chaosus/better-completion-options-list_rebased 2022-01-06 09:40:44 +01:00
rafallus b4abb73ea5 Inspector property array for `TabBar` 2022-01-05 12:23:11 -06:00
Rémi Verschelde c0b3da78ad
Merge pull request #56255 from PucklaMotzer09/control_unfocus 2022-01-05 10:59:39 +01:00
Rémi Verschelde 8eb1d20346
Merge pull request #56206 from KoBeWi/random_call_deferred_to_the_rescue_once_again 2022-01-05 10:57:53 +01:00
Rémi Verschelde 319c442771
Merge pull request #55791 from kleonc/tree-dont-consume-mouse-if-collapser-not-visible 2022-01-05 10:56:50 +01:00
Rémi Verschelde e32c685092
Merge pull request #54441 from Geometror/checkbutton-checkbox-font-hover-pressed-color 2022-01-05 10:55:33 +01:00
Rémi Verschelde 0719deea8a
Merge pull request #56346 from pycbouh/control-treenteger 2022-01-05 10:47:05 +01:00
Rémi Verschelde 89f070065b
Merge pull request #56408 from eazrael/tree-fix-selectionmode-row
Tree: Fix de-select when selection mode set to SELECT_ROW
2022-01-05 09:22:00 +01:00
Rémi Verschelde ba2bdc478b
Style: Remove inconsistently used `@author` docstrings
Each file in Godot has had multiple contributors who co-authored it over the
years, and the information of who was the original person to create that file
is not very relevant, especially when used so inconsistently.

`git blame` is a much better way to know who initially authored or later
modified a given chunk of code, and most IDEs now have good integration to
show this information.
2022-01-04 20:42:50 +01:00
Marcel Admiraal f107139979 Rename Project Window width and height settings to match their function 2022-01-04 13:59:16 +00:00
kobewi 11111d997e Fix TextureButton focus texture logic 2022-01-04 01:06:24 +01:00
Rémi Verschelde 8501233401
Merge pull request #56347 from NNesh/fix/graph_editor_out_of_range_alignment
Fixed an invalidation of sets and out of range for an alignment
2022-01-04 00:37:43 +01:00
Rémi Verschelde fe52458154
Update copyright statements to 2022
Happy new year to the wonderful Godot community!
2022-01-03 21:27:34 +01:00
Rémi Verschelde 1032c2c434
Merge pull request #55487 from YeldhamDev/scroll_bikeshedding 2022-01-03 14:10:41 +01:00
luz paz a124f1effe Fix various typos
Found via ` codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,expct,fave,findn,gird,hist,inout,leapyear,lod,nd,numer,ois,ony,paket,seeked,sinc,switchs,te,uint,varn`
Update editor/import/resource_importer_layered_texture.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update doc/classes/TileSetScenesCollectionSource.xml

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/gui/graph_edit.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/resources/animation.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/resources/animation.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/resources/animation.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/gui/rich_text_label.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Revert previously committed change
2022-01-02 01:03:58 -05:00
Christoph Nelles 185724e5e9 Tree: Fix de-select when selection mode set to SELECT_ROW
It no longer de-selects an already selected row if the SELECT_MODE is
set to SELECT_ROW.

Update scene/gui/tree.cpp

Co-authored-by: Michael Alexsander <michaelalexsander@protonmail.com>
2022-01-02 00:36:30 +00:00
NNesh 0af3d6b990 Fixed a invalidation of sets and out of range in the _horizontal_alignment function
Fixed start index (to the second half element)

Fixed out of range when size is equal 1
2022-01-02 00:21:36 +05:00
Yuri Sizov fe283fd07a Correctly use fallback Theme values as last resort 2021-12-31 18:53:43 +03:00
Yuri Sizov f1bc5c976a Fix an incorrect exposed property type in Tree 2021-12-30 20:04:14 +03:00
Yuri Sizov 7d37f76241 Use GDVIRTUAL* macros when binding virtual methods in exposed classes 2021-12-29 20:27:44 +03:00
Marcel Admiraal 3105d9b1f3 Rename speed to velocity when it's a directional Vector 2021-12-29 15:35:26 +00:00
PucklaMotzer09 be2d59fa0a Unfocus Control on NOTIFICATION_EXIT_TREE 2021-12-26 17:53:07 +01:00
kobewi a7a41a3431 Fix TabContainer not setting layout immediately 2021-12-23 23:47:27 +01:00
Rémi Verschelde 1906b59675
Merge pull request #55636 from bruvzg/vis_char_modes
Add different "visible characters" behavior modes.
2021-12-23 00:43:33 +01:00
kobewi 540ddbc33b Fix being unable to clear some theme overrides 2021-12-21 10:37:08 +01:00
Rémi Verschelde 78857ec770
Merge pull request #55823 from KoBeWi/optional_button 2021-12-21 09:43:42 +01:00
Rémi Verschelde 011c0279c5
Merge pull request #56102 from jmb462/fix-wrong-gradientedit-colorpicker-shape 2021-12-21 09:43:26 +01:00
kobewi c68e93ad52 Implement property array for OptionButton 2021-12-21 08:53:09 +01:00
Zae e957f7aeb0 Fix BaseButton's localization for tooltip with shortcut 2021-12-21 01:08:37 +08:00
jmb462 f491b43edd Fix wrong ColorPicker shape with GradientEdit 2021-12-20 18:00:11 +01:00
Rémi Verschelde deb30a4108
Merge pull request #52015 from mechPenSketch/expose_hotzones2
Expose connection hot zones in `GraphNode`
2021-12-15 20:23:07 +01:00
Rémi Verschelde e8011be6f5
Merge pull request #55729 from cdemirer/fix-script-editor-unexpected-scroll-upon-resize 2021-12-12 20:54:53 +01:00
Yuri Roubinsky 526390c048 Fix highlight for completion options match (rebased)
Co-authored-by: Gustav Andersson <gvekan@users.noreply.github.com>
2021-12-12 10:39:49 +03:00
mechPenSketch 0449b30bbc Expose connection hot zones in GraphNode 2021-12-12 15:20:40 +08:00
cdemirer a361236526 Fix unexpected scroll on resize + consistent return value 2021-12-11 10:03:24 +08:00
kobewi 1ff9ddeb27 Fix wrong internal children usage in BoxContainer 2021-12-10 18:01:44 +01:00
kleonc 67dd4f15ee Tree Don't consume mouse event by collapse arrow which isn't shown 2021-12-10 16:54:47 +01:00
Rémi Verschelde 7e32a27879
Merge pull request #55739 from Paulb23/text-edit-base-performance 2021-12-10 09:46:15 +01:00
Rémi Verschelde bdf8340e59
Merge pull request #43181 from nathanfranke/string-empty
Replace String comparisons with "", String() to is_empty()
2021-12-10 08:56:31 +01:00
Haoyu Qiu 753ae7403f Add drag start/end signals for Slider 2021-12-10 11:19:10 +08:00
FelipeMatoba 29178d3564 Increased time delay on selection when opening a popup 2021-12-09 16:44:56 -03:00
Nathan Franke 49403cbfa0
Replace String comparisons with "", String() to is_empty()
Also:
- Adds two stress tests to test_string.h
- Changes to .empty() on std::strings
2021-12-09 04:48:38 -06:00
Nathan Franke 41a20171eb
align to horizontal_alignment, valign to vertical_alignment, related 2021-12-09 01:38:46 -06:00
Paulb23 bfe2cd2f03 Optimise TextEdit base operations 2021-12-08 18:23:07 +00:00
kobewi 347e50f73b Improve PopupMenu doc about id and index 2021-12-08 13:02:42 +01:00
Rémi Verschelde 5cf178f3bf
Merge pull request #55694 from KoBeWi/scrollbar_modding_tools
ScrollContainer's scrollbar visibility is now enum
2021-12-08 09:16:57 +01:00
jmb462 083ff9a133 Fix bad mouse offset with Control::wrap_mouse() 2021-12-07 20:55:12 +01:00
kobewi 841a9ef820 ScrollContainer's scrollbar visibility is now enum 2021-12-07 18:27:12 +01:00
Rémi Verschelde 3ed2bd13ad
Merge pull request #55670 from akien-mga/rename-videoplayer 2021-12-07 09:24:35 +01:00
Aaron Franke 6eb7179f1c
Rename "items_count" property to "item_count" 2021-12-06 22:02:27 -06:00
Rémi Verschelde 7ac9ea75cc
Rename `VideoPlayer` to `VideoStreamPlayer` for consistency
It's a player for `VideoStream` resources, just like `AudioStreamPlayer` is a
player for `AudioStream` resources.

Closes https://github.com/godotengine/godot-proposals/issues/3624.
2021-12-06 19:01:28 +01:00
Rémi Verschelde 75ac048e4b
Merge pull request #55662 from KoBeWi/update_minimum_size_changed_to_update_minimum_size 2021-12-06 18:28:46 +01:00
jmb462 81efebb3a1
Fix bad popups offset in editor with single window off
Co-authored-by: Gil Arasa Verge <gilarasaverge@gmail.com>
Co-authored-by: Tomasz Chabora <kobewi4e@gmail.com>
2021-12-06 14:29:48 +01:00
kobewi ea7cc1dea9 Rename minimum_size_changed() method 2021-12-06 14:02:34 +01:00
bruvzg ad4408d413
Add different "visible characters" behavior modes. 2021-12-06 12:14:49 +02:00
kobewi 7f6ab0006d Bind column_titles_visible as property 2021-12-05 02:55:38 +01:00
Paulb23 f9b66da748 Fixed TextEdit underline draw pos 2021-12-03 16:56:01 +00:00
ConteZero 0699941f07 Add drag and drop to TextEdit 2021-12-02 22:00:07 +01:00
Rémi Verschelde 892a5a72cd
Merge pull request #55474 from akien-mga/copy-operators-no-reference 2021-12-02 17:34:45 +01:00
Yuri Sizov c33f407d27 Allow scrolling theme preview when the control picker is active 2021-12-02 17:57:53 +03:00
Michael Alexsander ec4f4c6cda Rename all methods that return `ScrollBar` nodes to `get_*_scroll_bar()` 2021-11-30 13:46:36 -03:00
Rémi Verschelde 7da392bcc5
Don't return reference on copy assignment operators
We prefer to prevent using chained assignment (`T a = b = c = T();`) as this
can lead to confusing code and subtle bugs.

According to https://en.wikipedia.org/wiki/Assignment_operator_(C%2B%2B), C++
allows any arbitrary return type, so this is standard compliant.

This could be re-assessed if/when we have an actual need for a behavior more
akin to that of the C++ STL, for now this PR simply changes a handful of
cases which were inconsistent with the rest of the codebase (`void` return
type was already the most common case prior to this commit).
2021-11-30 16:26:29 +01:00
ator-dev 8c2b7ea537 Prevent hidden tab close buttons from intercepting input [4.0] 2021-11-29 20:25:42 +00:00
Red Headphone 8a6c6d5329 progress_offset now added to reference cross draw function 2021-11-28 17:59:00 +05:30
Rémi Verschelde 3a0a935fcc
Merge pull request #54345 from floppyhammer/fix-circular-texture-progress
Fix nine patch of circular TextureProgressBar
2021-11-26 08:23:45 +01:00
Rémi Verschelde 1b89296fad
Merge pull request #55227 from ator-dev/fix-code-folding 2021-11-25 22:21:46 +01:00
ator-dev bac0a035c9 Fix code folding when end of block is unindented delimiter 2021-11-24 22:43:06 +00:00
Lightning_A e078f970db Rename `remove()` to `remove_at()` when removing by index 2021-11-23 18:58:57 -07:00
Rémi Verschelde 76aa1d0a43
Merge pull request #55151 from Chaosus/control_reset_size 2021-11-22 16:22:57 +01:00
Yuri Roubinsky eabf8f5edf Added `reset_size` method to `Control` and `Window` classes 2021-11-22 16:55:21 +03:00
Yuri Sizov e85e6ec7fc Add methods to get position from column and line in TextEdit 2021-11-22 15:13:13 +03:00
Rémi Verschelde 78dbe4e3e4
Merge pull request #54339 from ConteZero/line_edit_drag_and_drop 2021-11-22 12:20:01 +01:00
Rémi Verschelde 395558c021
Merge pull request #54462 from Paulb23/the-last-hidden-line 2021-11-18 15:56:06 +01:00
Rémi Verschelde bae15cb90e
Merge pull request #53602 from KoBeWi/mountain_range 2021-11-18 13:02:02 +01:00
Paulb23 2a302f7097 Fix TextEdit mouse interactions when the last line is hidden 2021-11-17 18:29:19 +00:00
Yuri Roubinsky 8be89357ce Fix `ColorPicker` inverted input on color circle 2021-11-17 20:33:17 +03:00
Hugo Locurcio 8fb7e622a6
Rename built-in `SGN()` macro to `SIGN()`
This matches the name of the GDScript function (except it's uppercase
here).
2021-11-16 20:40:49 +01:00
Rémi Verschelde 098e3cf8f7
Fix style issue after #54148 2021-11-16 14:27:44 +01:00
Rémi Verschelde 1edbe4f3c1
Merge pull request #54148 from miraz12/fix-scrollContrainer-notification-crash 2021-11-16 14:13:21 +01:00
ConteZero 2b1787b446 Fix drag and drop on LineEdit 2021-11-15 17:10:56 +01:00
Umang Kalra 840225bdb1 Making nodes enclosed within comment move with the comment node 2021-11-15 10:59:07 +05:30
Aaron Franke 3c0fdcc8ac
Use "enum class" for input enums 2021-11-12 15:37:54 -06:00
Rémi Verschelde 88c4380737
Modules: Make sure to include modules_enabled.gen.h where needed 2021-11-12 13:42:58 +01:00
Rémi Verschelde 1aa3c8419b
Merge pull request #54869 from akien-mga/string-remove-erase 2021-11-11 13:00:21 +01:00
Rémi Verschelde 2beaae4b6f
String: Remove `erase` method, bindings can't mutate String 2021-11-11 11:23:32 +01:00
bruvzg 76d42c7b32 Fix RichTextLabel selection copy with table cells. 2021-11-11 12:06:51 +02:00
Rémi Verschelde b46a42b689
Merge pull request #54204 from Ev1lbl0w/bugfix-textedit_selection_mode_crash 2021-11-10 19:03:33 +01:00
Ev1lbl0w 1843662510
Fix crash with indexing array with bad values 2021-11-10 12:44:40 +00:00
Rémi Verschelde d9a74fd07f
Merge pull request #54372 from bruvzg/text_edit_ui 2021-11-09 00:13:25 +01:00
Rémi Verschelde 6c4737341d
Merge pull request #54649 from bruvzg/shadows 2021-11-09 00:07:41 +01:00
Hendrik Brucker ed0337c0b9 Several Gradient improvements 2021-11-08 19:11:36 +01:00
bruvzg 5f9cd9ccbc Fix Label and RichTextLabale text shadows and shadow outlines. 2021-11-06 10:22:09 +02:00
Rémi Verschelde 3abb5a9035
Add missing argument names for bindings in GDExtension 2021-11-04 15:27:23 +01:00
Hugo Locurcio c012fbc8b2
Rename `PROPERTY_USAGE_NOEDITOR` to `PROPERTY_USAGE_NO_EDITOR`
This is consistent with other constants that include `NO`,
such as `PROPERTY_HINT_COLOR_NO_ALPHA`.
2021-11-03 23:06:17 +01:00
Rémi Verschelde f00ba792b3
Merge pull request #54533 from rafallus/menubutton_items 2021-11-03 17:33:11 +01:00
Rémi Verschelde a2803f3d86
Merge pull request #54072 from KoBeWi/hrcr_is_ded 2021-11-03 17:31:48 +01:00
rafallus 4554892223 Implement inspector property array for `PopupMenu` and `MenuButton` 2021-11-03 09:32:29 -06:00
floppyhammer f9b1ce0922 Fix nine patch of circular TextureProgressBar 2021-11-01 14:14:49 +08:00
HungryProton 5869d053f9 Fix popup trying to emit a non existing signal when closed 2021-10-31 23:21:31 +01:00
bruvzg 3f33e1d7d6 Add functions for getting name and font style from dynamic and bitmap fonts.
Add font selection toolbar editor plugin.
2021-10-31 12:40:58 +02:00
Hendrik Brucker 231285b6fb Fix CheckButton and CheckBox font hover pressed color
Co-authored-by: Kjetil Fosse <kjetil.fosse@outlook.com>
2021-10-31 02:10:45 +02:00
Hugo Locurcio 2ad6e11b78
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.
2021-10-29 20:16:45 +02:00
Max Hilbrunner 343414cba5
Merge pull request #54328 from YeldhamDev/tabbar_close_signal_rename
Rename `TabBar`'s `tab_closed` signal to `tab_close_pressed`
2021-10-29 13:21:09 +02:00
Michael Alexsander 4c563a51c3 Rename `TabBar`'s `tab_closed` signal to `tab_close_pressed` 2021-10-28 13:10:44 -03:00
Rémi Verschelde 3b11e33a09
clang-format: Disable alignment of operands, too unreliable
Sets `AlignOperands` to `DontAlign`.

`clang-format` developers seem to mostly care about space-based indentation and
every other version of clang-format breaks the bad mismatch of tabs and spaces
that it seems to use for operand alignment. So it's better without, so that it
respects our two-tabs `ContinuationIndentWidth`.
2021-10-28 15:19:35 +02:00
LeaoLuciano f21b5e4d2f Fix memory leak in RichTextLabel.remove_line 2021-10-28 07:51:48 -03:00
Rémi Verschelde 6d930bd270
Merge pull request #54342 from groud/remove_item_list_editor 2021-10-28 11:52:47 +02:00
Gilles Roudière a51f92273a Remove ItemList editor and replace it by a property array 2021-10-28 10:16:51 +02:00
kobewi de4f29f458 Remove node_hrcr hack 2021-10-28 01:43:34 +02:00
Rémi Verschelde 3e26ad3a5f
Merge pull request #54320 from YeldhamDev/tabbar_close_last_fix 2021-10-27 22:24:43 +02:00
Michael Alexsander 96fdb030ec Fix uninteractable singular tab in `TabBar` 2021-10-27 16:13:04 -03:00
Rémi Verschelde 21529c90f8
Merge pull request #54166 from ConteZero/unique_selection 2021-10-27 20:50:54 +02:00
ConteZero fbee4efa5f Add option to make selection unique 2021-10-27 19:45:52 +02:00
Yuri Sizov 12838bd99d Add focus font color to Button and derivatives 2021-10-26 17:42:40 +03:00
bruvzg ebbc25e89c Ignore empty Font resources as theme override.
Add range hint to font_size properties.
Remove excessive `base_size` Font property.
2021-10-25 14:05:37 +03:00
Rémi Verschelde b2ab5cb504
Merge pull request #54045 from ConteZero/primary_clipboard_linux_fix_warning 2021-10-23 19:13:34 +02:00
Rémi Verschelde e0f887accd
Merge pull request #54120 from zaevi/fix_null-ref_crashes 2021-10-23 19:00:12 +02:00
Rémi Verschelde e12fe670e6
Merge pull request #54145 from zedutch/Fix-tree-notification-crash 2021-10-23 18:33:12 +02:00
ConteZero 8c48b4a7e0 Fix primary clipboard warning 2021-10-23 15:50:01 +02:00
Anton Christoffersson ee81979f90 Fixed crash in `ScrollContainer` _notification 2021-10-23 14:03:26 +02:00
Robin Arys 5c25497aa2 Fix possible crash when calling Tree.notification from _ready 2021-10-23 12:02:09 +02:00
Haoyu Qiu 4f8dfa1667 Make RichTextLabel's parse_bbcode and append_text return void 2021-10-23 14:25:39 +08:00
Zae 924c2078da Fix unexpected crashes in `notification` 2021-10-23 13:01:52 +08:00
Rémi Verschelde 9f7218eb69
Merge pull request #54088 from madmiraal/remove-unimplemented-methods 2021-10-22 12:59:32 +02:00
Marcel Admiraal 87a4ba492e Remove unimplemented methods 2021-10-21 18:44:25 +01:00
Rémi Verschelde 0264efe895
Merge pull request #54035 from Calinou/ctl-context-dialog-use-title-case
Use TitleCase for CTL dialog menu options
2021-10-21 19:32:35 +02:00
Hugo Locurcio abbc8facc6
Use TitleCase for CTL dialog menu options
This is more consistent with other actions exposed in the dialog.
2021-10-21 17:47:39 +02:00
Robin Arys 2203670ccc Fix Tabs crash where it still tries to detect the clicked tab even if there are none 2021-10-20 18:26:10 +02:00
Rémi Verschelde 8748247d6f
Merge pull request #53702 from ConteZero/primary_clipboard_linux 2021-10-20 16:35:04 +02:00
Rémi Verschelde c942d567eb
Merge pull request #53926 from YeldhamDev/i_am_tabbar_now 2021-10-20 15:42:41 +02:00
Murilo Gonçalves 94cba835eb Fix: typo in TextParagraph class and docs 2021-10-19 16:38:58 -03:00
Michael Alexsander 67acb7de6e Rename `Tabs` to `TabBar` 2021-10-19 11:37:31 -03:00
Gilles Roudière 1a95f893c4 Implement TileMap patterns palette 2021-10-19 11:57:37 +02:00
ConteZero 838c9d37b4 Added primary clipboard for Linux 2021-10-18 14:01:06 +02:00
Haoyu Qiu 0a381137bc Fix crash when executing CodeEdit._main_gutter_draw_callback 2021-10-18 19:26:47 +08:00
Ricardo Subtil 88985cbf3a Fix null crash with TextEdit 2021-10-16 18:24:46 +01:00
Rémi Verschelde ae74e78909
Remove WebM support (and deps libvpx and opus)
We've had many issues with WebM support and specifically the libvpx library
over the years, mostly due to its poor integration in Godot's buildsystem,
but without anyone really interested in improving this state.

With the new GDExtensions in Godot 4.0, we intend to move video decoding to
first-party extensions, and this would likely be done using something like
libvlc to expose more codecs.

Removing the `webm` module means we can remove libsimplewebm, libvpx and
opus, which we were only used for that purpose. Both libvpx and opus were
fairly complex pieces of the buildsystem, so this is a nice cleanup.

This also removes the compile-time dependency on `yasm`.

Fixes lots of compilation or non-working WebM issues which will be linked
in the PR.
2021-10-15 12:09:11 +02:00
floppyhammer a238816f0b Fix bilinear TextureProgressBar with nine patch enabled 2021-10-14 11:19:32 +08:00
bruvzg 19a0982d60 Fix inline IME input not working in the empty LineEdit with the placeholder. 2021-10-11 08:21:34 +03:00
kobewi 81c0fe836c Fix Range property dependencies 2021-10-09 17:36:38 +02:00
Rémi Verschelde 5ae569560d
Fix missing argument names in bindings
While at it, tweak some boolean setters to use `p_enabled` for the bool.

Also renames `draw_minimap()` to `set_draw_minimap()`.
2021-10-09 00:20:10 +02:00
Michael Alexsander 3c5103ac1d Fix invisible tabs not being ignored in `Tabs` 2021-10-07 22:40:11 -03:00
Hugo Locurcio bcf4a56c74
Replace references to VisualServer in code comments with RenderingServer
VisualServer no longer exists in the `master` branch.
2021-10-07 15:49:41 +02:00
Rémi Verschelde 010e17b44f
Merge pull request #53476 from Paulb23/breakpoint-move-up-fix 2021-10-06 16:25:17 +02:00
Paulb23 0caab00d66 Fix breakpointed_lines out of sync when removing lines above 2021-10-06 14:23:37 +01:00
Rémi Verschelde 36de097577
Merge pull request #53460 from timothyqiu/tooltip-request-func 2021-10-06 10:11:46 +02:00
Haoyu Qiu 45e943f4fe Fix crash when tooltip_request_func object is freed 2021-10-06 15:00:31 +08:00
Rémi Verschelde 9962c59dc5
Merge pull request #53446 from nekomatata/container-pre-sort-children 2021-10-06 08:25:06 +02:00
PouleyKetchoupp 1c0ebc85dd Add pre-sort signal and notification in Container
Allows processing before children are sorted, useful for custom
containers inherited from existing ones like BoxContainer.
2021-10-05 13:09:01 -07:00
Eric M ced7d51e23
Fix the "END" key behaving like "PAGE_DOWN" in code completion.
Before: behaved like page down.
After: goes to last item.
2021-10-06 01:28:29 +10:00
Rémi Verschelde adc9500e54
Merge pull request #53330 from jmb462/fix-bad-caret-position-after-ctrl-x
Fix caret position and viewport centering after deleting line (Ctrl-X)
2021-10-04 18:18:32 +02:00
Rémi Verschelde bb201c5887
Merge pull request #53303 from akien-mga/53295-gdscript-completion-quote-style 2021-10-04 17:17:27 +02:00
jmb462 fcb102a826 Fix caret position and viewport centering after deleting line (Ctrl-X) 2021-10-04 17:11:20 +02:00
Rémi Verschelde 11c7bac1ed
Merge pull request #53392 from YeldhamDev/tabs_offset_fix 2021-10-04 17:07:35 +02:00
Rémi Verschelde b85dfd990e
GDScript completion: Handle quote style ad-hoc to remove editor dependency
`core` and `scene` shouldn't depend on `editor`, so they can't query this style
setting in `get_argument_options`. But we can handle it after the fact in
GDScript's completion code.

Also cleans up a couple extra unused invalid includes in `core`.
2021-10-04 16:16:05 +02:00
Michael Alexsander 0dd65fff3b Fix `Tabs` offset overreaching when scrolling fast 2021-10-04 10:37:53 -03:00
Yuri Sizov bdbb7b3999 Remove EDSCALE dependency from /scene/gui 2021-10-04 15:25:08 +03:00
Yuri Sizov 4a42a66cd9 Add the base scale factor to the Theme resource 2021-10-04 15:25:07 +03:00
Jean-Michel Bernard 9c375170e4 Fix deleting selection at the first line do not work with backspace 2021-10-01 20:23:52 +02:00
bruvzg 0c0b5c84b0 Implement TextServer GDExtension interface, remove TextServer GDNative interface. 2021-10-01 15:13:29 +03:00
Eric M 4baddc1126 Allow non-control Nodes to handle drag forwarding (e.g. Windows) 2021-10-01 18:03:51 +10:00
Rémi Verschelde a28f44fa53
Merge pull request #53277 from YeldhamDev/tabs_renaming 2021-10-01 07:52:29 +02:00
Michael Alexsander 663e480f24 Rename some elements of `Tabs` 2021-09-30 20:18:23 -03:00
Lightning_A c63b18507d Use range iterators for `Map` 2021-09-30 15:09:12 -06:00
Rémi Verschelde a662ca66aa
Merge pull request #53112 from EricEzaM/better-breakpoint-gutter 2021-09-30 14:57:23 +02:00
Eric M e0f8410d16 Improved breakpoint gutter for CodeEdit.
Added preview of breakpoint placement on hover. Added override of icon for the Editor to use an SVG so it is no longer blurry.
2021-09-30 22:15:47 +10:00
Paulb23 7926d75d02 Fix TextOp setting to none when typing 2021-09-29 17:34:44 +01:00
Rémi Verschelde 6c0f44ca7e
Merge pull request #53000 from Chaosus/lineedit_expose_selection_methods 2021-09-29 10:31:37 +02:00
Rémi Verschelde ad635567b1
Merge pull request #53189 from AnilBK/use-class-specific-funcs 2021-09-29 07:40:52 +02:00
Anilforextra fc9767abb1 Use functions defined in the their classes. 2021-09-29 09:36:34 +05:45
jmb462 7fabbe2760 Fix tree title column size minimum width 2021-09-28 14:54:48 +02:00
Rémi Verschelde c89c2878ef
Merge pull request #53001 from floppyhammer/fix-tree-item-width 2021-09-28 10:53:56 +02:00
jmb462 3f0fe0b8a3 Fix LineEdit and TextEdit double-click and triple-click selection 2021-09-26 19:56:48 +02:00
Rémi Verschelde 73668c59aa
Merge pull request #52824 from e8newallm/52680
Updated Tabs to not update excessively
2021-09-26 19:35:58 +02:00
Matthew Newall 082f924566 Updated Tabs to not update excessively 2021-09-26 17:05:44 +00:00
floppyhammer 53efc55409 Fix minimum size of TreeItem 2021-09-26 17:02:54 +08:00
Rémi Verschelde 9293c76636
Merge pull request #53049 from AnilBK/dont-construct-2 2021-09-25 12:26:08 +02:00
Anilforextra cdd912c48e Construct values only when necessary. 2021-09-25 14:46:45 +05:45
Yuri Sizov 873443756d Correctly calculate position of the folding arrow in Tree 2021-09-25 02:01:14 +03:00
Rémi Verschelde 994c1201c1
Merge pull request #52996 from YeldhamDev/im_the_invisible_tab 2021-09-25 00:11:51 +02:00
Rémi Verschelde 46cc0af5c5
Merge pull request #53009 from Chaosus/fix_completion_results 2021-09-24 21:42:38 +02:00
Rémi Verschelde 01d505e507
Merge pull request #52993 from YeldhamDev/tabs_rename_fix 2021-09-24 21:40:23 +02:00
Michael Alexsander edf3d225ce Fix tab renaming not updating its size in `Tabs` 2021-09-24 10:44:04 -03:00
Yuri Roubinsky e70a0d950a Fix incorrect offsets of tooltip content in `CodeEdit`
Fix incorrect offsets of tooltip content in `CodeEdit`
2021-09-24 16:33:39 +03:00
Rémi Verschelde 32ab77ef8f
Merge pull request #52430 from AnilBK/vector2-replacements 2021-09-24 13:04:42 +02:00
Rémi Verschelde b8a6eb6d9b
Merge pull request #38414 from theoway/Fix-GraphNode_offset_update 2021-09-24 13:01:20 +02:00
Yuri Roubinsky 4e0552a4ff Add selection getter methods to `LineEdit` 2021-09-24 11:30:58 +03:00
Michael Alexsander 7ce02b642e Expose `TabContainer`'s tab hidding for scripts 2021-09-24 01:26:59 -03:00
Anilforextra cc51b045da Construct values only when necessary. 2021-09-23 22:26:07 +05:45
Rémi Verschelde 88b347dc27
Merge pull request #51920 from jmb462/missing-sname-macro-optimization-in-some-functions 2021-09-23 13:14:20 +02:00
Umang Kalra 9aa0b3c46e Fixes sync issue between position_offset and rect_position in GraphNode
Bleh
2021-09-23 10:53:45 +05:30
Eric M baba971c81 Added option for spinbox to update it's value on line edit 'text_changed' rather than 'text_entered' 2021-09-21 23:24:33 +10:00
bruvzg c931906af7 Add flag to connected grapheme. Apply RTL displacement FX only to the whole connected grapheme. Pass more glyph info to the custom RTL FX. 2021-09-21 13:51:38 +03:00
bruvzg 99dc2ec9e1 Fix RTL layout Label text, VBox child, 3D node editor controls, and popup menu alignment. 2021-09-21 10:35:23 +03:00
Rémi Verschelde 91294b4a21
Merge pull request #52519 from e8newallm/52497-Remove_Unused_Variable
Removed unused Ref<Font> font variables
2021-09-20 12:35:25 +02:00
Rémi Verschelde 1e93e3fc49
Merge pull request #52848 from Paulb23/code-edit-tests 2021-09-20 11:43:21 +02:00
Paulb23 35264d5782 Change completion prefixes to single char and unnecessary ui_cancel accept_event 2021-09-20 09:42:39 +01:00
bruvzg 9d0e3cff09 Fix `Label` and `RichTextLabel` `visible_characters` and `percent_visible` methods. 2021-09-20 09:35:24 +03:00
Matthew Newall 3951a05535 Corrected directional properties to be ordered Left->Top->Right->Bottom 2021-09-19 03:06:36 +00:00
Rémi Verschelde b334560f05
Merge pull request #49376 from menip/OptionButtonFix 2021-09-17 16:00:42 +02:00
HaSa1002 053b3b946c
Remove bbcode_text from RichTextLabel
Also renames:
 - append_bbcode -> append_text
 - get_bbcode -> get_text
 - set_bbcode -> set_text
 - get_text -> get_parsed_text

Property text is:
set_text
get_text
2021-09-16 22:27:08 +02:00
Rémi Verschelde ed9fd36276
Merge pull request #52672 from KoBeWi/GraphError
Fix error when moving graph node
2021-09-15 13:22:54 +02:00
Rémi Verschelde 0a8e137c61
Merge pull request #52313 from groud/cache_tree_item_size 2021-09-15 13:21:56 +02:00
Rémi Verschelde 39e35ab6ee
Merge pull request #52353 from williamd67/documentation-view-scroll-to-end
Documentation view scroll to end
2021-09-14 22:25:58 +02:00
Rémi Verschelde 72c813630f
Merge pull request #52583 from e8newallm/52360
Removed updates that caused unnecessary window updates
2021-09-14 20:54:05 +02:00
kobewi 645dc40cba Fix error when moving graph node 2021-09-14 16:09:33 +02:00
Rémi Verschelde d039f4af14
Merge pull request #52185 from Paulb23/nested-complex-ops
Allow nested complex ops in TextEdit
2021-09-14 11:57:42 +02:00
Matthew Newall 09ea88572f Removed updates that caused unnecessary window updates 2021-09-13 22:08:14 +00:00
Rémi Verschelde 0b60b9f75c
Merge pull request #52443 from Paulb23/code-edit-indext-fixes
Fix brace placement with space auto indent
2021-09-13 21:52:38 +02:00
Rémi Verschelde 655dec581c
Merge pull request #52346 from Paulb23/string-tracking-fixes
Fix getting deliminator start over empty lines and blank start keys
2021-09-13 21:52:28 +02:00
Rémi Verschelde 2a1807b12d
Merge pull request #52517 from Paulb23/block-comment-folding
Fix block deliminator not-folding at end of file
2021-09-13 21:51:41 +02:00
Rémi Verschelde 70ba366743
Merge pull request #50375 from Paulb23/code_edit_unit_tests 2021-09-13 21:51:20 +02:00
Tomasz Chabora e1cc70309c Fix error when click edge of the tree icon 2021-09-13 18:03:03 +02:00
Hugo Locurcio f85426e8ad
Merge pull request #51805 from skysphr/scrollbar-icons-pressed
Added increment_pressed and decrement_pressed icons to scrollbars
2021-09-13 14:57:21 +02:00
Rémi Verschelde c7455d9d42
Merge pull request #52012 from bruvzg/fix_label_outline 2021-09-13 14:23:52 +02:00
Juan Linietsky 729461b2a4
Merge pull request #51158 from YeldhamDev/potgen_enhancements
Make some enhancements to the POT generation
2021-09-09 20:21:29 -03:00
Matthew Newall 02cbf94022 Removed unused Ref<Font> font variables 2021-09-09 19:47:16 +00:00
Paulb23 d647ba3540 Fix block deliminator not-folding at end of file 2021-09-09 19:04:08 +01:00
Gilles Roudière 321ee7bda1
Merge pull request #52106 from Paulb23/text-edit-optimisation
Optimise TextEdit get line height and width
2021-09-08 14:04:41 +02:00
Max Hilbrunner 43c896ac6a
Merge pull request #52082 from williamd67/fix-custom-effects-dropdown-menu
RichTextLabel returns member (Array) for custom effects  for Editor
2021-09-07 21:52:05 +02:00
Max Hilbrunner 3f6a01e848
Merge pull request #52145 from LeaoLuciano/linkbutton-translation-4.0
LinkButton's text now is automatically translated
2021-09-07 21:43:43 +02:00
Max Hilbrunner 99ffbbfc44
Merge pull request #52339 from jmb462/fix-fold-function-with-comment-fail
Fix wrong folding behaviour of last block if containing comment
2021-09-07 20:40:33 +02:00
Max Hilbrunner da31873e2c
Merge pull request #52359 from williamd67/fix-autocomplete-merge
Fix incorrectly removing two characters by auto brace
2021-09-07 20:37:39 +02:00
Max Hilbrunner 06b4a48444
Merge pull request #52436 from daniel-mcclintock/fix-out-of-bounds-completion-crash
Fix crash during completion lookback
2021-09-07 19:25:40 +02:00
Gilles Roudière 88c3e3180a
Merge pull request #52050 from nobuyukinyuu/bind-get-tab-idx-at-point-40
Bind TabContainer::get_tab_idx_at_point() to ClassDB
2021-09-07 11:09:35 +02:00
Anilforextra a1f616dcfc Use builtin Vector2 functions for calculation of angles.
.
2021-09-07 08:30:26 +05:45
Paulb23 9785167b39 Fix brace placement with space auto indent 2021-09-06 17:10:39 +01:00
Gilles Roudière 1f97d57384
Merge pull request #35859 from Calinou/minimap-add-hover-pressed-feedback
Add visual feedback when hovering or dragging the code minimap grabber
2021-09-06 16:22:36 +02:00
daniel-mcclintock 8a8c172b93 Fix crash during completion lookback 2021-09-06 23:10:06 +10:00
Awkor 3aa2a7fc18 Prevent editing properties managed by parent container 2021-09-05 23:23:53 +02:00
jmb462 752e2bcee0 Fix comment causes content of folded methods to not hide 2021-09-05 12:30:27 +02:00
Silc 'Tokage' Renew facf8f1883 Apply set_read_only() to child classes of EditorProperty elements 2021-09-05 18:22:17 +09:00
Hugo Locurcio c8949f21e7
Add visual feedback when hovering or dragging the code minimap grabber
This makes it more obvious that the minimap grabber can be dragged
to scroll.
2021-09-04 02:25:22 +02:00
William Deurwaarder b92347c220 Fix incorrectly removing two characters by auto brace
In some situations when there were no braces auto brace still removed two
characters.  This has been fixed by adding a test that a brace is found.
2021-09-03 00:33:50 +02:00
William Deurwaarder b54b0bc580 Fix documentation viewer to scroll to end
Extra `line separation` height was not taken into account when the offset for
the different paragraphs (lines) was calculated.
2021-09-02 22:11:14 +02:00
Paulb23 dd0988f027 Fix getting deliminator start over empty lines and blank start keys 2021-09-02 18:22:49 +01:00
Michael Alexsander ee4b0108e0 Make some enhancements to the POT generation 2021-09-02 11:12:54 -03:00
Paulb23 ce064348fa Add CodeEdit breakpoint unit tests 2021-09-01 16:46:04 +01:00
Gilles Roudière ace19bd4c6 Cache TreeItem minimum size for performance. 2021-09-01 16:26:41 +02:00
Gilles Roudière c97afc033f
Merge pull request #38722 from KoBeWi/proposition
Add offset for TextureProgress progress texture
2021-09-01 16:20:05 +02:00
kobewi e78ee616f7 Add offset for TextureProgress progress texture 2021-09-01 14:39:08 +02:00
kleonc 3311a5b593 TabContainer Fix drawing current tab when it's disabled 2021-09-01 03:59:45 +02:00
menip 4f4c9a5f57 Make Color Picker, Menu Button, Option Button consider camera position scale for popup position. 2021-08-30 08:42:33 -07:00
Juan Linietsky 72bf79186e
Merge pull request #30391 from KoBeWi/hiding_children
Add support for internal nodes
2021-08-29 19:36:30 -03:00
nobuyuki_nyuu 65d83cc99b Bind TabContainer::get_tab_idx_at_point() to ClassDB 2021-08-29 09:10:44 -05:00
Michael Alexsander 565ba91d28
Merge pull request #51906 from requizm/fix/49077
Fix tooltips don't appear for PopupMenus
2021-08-28 15:43:02 +00:00
Paulb23 c5d7ae7920 Allow nested complex ops in TextEdit 2021-08-28 12:49:55 +01:00
Paulb23 de009cb5ae Optimise TextEdit get height and width 2021-08-28 11:27:23 +01:00
kobewi a913ae8d56 Add support for internal nodes 2021-08-28 02:07:23 +02:00
LeaoLuciano c50c5b9bef LinkButton's text now is automatically translated 2021-08-27 20:11:58 -03:00
Max Hilbrunner 701195937d
Merge pull request #52096 from kleonc/tree-item-drag-drop-drawing
Tree Fix line rendering when drag and dropping TreeItem
2021-08-27 20:55:37 +02:00
Ellen Poe 3598d300cb Do all audio mixing in the AudioServer 2021-08-27 10:41:57 -07:00
bruvzg 4c3f7d1290 Makes FontData importable resource.
Adds multi-channel SDF font texture generation and rendering support.
Adds per-font oversampling support.
Adds FontData import plugins (for dynamic fonts, BMFonts and monospaced image fonts), font texture cache pre-generation and loading.
Adds BMFont binary format and outline support.
2021-08-27 15:43:18 +03:00
Haoyu Qiu eba7265a1c Fix misspelled "overriden"
In recent GDVIRTUAL PR and SkeletonModification3DJiggle doc.
2021-08-26 01:44:01 +08:00
kleonc d35ef5fab0 Tree Fix line rendering when drag and dropping TreeItem 2021-08-25 13:29:54 +02:00
JFonS c334989e00
Merge pull request #51821 from Calinou/builtin-shaders-add-comments
Add comments at the top of each built-in shader to ease debugging
2021-08-25 11:37:57 +02:00
William Deurwaarder d875706e01 RichTextLabel returns member (Array) for custom effects for Editor
As RichTextLabel returned a copy of the member (Vector) the editor was notified
that the value had changed which caused the dropdown menu to be immediately
closed after opening.

The fix is to return the member (Array) in stead of a copy which is the same
instance and thereby does not notify the editor that the value has changed.
2021-08-24 22:02:24 +02:00
Haoyu Qiu d12cceadd2 Make RichTextLabel honour default cursor shape property 2021-08-24 22:07:42 +08:00
Michael Alexsander 88db541705
Merge pull request #51947 from AnilBK/redundant-assignments
[cppcheck] Remove some redundant assignments.
2021-08-23 13:23:45 +00:00
bruvzg 54345f11fb Fix label outline overlaps. 2021-08-23 14:13:13 +03:00
reduz 5cecdfa8af Entirely removes BIND_VMETHOD in favor of GDVIRTUAL
* `_gui_input`, `_input`, `_unhandled_input` and `_unhandled_key_input` are now regular C++ virutal functions.
* Everything else converted to GDVIRTUAL
* BIND_VMETHOD is gone, always use the new syntax from now on.

Creating `_gui_input` method and using the binder to register events will no longer work, simply override the virtual function now.
2021-08-23 08:10:13 -03:00
Jummit 856d0b52e5 Fix GraphEdit connection colors 2021-08-22 21:09:16 +02:00
Michael Alexsander 2f8a58ad46
Merge pull request #51886 from Geometror/fix-layout-editor-file-dialog
Fix ItemList layout (+EditorFileDialog)
2021-08-22 16:47:11 +00:00
K. S. Ernest (iFire) Lee 7cbf5a547f
Merge pull request #51700 from Geometror/fix-color-picker
Reimplement ColorPicker presets
2021-08-22 08:23:09 -07:00
K. S. Ernest (iFire) Lee 51ec46e10f
Merge pull request #51975 from Jummit/consistent-graphedit-connections
Make GraphEdit connections consistent on zoom
2021-08-22 07:37:26 -07:00
reduz 3682978aee Replace BIND_VMETHOD by new GDVIRTUAL syntax
* New syntax is type safe.
* New syntax allows for type safe virtuals in native extensions.
* New syntax permits extremely fast calling.

Note: Everything was replaced where possible except for `_gui_input` `_input` and `_unhandled_input`.
These will require API rework on a separate PR as they work different than the rest of the functions.

Added a new method flag METHOD_FLAG_OBJECT_CORE, used internally. Allows to not dump the core virtuals like `_notification` to the json API, since each language will implement those as it is best fits.
2021-08-22 08:23:58 -03:00
Jummit 7c1181116f Make GraphEdit connections consistent on zoom 2021-08-22 11:08:37 +02:00
K. S. Ernest (iFire) Lee 51800eebc6
Merge pull request #51965 from theoway/fix_node_arranger_origin_bug
Fixes position offset of node groups set by arrange_nodes() in GraphEdit
2021-08-22 01:52:30 -07:00
Umang Kalra aee3de7b79 Fixes position offset of node groups set by arrange_nodes() in GraphEdit 2021-08-22 03:57:58 +05:30
Jummit e9ef6f9815 Refactor GraphEdit connections
Remove duplicate bezier code and use Curve instead.
Add an overridable method for retrieving the points of a connection line, which
makes it posible to create custom connections lines.
2021-08-21 22:15:26 +02:00
Anilforextra c86db8b710 Remove redundant assignments.
Use used_in_transfer instead of used_in_compute twice.
2021-08-21 19:20:07 +05:45
Hendrik Brucker 72e49eadec Fix ItemList layout (+EditorFileDialog) 2021-08-21 00:22:09 +02:00
Menderes 31face36e7 Fix line_separation working incorrectly in find_click of RichTextLabel
Apply suggestions from code review

Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2021-08-21 00:59:44 +03:00
Hugo Locurcio 2daef0400a
Merge pull request #51866 from requizm/fix/49455
Fix `line_separation` working incorrectly in `RichTextLabel`
2021-08-20 23:24:42 +02:00
requizm 6f3d8fa228 Fix tooltip message working incorrectly in PopupMenu
fix
2021-08-20 23:06:00 +03:00
requizm 39b90802d0 Fix line_separation constant working incorrectly in RichTextLabel 2021-08-20 23:03:13 +03:00
jmb462 54de7114c5 Add missing SNAME macro optimization for StringName in some functions 2021-08-20 14:50:24 +02:00
Rémi Verschelde 93dac1c7db
Merge pull request #51804 from ThreeRhinosInAnElephantCostume/fixundoredo 2021-08-19 17:49:01 +02:00
ThreeRhinosInAnElephantCostume 0aa13ecd30 fixed popup_menu buttons getting triggered by lmb press instead of release. 2021-08-19 15:56:33 +02:00
Michael Alexsander 9819be7562 Minor tweaks/fixes for the Command Palette 2021-08-18 13:12:14 -03:00
Rémi Verschelde a031579286
Merge pull request #50752 from Phischermen/indeterminate_checkmark_api
Added icons and API for indeterminate checkmarks for the Tree class.
2021-08-18 10:31:06 +02:00
Hugo Locurcio a139e58f8c
Add comments at the top of each built-in shader to ease debugging
When a shader error is printed about a built-in shader, the origin
of the shader will now be recognizable immediately by looking at
the top of the printed shader code.
2021-08-18 03:09:22 +02:00
Hendrik Brucker ff9901f51e Reimplement ColorPicker presets 2021-08-18 02:09:48 +02:00
skysphr e27ab2708f Added increment_pressed and decrement_pressed icons to scrollbars 2021-08-17 22:09:29 +03:00
Haoyu Qiu 16c2d4ef22 Improve Undo/Redo menu items
* Make Undo/Redo menu items disabled when clicking it does nothing.
    * Context menu of `TextEdit`
    * Context menu of `LineEdit`
    * Editor's Scene menu
    * Script editor's Edit menu and context menu (for Script and Text)
* Make editor undo/redo log messages translatable.
* Mark `UndoRedo`'s `has_{un,re}do()` methods as `const`.
* Expose `TextEdit`'s `has_{un,re}do()` to scripts since `{un,re}do()` are already available.
2021-08-17 21:11:10 +08:00
Rémi Verschelde c4e03672e8
Merge pull request #51760 from requizm/fix/deleteallselection
Deletion occurs when all text is selected
2021-08-17 09:58:57 +02:00
requizm 37ad82a7f7 We can delete all text on TextEdit
While all text of TextEdit was selected, deletion with backspace did not occur. It can now be deleted.
2021-08-17 02:30:14 +03:00
Kevin Fischer 75866c81e7 Added icons and API for indeterminate checkmarks for the Tree class. 2021-08-16 10:13:06 -07:00
Rémi Verschelde cfdac0973c
Merge pull request #51698 from Paulb23/text-editor-settings
Reorganise text editor settings
2021-08-16 18:48:58 +02:00
Paulb23 bcfc591f86 Reorganise text editor settings 2021-08-16 17:18:49 +01:00
Haoyu Qiu 6ca476b406 Fix MenuButton not emitting about_to_popup signal 2021-08-16 20:53:10 +08:00
Vignesh1-art eb5b0d013f
Fixed crash executing TextEdit.new().set_draw_control_chars(true)
Fixes #51613.
2021-08-16 12:36:14 +02:00
Rémi Verschelde 2edc47caea
Merge pull request #51249 from kleonc/tab_container-fix-disconnecting-errors
TabContainer: Fix error on removing top-level Control child, Remove _get_tab method
2021-08-16 10:35:20 +02:00
Rémi Verschelde 966559c3bd
Merge pull request #51512 from Bhu1-V/PR/cmd-fix
command palette improvements
2021-08-15 16:01:49 +02:00
Bhuvan Vemula a0205e4f34 command palette improvements 2021-08-15 11:40:44 +05:30
Rémi Verschelde 14a2e59875
Merge pull request #51642 from akien-mga/cleanup-use_single_quotes 2021-08-13 21:49:06 +02:00
Rémi Verschelde 761eb7e06a
Merge pull request #51585 from Paulb23/theme-update-optimisation 2021-08-13 21:33:36 +02:00
Rémi Verschelde 84461a5c91
Merge pull request #50609 from bruvzg/te_block_caret
[TextEdit] Improve block/insert caret drawing.
2021-08-13 21:33:02 +02:00
Rémi Verschelde 81512a3732
Style: Cleanup code using `text_editor/completion/use_single_quotes` 2021-08-13 21:27:57 +02:00
Paulb23 273374957b Only update TextEdit text cache when dirty 2021-08-13 17:47:53 +01:00
Paulb23 b6f5912174 Move CodeEdit theme overrides into EditorTheme 2021-08-13 17:47:53 +01:00
Yuri Roubinsky 6e87ff28ed Fix incorrect completion popup size of `CodeEdit` 2021-08-13 19:34:18 +03:00
bruvzg 00381db2e7 [TextEdit] Improve block/insert caret drawing. 2021-08-13 19:28:47 +03:00
Paulb23 b73983340d Add bulk theme overrides to Control 2021-08-13 16:41:36 +01:00
Aaron Franke eb4902a455
Fix some unnecessary includes 2021-08-13 00:27:38 -05:00
Paulb23 a736fb8ce9 Fix breakpoint toggle signal not firing when expected 2021-08-12 14:47:10 +01:00
Rémi Verschelde a695a6764e
Merge pull request #50371 from Paulb23/text_edit_cleanup 2021-08-12 15:30:12 +02:00
Paulb23 a4606c2806 Cleanup and complete TextEdit inspector and docs 2021-08-12 11:43:35 +01:00
Paulb23 ae4dcb8918 Cleanup and bind remaing methods in TextEdit 2021-08-12 11:43:35 +01:00
Yuri Roubinsky 810c30dc09
Merge pull request #51517 from Chaosus/precise_graphedit_port_handling
Better port handling connection for `GraphEdit`
2021-08-12 11:40:52 +03:00
Paulb23 0a32a6907b Cleanup and expose viewport / scrolling methods 2021-08-12 09:29:58 +01:00
Paulb23 7dbb0f3233 Rename readonly to editable 2021-08-12 09:29:58 +01:00
Paulb23 b799e5583a Rename insert mode to overtype mode 2021-08-12 09:29:58 +01:00
Paulb23 b700011314 Protect internal CodeEdit --> TextEdit API 2021-08-12 09:29:58 +01:00
Paulb23 9ec3e7f3d7 Cleanup TextEdit selection methods 2021-08-12 09:29:56 +01:00
Paulb23 7e70f9e0b9 Expose and cleanup TextEdit line wrap API 2021-08-12 09:29:16 +01:00
Paulb23 d5dcaee4c5 Cleanup and rename caret operations 2021-08-12 09:29:13 +01:00
Paulb23 e60900a353 Make TextEdit cut, copy and paste overridable 2021-08-12 09:27:10 +01:00
Paulb23 abbf14e7f5 Remove dead code from TextEdit 2021-08-12 09:27:10 +01:00
Rémi Verschelde fba0c8e2e2
Merge pull request #51502 from codecat/fix-caret-selection
Move cursor to edge of selection when moving caret left/right
2021-08-12 10:07:12 +02:00
Yuri Roubinsky 61904d56ea Better port handling connection for `GraphEdit` 2021-08-12 09:09:24 +03:00
Melissa Geels 408401a642 Triple click in text editor now uses last mouse position for validity
Previously, you would be able to double click a word, followed by
single-clicking another word on the same line, which would select the
entire line. Now, it will only select the whole line if the mouse
position has remained the same after the double click. This mimicks the
behavior in most third party text editors.

Fixes #51312.
2021-08-11 21:49:26 +02:00
Melissa Geels ed4c3eb7b3 Move cursor to edge of selection when moving caret left/right
This is to mimic the behavior of many third party text editors. The
reason it's not doing it when moving by word is due to that behavior
being mostly the same on other editors.
2021-08-11 13:27:12 +02:00
Rémi Verschelde c00303ff55
Merge pull request #47378 from aaronfranke/use-input-enums
Use key enum instead of plain integers for input code
2021-08-11 11:20:45 +02:00
Rémi Verschelde 2c88e1c15d
Merge pull request #51178 from Geometror/layout-options-textline-textparagraph
Various text layout improvements (TextLine, TextParagraph, Label, TextServer)
2021-08-11 07:51:57 +02:00
Hendrik Brucker 403f4902d0 Various text layout improvements (TextLine, TextParagraph, Label, TextServer) 2021-08-11 00:09:48 +02:00
Aaron Franke fa3a32a2d6
Use Key enum instead of plain integers 2021-08-10 16:26:55 -05:00
K. S. Ernest (iFire) Lee 18bd0fee5a
Merge pull request #49343 from theoway/node_auto_arrangement_graph_edit
Node Auto Arrangement in GraphEdit/VisualScript/VisualShader
2021-08-10 15:42:04 -04:00
Umang Kalra 12fc3f1eef Automatic arrangement of nodes in VisualScript/VisualShaders editors
This PR and commit adds the functionality to arrange nodes in VisualScript/VisualShader editor. The layout generated by this 
feature is compact, with minimum crossings between connections
& uniform horizontal & vertical gaps between the nodes. 

This work has been sponsored by GSoC '21.

Full list of additions/changes:
• Added arrange_nodes() method in GraphEdit module.
    • This method computes new positions for all the selected
      nodes by forming blocks and compressing them.
      The nodes are moved to these new positions. 
    • Adding this method to GraphEdit makes it available for 
      use in VisualScript/VisualShaders editors and its other
      subclasses. 
• Button with an icon has been added to call arrange_nodes() in GraphEdit. 
    • This button is inherited by VisualScript/VisualShaders editors
       to invoke the method.
• Undo/redo is functional with this method.
    • By using signals in arrange_nodes(), position changes are registered 
       in undo/redo stack of the subclass that is using the method. 
• Metadata of the method has been updated in ClassDB
• Method description has been added to class reference of GraphEdit
2021-08-11 00:44:28 +05:30
Rémi Verschelde dce488d8f7
Merge pull request #49417 from Bhu1-V/gsoc-cmd-plt
Command Palette For Godot
2021-08-10 18:55:22 +02:00
Rémi Verschelde 536950f9f3
Merge pull request #21922 from aaronfranke/double
Some work on double-precision support
2021-08-10 07:41:46 +02:00
Nathan Franke b57b8453b1
Follow-Up Add SNames to get theme icon 2021-08-09 17:50:26 -05:00
Aaron Franke 430ad75963
Some work on double support 2021-08-09 17:43:48 -05:00
Aaron Franke 84f720966c
Use doubles for time in many other places 2021-08-09 14:05:42 -05:00
Rémi Verschelde 0a38d5c8f7
Merge pull request #43158 from nathanfranke/fix-gradient-and-draw-tile
Fix Gradient and Color Picker checkerboard, Fix tile parameter for CanvasItem.draw_texture_rect
2021-08-09 16:47:58 +02:00
Bhuvan Vemula a0a019a998 Added EditorCommandPalette 2021-08-09 17:41:50 +05:30
bruvzg 7c3c5603d0 [Text Server] Improve object (image/table) inline alignment. 2021-08-08 22:35:47 +03:00
Nathan Franke 051234e84e
Fix Gradient, Color Picker BG, Fix CanvasItem::draw_texture_rect p_tile 2021-08-07 16:40:50 -05:00
Paulb23 738b0fdae5 Redraw on item list custom bg/fg colour change 2021-08-07 12:08:46 +01:00
Rémi Verschelde de2c2be19b
Shortcut: Rename `shortcut` property to `event`
Having a property which has the same name as its class leads to confusing
situations (e.g. `BaseButton` has a `shortcut` property of type `Shortcut`
which has a `shortcut` property of type `InputEvent`).

Also renames `is_event` to `matches_event`, and `is_valid` to `has_valid_event`
to better reflect what the methods check.
2021-08-05 13:48:43 +02:00
kleonc fd483c729f TabContainer: Fix error on removing top-level Control child, Remove _get_tab method 2021-08-04 21:13:10 +02:00
Rémi Verschelde e0b560fb6f
Merge pull request #51177 from kleonc/tab_container-drop-tab-index-fix
TabContainer Fix moving dropped tab to incorrect child index
2021-08-03 09:34:51 +02:00
Hugo Locurcio 3ea3addc79
Improve CodeEdit's callhint highlight visibility
This makes the currently edited parameter more visible in the
script editor's code completion hint.
2021-08-02 23:16:16 +02:00
Rémi Verschelde c620ede327
Merge pull request #50122 from Paulb23/code_edit_auto_brace_completion 2021-08-02 20:44:39 +02:00
kleonc a5a4532378 TabContainer Fix moving dropped tab at incorrect child index 2021-08-02 14:15:51 +02:00
Gilles Roudière ad8b5cd5a4 Implements TileMap layers and move TileSetPlugins's functions to the TileMap node instead 2021-08-02 13:54:39 +02:00
Paulb23 809a32c045 Clean up and complete CodeEdit inspector and docs 2021-08-01 12:24:19 +01:00
Paulb23 dd5a37f556 Move symbol lookup into CodeEdit 2021-08-01 12:06:33 +01:00
Paulb23 8f900ac178 Move line length guidelines into CodeEdit 2021-08-01 12:06:33 +01:00
Paulb23 d1a1ad127e Move brace matching into CodeEdit 2021-08-01 12:06:33 +01:00
Paulb23 12f0053555 Move auto brace completion to CodeEdit 2021-08-01 12:06:33 +01:00
Yuri Sizov 7137ebdaf6 Make theme item overrides more obvious in the Inspector 2021-07-31 23:46:24 +03:00
Michael Alexsander b70b9c4ede Fix "Custom *" theme sections being inside "Auto Translate" 2021-07-30 13:55:07 -03:00
Michael Alexsander 94a64d557e Add `auto_translate` toggle for automatic translation 2021-07-29 18:30:34 -03:00
Michael Alexsander 79fc188fc4 Multiple cosmetic fixes for embedded windows 2021-07-27 23:55:06 -03:00
Michael Alexsander 478b6d6a13 Make `switch_on_hover` work on embedded windows 2021-07-26 14:45:26 -03:00
Rémi Verschelde 738205d923
Merge pull request #50835 from bruvzg/optimize_is_rtl
Optimise `is_layout_rtl`.
2021-07-25 12:55:46 +02:00
Rémi Verschelde ff0b5f8fa1
Merge pull request #50809 from akien-mga/iterators-const-references 2021-07-25 12:52:58 +02:00
Rémi Verschelde ac3322b0af
Use const references where possible for List range iterators 2021-07-25 12:22:25 +02:00
luz paz 3564c16cb8
Fix various typos with codespell
Found via `codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,fave,findn,hist,inout,leapyear,lod,nd,numer,ois,ony,paket,seeked,sinc,switchs,te,uint`
2021-07-25 11:21:51 +02:00
bruvzg 9bb03e60d9 Optimise `is_layout_rtl` by caching its return value. 2021-07-25 10:33:00 +03:00
Aaron Franke 4e6efd1b07
Use C++ iterators for Lists in many situations 2021-07-23 17:38:28 -04:00
jfons 944b5ee639 Fix popup submenu in single-window mode
The internal processing code only works for OS windows, since it takes
the mouse position relative to the window and not the viewport. Now we
make sure it's not called in single-window mode.
2021-07-23 19:45:30 +02:00
Michael Alexsander a690cd9251 Make `MenuButton`'s `switch_on_hover` work again 2021-07-22 14:27:30 -03:00
PouleyKetchoupp 0b4037fe64 Fix logic for Popup closing when parent is focused
The member popped_up is used to avoid closing a Popup before it had a
chance to be focused. It wasn't reset properly when the popup is hidden,
causing the Popup to close right after showing in some random cases
(spotted on X11, might not happen on Windows).
2021-07-21 12:03:03 -07:00
Rémi Verschelde 693f9b4e20
Merge pull request #50655 from JFonS/sname_opt
Editor StringName and Viewport optimizations
2021-07-20 21:49:32 +02:00
Joan Fons a6adb58493 Editor StringName and Viewport optimizations
* Added explicit return type to the SNAME macro.
* Add some extra SNAME usages.
* Change some ClassDB methods to use const StringName & arguments.
* Cache the Window parent in Control because it's used in
  is_layout_rtl(), which is called often.
* Only enable internal processing for viewports that need it.
* Change CanvasItem::group to be a StringName because it's only used as
  that.
2021-07-20 20:35:41 +02:00
Rémi Verschelde 394191c02f
Merge pull request #50605 from Calinou/tweak-shader-code-style
Use C++11 raw literals for shader code to improve readability
2021-07-20 10:05:13 +02:00
Rémi Verschelde a0bc2f359d
Merge pull request #50588 from bruvzg/menu_gen
Optimize LineEdit and TextEdit menu item generation.
2021-07-19 22:56:53 +02:00
Rémi Verschelde dfc1ec7fb9
Merge pull request #50606 from Chaosus/textedit_fix_guttertype
Fixed typos in `TextEdit::GutterType` enum
2021-07-19 16:40:42 +02:00
Yuri Roubinsky 1597045b09 Fixed typos in `TextEdit::GutterType` enum 2021-07-19 11:18:54 +03:00
Hugo Locurcio abc38b8d66
Use C++11 raw literals for shader code to improve readability
In files that have lots of branching, `\t` was replaced with a
tab character instead.
2021-07-19 08:19:50 +02:00
bruvzg 1ac7a126f1 Optimize LineEdit and TextEdit menu item generation. 2021-07-19 08:19:09 +03:00
reduz 6631f66c2a Optimize StringName usage
* Added a new macro SNAME() that constructs and caches a local stringname.
* Subsequent usages use the cached version.
* Since these use a global static variable, a second refcounter of static usages need to be kept for cleanup time.
* Replaced all theme usages by this new macro.
* Replace all signal emission usages by this new macro.
* Replace all call_deferred usages by this new macro.

This is part of ongoing work to optimize GUI and the editor.
2021-07-18 21:20:02 -03:00
reduz a3fb76cd45 Create many types of popups on demand
* LineEdit popups created on demand.
* TextEdit popups created on demand.
* SpinSlider popups created on demand.
* ResourcePicker popups created on demand.

Improves editor responsiveness.
2021-07-17 10:57:14 -03:00
Rémi Verschelde 29c56f33a4
Merge pull request #48502 from KoBeWi/visual_button
Add set_pressed_no_signal method to BaseButton
2021-07-14 15:05:50 +02:00
kobewi f4b361dd15 Add header theme type variations to labels 2021-07-13 15:42:09 +02:00
Rémi Verschelde b44b277f6f
Merge pull request #50169 from pycbouh/theme-type-variations 2021-07-13 15:13:00 +02:00
kobewi 50c63bdc4c Add set_pressed_no_signal method to BaseButton 2021-07-13 13:57:26 +02:00
Rémi Verschelde aab6dc301c
Merge pull request #50086 from Geometror/label-improve-layout-options
Improvements to Label's layout options
2021-07-13 13:10:42 +02:00
Rémi Verschelde 3adb129a54
Merge pull request #50135 from KoBeWi/🌲.update()
Update Tree when modified
2021-07-13 09:03:40 +02:00
Yuri Sizov 4ee0e6ddf5 Add type variations to Theme 2021-07-13 02:26:28 +03:00
Francois Belair 94a464f555 Add cache to color picker for presets
This prevents loading from the project metadata more than once,
significantly saving performance with nodes that have color pickers.
2021-07-07 14:17:44 -04:00
Rémi Verschelde e4c940ee6a
Merge pull request #50208 from kleonc/accept_dialog-remove_button
Add AcceptDialog::remove_button method
2021-07-07 09:12:03 +02:00
Hugo Locurcio ce941397e5
Merge pull request #49890 from voxelv/fix_tree_range_click_timeout_crash_46648
Avoid using a nullptr root in Tree._range_click_timeout().
2021-07-07 01:21:32 +02:00
kleonc 714e6a595d Add AcceptDialog::remove_button method 2021-07-06 18:14:20 +02:00
Rémi Verschelde 9a1ce8e6c3
LineEdit: Respect `max_length` by truncating text to append
When appending text (either via `set_text()` or by pasting from clipboard),
if the input would make the `LineEdit` exceed its configured `max_length`,
the input text is truncated to fit. The discard part is passed as a parameter
in the `text_change_rejected` signal.

Fixes #33321.
Fixes #41278.

Also cleaned up unimplemented `max_chars` property in `TextEdit`.

Co-authored-by: Tony-Goat <70238376+Tony-Goat@users.noreply.github.com>
2021-07-06 18:03:03 +02:00
reduz f4379cbc82 Clean up Tree
Fixes some problems introduced by #49917

* Tree used minimum size as a stretch ratio, so it forced a minimum size of 1.
* Minimum size redone, stretch ratio moved to a separate setting
* Fitting to contents was enforced, this is more intuitive, but in many situations this is undesired.
* Added a clip content option for situations where fit to contents does not apply.
* Icon would scroll with the item, making it invislbe if the item is too long.
* Made icon always appear to the right (or left if RTL is enabled) of the visible item space.
2021-07-04 13:13:53 -03:00
Hendrik Brucker 56a8d3f30c Improvements to Label's layout options
- Added options to trim the text in case it overruns
- Added more autowrap modes
- Improved line breaking, which ignores trailing spaces
2021-07-04 16:43:55 +02:00
kobewi 9569729888 Update Tree when modified 2021-07-04 15:28:39 +02:00
Rémi Verschelde a525e77740
Merge pull request #49468 from menip/FixGetScreenPosition
Fix Control::get_screen_position() not considering viewport scale
2021-07-03 14:29:20 +02:00
Michael Alexsander e4d56e4c62 Make invisible `SplitContainer` nodes correctly calculate the minimal size of its children 2021-07-02 14:39:50 -03:00
reduz 75688772b3 Fix editor suffixes and degrees conversion
* Functions to convert to/from degrees are all gone. Conversion is done by the editor.
* Use PROPERTY_HINT_ANGLE instead of PROPERTY_HINT_RANGE to edit radian angles in degrees.
* Added possibility to add suffixes to range properties, use "min,max[,step][,suffix:<something>]" example "0,100,1,suffix:m"
* In general, can add suffixes for EditorSpinSlider
Not covered by this PR, will have to be addressed by future ones:

* Ability to switch radians/degrees in the inspector for angle properties (if actually wanted).
* Animations previously made will most likely break, need to add a way to make old ones compatible.
* Only added a "px" suffix to 2D position and a "m" one to 3D position, someone needs to go through the rest of the engine and add all remaining suffixes.
* Likely also need to track down usage of EditorSpinSlider outside properties to add suffixes to it too.
2021-06-30 12:38:25 -03:00
voxelv f17f3f8830 Avoid using a nullptr root in Tree._range_click_timeout().
Fixes #46648
2021-06-30 00:27:44 -07:00
Rémi Verschelde 90982d60cb
Merge pull request #37181 from jitspoe/master.button_icon_alignment 2021-06-29 13:31:53 +02:00
Rémi Verschelde 9c6d7f840f
Merge pull request #49970 from trollodel/graphnode_fix_port_position
Fix GraphNode port position when the control has the Expand flag
2021-06-29 12:41:58 +02:00
jitspoe e192eb05db
Add alignment options to icons on buttons.
They can now be centered and right-aligned.

Fixes #11380.
2021-06-29 12:31:40 +02:00
Rémi Verschelde 8fb7a9f023
Merge pull request #49719 from LightningAA/rename-node-is-ancestor-of
Rename `is_a_parent_of()` to `is_ancestor_of()`
2021-06-29 12:07:25 +02:00
Gilles Roudière c5b65236d8 Fixes crash in case no column in tree is expanded and has minimum size 2021-06-29 11:27:09 +02:00
trollodel 07c3b40aa2 Fix GraphNode port position when the control has the Expand flag 2021-06-28 18:52:13 +02:00
Rémi Verschelde 89f270f4c5
Merge pull request #49917 from groud/tree_disable_scroll
Allow disabling scrolling in Tree and implement horizontal scrolling
2021-06-28 18:41:23 +02:00
Gilles Roudière d7d32ced5b Implement Tree's internal minimum width calculation 2021-06-28 15:54:31 +02:00
reduz b1d15c51bc Implement native extension system
* Deprecates GDNative in favor of a simpler, lower level interface.
* New extension system allows registering core engine classes.
* Simple header interface in gdnative_interace.h
2021-06-25 17:32:45 -03:00
Gilles Roudière b2dddc3c82 Allow disabling scrolling in Tree 2021-06-25 21:19:46 +02:00
Rémi Verschelde c8444c3ee0
Merge pull request #49908 from KoBeWi/📎🔫
Remove clips_input() method and use clip_content
2021-06-25 16:53:00 +02:00
kobewi 452e10ba7b Remove clips_input() method and use clip_content 2021-06-25 15:46:37 +02:00
Eric M cfbdaa2eb7 Fix RichTextLabel custom_effects export to be properly filtered in the Editor 2021-06-25 22:58:46 +10:00
Rémi Verschelde b9bf01a9b0
Merge pull request #49798 from pycbouh/tree-lines-items-draw-order
Make relationship lines draw on top of `TreeItem`s
2021-06-21 20:54:51 +02:00
Lightning_A 899e5f8685 Rename `is_a_parent_of()` to `is_ancestor_of()` 2021-06-21 08:39:28 -06:00
Yuri Sizov 483f8ffbe4 Make relationship lines draw on top of TreeItems 2021-06-21 16:46:43 +03:00
Haoyu Qiu a57a51750a Update min size on Label::set_text 2021-06-21 19:54:40 +08:00
Rémi Verschelde 9da7f06900
Merge pull request #49665 from Paulb23/code_edit_indent
Move indentation into CodeEdit
2021-06-21 09:13:15 +02:00
floppyhammer b08dc1ea35 Improve nine patch behavior of TextureProgressBar 2021-06-21 10:07:49 +08:00
Paulb23 1a0cfc219b Move indent management to CodeEdit 2021-06-20 20:00:54 +01:00
Rémi Verschelde 953de68cfc
Merge pull request #35608 from golfinq/master 2021-06-20 18:51:15 +02:00
Aaron Franke 0ce49800ac
Use mouse and joypad enums instead of plain integers
Also MIDIMessage
2021-06-20 11:54:24 -04:00
golfinq 0c1d10d1ca Rich Text Label now allows for foreground colors and background colors 2021-06-20 11:29:37 -04:00
Lightning_A e28fd07b2b Rename `instance()`->`instantiate()` when it's a verb 2021-06-19 20:49:18 -06:00
Rémi Verschelde 60dcc4f39c
Merge pull request #49742 from Paulb23/remove_keywords_textedit
Remove redundant keywords from TextEdit
2021-06-20 00:39:18 +02:00
Rémi Verschelde 4effadc0ba
Merge pull request #48696 from madmiraal/fix-48692
Fix `InputMap.action_erase_event()` failing to erase events correctly.
2021-06-20 00:29:42 +02:00
Paulb23 ab49ea032c Remove redundant keywords from TextEdit 2021-06-19 13:56:54 +01:00
Aaron Franke 8b692e8872
Add PROPERTY_USAGE_NONE and use it 2021-06-17 19:10:26 -04:00
Lightning_A 13ba788b63 Scrollwheel (w/o ctrl) to zoom, mouse warping when panning
Now uses Ctrl + Scrollwheel for vertical scrolling
Ctrl + Shift Scrollwheel for horizontal scrolling
Also converts some macros to constants
2021-06-17 08:21:32 -06:00
Rémi Verschelde 74850b3511
Merge pull request #38261 from pycbouh/adjust-graph-edit-zoom-levels
Make zoom limits and step adjustable in `GraphEdit`
2021-06-17 12:12:34 +02:00
Rémi Verschelde bb4c464fec
Merge pull request #49258 from megalobyte/editor-fix
Fixes for documentation search
2021-06-17 02:25:41 +02:00
Rémi Verschelde 341cb8da31
Merge pull request #49238 from Paulb23/code_edit_code_folding
Move code folding into CodeEdit and hide line hiding API
2021-06-16 20:11:39 +02:00
Gregory Basile 8ab13f8ace Documentation search fixes
Updates rich_text_label so that the built-in documentation can be searched
Previously, it would only find the first result and would not select other results
Renames "_entered" functions to "_submitted"
2021-06-16 09:43:34 -07:00
Haoyu Qiu bf5f13e6a0 Fix typo in CodeEdit methods 2021-06-16 22:15:29 +08:00
Yuri Sizov 0a82a669e3 Make zoom limits and step adjustable in GraphEdit 2021-06-16 16:39:18 +03:00
Rémi Verschelde 1129439f09
Merge pull request #49011 from KoBeWi/totally_h
Fix valign with stylebox borders
2021-06-15 16:25:49 +02:00
Rémi Verschelde e479abeb98
Merge pull request #49437 from Calinou/graphedit-allow-higher-lower-zoom-values
Allow higher and lower maximum zoom values in GraphEdit
2021-06-15 15:18:17 +02:00
Rémi Verschelde 7efde449b2
Merge pull request #49508 from kleonc/texture_button-updating-min_size
TextureButton Update min size on any texture change
2021-06-15 15:01:16 +02:00
Rémi Verschelde 5da885e1f7
Merge pull request #49582 from timothyqiu/codeedit-update-cache
Update cache after clearing delimiters in CodeEdit
2021-06-15 00:05:59 +02:00
Rémi Verschelde 16027e7cf4
Merge pull request #49572 from azagaya/fix_grabber_area
Fix vertical slider grabber_area height calculation
2021-06-14 19:22:25 +02:00
Haoyu Qiu a1db7088ed Update cache after clearing delimiters in CodeEdit 2021-06-14 21:23:01 +08:00
azagaya be8667944d Fix vertical slider grabber_area height calculation 2021-06-13 11:23:26 -03:00
Rémi Verschelde ef7974f3d9
Merge pull request #49526 from Chaosus/fix_textureregion_errors 2021-06-13 14:44:50 +02:00
Yuri Roubinsky 19afaa0203 Fixed a bunch of connection errors in TextureEditorPlugin 2021-06-12 08:01:02 +03:00
kobewi 7ff135b015 Consistently prefix bound virtual methods with _ 2021-06-12 00:55:52 +02:00
Pedro J. Estébanez 04688b92ff Rename Reference to RefCounted 2021-06-11 18:48:42 +02:00
Rémi Verschelde 9e328bb5b7
Core: Move DirAccess and FileAccess to `core/io`
File handling APIs are typically considered part of I/O, and we did have most
`FileAccess` implementations in `core/io` already.
2021-06-11 14:52:39 +02:00
kleonc 6c3c269f24 TextureButton Update min size on any texture change 2021-06-11 13:39:51 +02:00
Marcel Admiraal f38fe846f4 Move default values from definition to declaration in GraphEdit 2021-06-10 17:22:56 +01:00
menip ae324444ba Fix Control::get_screen_position() not considering viewport scale 2021-06-09 12:05:04 -07:00
Rémi Verschelde fbe53a7064
Merge pull request #49155 from winterpixelgames/button-pressed-during-button-up-signal
Emit button_up signal after setting pressed to false.
2021-06-09 13:46:39 +02:00
Rémi Verschelde 0cbb19a246
Merge pull request #47280 from winterpixelgames/focus_doesnt_change_hover
Dont Change Hovering during Control Focus Events
2021-06-09 09:18:26 +02:00
Hugo Locurcio 74c584472c
Allow higher and lower maximum zoom values in GraphEdit
Low zoom values result in unreadable text, but it can still be
useful for previewing purposes.

Eventually, characters could be replaced by rectangles at very low
zoom levels to improve the visual appearance.
2021-06-08 20:33:07 +02:00
Rémi Verschelde 3041becc64
Merge pull request #49307 from pycbouh/tabs-update-on-theme-changes
Make sure `Tabs` reflect theme changes
2021-06-07 13:29:34 +02:00
Rémi Verschelde c1c76850cb
Style: Cleanup uses of double spaces between words
Or after punctuation. Tried to leave third-party stuff alone, unless it has
been heavily modified for Godot.
2021-06-07 11:03:08 +02:00
Yuri Sizov f7da0698d0 Make sure Tabs reflect theme changes 2021-06-04 16:22:09 +03:00
Aaron Franke bc5c10e0f8
Use a more specific type for AcceptDialog register_text_enter 2021-06-03 19:57:03 -04:00
Rémi Verschelde d7f1718742
Merge pull request #46482 from KoBeWi/size_warning_the_sequel
Warn about changing size only when it's relevant
2021-06-03 11:21:33 +02:00
reduz d95bc3fa67 Use bold fonts in editor
* Labels are now bold
* Categories in trees are bold
* Main editor buttons are bold
* Fixed section folding arrows in inspector
2021-06-02 12:47:57 -03:00
Paulb23 5c618dd03d Move code folding into CodeEdit and hide line hiding API 2021-06-01 17:07:01 +01:00
Rémi Verschelde c5f237eaf8
Merge pull request #45393 from Paulb23/code_edit_autocomplete 2021-06-01 17:58:19 +02:00
Paulb23 c1b9971ad8 Move and expose Code Hint in CodeEdit 2021-06-01 15:38:45 +01:00
Paulb23 1c16673798 Move and expose AutoComplete in CodeEdit 2021-06-01 15:38:45 +01:00
Paulb23 680dc9e81a Add comment and string tracking to CodeEdit 2021-06-01 15:38:45 +01:00
Rémi Verschelde cb4635f260
Merge pull request #49241 from floppyhammer/fix-tree-item-dragging
Make tree item dragging not affected by touch dragging
2021-06-01 15:29:35 +02:00
floppyhammer d202cf6899 fix-tree-item-dragging 2021-06-01 20:46:17 +08:00
Paulb23 5f66dfa371 Fix TextEdit selection drawing behing minimap 2021-06-01 13:09:39 +01:00
Rémi Verschelde 4c1d555b9a
Merge pull request #48770 from LightningAA/scrollcontainer-ensure-item-visible-4.0
ScrollContainer: Expose `_ensure_focused_visible` to the scripting API and rename it to `ensure_control_visible`
2021-06-01 11:01:40 +02:00
Lightning_A 6d5b5ba89f ScrollContainer: Expose `_ensure_focused_visible` to the API
Was renamed to `ensure_control_visible`
2021-05-31 17:14:57 -10:00
Jason Knight 4c6ad8abcd Emit button_up signal after setting pressed to false. 2021-05-27 15:06:53 -06:00
Eric M 471f7f1a75 Fixed implementation of RTL remove_line(), which fixed issues in EditorLog.
There were some issues in RichTextLabel `remove_line()` method, where items were not correctly removed, and line decremending for items in later lines was not correctly done.
This also fixed several headaches with EditorLog, which relied on the `remove_line()` method for collapsing of duplicate messages. The fix to RTL also fixed the issues with EditorLog.

Fixes #49030
2021-05-26 15:08:13 +10:00
Yuri Sizov 231daa6025 Fix disappearing relationship lines in Tree when item is out of view 2021-05-26 00:44:04 +03:00
Rémi Verschelde 6a64a98039
Merge pull request #48546 from pycbouh/tree-highlight-selected-relationships 2021-05-25 19:42:55 +02:00
Rémi Verschelde f1abfbbeb1
Merge pull request #48837 from Soupstraw/shader-pi
Added constants PI, TAU and E to the shader language
2021-05-25 18:07:15 +02:00
Yuri Sizov 9c92e9d849 Add highlight to the relationship lines of selected Tree items 2021-05-25 18:56:06 +03:00
Rémi Verschelde 9bc2ba3b64
Merge pull request #48955 from Calinou/editor-tweak-property-hints
Tweak dozens of editor property hints for consistency
2021-05-25 11:44:43 +02:00
Joosep Jääger 16567321ba Added constants PI, TAU and E to the shader language 2021-05-25 12:15:08 +03:00
Hugo Locurcio 87f503310b
Tweak dozens of editor property hints for consistency
- Update Viewport MSAA property hints to match the currently
  exposed values.
- Add some performance hints to property hints.
2021-05-25 02:50:35 +02:00
kobewi 47108202c6 Fix valign with stylebox borders 2021-05-23 22:39:38 +02:00
Hugo Locurcio 80f4e407b2
Add a keyboard shortcut to select the word under cursor in TextEdit
This also acts as a general-purpose "deselect" shortcut since pressing
it a second time will deselect text.

This is available both in the script editor and in TextEdit fields
in use, both in the editor and projects.

The Duplicate Line script editor shortcut was moved to Ctrl + Shift + D
since it conflicts with the new shortcut (Ctrl + D). The rationale for
doing so is that Duplicate Line is a less commonly used action, and
its behavior can be replicated by copying and pasting the current line
anyway. (With no selection active, the whole line will be copied.)
2021-05-22 23:47:43 +02:00
Paulb23 00e10a842f Add custom background line colour to TextEdit and remove marked lines 2021-05-22 14:41:55 +01:00
Rémi Verschelde 4219a4cb6f
Fix typos with codespell
Using codespell 2.0.0.

Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
curvelinear
dof
doubleclick
fave
findn
GIRD
leapyear
lod
merchantibility
nd
numer
ois
ony
que
seeked
synching
te
uint
unselect
webp
EOF

$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2021-05-20 12:38:56 +02:00
Marcel Admiraal 7104229a85 Fix InputMap.action_erase_event() failing to erase events correctly. 2021-05-19 11:43:02 +01:00
Rémi Verschelde 66dac8bda0
Merge pull request #47544 from pycbouh/control-expose-theme-type 2021-05-18 10:52:51 +02:00
Rémi Verschelde 95bb7207f3
Merge pull request #46773 from trollodel/TreeItem+
Improve TreeItem API and allow to move nodes
2021-05-18 10:49:45 +02:00
Rémi Verschelde 510030fedc
Merge pull request #48528 from sent44/textedit
Expose get_total_visible_rows method to GDScript
2021-05-18 09:06:24 +02:00
trollodel bca0d36fe6 Improve TreeItem API and allow to move nodes 2021-05-17 22:06:46 +02:00
Rémi Verschelde 92c04fa727
Fix build after mismatch between #48168 and #48599 2021-05-17 17:50:42 +02:00
Rémi Verschelde b3e3f0e34c
Merge pull request #48599 from Calinou/textedit-alt-scroll-faster
Scroll faster when holding Alt in TextEdit (and script editor)
2021-05-17 17:38:18 +02:00
Rémi Verschelde 6c367f8e0d
Merge pull request #48168 from LightningAA/control-to-ctrl-4.0 2021-05-17 17:38:02 +02:00
Yuri Sizov 9eaa139c1f Add theme_custom_type property to Control and Window 2021-05-17 17:20:42 +03:00
Rémi Verschelde 9cc17a8439
Merge pull request #48690 from KoBeWi/static_shader_picker
Create ColorPicker shaders statically
2021-05-17 14:51:12 +02:00
kobewi 877dbda209 Create ColorPicker shaders statically 2021-05-17 11:39:20 +02:00
Rémi Verschelde 2dadcde361
Merge pull request #48760 from timothyqiu/tree-crash
Fix Tree::get_column_at_position crash
2021-05-16 23:05:37 +02:00
Rémi Verschelde 8e7b17429e
Merge pull request #48650 from AnilBK/graph-node-setters
Added GraphNode missing setters.
2021-05-16 17:37:12 +02:00
Haoyu Qiu c8efcf81d2 Fix Tree::get_column_at_position crash 2021-05-16 19:42:28 +08:00
Eoin O'Neill c4f976b38b Attempt to fix rich text label effects processing even when
the node is invisible.

ISSUE:47687
2021-05-13 19:59:08 -07:00
Anilforextra 2c3c3b2829 -Added missing setters to GraphNode.
-Improved various GraphNode documentation.
2021-05-13 17:45:07 +05:45
Andrii Doroshenko (Xrayez) c9a3d13bd9 Fix variable names for "usage" flags in `Control::_get_property_list()`
Renamed incorrect "hint" variable names to "usage" in
`_get_property_list()`, as "hint" implies one of the PROPERTY_HINT_*
values, which is not the case here.
2021-05-13 12:51:38 +03:00
Hugo Locurcio 1e063595c3
Implement reverting to the old color when clicking it in ColorPicker 2021-05-10 18:13:33 +02:00
Hugo Locurcio cf1cf6c6eb
Scroll faster when holding Alt in TextEdit (and script editor)
This feature is inspired by a similar feature found in
Visual Studio Code.
2021-05-10 01:27:54 +02:00
Rémi Verschelde 726715b1e1
Merge pull request #48579 from Calinou/tree-fix-bg-focus-section-overlap
Fix Tree's background focus outline displaying behind section headings
2021-05-09 14:40:50 +02:00
Rémi Verschelde 73e5f6f673
Merge pull request #48539 from KoBeWi/cant_edit_this
Display arrow cursor if text is not editable
2021-05-09 14:18:56 +02:00
Hugo Locurcio 63897f16b1
Fix Tree's background focus outline displaying behind section headings 2021-05-09 13:27:20 +02:00
kobewi c3967c80ab Display arrow cursor if text is not editable 2021-05-07 23:08:00 +02:00
Lightning_A 97fecd1b69 Rename "Control" key to "Ctrl" and add "_pressed" suffix to all InputEventWithModifiers properties/methods 2021-05-07 14:00:50 -06:00
Rémi Verschelde c3f7465b7e
Merge pull request #48535 from groud/tiles_squashed
TileSet and TileMap rework (squashed)
2021-05-07 20:46:06 +02:00
Gilles Roudière a3dda2df85 Rework the TileSet resource and TileMap nodes:
- Move most properties from TileMap to TileSet,
- Make TileSet more flexible, supporting more feature (several
  collision layers, etc...),
- Fusion both the TileMap and TileSet editor,
- Implement TileSetSources, and thus a new way to index tiles in the TileSet,
- Rework the TileSet and TileMap editors completely,
- Implement an editor zoom widget (and use it in several places)
2021-05-07 18:06:17 +02:00
sent44 7bb12b0d6d Expose get_total_visible_rows as get_visible_line_count 2021-05-07 20:54:05 +07:00
besh81 e7e7aa7d12
Fixed bug in tab_container with hidden tabs
Fix a bug that occour when there are hidden tabs in tab_container. 
The visualization isn't correct due to missing values in tab_widths array.
2021-05-07 13:01:27 +02:00
Rémi Verschelde 94f6fb6d24
Merge pull request #34840 from Calinou/colorpicker-display-old-color
Display the old color in ColorPicker for easier comparison
2021-05-06 23:55:47 +02:00
Rémi Verschelde 89e6f6ca2e
Merge pull request #48500 from groud/add_buttongroup_pressed_signal
Adds a pressed signal to ButtonGroup
2021-05-06 23:20:33 +02:00
Rémi Verschelde 6e621441ca
Merge pull request #45607 from Calinou/improve-editor-theme
Improve the editor theme
2021-05-06 16:45:07 +02:00
Gilles Roudière 323f176915 Adds a pressed signal to ButtonGroup 2021-05-06 12:16:27 +02:00
Rémi Verschelde 605e33cf39
Merge pull request #44831 from gongpha/dont-update-tree-if-selected
Blocking updating in SceneTreeEditor when an item was selected
2021-05-06 08:45:41 +02:00
Hugo Locurcio 9e1bfe2e9e
Display the old color in ColorPicker for easier comparison
This only affects ColorPickerButton nodes that spawn a ColorPicker,
not standalone ColorPickers.

This partially addresses #7366.
2021-05-06 03:08:05 +02:00
Eric M 87ffb213c8 Fixed issues with Editor Log after recent changes
Fixed #48446, Fixed #48443
2021-05-05 00:25:14 +10:00
Rémi Verschelde 4e7ca279fc
Merge pull request #47855 from aaronfranke/doubleclick
Rename `doubleclick` to `double_click`
2021-05-04 13:12:17 +02:00
Rémi Verschelde 56316b27ab
Merge pull request #41321 from EricEzaM/output-log-enhancements 2021-05-04 12:59:02 +02:00
Rémi Verschelde 9a8ef54b5a
Merge pull request #48008 from LightningAA/scrollcontainer-hide-scrollbars-4.0
Add the ability to hide `ScrollContainer`'s scrollbars
2021-05-04 12:58:12 +02:00
Rémi Verschelde ab09a62249
Merge pull request #35893 from KoBeWi/a_tree_pr
Calculate __focus_rect when TreeItem is focused
2021-05-04 12:57:43 +02:00
Aaron Franke 0de9a7d803
Rename `doubleclick` to `double_click` 2021-05-04 04:38:08 -04:00
Eric M 77fd9e4dd3 Improve output log performance.
Added method to create a new line in RichTextLabel without adding an ItemNewline to the previous line. Previously, removing a line then adding a newline was adding unnecessary ItemNewline instances to the previous line, significantly the remove_line method.
2021-05-04 16:21:33 +10:00
Rémi Verschelde a36c084f75
Merge pull request #48198 from KoalasinTraffic/fix-indent-left-line-selection
Fix start line selection for indent_selected_lines_left
2021-05-03 20:26:16 +02:00
Yuri Sizov 980cf73bbc Fix autocompletion for Control's Theme properties 2021-04-30 20:47:01 +03:00
Tomasz Chabora 2035992a07 Calculate __focus_rect when TreeItem is focused 2021-04-28 18:09:19 +02:00
Lightning_A bb6bdcee1a Add the ability to hide scrollcontainer's scrollbars 2021-04-28 09:28:31 -06:00
EricEzaM de5387ab82 Fixed issues with LineEdit Delete Word & Backspace Word.
Backspace word was deleting all text before the cursor, and delete word was no updating until another action was performed on the LineEdit (in order to update it)
2021-04-28 17:15:28 +10:00
Hugo Locurcio 60b70c77e0
Improve the editor theme
The editor theme now makes use of rounded corners and less borders
to follow modern visual trends.

The default theme's colors were also tweaked to make the blue hue
more subtle (similar to the Arc theme, which was removed as a
consequence). The Alien theme was replaced by a Breeze Dark theme,
which should blend in well with the KDE theme.
2021-04-27 22:38:26 +02:00
Koala 2c64008718 Fix indent left line selection 2021-04-25 22:31:29 +01:00
Marcel Admiraal 86822b187e Rename LineEdit caret_* properties getters and setters to match property 2021-04-17 12:41:23 +01:00
Rémi Verschelde 916bff471a
Merge pull request #47728 from ray90514/bug#47562
Fix LineEdit undo behaves strangely
2021-04-16 10:28:57 +02:00
Eric M 92900bd490 Fixed ui_accept (spacebar + return) accepting auto-completion options. 2021-04-15 00:38:28 +10:00
Rémi Verschelde 5535cf5c22
Merge pull request #47689 from nekomatata/textedit-fix-cursor-update
Fix TextEdit cursor update when adding or deleting text
2021-04-14 08:25:34 +02:00
Nathan Franke 2a8c59c171
Use Array for node configuration warnings
Previously, the warnings were passed as a string and delimitation of which were hard coded at each implementation.
2021-04-11 23:25:38 -05:00
Rémi Verschelde 8b6e3d6375
Merge pull request #46340 from gongpha/various-color-picker
Add Various ColorPicker shapes
2021-04-10 13:29:50 +02:00
ray90514 7501c7f48a Fix LineEdit undo behaves strangely 2021-04-08 23:47:54 +08:00
Kongfa Waroros ce126d4b79 Fix ColorPicker's RGB bars are show in RAW mode and other 2021-04-07 18:39:37 +07:00
PouleyKetchoupp 9d87bcdcde Fix TextEdit cursor update when adding or deleting text
Updating the viewport while setting the line index before the column is
set could wrongly cause the text to be scrolled down.
2021-04-06 22:17:16 -07:00
Kongfa Waroros 6294507acb Add Various ColorPicker shapes 2021-04-06 22:48:03 +07:00
Lightning_A d514949755 Make scrollwheel zoom based on mouse position 2021-04-05 23:00:56 -06:00
Rafał Mikrut 504bc5cc67 Fix crashes in *_input functions 2021-04-05 08:52:21 +02:00
Kevin Smith a7d12920f2 Make ColorPicker button text and tooltips appear in exported projects 2021-04-01 11:06:24 -04:00
Rémi Verschelde 5d0cc7c15f Merge pull request #47252 from KoBeWi/themecide
Add methods to remove theme overrides
2021-03-31 20:52:19 +02:00
Rémi Verschelde 995ce158dd
Merge pull request #46702 from HaSa1002/fix-min-size-resize
Fix removal of `rect_min_size` not triggering resize
2021-03-30 20:46:04 +02:00
Gilles Roudière 898a2a7cf3 Implement Tabs minimum size 2021-03-30 16:11:35 +02:00
bruvzg 9f73abfa9f
RichTextLabel: On custom effect change, parse bbcode only if it's enabled and not empty. 2021-03-30 10:20:39 +03:00
Rémi Verschelde c6ff6707a4
Merge pull request #47457 from bruvzg/rtl_spacing
RichTextLabel: fix font extra spacing and style box size usage.
2021-03-29 17:07:38 +02:00
bruvzg 9f4893c70b
Use extra font spacing in the RichTextLabel line height calculation, and stylebox size in the minimum size calculation. 2021-03-29 17:26:53 +03:00
Rémi Verschelde bc29f4bca1
Merge pull request #47435 from madmiraal/rename-texture-get_data
Rename Texture.get_data() to get_image()
2021-03-29 10:41:22 +02:00
Rémi Verschelde b253aca53f
Merge pull request #47351 from volzhs/graphedit-boxselection
Fix drawing boxselection on GraphEdit
2021-03-28 20:56:07 +02:00
Marcel Admiraal fd30c36985 Rename Texture.get_data() to get_image() 2021-03-28 13:00:46 +01:00
Rémi Verschelde c6b9ceadf2
Merge pull request #47163 from bruvzg/macos_sandbox_file_dialog
FileDialog: add Back/Forward buttons, add message for inaccessible folders.
2021-03-26 00:00:25 +01:00
volzhs 990c88f24c Fix typo 'previus_selected' 2021-03-25 20:08:38 +09:00
volzhs 1bdc14acea Fix drawing boxselection on GraphEdit 2021-03-25 13:21:34 +09:00
Johannes c8868fcaab
Fix removal of `rect_min_size` not triggering resize
fixes #46672
2021-03-23 23:06:50 +01:00
Rémi Verschelde 036a50e8b9
Merge pull request #37755 from KoBeWi/check_down
Add disabled theme icons for CheckBox
2021-03-23 13:06:02 +01:00
Aaron Franke 10d7fccb54
Rename ButtonList enum and members to MouseButton 2021-03-23 07:13:23 -04:00
bruvzg b202a0dd2a
FileDialog: add Back/Forward buttons, add message for inaccessible folders. 2021-03-23 08:03:41 +02:00
Jason Knight edcbe88389 Removed the alteration of status.hovering during Focus Enter and Focus Exit events. This is incorrect and not fully implemented, and results in inconsistency in the UI and in the hovering variable. 2021-03-22 18:47:59 -06:00
kobewi 5950482b86 Remove the clearing behavior from add_override 2021-03-23 00:55:02 +01:00
kobewi ecff5bc42f Add methods to remove theme overrides 2021-03-23 00:51:16 +01:00
Rémi Verschelde 6fa24729ae
Merge pull request #45571 from aaronfranke/node2d-real_t
Use real_t in 2D nodes
2021-03-23 00:10:53 +01:00
Rémi Verschelde 4bacb86f56
Merge pull request #46735 from fabriceci/fix-dialog-translation
Fix translations update in window & Dialogs (AcceptDialog/ConfirmationDialog/FileDialog) (Fix 39320, 39258 &  45887)
2021-03-23 00:03:31 +01:00
Rémi Verschelde bb8340302c
Merge pull request #47180 from YeldhamDev/popupmenu_width_fix
Fix wrong width with PopupMenus on first opening in the editor
2021-03-22 23:51:57 +01:00
Juan Linietsky 97a3a66220 Improved 3D Scene Importer
* Added option for importers to show an Advanced settings dialog
* Created advanced settings dialog for Scene Importer
* Cleaned up importers (remove many old/unused options)
* Added the ability to customize every node, material, mesh and animation individually
* Saving to animations and meshes to files is now a manual process, making it more predictable
* Added the ability for materials to be replaced by external files (or to be made external, up to you).
* When doubleclicking an impoted scene in the filesystem dock, it automatically shows the import settings instead of asking to open it.

WARNING: Lightmap UV unwrap is not working, it needs to be re-made.
2021-03-22 12:16:40 -03:00
Rémi Verschelde 7e86b4c0e4
Merge pull request #46280 from floppyhammer/AdjustCompletionPanelPosition
Improve Completion Panel Position in Shader Editor
2021-03-21 00:17:35 +01:00
jmb462 045f55ec00 Prevent resizing minimap bigger than GraphEdit (Fix #47189)
Minimap size couldn't be resized back after been resized bigger than GraphEdit cause the grabber was out of GraphEdit.
This commit prevents resizing minimap bigger than GraphEdit and fix this issue.
2021-03-20 15:09:50 +01:00
Michael Alexsander 1bece0da7c Fix wrong width with PopupMenus on first opening in the editor 2021-03-20 00:37:09 -03:00
Aaron Franke 6811a45b59
Use real_t in non-physics 2D nodes 2021-03-19 13:04:45 -04:00
Rémi Verschelde 3b380f4cdc
Merge pull request #47156 from LightningAA/graph-edit-scroll-zoom-4.0
Enable zooming in graph_edit with Ctrl + scrollwheel
2021-03-19 09:19:41 +01:00
Lightning_A d752482e7a Enable zooming graph_edit with scrollwheel 2021-03-18 18:34:29 -06:00
Justin Ho fa6fd3a2d0
Check for null pointer in get_column_width(0) 2021-03-18 10:25:55 -07:00
Rémi Verschelde 888051889e
Merge pull request #46674 from cmd410/fix-tab-container
Fix TabContainer _get_tab_width for localized node names
2021-03-17 21:05:20 +01:00
Rémi Verschelde e57f6e2cca
Merge pull request #47050 from jmb462/fix-bbcode-tables-overlap-with-bottom-text
Fix BBCode tables overlap with bottom text (Fix #47012)
2021-03-17 17:54:01 +01:00
Rémi Verschelde 4c56fcd6cd
Merge pull request #39810 from christinoleo/master
Make GraphNode handle children with EXPAND flag
2021-03-16 18:10:08 +01:00
jmb462 25af026d9e Fix BBCode tables overlap with bottom text
New row height was added only if all the column was full.
2021-03-16 10:45:16 +01:00
Rémi Verschelde 6eef187a81
Merge pull request #46993 from gongpha/check-if-edit-called-via-editor
Check if _edit_set_position and _edit_set_rect was used outside an editor
2021-03-15 08:57:45 +01:00
Kongfa Waroros b80406770f Check if _edit_set_position and _edit_set_rect was used outside an editor 2021-03-15 14:34:24 +07:00
Yuri Sizov 0c41411fe8 Fix stale tab names in TabContainer 2021-03-14 22:54:46 +03:00
bruvzg 48698ccb9f
Fix RTL BBCode range regression and selection issues. 2021-03-14 19:54:48 +02:00
Pop0p c8538153b0 trims_whitespaces_when_creating_folder_windows
When creating a Windows folder via a Godot's dialog, the extra spaces are not removed which causes problems with Windows. We now remove leading and trailing whitespace when creating a dir.
2021-03-13 17:09:25 +01:00
fabriceci 697c594cd8 fix translation not updating in ConfirmationDialog (and Window by inheritance) 2021-03-12 17:51:33 +01:00
Anshul7sp1 91181c2086 Fixes small typos and grammar correction 2021-03-12 19:05:16 +05:30
Rémi Verschelde 08767a16fd
Merge pull request #46913 from Faless/js/4.x_vk
[HTML5] Experimental (opt-in) virtual keyboard support.
2021-03-12 09:48:34 +01:00
Rémi Verschelde 02ae0afe63
Merge pull request #46699 from sps1112/fix-control.edit_set_state-crash
Add size and dictionary check in Control::_edit_set_state() to fix crash
2021-03-12 09:46:03 +01:00
Fabio Alessandrelli eda5ae9d75 Add IME support checks in LineEdit/TextEdit.
Avoid spamming "IME is unsupported" when the DisplayServer report it as
such.
2021-03-11 23:04:22 +01:00
Kongfa Waroros d295d53b4a Add interpolation bar on each channel in ColorPicker 2021-03-09 14:58:19 +07:00
Leonardo Christino 5d574d980d Make GraphNode handle children with EXPAND flag 2021-03-08 13:52:19 -04:00
jmb462 3bd44f3cb6 fix Label visible_characters bad precision 2021-03-07 23:18:16 +01:00
Rémi Verschelde 9b853d7a7b
Merge pull request #46572 from jmb462/fix-selection-error-after-commenting-or-indenting
Fix selection error after commenting or indenting text (Fix #46477 issue)
2021-03-07 17:03:54 +01:00
Rémi Verschelde dc2207d8e8
Merge pull request #46627 from jmb462/fix-incorrect-autoindentation-in-multiline-brackets
Fix incorrect auto-indentation in multiline brackets (fix #46384)
2021-03-07 16:55:32 +01:00
Rémi Verschelde c487f1e854
Merge pull request #46643 from YeldhamDev/hide_all_the_things
Hide more options of disabled properties
2021-03-07 15:12:15 +01:00
kobewi 83f6c6b360 Release mouse when SpinBox leaves scene tree 2021-03-06 22:22:24 +01:00
sps1112 05f5a43cad Fix Control._edit_set_state crash 2021-03-05 21:52:34 +05:30
Crystal Melting Dot 89baf02fb6 Fix TabContainer _get_tab_width
Now it translates node name before calculating tab width
2021-03-04 22:10:28 +03:00
Rémi Verschelde 372b1b8f68 Revert "Add size check in Control._edit_set_state to prevent crash"
This reverts commit ef1d58f034.
2021-03-04 12:06:58 +01:00
Rémi Verschelde dd1881ae19
Merge pull request #46524 from kuruk-mm/lineedit_triple_click
LineEdit: Now double click to select a word, and triple click to sele…
2021-03-04 10:18:20 +01:00
Rémi Verschelde 8ff25ffb78
Merge pull request #46620 from sps1112/fix-control.edit_set_state-crash
Add size check in Control::_edit_set_state()  to fix crash
2021-03-04 07:46:16 +01:00
sps1112 ef1d58f034 Add size check in Control._edit_set_state to prevent crash 2021-03-04 10:55:42 +05:30
Michael Alexsander 4be282a269 Hide more options of disabled properties 2021-03-03 20:51:35 -03:00
kobewi 5cd5722f6a Deselect column only if belongs to deselected item 2021-03-03 19:39:29 +01:00
jmb462 f05d6f66b0 fix incorrect iauto-indentation in mutliline bracket (fix #46384) 2021-03-03 18:59:59 +01:00
jmb462 5c58d3731c fix selection error after commenting or indenting text 2021-03-01 21:57:26 +01:00
Rémi Verschelde 09b5d6886f
Merge pull request #46563 from pycbouh/graph-edit-hide-minimap-properly
Properly hide GraphEdit's minimap
2021-03-01 17:26:50 +01:00
Yuri Sizov 2ff1c48e0c Properly hide GraphEdit's minimap 2021-03-01 18:19:48 +03:00
Rémi Verschelde ec7053259b
Merge pull request #41437 from KoBeWi/put_it_here
Allow to create a node at specific position
2021-03-01 15:48:53 +01:00
Mateo Kuruk Miccino a3db2fd46b LineEdit: Now double click to select a word, and triple click to select all the content using the new TextServer
TextEdit: Update the method to search words with the new TextServer
2021-03-01 08:38:08 -03:00
kobewi 5e4ab20296 Warn about changing size only when it's relevant 2021-02-27 19:24:59 +01:00
Yuri Roubinsky e3131adc1c Fix GraphEdit connects when graph is zoomed/unzoomed 2021-02-27 20:26:35 +03:00
Tomasz Chabora 8df22a03c4 Allow to create a node at specific position 2021-02-26 14:40:28 +01:00
Rémi Verschelde 494e1cb148
Merge pull request #38918 from EricEzaM/fix-slider-focus-on-scroll-input
Fixed issue with slider focus and scroll input
2021-02-25 18:09:04 +01:00
Eric M d91e915d79 Fixed 'nonexistent action' errors spammed at startup on OSX 2021-02-24 23:16:22 +10:00
reduz d6a9cff8b7 Add preview Sun and Environment
* Adds both a preview sun and preview environment to the 3D editor.
* They are valid as long as a DirectionalLight3D and WorldEnvironment are not in the scene.
* If any is added to the scene, the respective preview is disabled.
* Changed WorldEnvironment to better handle multiple node versions.
* Added a function in SceneTree to get the first node in a group.
* Fixed button minimum size to also consider font height if no text is there, this broke with the TextSever PR.
2021-02-22 16:56:29 -03:00
Rémi Verschelde cb29e6c49c
Merge pull request #45994 from Jummit/expose-edit-selected
Expose edit_selected in Tree
2021-02-22 16:29:03 +01:00
Jummit 13fb24cb6f expose edit_selected in Tree 2021-02-22 15:50:21 +01:00
floppyhammer e927a9fef0 ImproveCompletionPanelPositionInShaderEditor 2021-02-22 11:08:51 +08:00
Rémi Verschelde 14f6f92a72
Merge pull request #46230 from gongpha/keep-hue-value
Keep Hue value when Saturation or Value is zero
2021-02-21 23:36:19 +01:00
kleonc d7bb7cad47 Label::set_lines_skipped Fail if passed a negative value 2021-02-21 14:23:57 +01:00
Tomasz Chabora 84da090a69 Warn when setting Control size inside ready() 2021-02-19 18:32:24 +01:00
Kongfa Waroros 27749711b2 Keep Hue value when Saturation or Value is zero 2021-02-19 23:53:00 +07:00
Eric M 49714b0963 Removed hardcoded shortcuts from /scene and converted to input actions
This removes hardcoded actions from things like LineEdit and TextEdit.

Previously, things like copy, paste, etc were all hardcoded to Ctrl+C, Ctrl+V, etc. They could not be changed. This allows the possibility of them being changed, by making them use the action map. This has the added benefit of greatly simplifying the input handling logic in those controls. The logic which was previously in a huge and hard to follow switch statement has been extracted to individual methods.
2021-02-18 16:22:51 +01:00
reduz 64140eaf42 Reorganize Project Settings
-Advanced Settings toggle also hides advanced properties when disabled
-Simplified Advanced Bar (errors were just plain redundant)
-Reorganized rendering quality settings.
-Reorganized miscelaneous settings for clean up.
2021-02-18 11:23:34 -03:00
Kongfa Waroros 7c6646c8ac Avoid signal methods in ColorPicker to access the tree when it isn't in the tree 2021-02-18 20:30:22 +07:00
Rémi Verschelde bab06c9d06
Merge pull request #46081 from YeldhamDev/popupmenu_fixes
Fix various small issues with PopupMenu
2021-02-16 13:59:30 +01:00
Rémi Verschelde ba8b95a2a1
Merge pull request #46088 from groud/fix_line_edit
Fix minimum_character_width in LineEdit
2021-02-16 11:11:03 +01:00
Rémi Verschelde 584240b0d7
Merge pull request #45899 from nekomatata/richtextlabel-get-selection
Expose RichTextLabel selection to script
2021-02-16 10:56:37 +01:00
Gilles Roudière 737dd5ee8c Fix minimum_character_width in LineEdit 2021-02-16 10:51:17 +01:00
Michael Alexsander 96fa719026 Fix various small issues with PopupMenu 2021-02-16 01:12:08 -03:00
kobewi 282639d653 Select TreeItem if none is selected 2021-02-16 01:36:16 +01:00
PouleyKetchoupp 4586357dde Expose RichTextLabel selection to script
Expose existing get_selection_text and add methods to get the current
selection index from and index to.
2021-02-15 17:26:58 -07:00
Eric M 26c29cc0d7 Improved PopupMenu visuals. Removed x-y margin, made it 'padding' instead. 2021-02-15 15:45:25 +10:00
kleonc a4afdd4a77 RichTextLabel::add_image Fail if passed image has no area 2021-02-14 16:09:55 +01:00
Rémi Verschelde cdfd3ffe15
Merge pull request #44747 from bruvzg/missing_outlines
[CTL] Add missing theme properties for outlines, fix underline scaling, and RTL cell padding.
2021-02-14 13:49:14 +01:00
bruvzg 1f60ac1e08
[CTL] Fix RichTextLabel cell horizontal padding. 2021-02-14 14:11:49 +02:00
bruvzg d78336c65e
[CTL] Add missing font outline drawing routines and theme constants. 2021-02-14 14:11:44 +02:00
Rémi Verschelde 6fb1ed2bca
Merge pull request #45942 from YeldhamDev/label_height_empty
Keep Label's min height when empty
2021-02-14 13:10:54 +01:00
Rémi Verschelde 7128f09a5d
Merge pull request #45858 from nekomatata/text-edit-style-content-margins
TextEdit respects content margin from StyleBox
2021-02-13 17:41:53 +01:00
Rémi Verschelde 48e7cced9f
Merge pull request #45881 from nekomatata/textedit-wrap-autoscroll
Fix TextEdit autoscroll with wrapped lines
2021-02-13 17:41:20 +01:00
Michael Alexsander 85dc55a82c Keep Label's min height when empty 2021-02-12 21:13:49 -03:00
PouleyKetchoupp 121030940c Fix TextEdit autoscroll with wrapped lines
Index to find the last line wrap index was off by one, which prevented the first wrapped line to trigger autoscroll.
2021-02-12 13:44:46 -07:00
PouleyKetchoupp 100fc26f39 TextEdit respects content margin from StyleBox
Now TextEdit adjusts x & y offset according to the corresponding
StyleBox when in normal or read-only mode.

In order to handle bottom content margin, wrapped lines that are entirely outside the stylebox content area are not drawn.
2021-02-12 13:22:06 -07:00
reduz 28537d8c84 Fix LineEdit minimum width
-Changed theme setting name to make more sense of what it does
-Reduced amount of minimum characters, so minimum size is smaller.
2021-02-12 17:04:38 +01:00
bruvzg 6c9e608a34
Use get_char_size(' ') to calculate space width. 2021-02-12 15:06:50 +02:00
Rémi Verschelde 604188c411
Merge pull request #45870 from gongpha/graphedit-connection-update
Update GraphEdit when GraphNode's slot is updated
2021-02-11 13:11:50 +01:00
reduz 1aa2823fa3 Removed _change_notify
-For inspector refresh, the inspector now detects if a property change by polling a few times per second and then does update the control if so. This process is very cheap.
-For property list refresh, a new signal (property_list_changed) was added to Object. _change_notify() is replaced by notify_property_list_changed()
-Changed all objects using the old method to the signal, or just deleted the calls to _change_notify(<property>) since they are unnecesary now.
2021-02-10 19:31:24 -03:00
Kongfa Waroros fe6c8d48e6 Update GraphEdit when GraphNode's slot is updated 2021-02-11 01:07:54 +07:00
Rafał Mikrut 7961a1dea3 Initialize class variables with default values in scene/ [2/2] 2021-02-09 18:24:36 +01:00
Rémi Verschelde df9c98e107
Merge pull request #45812 from RandomShaper/keep_selected_visible
Keep selected node visible after filter change
2021-02-09 10:43:21 +01:00
Rémi Verschelde 59924a09e8
Merge pull request #45806 from KoBeWi/forest_of_deselection
Set selected Tree item to null when deselected
2021-02-08 22:22:52 +01:00
Kanabenki 03d4ebf129 Update ColorPicker controls when entering tree 2021-02-08 19:25:50 +01:00
Pedro J. Estébanez 177b804f30 Expose Tree::scroll_to_item() 2021-02-08 02:19:13 +01:00
kobewi ef8ec59f2f Set selected Tree item to null when deselected
Co-authored-by: Brody Eller <wviper3@gmail.com>
2021-02-07 22:12:52 +01:00
Oliver Dick 8d598693fc TextEdit: When left mouse is pressed to place the cursor, do not immediately adjust the viewport when cursor_set_line is called, but afterwards on cursor_set_column (effectively when the cursor reached its final position)
Fixes #45770
2021-02-07 00:28:57 +01:00
Rémi Verschelde 69152af45d doc: Don't bind argument names with p_ prefix
This prefix is used in the C++ codebase, not in the scripting API.
2021-02-04 14:45:06 +01:00
Rémi Verschelde 264504d76d
Merge pull request #45110 from fmazan/completion-panel-positioning
Fixed completion and hint panel positioning in TextExit
2021-02-01 20:50:17 +01:00
Rémi Verschelde c4811ab525
Merge pull request #45549 from flyingpimonster/graphnode-icon
GraphNode: Add properties for custom icons
2021-02-01 20:49:19 +01:00
bruvzg c75923498e
Use integer coordinates for the font glyphs rendering. 2021-01-31 20:10:50 +02:00
James Westman 08e1453d7f
GraphNode: Add properties for custom icons
Add properties for the slots' icon textures, so they can be set easily
in the editor.

Fixes #45487.
2021-01-28 21:22:25 -06:00
Volka ae2cf8eb38 Fix unintended SpinBox mouse capture 2021-01-26 21:17:31 -05:00
Rémi Verschelde eda5f4ea31
Merge pull request #44349 from KoBeWi/drop_the_data!
Allow to override drop data in LineEdit
2021-01-26 16:03:07 +01:00
Rémi Verschelde b84729f848
Merge pull request #45220 from Calinou/range-ratio-equal-min-max-no-error
Make Range return 1.0 ratio if minimum and maximum values are equal
2021-01-26 15:24:58 +01:00
Rémi Verschelde bdfc7a6b40
Merge pull request #45369 from naithar/fix/line_edit_clear-4.0
[4.0] [GUI] Fix LineEdit clearing
2021-01-26 12:30:34 +01:00
Sergey Minakov ba6aa76992 [GUI] Enforce virtual keyboard redisplay on clear 2021-01-26 13:17:20 +03:00
Nils Reid 3e94c23fa5 Exposed find_next_valid_focus and find_prev_valid_focus. 2021-01-26 08:19:20 +01:00
Rémi Verschelde 6cba658934
Merge pull request #44194 from madmiraal/fix-font_selected_color
Change themes font_color_selected to font_selected_color
2021-01-26 00:03:40 +01:00
Yuri Sizov 9d9d0f0bc9 Fix minimap capturing events and improve its theme
Add an editor setting for minimap opacity in visual editors
2021-01-25 21:49:07 +03:00
Marcel Admiraal 8eb39f4e8b Change themes *_color_* to *_*_color
Changed:
font_color_accel -> font_accelerator_color
font_color_bg -> font_unselected_color
font_color_disabled -> font_disabled_color
font_color_fg -> font_selected_color
font_color_hover -> font_hover_color
font_color_hover_pressed -> font_hover_pressed_color
font_color_pressed -> font_pressed_color
font_color_readonly -> font_readonly_color
font_color_selected -> font_selected_color
font_color_shadow -> font_shadow_color
font_color_uneditable -> font_uneditable_color
icon_color_disabled -> icon_disabled_color
icon_color_hover -> icon_hover_color
icon_color_hover_pressed -> icon_hover_pressed_color
icon_color_normal -> icon_normal_color
icon_color_pressed -> icon_pressed_color

Also includes:
font_outline_modulate -> font_outline_color
tab_fg -> tab_selected
tab_bg -> tab_unselected
2021-01-24 06:28:49 +00:00
bruvzg e4651a44ab
RichTextLabel: adds separate `get_total_x_count`, `get_visible_x_count` and `scroll_to_x` functions for wrapped lines and paragraphs (newlines). 2021-01-18 11:26:55 +02:00
Hugo Locurcio 44204ec32d
Make Range return 1.0 ratio if minimum and maximum values are equal
An error message is also no longer printed.
This matches the behavior found in most UI frameworks where having
equal minimum and maximum values is considered acceptable.

This closes #43179.
2021-01-15 23:14:50 +01:00
Rémi Verschelde 1ffe3ed47a
Merge pull request #33685 from Scony/improve-item-lists-add-item-methods
ItemList's add_(icon_)item method returns id of added item
2021-01-15 16:24:20 +01:00
Rémi Verschelde 86e2d4c593
Merge pull request #45196 from Paulb23/text_edit_draw_behind_gutter
Fix TextEdit drawing Caret and icons out of bounds
2021-01-15 16:08:45 +01:00
Rémi Verschelde 274db4aa64
Merge pull request #45149 from pycbouh/ge-disconnect-crash
Prevent signal disconnection attempts on invalid references
2021-01-15 12:48:56 +01:00
Rémi Verschelde 64ba83a096
Merge pull request #44870 from alexpech12/fix-rich-text-label-set-visible-characters
Keep RichTextLabel visible character properties in sync
2021-01-15 00:59:26 +01:00
Paulb23 7666c1caf3 Fix TextEdit drawing Caret and icons out of bounds 2021-01-14 22:19:57 +00:00
Yuri Sizov 5e8e9fc601 Prevent signal disconnection attempts on invalid references 2021-01-14 15:19:32 +03:00
Alexander Pech 463e2002ab Keep RichTextLabel visible character properties in sync
The RichTextLabel class is inconsistent in how it updates the
visible_characters and percent_visible properties when either is changed.

To keep both properties consistent, update percent_visible when setting the
visible_characters property.
For both properties, when setting one, notify change for the other.

Docs updated for member set_visible_characters on RichTextLabel class.
2021-01-14 21:32:41 +11:00
Rafał Mikrut 56734f44e5 Fix errors when removing non Control node from TabContainer 2021-01-12 10:48:18 +01:00
Filip de9e1e4540 Fixed completion and hint panel positioning in TextExit 2021-01-11 22:05:38 +01:00
Rémi Verschelde 50f7314329
RichTextLabel: Fix build after #35505
Should have rebased before merging.
2021-01-08 09:18:19 +01:00
Rémi Verschelde 9349a5507f
Merge pull request #35505 from dalexeev/rtl_colors
Unified named colors in RichTextLabel
2021-01-08 09:03:55 +01:00
gongpha bb867d41ee Blocking updating in SceneTreeEditor when editing an item 2021-01-06 14:46:48 +07:00
David Kennedy 715cf48f81 Makes script editor not draw non existent spaces.
Fixes #44775 Editor is incorrectly drawing non existent space.
2021-01-05 20:20:41 -03:00
Rémi Verschelde 8b7f582f22
Revert "solved ctrl + alt + special character Issue #6851" 2021-01-05 14:41:35 +01:00
Rémi Verschelde 321a4d5e79
Merge pull request #44906 from EricEzaM/PR/popup-menu-fix-not-matching-button-size
Fixed PopupMenu not matching parent MenuButton/OptionButton width
2021-01-04 14:47:32 +01:00
Eric M 056fcf3d75 Fixed PopupMenu not matching parent MenuButton/OptionButton width 2021-01-04 18:47:09 +10:00
Eric M e5aaa7d890 Fixed hover highlight style rect of items being cut off.
This was caused by an incorrect calculation of the height of each item when determining the minimum size, plus a few things which were leftover after the PopupMenu rework.
2021-01-04 18:35:40 +10:00
Rémi Verschelde b5334d14f7
Update copyright statements to 2021
Happy new year to the wonderful Godot community!

2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.

We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)

Here's to a great year 2021 for all Godot users 🎆
2021-01-01 20:19:21 +01:00
Rémi Verschelde 3a9777cb3f
Merge pull request #44724 from Chaosus/popup_separator
Added optional id parameter to `PopupMenu::add_separator`
2020-12-29 17:39:44 +01:00
Rémi Verschelde 09212fba1e
Fix missed renamings from empty() to is_empty()
Those were missed in #44401 or added by later PRs.
2020-12-29 09:55:07 +01:00
Rémi Verschelde c6e9d912e1
Merge pull request #44781 from mrushyendra/scroll_container_ready_fix
Allow ScrollBar params of a ScrollContainer to be modified from _ready()
2020-12-29 09:44:08 +01:00
Rémi Verschelde 652bdd573e
Merge pull request #43691 from bruvzg/ctl_dropcap
[Complex Text Layouts] Add drop-cap support to RTL.
2020-12-29 09:14:46 +01:00
Maganty Rushyendra b8610dbd31 Allow ScrollBar params of a ScrollContainer to be modified in _ready()
Initializes the sizes of the ScrollContainer and its associated
ScrollBars in _ready() to allow scroll values to be set in GDScript
initially.
2020-12-29 13:02:02 +08:00
Rémi Verschelde 6cebb8c117
Merge pull request #44586 from madmiraal/rename-stepify
Rename Math::stepify to snapped
2020-12-28 21:46:43 +01:00
Rémi Verschelde feb4e5ed2c
Merge pull request #44569 from madmiraal/rename-unselect-deselect
Rename unselect to deselect
2020-12-28 14:53:43 +01:00
Rémi Verschelde 891b1cdf28
Merge pull request #44607 from madmiraal/rename-control-rotation
Rename Control rotation to rotation_degrees
2020-12-28 14:42:06 +01:00
Marcel Admiraal b743a2ef3c Rename Math::stepify to snapped 2020-12-28 13:01:30 +00:00
Marcel Admiraal 5b937d493f Rename empty() to is_empty() 2020-12-28 10:39:56 +00:00
Yuri Roubinsky ca8c794d04 Added optional id parameter to `PopupMenu::add_separator` 2020-12-27 15:18:47 +03:00
Marcel Admiraal dc8c29ee95 Update GraphEdit connection to reflect new signal name 2020-12-26 09:48:40 +00:00
Rémi Verschelde c4c211c3b7
Merge pull request #44605 from madmiraal/rename-control-margin
Rename Control margin to offset
2020-12-23 18:24:00 +01:00
Marcel Admiraal b832003c6b Rename Control rotation to rotation_degrees 2020-12-23 07:06:30 +00:00
Marcel Admiraal 4b8b803931 Rename Control margin to offset 2020-12-23 06:25:56 +00:00
Marcel Admiraal 7b293eddfb Rename unselect to deselect 2020-12-21 10:26:41 +00:00
bruvzg 784f869f0f
Fix RichTextLabel content height and scrollbar calculations. 2020-12-21 07:49:27 +02:00
bruvzg 1adea98d07
Use integer text position in scroll container, TextEdit and canvas editor, to ensure sharp text rendering.
Use integer font align/advance with any font scaling, to ensure sharp text rendering.
2020-12-21 07:49:27 +02:00
Rémi Verschelde f7ddcbf446
Merge pull request #44328 from gongpha/tabs-label-incorrect
Refresh TextLine buffer when moving a tab
2020-12-21 00:26:08 +01:00
Rémi Verschelde 153c132a7e
Merge pull request #44300 from KoBeWi/🧹🧹
Move initialization of some classes to headers
2020-12-21 00:24:36 +01:00
Yuri Roubinsky 52e44ed3ef Added GraphEdit properties to control lines thickness and antialiasing 2020-12-18 16:41:45 +03:00
Yuri Sizov f5bcbd8325 FIx visual issues with GraphEdit minimap 2020-12-17 22:59:04 +03:00
Rémi Verschelde c83d1b2526
Merge pull request #43416 from pycbouh/graph-minimap
Add a minimap to the GraphEdit
2020-12-17 17:34:36 +01:00
Rémi Verschelde 3d7b01723b
Merge pull request #44412 from DanielZTing/rename
Rename neighbour in Control to neighbor
2020-12-16 14:16:28 +01:00
Sergey Minakov efeb9e4d08 GUI: use cursor in TextEdit for non selected text. 2020-12-16 05:41:14 +03:00
Daniel Ting aea7fde241 Rename neighbour in Control to neighbor
This keeps things consistent with the rest of Godot, which uses the
American English spelling of Color.
2020-12-15 16:42:21 -06:00
Rémi Verschelde 7e3424e3ab
Merge pull request #44377 from Calinou/rename-textureprogressbar
Rename the TextureProgress node to TextureProgressBar
2020-12-15 13:34:32 +01:00
Hugo Locurcio 57dcc83152
Rename the TextureProgress node to TextureProgressBar
Advantages:

- When searching for "progressbar", you'll see both nodes in the
  search results.
- More consistent with Button/TextureButton.
2020-12-14 21:35:13 +01:00
Marcel Admiraal 8509c8c8fc Rename AcceptDialog get_ok() to get_ok_button()
Also renames:
- AcceptDialog add_cancel() to add_cancel_button()
- ConfirmationDiaglog get_cancel() to get_cancel_button()
2020-12-14 18:43:52 +00:00
bruvzg 62927383ed
[Complex Text Layouts] Add drop-caps support to TextParagraph and RTL. 2020-12-13 22:20:02 +02:00
kobewi a3a31591b5 Allow to override drop data in LineEdit 2020-12-13 20:16:56 +01:00
Rémi Verschelde bbf7bb3838
Merge pull request #42595 from bruvzg/ctl_rich_text
[Complex Text Layouts] Refactor RichTextLabel.
2020-12-13 13:42:00 +01:00
gongpha 0394ff3c99 Refresh TextLine buffer when moving tab 2020-12-13 02:38:53 +07:00
Tomasz Chabora 31cb04fbdd Move initialization of some classes to headers 2020-12-11 18:20:03 +01:00
Yuri Roubinsky 2d4ef1c193 Fixed mouse scrolling in TextEdit's 2020-12-11 12:51:10 +03:00
bruvzg 6b6f101983
[Complex Text Layouts] Refactor RichTextLabel. 2020-12-11 09:48:49 +02:00
Michael Alexsander bb39088201 Allow to circle back in 'PopupMenu' even if the first/last item is non-selectable 2020-12-10 09:32:02 -03:00
Rémi Verschelde 2a325f3888
Merge pull request #44233 from YeldhamDev/popupmenu_circle_back
Re-add circle back scrolling to 'PopupMenu'
2020-12-10 11:16:38 +01:00
Rémi Verschelde 67259d07db
Merge pull request #44070 from YeldhamDev/popupmenu_separator_font_color
Add "font_color_separator" theme property to 'PopupMenu'
2020-12-10 11:13:07 +01:00
Rémi Verschelde 70c435272a
Merge pull request #44124 from volzhs/tabs-in-front
Add option to draw all tabs in front
2020-12-10 07:55:41 +01:00
volzhs 814f9015f8 Add option to draw all tabs in front 2020-12-10 07:47:10 +09:00
Michael Alexsander e8e0abc331 Re-add circle back scrolling to 'PopupMenu' 2020-12-09 13:25:00 -03:00
Rémi Verschelde 114f97ff11
Merge pull request #44128 from KoBeWi/🧹
Cleanup unused engine code
2020-12-09 13:01:50 +01:00
Tomasz Chabora 2c048ea164 Cleanup unused engine code 2020-12-09 12:12:36 +01:00
Rémi Verschelde 9a8e123593
Fix connections to CanvasItem and Tabs signals
Follow-up to #44188 and #44189.
2020-12-09 12:04:02 +01:00
bruvzg 644f739660
Static analyzer fixes:
Removes unused code in OS.
Fixes return types.
Fixes few typos.
2020-12-09 10:17:53 +02:00
Marcel Admiraal a65e609e21 Rename Tabs close and hover signals to tab_closed and tab_hovered 2020-12-08 09:51:06 +00:00
bruvzg 0ef483e9a9
[Complex Text Layouts] Performance optimizations. 2020-12-07 08:53:02 +02:00
bruvzg a41f1c67e5
[Complex Text Layouts] Fix missing ItemList item text buffer init in `add_icon_item`. 2020-12-06 20:31:00 +02:00
bruvzg c3cc9d82b4
[Complex Text Layouts] Align glyph offsets and advances to the pixel grid. 2020-12-06 20:31:00 +02:00
bruvzg a458e90179
[Complex Text Layouts] Adds missing Font::SPACING_* to the Label, LineEdit, TextEdit, TextLine and TextParagraph.
Fixes oversized editor control height (default editor spacing is negative) and control size changing when text is set.
2020-12-06 20:30:59 +02:00
Rémi Verschelde 1a001ad964
doc: Sync classref with current source
And fixups:
- Add missing bindings in RenderingServer
- Remove duplicate ArrayMesh enum bindings (they're in Mesh already)
- Remove redundant _unhandled_key_input binding in Control (it's in Node
  already)
2020-12-04 22:28:08 +01:00
Michael Alexsander 383e8919e0 Add "font_color_separator" theme property to 'PopupMenu' 2020-12-03 11:36:03 -03:00
volzhs d89677442b Update page value properly of ScrollContainer 2020-12-01 11:52:37 +09:00
Yuri Sizov 999ce610a2 Add a minimap to the GraphEdit 2020-11-30 16:48:52 +03:00
Rémi Verschelde 72366c1858
Merge pull request #43971 from volzhs/fix-tab-container
Fix TabContainer crashes
2020-11-30 09:41:30 +01:00
FIF15 96fb9eeca4 fix #43695 by revert part of #41576
Note that #42109 already reverted the change of MenuButton,
and actually fixed #43695.
As a result, this commit only reverts the change to LinkButton,
in order to prevent unpredictable consequences.
2020-11-30 12:28:45 +08:00
volzhs f1eab4afbd Fix TabContainer crashes 2020-11-30 11:05:59 +09:00
Eric M 12ded391f5 Exposed shortcut_context property to scripting and added documentation.
I didn't expose this as a property or add documentation in the original PR #42109.
2020-11-30 00:11:40 +10:00
Yuri Roubinsky 4a3588a51a
Merge pull request #43828 from Chaosus/restore_line_antialiasing
Restored antialiased lines by emulation using triangle strips
2020-11-28 11:32:16 +03:00
Rémi Verschelde a09846e015
Merge pull request #42109 from EricEzaM/PR/input-and-shortcuts-rework
Shortcuts rework - fixed issues with input propagation and triggering of unwanted shortcuts.
2020-11-28 09:04:25 +01:00
Yuri Roubinsky 3ec972fc95 Restored antialiased lines by emulation using triangle strips 2020-11-27 20:45:59 +03:00
bruvzg 3be31c4960
[Complex Text Layouts] Refactor TextEdit and CodeEdit controls. 2020-11-26 14:25:50 +02:00
bruvzg d66eb77c9c
[Complex Text Layouts] Refactor Label and LineEdit controls. 2020-11-26 14:25:49 +02:00
bruvzg 99666de00f
[Complex Text Layouts] Refactor Font class, default themes and controls to use Text Server interface.
Implement interface mirroring.
Add TextLine and TextParagraph classes.
Handle UTF-16 input on macOS and Windows.
2020-11-26 14:25:48 +02:00
Rémi Verschelde a8c2cc9028
Merge pull request #43807 from Xrayez/aspect-ratio-container
Add `AspectRatioContainer` class
2020-11-26 12:20:15 +01:00
Eric M 4d10524f7f Removed unused property 'pending_resize' from Control 2020-11-26 15:30:13 +10:00
Andrii Doroshenko (Xrayez) ba68383706 Add `AspectRatioContainer` class
Co-authored-by: Ugis Brekis <ugis.brekis@productmadness.com>
2020-11-25 15:06:40 +02:00
Rémi Verschelde 8c713fa9bf
Merge pull request #43833 from volzhs/fix-scrollcontainer-bar-max-value
Fix to update scroll bar has correct max value in ScrollContainer
2020-11-25 13:27:36 +01:00
Tomasz Chabora 836b78f329 Update clear button when clicked 2020-11-25 00:42:07 +01:00
volzhs 67c2f2445f Fix to update scroll bar has correct max value in ScrollContainer 2020-11-25 05:30:55 +09:00
Eric M 7941235e06 Add is_valid() check for InputEventKey in CanvasItemEditor. 2020-11-23 21:52:15 +10:00
Eric M efe5c250d5 Implement new shortcuts system.
unhandled_key_input changed to unhandled_button_input. Controls can set a 'shortcut_context' which they can then use to determine if their shortcuts should be triggered or not, based on if the viewport's focused GUI control is a child of their 'shortcut context'.
2020-11-23 21:14:26 +10:00
Eric M 9d7d20a978 Added accept_event() calls for SceneTreeDock and BaseButton 2020-11-23 21:14:25 +10:00
Aaron Franke 02161aad5a
Remove empty lines around braces with the formatting script 2020-11-16 23:38:11 -05:00
Danil Alexeev 01d0addf56 Unified named colors in RichTextLabel
Now the BB tag `[color]` uses the color names from the `Color` class.
Also, the use of the `#` symbol in an HTML color code has become optional.
2020-11-17 02:55:36 +03:00
Rémi Verschelde fc70f986b9
Merge pull request #42008 from Calinou/theme-rename-node-type
Rename the `type` parameter to `node_type` in Theme and Control
2020-11-16 13:20:24 +01:00
Rémi Verschelde 94875f5f48
Merge pull request #41851 from EricEzaM/PR/popup-menu-hysteresis
Added hysteresis for popup sub-menus
2020-11-16 09:34:28 +01:00
Sergey Minakov 8894c64e54 GUI: send cursor data from TextEdit 2020-11-15 16:03:21 +03:00
Rémi Verschelde acb7d99fce
Merge pull request #43449 from nekomatata/line_edit_window_pos
Expose LineEdit scroll offset to scripts
2020-11-11 13:18:55 +01:00
PouleyKetchoupp 4775db1600 Expose LineEdit scroll offset to scripts 2020-11-11 10:07:31 +01:00
Eric M c482e8ec85 Added hysteresis for popup sub-menus
This adds a small lag effect when opening submenus which allow the user to move directly to an item on the submenu without worrying about avoiding the autohide regions.
2020-11-08 13:28:23 +10:00
reduz 127458ed17 Reorganized core/ directory, it was too fatty already
-Removed FuncRef, since Callable makes it obsolete
-Removed int_types.h as its obsolete in c++11+
-Changed color names code
2020-11-07 20:17:12 -03:00
Rémi Verschelde 52c1b5fc41
Merge pull request #43283 from Calinou/color-remove-contrasted
Remove `Color.contrasted()` as its behavior is barely useful
2020-11-06 10:17:12 +01:00
Hugo Locurcio 7adb6b91b3
Remove `Color.contrasted()` as its behavior is barely useful
Returning the most contrasting color isn't a trivial task, as there
are often many possible choices. It's usually best left for the user
to implement using a script.
2020-11-03 04:46:08 -05:00
Rémi Verschelde c5d8dafec4
Tooltips: Improve code clarity and docs
The return type for `_make_custom_tooltip` is clarified as Control, and users
should make sure to return a visible node for proper size calculations.

Moreover in the current master branch, a PopupPanel will be added as parent
to the provided tooltip to make it a sub-window.

Clarifies documentation for `Control._make_custom_tooltip`, and shows how to
use the (until now undocumented) "TooltipPanel" and "TooltipLabel" theme types
to style tooltips.

Fixes #39677.
2020-11-03 09:19:03 +01:00
volzhs 8a588343db Fix crash in TabContainer in case of no content at all 2020-10-29 19:52:21 +09:00
Yuri Roubinsky c3df61a602 Removed redundant line from TextEdit
introduced in https://github.com/godotengine/godot/pull/43026
2020-10-28 12:56:20 +03:00
Rémi Verschelde 60ad64a101
Merge pull request #42766 from volzhs/tab-container
Put unselected tabs back in TabContainer control
2020-10-28 09:51:41 +01:00
Hugo Locurcio c3b246e6af
Rename the `type` parameter to `node_type` in Theme and Control
This makes it clearer that it expects a node type as a string
(such as "Label") instead of a type like "TYPE_ARRAY".
This is backwards-compatible since only the name of the parameter
is changed, not its order.
2020-10-27 14:58:52 +01:00
Devin Curry b9c35af15d ScriptEditor: Fix line number gutter drag select
Fixes issue #42722
2020-10-25 12:13:54 -07:00
Aaron Franke 961ee3a1d7
Rename button group property to button_group 2020-10-24 01:30:18 -04:00
Yuri Roubinsky 4c65dc975c Shows ColorRect in Color constants autocompletion 2020-10-23 19:03:50 +03:00
Rémi Verschelde f0f8864c9c
Merge pull request #42907 from Xrayez/add-ref-rect-border-width
Add `border_width` to `ReferenceRect`
2020-10-22 15:58:12 +02:00
Yuri Roubinsky f2b98b4106 Remove printing of windowpos/screenpos in MenuButton 2020-10-21 09:58:37 +03:00
Andrii Doroshenko (Xrayez) aef00021a9 Add `border_width` to `ReferenceRect`
Exposes a hidden parameter behind `CanvasItem.draw_rect()`.
2020-10-20 13:58:50 +03:00
Yuri Roubinsky 4f4287243c Removed underscore from GraphEdit begin/end_node_move signals 2020-10-20 09:22:40 +03:00
Rémi Verschelde 970d0d433b
Merge pull request #42891 from gvaneyck/graph-begin-node-move-timing
Fix emit_signal timing for GraphEdit's begin/end node move
2020-10-20 07:48:06 +02:00
Gabriel Van Eyck fbc095dc78 Fix emit_signal timing for GraphEdit's begin/end node move 2020-10-19 18:25:07 -07:00
Rémi Verschelde ff48a6a3bc
Merge pull request #42874 from dreamsComeTrue/text-edit-bounds-fix
TextEdit - fix valid bounds in 'set_line'.
2020-10-19 22:37:41 +02:00
Andrii Doroshenko (Xrayez) 9c3a33a4e8 Fixup `ColorRect` and `TextureRect` renames 2020-10-19 19:34:35 +03:00
reduz ee06a70ea6 Refactor MethodBind to use variadic templates
Removed make_binders and the old style generated binders.
2020-10-18 12:28:44 +02:00
Dominik 'dreamsComeTrue' Jasiński 99c8a07919 TextEdit - fix valid bounds in 'set_line'. Fixes #41967 2020-10-17 17:59:15 +02:00
Paulb23 0d0a856ad5 Fixed main gutter not drawing on item toggle 2020-10-13 18:01:59 +01:00
volzhs 9eaa5ffab5 Put unselected tabs back in TabContainer control 2020-10-13 22:05:26 +09:00
FIF15 0e7e25d488 Remove redundant property "enabled_focus_mode"
Fixes #41529.
2020-10-13 10:04:37 +02:00
volzhs cac4fedb2a Respect Tree.set_icon_max_width size for drawing selection box 2020-10-13 10:38:32 +09:00
Duroxxigar 4834e14493 Updated getters and setters names for toplevel 2020-10-02 19:09:01 -04:00
Rémi Verschelde 19f72beebb
Merge pull request #42451 from Duroxxigar/rename-toplevel
Renamed toplevel to be top_level
2020-10-02 10:57:23 +02:00
Rémi Verschelde 12091b39d2
Merge pull request #38743 from arrowinaknee/node-config-warnings
Update all get_configuration_warning() to retrieve warnings from the parent
2020-10-01 14:03:29 +02:00
Duroxxigar b687ace7f9 Renamed toplevel to be top_level 2020-10-01 03:17:33 -04:00
Rémi Verschelde c217498aa6
Merge pull request #41895 from 11thPenguin/master
Fix minor typo, gui_hid -> gui_hide
2020-09-29 10:35:12 +02:00
Rémi Verschelde 77ca3c20d8
Merge pull request #42092 from DashCell/dropping_file_on_parrent_directory_fix
Dropping file on parent directory fixed
2020-09-28 10:36:47 +02:00
Rémi Verschelde 915ac7360a
Merge pull request #42066 from dalexeev/output_copy
Improvement for the Copy button in the Output Log
2020-09-24 15:18:59 +02:00
PouleyKetchoupp 54eaaf456f Fix popup menu item selected when opening the menu
In order to allow selecting items by either holding left click, or click
to open and click again to select, mouse button release was invalidated
based on the amount of mouse motion.

This was causing issues in some scenarios where an item could be
selected while opening the menu if the mouse moved enough between button
press and release.

This case could happen in the language selection of the project manager,
especially on linux, because of the order and timing of the mouse
events on x11.

This change invalidates mouse release based on a timing condition rather
than moved distance to handle any case from the display server properly.
2020-09-18 20:45:59 +02:00
Dashcell 1ac936f035 Dropping file on parrent dirrectory fixed 2020-09-16 14:53:22 -03:00
Rémi Verschelde 6f0fa8519f
Merge pull request #41776 from EricEzaM/PR/tooltip-bugfixes
Tooltip flickering and targeting fixes.
2020-09-15 10:24:17 +02:00
Eric M 07cb95bbda Tooltip flickering and targeting fixes. 2020-09-15 17:34:29 +10:00
Danil Alexeev fb6eb21afc Improvement for the Copy button in the Output Log
Now if no text is selected, pressing the Copy button copies the entire text.
2020-09-14 21:57:54 +03:00
Rémi Verschelde 463879db56
Merge pull request #41995 from Rubonnek/disconnect-item-rect-changed
Disconnect item_rect_changed removing a child of GraphEdit
2020-09-12 15:26:46 +02:00
Wilson E. Alvarez d370ae9e1f
Disconnect item_rect_changed when removing a child of GraphEdit 2020-09-11 17:37:20 -04:00
Marcel Admiraal 1bb65b2618 Remove bit fields and use fixed width integers instead. 2020-09-11 11:02:00 +01:00
Rémi Verschelde 9d9ee2d4c2
Merge pull request #41971 from nekomatata/richtextlabel-align-pointer
Fix RichTextLabel alignment for clickable regions
2020-09-11 09:39:48 +02:00
PouleyKetchoupp b783fa1416 Fix RichTextLabel alignment for clickable regions
Fixes #41006 (regression from #39164).

The original alignment fix was limited to PROCESS_DRAW mode, which
caused some discrepancies with PROCESS_POINTER mode.
Now only PROCESS_CACHE is excluded with a condition a few lines above.
2020-09-11 08:14:26 +02:00
Paulb23 33ab9cd621 Move safe line color into editor 2020-09-10 20:35:28 +01:00
Paulb23 d18a90b8f0 Move ConnectionGutter to editor code_editor 2020-09-10 20:35:28 +01:00
Paulb23 7829fdc1d0 Add folding gutter to code_edit 2020-09-10 20:35:28 +01:00
Paulb23 4d7df24d46 Add main_gutter (breakpoints, bookmarks, execution lines) to code_edit 2020-09-10 20:35:28 +01:00
Paulb23 907f9f2a84 Changed line_edited_from(from) to lines_edit_from(from, to) 2020-09-10 20:35:28 +01:00
Paulb23 1353ed5e44 Added Line numbers to CodeEdit 2020-09-10 20:35:28 +01:00
Paulb23 c13d9eb6e5 Added gutter system to TextEdit 2020-09-10 20:35:28 +01:00
Paulb23 a0b409cb14 Add and convert editor to use CodeEdit 2020-09-10 20:35:27 +01:00
Rémi Verschelde 1d70912080
Merge pull request #41890 from YeldhamDev/tabs_previous
Add 'get_previous_tab()' to 'Tabs'
2020-09-10 11:20:11 +02:00
Rémi Verschelde 0942af841c
Merge pull request #41920 from Chaosus/fix_colorpicker
Fix ColorPickerButton to apply changes after picker popup closed
2020-09-10 10:02:14 +02:00
Hugo Locurcio 3e0226515e
Rename ShortCut to Shortcut which is more grammatically correct
See https://github.com/godotengine/godot/issues/16863#issuecomment-685236980.
2020-09-09 21:54:54 +02:00
Yuri Roubinsky 993ae871c7 Fix ColorPickerButton to apply changes after picker popup closed 2020-09-09 21:38:29 +03:00
Jonah Stich f6b14238c7 Fixed minor typo, gui_hid -> gui_hide. 2020-09-08 18:08:21 -07:00
Michael Alexsander 2b319889cb Add 'get_previous_tab()' to 'Tabs' 2020-09-08 17:35:49 -03:00
Marcel Admiraal 79802b31a9 Check if old mouse column is still available. 2020-09-08 10:24:57 +01:00
Rémi Verschelde 0a8c5845e3
Merge pull request #41870 from nekomatata/fix-line-edit-enter-regression
Fix LineEdit not consuming enter events
2020-09-08 11:14:33 +02:00
PouleyKetchoupp 5c63dec36e Fix LineEdit not consuming enter events
LineEdit should not return early when processing KEY_ENTER, so it can
consume the event properly.

Regression introduced by mistake while fixing enter events for Android
(PR #40487 - c0b394572f)
2020-09-08 10:22:37 +02:00
Marcel Admiraal f515e72348 Use != 0 instead of > 0 when checking bit mask. 2020-09-07 10:36:22 +01:00
Eric M 13fd60572b Fixed get_usable_parent_rect() errors when initialising popup menus. 2020-09-06 13:59:40 +10:00
Rémi Verschelde ff9195a905
Merge pull request #40649 from themvl/master
Fix bug where leading and trailing spaces werent taken into account with center and right allignment
2020-09-05 12:38:26 +02:00
Rémi Verschelde 21da779aee
Merge pull request #41689 from nathanfranke/fix-popupmenu-unresponsive
Fix PopupMenu unresponsive on right side of menu
2020-09-04 13:53:37 +02:00
bruvzg 80b8eff6aa
[Complex Test Layouts] Change `String` to use UTF-32 encoding on all platforms. 2020-09-03 19:56:24 +03:00
Rémi Verschelde 2a8531cc56
Merge pull request #41456 from nekomatata/x11-fix-popups
Popup fixes for X11 display server
2020-09-03 00:09:19 +02:00
Nathan Franke 034e123c1d
Fix PopupMenu unresponsive on right side of menu 2020-09-02 01:24:10 -05:00
Rémi Verschelde 7844775a76
Revert "Updated LineEdit to address #41278"
This reverts commit 71febfd6e2.
2020-09-01 14:04:37 +02:00
EricEzaM 73c7fb2118 PopupMenu rework and enhancements
Many scrolling behaviour improvements and the ability to limit popup size.
2020-09-01 17:56:38 +10:00
mvl 4318ad94ac Fix bug where leading and trailing spaces werent taken into account with center and right allignment. 2020-08-31 20:09:28 +02:00
Tony-Goat 71febfd6e2 Updated LineEdit to address #41278
Updated set_max_length() function to actually pull a substring of the current text so it's not all thrown away when the new max length is shorter than the current length.
2020-08-26 11:19:24 -06:00
PouleyKetchoupp 6d1ef8efac Fix popup closed when an ancestor window is focused
Previously, only the direct parent were taken into account.

Popups like contextual menus could stay open if an ancestor which is
not a direct parent was focused.

Reproduction steps (any platform):
- Select a node in the scene tree
- Left click the node to start renaming
- Right click to open the copy/paste contextual menu
- Left click in the scene tree to deselect the node

Also closing popup when focusing out of the application, without waiting
for the parent to get focus to do so.
2020-08-22 18:42:42 +02:00
Cheeseness 1f159306ed Skip indentation of empty lines when indenting a selection. 2020-08-14 23:53:34 +10:00
Rémi Verschelde 044b3d0ed3
Merge pull request #37769 from HellonLegs/master
solved ctrl + alt + special character Issue #6851
2020-08-14 13:03:07 +02:00
Rémi Verschelde fac2bb99ac
Merge pull request #38223 from EricEzaM/spinbox-update-lineedit-after-bad-input
Fixed bug where spinbox would not update to it's actual value after non-numeric input
2020-08-14 12:16:32 +02:00
Umang Kalra cec21ab82c Fix RichTextLabel center alignment bug
Fixes #40207.
2020-08-11 12:11:38 +02:00
PouleyKetchoupp 095331fae4 Add option to disable virtual keyboard for TextEdit
Adding support for disabling virtual keyboard on mobile platforms, in
order to make it consistent with LineEdit.

It allows implementing a custom virtual keyboard.
2020-08-09 11:06:36 +02:00
Paulb23 51dd4792d7 Fix TextEdit line width cache not being updated 2020-07-29 21:42:38 +01:00
Aaron Franke 56e2c6c704
Make all String float conversion methods be 64-bit 2020-07-27 18:38:53 -04:00
PouleyKetchoupp 8c05dadcff Fix Return key events in LineEdit & TextEdit on Android
Depending on the device implementation, editor actions could be
received with different action ids or not at all for multi-line.

Added a parameter to virtual keyboards to properly handle single-line
and multi-line cases in all situations.

Single-line:
Input type set to text without multiline to make sure actions are sent.
IME options are set to DONE action to force action id consistency.

Multi-line:
Input type set to text and multiline to make sure enter triggers new lines.
Actions are disabled by the multiline flag, so '\n' characters are
handled in text changed callbacks.
2020-07-26 20:06:07 +02:00
Sergey Minakov 6e550e90bf GUI ScrollBar: possible fix for scrolling
Use of unmodified value returned by 'screen_is_touchscreen' to be used in determening if scroll bar should be scrolled
2020-07-25 21:54:56 +02:00
Rémi Verschelde 27d1209282
Merge pull request #38088 from YeldhamDev/name_tooltips_tweaks
Small naming and tooltip tweaks
2020-07-24 13:57:13 +02:00
Rémi Verschelde 513b39882a
Merge pull request #40436 from DanielZTing/master
Evenly distribute stretched Nodes in BoxContainer
2020-07-24 13:47:18 +02:00
Michael Alexsander 5643d2e3fe Small naming and tooltip tweaks 2020-07-23 20:17:43 -03:00
Rémi Verschelde a30bac94cc
Merge pull request #39737 from Cevantime/add_force_caret_displayed_to_line_edit
add force caret display to line edit
2020-07-23 18:02:51 +02:00
Rémi Verschelde 1ab0644532
Merge pull request #40217 from theoway/visible_line_count_fix
Fixes the get_visible_line_count() of rich text label
2020-07-22 09:50:26 +02:00
Rémi Verschelde d8c3fba1d4
Merge pull request #40588 from nekomatata/virtual-keyboard-disable
Add option to disable virtual keyboard for LineEdit
2020-07-22 09:33:47 +02:00
PouleyKetchoupp 0aa56e3ab8 Add option to disable virtual keyboard for LineEdit
Co-authored-by: Alexander Holland <alexander.holland@live.de>
2020-07-22 08:19:05 +02:00
Rémi Verschelde a5fb445121
Merge pull request #40450 from asmaloney/spelling
Fix spelling & grammar in comments, docs, and messages
2020-07-21 22:14:04 +02:00
Andy Maloney 4dda62f591 Fix spelling & grammar in comments, docs, and messages 2020-07-21 15:17:23 -04:00
Tomasz Chabora c0479496fa Prevent infinite loop in Tree incremental search 2020-07-20 13:22:00 +02:00
Daniel Ting 04ea6ec88d Evenly distribute stretched Nodes in BoxContainer
Add any leftover fractional pixels to an error accumulator. When the
accumulator is greater or equal to one, add one pixel to the current
Node's size and subtract one from the accumulator.

Closes #36522
2020-07-16 12:24:57 -05:00
Cevantime dc46bc8857 add force caret display to line edit 2020-07-15 13:00:25 +02:00
Rémi Verschelde 6497a3fb50
Merge pull request #40291 from hinlopen/dialog-size
Resize various dialogs
2020-07-15 12:13:33 +02:00
Rémi Verschelde c8523038cc
Merge pull request #40268 from DanielZTing/master
Fix cancel/OK button order on macOS
2020-07-15 09:21:04 +02:00
Emmanuel Leblond 1f02ff8a76
Correct RichTextLabel.custom_effects property type metadata 2020-07-14 17:33:50 +02:00
Stijn Hinlopen 526e060b73 Resize dialogs (FileDialog, EditorFileDialog, Reparent, SceneTreeDialog and resource depency dialogs). 2020-07-14 14:35:22 +02:00
Paulb23 bc4cee4458 Extract Syntax highlighting from TextEdit and add EditorSyntaxHighlighter
- Extacted all syntax highlighting code from text edit
- Removed enable syntax highlighting from text edit
- Added line_edited_from signal to text_edit
- Renamed get/set_syntax_highlighting to get/set_syntax_highlighter
- Added EditorSyntaxHighligher
2020-07-11 17:09:58 +01:00
Paulb23 2f1080be9b Convert syntax highlighters into a resource 2020-07-11 15:26:58 +01:00
Daniel Ting 9605fc54c7 Fix cancel/OK button order on macOS
The macOS platform convention regarding button order is cancel on left,
OK on right.
2020-07-10 15:10:11 -05:00
Marcel Admiraal 26fcf2b04c Add override keywords. 2020-07-10 13:56:54 +01:00
Maganty Rushyendra c1d5c7727c Emit signals for GraphEdit multi-node selection and unselection
Emit `node_selected` and `node_deselected` signals where appropriate
when selecting or unselecting multiple GraphEdit nodes at once.
2020-07-09 19:15:27 +08:00
Umang Kalra bd32c273ff Fixes the get_visible_line_count() of rich text label 2020-07-09 01:32:11 +05:30
Yuri Roubinsky d131bbaf15 Fix GraphEdit reconnecting to disconnected port 2020-07-05 09:47:58 +03:00
Yuri Roubinsky de1117f5ad Prevents incorrect connection attempt on port clicking in GraphEdit
Prevents incorrect connection attempt on port clicking in GraphEdit
2020-07-04 08:05:37 +03:00
Rémi Verschelde c020eea184
Merge pull request #40092 from hinlopen/remove-find-last
Remove String::find_last (same as rfind)
2020-07-04 01:38:01 +02:00
Stijn Hinlopen 929b98d24b Remove String::find_last (same as rfind) 2020-07-03 15:26:22 +02:00
Rémi Verschelde a6f1714612
Merge pull request #37218 from lrgilbert/graphnode-port-separation
Fixed GraphNode port separation.
2020-07-03 12:46:11 +02:00
Rémi Verschelde 9a82c3d6a5
Merge pull request #40081 from nekomatata/richtextlabel-fill-regression
Fix RichTextLabel fill alignment regression
2020-07-03 12:43:20 +02:00
Rémi Verschelde ad04cf0bfa
Merge pull request #32907 from georgikoemdzhiev/FixPressedIssue
Uncheck 'Pressed' if toggle_mode is unchecked
2020-07-03 12:01:34 +02:00
lrgilbert 47c929c972 Fixed separation of ports on GraphNode
Fixes #32474.
2020-07-03 11:28:08 +02:00
PouleyKetchoupp 44f88999c7 Fix RichTextLabel fill alignment regression
Fixes #40068 (regression from #39164) by not applying the line offset
change in the case of fill alignment mode.
2020-07-03 10:30:24 +02:00
Juan Linietsky ac7e9479ce Fix content scale mode, closes #37941 2020-07-02 17:16:13 -03:00
georgikoemdzhiev 8674e5c0bd Uncheck 'Pressed' if toggle_mode is unchecked 2020-07-02 19:14:10 +01:00
Haoyu Qiu 45d0799b5b Prevent dragging from SceneTree buttons 2020-07-02 15:27:59 +08:00
Rémi Verschelde 0636e2a877
Merge pull request #40020 from reduz/fix-tree-edit-focus
Fix doubleclick on tree item, restore input focus on previous windows.
2020-07-02 07:26:13 +02:00
Rémi Verschelde b11da7b703
Merge pull request #40028 from reduz/fix-popups1
Fix some popup menus missing screen transform.
2020-07-02 07:21:24 +02:00
Rémi Verschelde 1ae40793c7
Merge pull request #40022 from reduz/fix-subwindow-clamp
Add ability to clamp embedded subwindows to parent
2020-07-02 07:20:45 +02:00
Juan Linietsky f0e320decf Fix some popups menu missing screen transform.
Closes #38591
2020-07-01 14:44:19 -03:00
Pawel Lampe c36be14e3c ItemList's add_(icon_)item method returns id of added item
- docs updated
2020-07-01 19:23:51 +02:00
Rémi Verschelde 0a8dbe7f75
Merge pull request #32516 from nekomatata/texture-button-flip
Added flip_h and flip_v properties in TextureButton
2020-07-01 19:07:59 +02:00
Juan Linietsky 39a77735bd Add ability to clamp embedded subwindows to parent, fixes #37792 2020-07-01 12:49:35 -03:00
Juan Linietsky 058166fb6c Fix doubleclick on tree item, restore input focus on previous windows.
Closes #37335
2020-07-01 12:46:39 -03:00
Rémi Verschelde 372136fe75 Environment: Refactor code for readability + more
- Makes all boolean setters/getters consistent.
- Fixes bug where `glow_hdr_bleed_scale` was not used.
- Split CameraEffects to their own source file.
- Reorder all Environment method and properties declarations,
  definitions and bindings to be consistent with each other
  and with the order of property bindings.
- Bind missing enum values added with SDFGI.
- Remove unused SDFGI enhance_ssr boolean.
- Sync doc changes after SDFGI merge and other misc changes.
2020-07-01 14:44:45 +02:00
PouleyKetchoupp 5f1d94bb7d Added flip_h and flip_v properties in TextureButton 2020-07-01 11:31:27 +02:00
Rémi Verschelde 719609522a
Merge pull request #40003 from YeldhamDev/tree_scroll_fix
Fix Tree's 'scroll_to_item()' not working correctly on some cases
2020-07-01 08:52:08 +02:00
Michael Alexsander 144a4cc39f Fix Tree's 'scroll_to_item()' not working correctly on some cases 2020-06-30 18:22:26 -03:00
Juan Linietsky b19ab945ac Make dialogs exclusive by default, fixes #37732
Also fix on set_visible, not creating exclusive children as it should.
2020-06-30 14:02:37 -03:00
Juan Linietsky 438c380458 Add a separate application focus/in notification out from Window focus notification. 2020-06-30 10:40:06 -03:00
Mark Kuo e435d57758 VideoPlayer: fix possible race condition
In set_stream() we write to 'playback' while accessing the same object
in _mix_audio() in audio thread. Protect the 'write' part in
set_stream() to avoid possible crash in _mix_audio() function.
2020-06-29 13:01:54 +10:00
Pedro J. Estébanez b5e44a123c Handle gone TabContainer popup nicely 2020-06-24 19:34:32 +02:00
Stijn Hinlopen 5f7499beac No longer scroll vertically when scrollbars are unavailable 2020-06-20 20:56:17 +02:00
Hugo Locurcio 31b7f02a29
Remove ToolButton in favor of Button
ToolButton has no redeeming differences with Button;
it's just a Button with the Flat property enabled by default.
Removing it avoids some confusion when creating GUIs.

Existing ToolButtons will be converted to Buttons, but the Flat
property won't be enabled automatically.

This closes https://github.com/godotengine/godot-proposals/issues/1081.
2020-06-19 20:49:49 +02:00
Rémi Verschelde 1cd8e835be
Merge pull request #39659 from asmaloney/macos-command-backspace
[macOS] Command-backspace in line edit
2020-06-19 13:19:39 +02:00
Rémi Verschelde a8132b2fab
Merge pull request #33235 from nekomatata/rich-text-label-fit-height
Option in RichTextLabel for height to fit content
2020-06-19 12:52:25 +02:00
Andy Maloney 7433c9d40c [macOS] Command-backspace in line edit
Make command-backspace in line edit work like other macOS applications.

If there is a selection, command-backspace deletes the selection.

If there isn't a selection, command-backspace deletes from the cursor to the beginning of the line edit.

This addresses part of godotengine/godot#23548
2020-06-18 17:45:40 -04:00
Rémi Verschelde c6f48f5bfc
Merge pull request #39485 from theoway/append_bbcode_animation_bug
Fixes the stopping of animation effects in bbcode text after appending
2020-06-15 11:03:46 +02:00
Rémi Verschelde 2ffc570417
Merge pull request #39522 from noidexe/fix-tabcontainer-tabselected-misfire
Fix TabContainer emitting spurious tab_selected signals when a theme …
2020-06-15 10:57:32 +02:00
Tomasz Chabora 46fd51056a Re-enable scroll follow on RichTextLabel clear 2020-06-14 01:23:32 +02:00
Lisandro Lorea 5123006f06 Fix TabContainer emitting spurious tab_selected signals when a theme is changed
- The repaint code was moved outside of set_current_tab() and to a "_repaint()" private function
- _on_theme_changed() will now only call _repaint() and update()
This means _on_theme_changed() will do only what it needs (repainting the TabContainer to account for the new theme)

fixes #39498
2020-06-13 20:06:19 -03:00
Umang Kalra 88b30a29bf Fixes the stopping of animation effects in bbcode after appending 2020-06-13 00:20:52 +05:30
Rémi Verschelde fcf14da8d0
Merge pull request #39337 from Cevantime/add-text-deletion-methods-to-line-edit
Make text deletion methods public for LineEdit
2020-06-11 09:33:27 +02:00
Thibault Truffert 2bb44ea5bd Make text deletion methods public for LineEdit 2020-06-10 22:16:48 +02:00
Rémi Verschelde 8b79f2aad4
Merge pull request #39350 from giulianob/improve-tree-redraw
Tree: Calling update in _gui_input less frequently
2020-06-10 10:49:54 +02:00
Michael Alexsander 637927f803 Add generic file icon and its modulation to the 'FileDialog' 2020-06-08 10:31:45 -03:00
Giuliano Barberi d443a13244 Tree: Calling update in _gui_input less frequently 2020-06-06 17:02:22 -04:00
Rémi Verschelde 7c3dc855ca
Merge pull request #39164 from theoway/richlabeltext_align_bug
Fixes the right and center alignment bug of rich text label
2020-06-03 22:46:13 +02:00
Dominik 'dreamsComeTrue' Jasiński 8f11a91917 Allow scroll_to_line when scroll_active is 'false'
Fix #36134
2020-06-03 19:55:27 +02:00
Umang Kalra b2a32d007d Fixes the right and center alignment bug of rich text label 2020-06-03 21:37:48 +05:30
Rémi Verschelde 901832e21c
Merge pull request #39113 from nekomatata/bbcode-image-color
Add color option for img bbcode tag in RichTextLabel to tint images
2020-06-03 13:16:13 +02:00
PouleyKetchoupp 7b7d4ef079 Add color option for img bbcode tag in RichTextLabel to tint images 2020-05-30 19:13:16 +02:00
Rémi Verschelde 1620669f4e
Merge pull request #39051 from Xrayez/geometry-split
Split `Geometry` singleton into `Geometry2D` and `Geometry3D`
2020-05-29 12:10:37 +02:00
Andrii Doroshenko (Xrayez) 69d5de632e Split `Geometry` singleton into `Geometry2D` and `Geometry3D`
Extra `_2d` suffixes are removed from 2D methods accoringly.
2020-05-27 14:28:34 +03:00
Thakee Nathees 9d224ac429 colorpicker margin bug fixed 2020-05-26 08:50:29 +05:30
Rémi Verschelde 57d21ebeda
Merge pull request #38396 from nekomatata/unexpose-sort-children
Fix Container sorting not working when overriding _sort_children in gdscript
2020-05-23 20:22:44 +02:00
PouleyKetchoupp ad8081216c Option in RichTextLabel for height to fit content 2020-05-22 09:20:49 +02:00
Dominik 'dreamsComeTrue' Jasiński 08377b3f04 Clarifies 'icon_separation' in TabContainer (instead of 'hseparation')
Fixes: #38911
2020-05-21 21:53:17 +02:00
Eric M 707cf278a5 Fixed issues with slider focus and scroll input 2020-05-21 21:29:03 +10:00
Rémi Verschelde d3612d04c7
Merge pull request #38794 from nekomatata/text-edit-search-result
TextEdit search returns Dictionary instead of Vector
2020-05-20 13:28:29 +02:00
Rémi Verschelde aec07538f4
Merge pull request #38309 from SkyLucilfer/AndroidLineEdit
Fix Android LineEdit editing bugs
2020-05-20 11:45:59 +02:00
Hugo Locurcio c9abc63108
Allow searching with keyboard input by default in PopupMenu
See discussion in https://github.com/godotengine/godot-proposals/issues/43.
2020-05-17 23:28:24 +02:00
PouleyKetchoupp 242b94af1a TextEdit search returns a dictionary instead of Vector
Easier to use than accessing elements in a Vector using indices given by an enum.
Breaks compatibility on existing scripts using this functionality.
2020-05-16 23:46:14 +02:00
PouleyKetchoupp 3ad694018f Fix Container sorting not working when overriding _sort_children in gdscript
Remove _sort_children from script bindings:
_sort_children is an internal method which shouldn't be exposed to scripts.

Added support for non-bound methods in MessageQueue:
So we can use deferred calls without exposing internal methods to scripts.

Added debug checks in CallableCustomMethodPointer:
Adding method pointer callables to the message queue was causing crashes
in case an object was destroyed and the same memory was allocated for
another one. The new object had a valid object id but the call was erroneous.
Release will be fixed later, along with Variant which has the same problem and
is also fixed for debug only.
2020-05-16 18:13:25 +02:00
SkyJJ cc473b948f Fix Android LineEdit editing bugs 2020-05-16 17:55:27 +02:00
Marcus Brummer b048eb05ad Fixed text editor drawing if smooth scrolling is disabled.
Fixes #38778
2020-05-16 16:31:43 +02:00
ArrowInAKnee 9fc2b0fddc Update all get_configuration_warning to retrieve warnings from the parent 2020-05-16 16:07:42 +03:00
smartin015 00457c68bc Remove get_local_mouse_position() hack in GraphEdit 2020-05-16 13:22:52 +02:00
Rémi Verschelde 0ee0fa42e6 Style: Enforce braces around if blocks and loops
Using clang-tidy's `readability-braces-around-statements`.
https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2020-05-14 21:57:34 +02:00
Rémi Verschelde 07bc4e2f96 Style: Enforce separation line between function definitions
I couldn't find a tool that enforces it, so I went the manual route:
```
find -name "thirdparty" -prune \
  -o -name "*.cpp" -o -name "*.h" -o -name "*.m" -o -name "*.mm" \
  -o -name "*.glsl" > files
perl -0777 -pi -e 's/\n}\n([^#])/\n}\n\n\1/g' $(cat files)
misc/scripts/fix_style.sh -c
```

This adds a newline after all `}` on the first column, unless they
are followed by `#` (typically `#endif`). This leads to having lots
of places with two lines between function/class definitions, but
clang-format then fixes it as we enforce max one line of separation.

This doesn't fix potential occurrences of function definitions which
are indented (e.g. for a helper class defined in a .cpp), but it's
better than nothing. Also can't be made to run easily on CI/hooks so
we'll have to be careful with new code.

Part of #33027.
2020-05-14 16:54:55 +02:00
Rémi Verschelde 0be6d925dc Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks
Which means that reduz' beloved style which we all became used to
will now be changed automatically to remove the first empty line.

This makes us lean closer to 1TBS (the one true brace style) instead
of hybridating it with some Allman-inspired spacing.

There's still the case of braces around single-statement blocks that
needs to be addressed (but clang-format can't help with that, but
clang-tidy may if we agree about it).

Part of #33027.
2020-05-14 16:54:55 +02:00