1
0
Fork 0
Commit Graph

1024 Commits

Author SHA1 Message Date
kit fc16465d17 Fix dropping on selection in script editor 2024-07-04 19:42:38 -04:00
Volkan Gezer 76b2e5b2c8 add missing punctuation to the default list 2024-06-27 17:51:21 +02:00
Rémi Verschelde b63df071bd
Merge pull request #92514 from /addWordSeparators 2024-06-25 09:19:35 +02:00
Volkan Gezer e60678f193 enable custom separators to treat different characters as words 2024-06-24 20:43:13 +02:00
A Thousand Ships fbb879debd
[Scene] Add `SceneStringNames::text/value_changed` 2024-06-19 09:44:38 +02:00
kit 630d3eb35e Don't error when undo stack is empty 2024-06-11 12:16:36 -04:00
Rémi Verschelde 1ee953030e
Merge pull request #92271 from kitbdev/fix-max-line-size
Fix TextEdit HScroll hiding after wrapping
2024-06-07 23:29:28 +02:00
Rémi Verschelde c2d983553b
Merge pull request #91390 from kitbdev/add-selection-unhide-carets
Unhide carets in add selection for occurrence and fix error
2024-06-07 23:29:23 +02:00
bruvzg d45b896673
Fix IME activation in subviewports. 2024-06-04 00:03:02 +03:00
A Thousand Ships 755a0efbb6
[Scene] Add `SceneStringNames::id_pressed` 2024-05-30 22:54:04 +02:00
kit af6b96c486 Fix minimap error when moving to the top 2024-05-30 12:06:02 -04:00
bruvzg 1d0a8ea828
[TextEdit] Use style margins for selection in read-only mode. 2024-05-29 10:07:32 +03:00
kit 948f09632e Unhide carets in add selection for occurrence 2024-05-27 15:30:18 -04:00
kit 66a8ee71aa Fix TextEdit HScroll hiding after wrapping 2024-05-27 14:56:55 -04:00
aaronp64 05cc8e7aaf Remove duplicate if/else code in TextEdit::_notification 2024-05-25 10:50:04 -04:00
kit a53c8e8d70 Fix TextEdit minimap tab drawing and click check 2024-05-08 11:43:44 -04:00
kit 0162683da4 Fix TextEdit crash with multiple carets disabled 2024-05-02 09:26:08 -04:00
kit 773a473807 Overhaul multiple caret editing in TextEdit.
Use a multicaret edit to delay merging overlapping carets until the end.
2024-04-26 14:26:10 -04:00
kit 154f727c7a Overhaul TextEdit selection.
The caret is now a part of the selection.
2024-04-26 14:24:10 -04:00
kit d9b0561601 Don't use vscroll when fit to content height in TextEdit 2024-04-25 19:19:08 -04:00
Christian Kaiser 91fff47fdc Use TextEdit caret color for minimap highlight 2024-04-25 04:27:49 -03:00
Aaron Franke b1f5e9fe3a
Rename internal is_ascii_char to is_ascii_alphabet_char 2024-04-20 02:36:41 -07:00
kit a1bde1b9db Fix caret last fit when moving to line end 2024-04-09 14:06:57 -04:00
Markus Sauermann 94e1943f02 Make `TextEdit.clip_contents` more transparent to users
Instead of ignoring `TextEdit.clip_contents`, use it with a default
value `true`. in the same way as `RichTextLabel`.
2024-03-28 21:07:27 +01:00
Rémi Verschelde 37766c4ef8
Merge pull request #89625 from kitbdev/not-the-end-of-the-line
Fix TextEdit selection end of line drawing for wrapped lines and gaps
2024-03-26 13:45:22 +01:00
Christophe Andral c988bec4b3 Add 'Skip to next (text) occurrence' feature to text editor
Adds `ui_text_skip_selection_for_next_occurrence` action and related implementation to text editor.
This action is bound `Ctrl+Alt+D` shorcut.

Used in conjonction with `ui_add_skip_selection_for_next_occurrence`, it gives the user the ability to select many occurrences of a selection
and avoid some of them.
Used without a previous selection, the action jumps to the next occurrence of the current word under the caret.
2024-03-25 11:12:28 +01:00
kit 63ac8c1106 Fix TextEdit selection end of line drawing 2024-03-18 10:13:21 -04:00
Sofox 83dffe4816 Fixes for undo in text editor grouping unrelated actions 2024-03-05 10:25:47 +00:00
Rémi Verschelde 2d408f48e7
Merge pull request #88546 from bruvzg/indent_wrap
[TextEdit] Add support for optional wrapped line indentation.
2024-03-05 09:55:51 +01:00
Michael Alexsander d70c45b5c8
Add option to add built-in strings in the POT generation 2024-02-28 11:34:26 -03:00
bruvzg dad4aae386
[TextEdit] Add support for optional wrapped line indentation. 2024-02-26 08:20:14 +02:00
Robert Yevdokimov 13e82094ee Remove word duplicates in comments and strings, and fix casing and punctuation 2024-02-23 17:28:28 -05:00
kobewi aeec3c1309 Add methods to add submenus without using names 2024-02-22 15:13:53 +01:00
Rémi Verschelde 48e2f43ccf
Merge pull request #87479 from kitbdev/apply-ime
Fix TextEdit IME issues
2024-02-13 17:23:55 +01:00
A Thousand Ships 684752e75b
Replace error checks against `size` with `is_empty` 2024-02-09 12:50:15 +01:00
kit 8ddd27ce1e Fix freeze in TextEdit with scroll_past_end_of_file and fit_content_height 2024-02-02 16:45:06 -05:00
kit a6af442b05 Apply TextEdit IME on most actions 2024-01-29 15:07:19 -05:00
kobewi 0e8f90f4c8 Update deferred calls to use Callables 2024-01-09 16:11:47 +01:00
Rémi Verschelde eb830b3484
Merge pull request #72341 from aXu-AP/text_edit_carriage_return_selection
Show selected end of line in TextEdit
2024-01-04 14:24:30 +01:00
Sofox 4b82cacc21 Fix so undoing complex operations in TextEdit will restore selections. 2023-12-20 00:12:52 +00:00
Wilson E. Alvarez 80fb8db31f
Remove unnecessary assignments
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2023-12-13 11:06:26 -05:00
Sofox a1a5c87f9e Cleanup in undo in TextEdit and LineEdit 2023-12-12 17:51:53 +00:00
Mika Viskari 609eb8bc01 Highlight error lines in minimap 2023-12-07 16:26:08 +02:00
aXu-AP 16e0fcd04a Show selected end of line in TextEdit
Continues selection box at the end of line if eol/carriage return is selected.
2023-10-30 12:49:30 +02:00
Haoyu Qiu d53529f488 Translate TextEdit placeholder 2023-10-25 22:51:17 +08:00
Rémi Verschelde 3e8dc9df0a
Merge pull request #83286 from bronsonholden/fix-text-edit-hscroll-jitter
Remove vertical scrollbar padding from line width calc
2023-10-17 16:12:58 +02:00
Rémi Verschelde 72b14b54a1
Merge pull request #73502 from Kurble/text-edit-scrolling-precision
Fix code editor scrolling experience on track pads
2023-10-16 12:58:57 +02:00
Bronson Holden ed16df1807 Remove vertical scrollbar padding from line width calc
Visibility of the vertical scrollbar is already accounted for in
`_update_wrap_at_column` which in turn affects max line width of
the text area.
2023-10-13 10:50:01 -07:00
Bram Buurlage 1cf6b2cc2e
Put cheaper condition first
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2023-10-12 12:27:35 +02:00
bruvzg 100565a0c9
Do not apply extra spacing twice. 2023-10-09 21:38:23 +03:00
kobewi 09b30be86d Add vararg call() method to C++ Callable 2023-10-05 11:35:29 +02:00
Rémi Verschelde aa554e8278
Merge pull request #82694 from BrianMacIntosh/master
"Whole Words" search can detect word boundaries inside the search term.
2023-10-05 10:08:58 +02:00
Rémi Verschelde e8e79c9195
Merge pull request #82776 from MewPurPur/more-text-edit-organization
Organize TextEdit's inspector
2023-10-04 15:46:05 +02:00
MewPurPur 38210dbe27 Organize TextEdit's inspector 2023-10-04 13:24:29 +03:00
Brian MacIntosh 676627e1d1 "Whole Words" search can detect word boundaries inside the search term.
For example, searching for ".func" will now match in "a.func" even with Whole Words enabled.
2023-10-02 13:47:59 -07:00
Bram Buurlage a18f443846 Use Math::round() instead of round() for rounding the scroll position 2023-09-30 11:00:24 +02:00
Bram Buurlage 6ffa9b0635 Editor: fix code editor scrolling experience on track pads 2023-09-30 10:55:14 +02:00
Rémi Verschelde 73d7651784
Merge pull request #81921 from YuriSizov/gui-less-friendliness
Connect `CodeHighlighter` with `TextEdit` without friend-access
2023-09-20 13:10:00 +02:00
Yuri Sizov fee1fb8290 Connect `CodeHighlighter` with `TextEdit` without friend-access 2023-09-19 14:36:38 +02:00
ajreckof 6afadbaa9f Replace Ctrl in editor shortcuts with Cmd or Ctrl depending on platform 2023-09-19 10:29:07 +02:00
Rémi Verschelde 77623d0a36
Merge pull request #81354 from MJacred/textedit_pixel_pos_fix
Fix `TextEdit.get_rect_at_line_column returning` negative pos even though cursor is in viewable area of the control
2023-09-18 10:37:59 +02:00
Yuri Sizov fe000277ea Bind remaining theme properties to their respective classes
This adds binds for GraphEdit/GraphElement/GraphNode, which were
skipped before due to a rework. This also adds binds for Window,
which was skipped before due to a complicated code organization.

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

This removes all string-based theme access from scene/ classes.
2023-09-13 19:31:35 +02:00
Jean-Michel Bernard 67dce301aa Add code region folding to CodeEdit 2023-09-11 18:36:40 +02:00
Rémi Verschelde d08401236c
Merge pull request #81312 from YuriSizov/theme-static-binds
Register theme properties with ThemeDB
2023-09-11 15:38:06 +02:00
Rémi Verschelde afd01030a8
Merge pull request #80956 from MarcusElg/deselectmulticaret
Deselect multi caret when alt clicking on it
2023-09-11 15:36:21 +02:00
Yuri Sizov 2924bfd4d3 Register theme properties with ThemeDB 2023-09-11 13:45:23 +02:00
MJacred 6170381bd7 Fix TextEdit.get_rect_at_line_column returning negative pos even though cursor is in viewable area of the control 2023-09-11 12:32:36 +02:00
bruvzg 3842694d4f
Fix TextEdit placeholder with Inherited text direction. 2023-09-07 08:26:10 +03:00
Marcus Elg aac10705d7 Deselect multi caret when alt clicking on it 2023-09-03 19:22:33 +02:00
jsjtxietian 70dad7e5a3 Fixes a text find perf issue, if can't find any
match words, just early break the while loop. This
will improve a lot when p_search.length is way too
long since p_from_column will only plus 1 every loop
2023-08-20 21:48:25 +08:00
bruvzg 5d3fcc5766
[TextServer] Fix system font fallback and caret/selection behavior for composite characters. 2023-08-15 11:42:40 +03:00
bruvzg 75e6ec8874
[TextEdit] Expose all auto-wrap modes. 2023-06-13 10:28:27 +03:00
RedworkDE 6b7008b73b Fix crash when selecting lines in text edit 2023-05-30 20:32:44 +02:00
Rémi Verschelde d61827af05
Merge pull request #76605 from Rindbee/fix_get_visible_line_count
Fix calculation bug with `TextEdit::get_line_height()`
2023-05-16 10:59:52 +02:00
Rindbee 391bce44b7 Fix calculation bug with `TextEdit::get_line_height()`
When `get_line_height()` is less than `1`, there is no visible text.
So limit the return value of `get_line_height()` to **not less** than
`1` for calculation.
2023-05-15 07:16:00 +08:00
Jean-Michel Bernard 5c06c030f2 Fix right click in selection of additional caret 2023-05-08 00:02:56 +02:00
Yuri Sizov de416c5cbd
Merge pull request #74623 from MewPurPur/edit-text-with-style
Code style improvements to text_edit and related
2023-04-17 19:08:08 +02:00
bruvzg d904516e55
[TextServer] Use dedicated flag for object replacement characters. 2023-04-12 10:08:51 +03:00
VolTer f587a21899 Code style improvements to text_edit and related 2023-04-08 19:33:56 +02:00
jeffVenancius 97c2133548 Add an option to show a TextEdit caret when editable is disabled
Update doc/classes/TextEdit.xml
2023-04-07 22:27:01 -03:00
Yuri Sizov db2f99cdc0 Implement theme item cache in TextEdit and CodeEdit 2023-04-03 18:01:10 +02:00
Rémi Verschelde 1db9de5406
Merge pull request #75597 from bruvzg/tx_block
[TextEdit] Fix block caret size at the end of the line.
2023-04-03 16:06:02 +02:00
Rémi Verschelde 420ea5c0ad
Merge pull request #73074 from M4rYu5/capslock-editor-completion-fix
Editor: Ignore CapsLock when pressed alone
2023-04-03 15:58:11 +02:00
bruvzg efe04af446
[TextEdit] Fix block caret size at the end of the line. 2023-04-02 20:53:13 +03:00
kobewi 36141dc469 Fix get_drag_data not overridable in some Controls 2023-03-20 21:42:13 +01:00
bruvzg 25bc62ad13
[TextEdit] Do not draw virtual spaces (word break / justification points). 2023-03-06 15:01:43 +02:00
bruvzg 3ca3ee36ab
Fix IME position in the single window mode sub-windows. 2023-03-06 10:08:55 +02:00
bruvzg 315164c619
[TextEdit / IME] Check selection before deleting to avoid unnecessary error messages. 2023-02-27 08:58:28 +02:00
Paulb23 60161cbe7d Fix ctrl+backspace crash with multicarets on the same line 2023-02-19 12:04:14 +00:00
James Mintram aa024296d1
Fix error spam when hovering minimap in the script editor 2023-02-16 22:03:01 +01:00
M4rYu5 97d355c13d Now, in editor, CapsLock behave like a modifier key: does nothing when pressed alone.
Before, it ended up closing the code completion, and rerendering portions of editor.
2023-02-13 10:46:00 +02:00
Danil Alexeev af8bf6f1d0
Fix `LineEdit` and `TextEdit` context menus not customizable 2023-01-27 11:14:54 +03:00
bruvzg e08a6e692d
[Windows] Fix committing IME text without IME deactivation. 2023-01-26 09:24:12 +02:00
Aaron Franke 2bc0bcbd26
PropertyUsage: Rename "DO_NOT_SHARE_ON_DUPLICATE" to "ALWAYS_DUPLICATE" 2023-01-24 16:05:07 -06:00
bruvzg daad4aed62
Cleanup and unify keyboard input.
- Unify keycode values (secondary label printed on a key), remove unused hardcoded Latin-1 codes.
- Unify IME behaviour, add inline composition string display on Windows and X11.
- Add key_label (localized label printed on a key) value to the key events, and allow mapping actions to the unshifted Unicode events.
- Add support for physical keyboard (Bluetooth or Sidecar) handling on iOS.
- Add support for media key handling on macOS.

Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-01-23 15:08:12 +02:00
bruvzg 5361ec9f43
Implement BiDi override mode for GDScript source. 2023-01-18 19:22:20 +02:00
Juan Linietsky 2b815df3c1 Use BitField<> in core type masks
* All core types masks are now correctly marked as bitfields.
* The enum hacks in MouseButtonMask and many other types are gone. This ensures that binders to other languages non C++ can actually implement type safe bitmasks.
* Most bitmask operations replaced by functions in BitField<>
* Key is still a problem because its enum and mask at the same time. While it kind of works in C++, this most likely can't be implemented safely in other languages and will have to be changed at some point. Mostly left as-is.
* Documentation and API dump updated to reflect bitfields in core types.
2023-01-08 22:17:40 +01:00
Rémi Verschelde 163f6f5fe8
Merge pull request #68429 from KoBeWi/PropertySettings
Add PropertyInfo overload for GLOBAL_DEF
2023-01-06 22:59:29 +01:00
Rémi Verschelde d95794ec8a
One Copyright Update to rule them all
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.

It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).

We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).

Also fixed "cf." Frenchism - it's meant as "refer to / see".
2023-01-05 13:25:55 +01:00
bruvzg a56fdea289
[TextEdit] Fix IME intermediate text not displayed when TextEdit is empty and placeholder is set. 2022-12-13 20:22:48 +02:00