Commit Graph

120 Commits

Author SHA1 Message Date
2bbf0f2317 Add properties to configure space trimming on line break. 2025-03-16 16:15:37 +02:00
113fc5a647 Merge pull request #102648 from bruvzg/el_force
Expose `OVERRUN_ENFORCE_ELLIPSIS` flag to the controls.
2025-03-05 12:07:55 -06:00
77231d81b4 Merge pull request #102514 from bruvzg/ts_wrp_indent
[TextEdit] Improve wrapped line indent handling.
2025-03-05 12:07:52 -06:00
c03aa4b563 [TextServer] Fix space trimming on line break. 2025-02-14 14:40:37 +02:00
912b52a6a5 Expose OVERRUN_ENFORCE_ELLIPSIS flag to the controls. 2025-02-10 08:41:31 +02:00
7aeffb8923 [TextEdit] Improve wrapped line indent handling. 2025-02-07 09:52:50 +02:00
cc1db569e1 [TextServer] Improve embedded objects handling performance. 2025-01-07 08:01:29 +02:00
7c182a1544 [TextServer] Fix space trimming around mandatory line breaks. 2024-12-16 23:37:26 +02:00
26e7b6bdd6 Merge pull request #99164 from bruvzg/int_files
[Export] Write text server data from memory, instead of using temporary file.
2024-12-03 14:40:58 -06:00
c5ca56f40b [Export] Write text server data from memory, instead of using temporary file. 2024-12-02 18:22:55 +02:00
5836a24a1c Merge pull request #99488 from bruvzg/te_brk_cases
[TextServer] Fix some line breaking edge cases.
2024-12-02 17:20:15 +01:00
0708048530 [TextServer] Fix some line breaking edge cases. 2024-11-25 10:31:07 +02:00
e81a2afbc4 [TextServer] Reset subpixel shift on blank glyphs and import option to enable/disable it. 2024-11-01 10:18:57 +02:00
13a90e938f Merge pull request #70096 from rune-scape/stringname-dict
StringName Dictionary keys
2024-09-03 17:38:06 +02:00
1829bc3663 [TextServer] Fix structured text parser for GDScript comments. 2024-09-03 09:54:09 +03:00
154049ce17 StringName Dictionary keys
also added 'is_string()' method to Variant
and refactored many String type comparisons to use it instead
2024-08-29 13:39:27 -07:00
8bf4ecc026 Add String.is_valid_unicode_identifier()
- Adds `is_valid_unicode_identifier()`
- Adds `is_valid_ascii_identifier()`
- Deprecates `is_valid_identifier()`
- Renames `validate_identifier()` to `validate_ascii_identifier()`
2024-08-27 11:34:08 +08:00
aed6c351c6 Merge pull request #95301 from bruvzg/rtl_sel_fixes
Fix `TextServer::shaped_text_*_character_pos` for the first character of wrapped string. Allow starting/ending RTL selection before line start.
2024-08-16 14:33:26 +02:00
932acce8f2 Fix TextServer::shaped_text_*_character_pos for the first character of wrapped string. Allow starting/ending RTL selection before line start. 2024-08-09 00:03:00 +03:00
32bc1c2f33 [Font Import] Detect pixel fonts and disable subpixel positioning. 2024-07-23 20:34:39 +03:00
e651421905 [TextServer, GDExtension] Fix building text servers as GDExtension, expose new/changed low-level methods to GDExtension API. 2024-06-12 19:30:19 +03:00
25fe3d4b46 Merge pull request #81639 from MJacred/is_letter
Add `is_valid_letter()` to `TextServer`
2024-05-03 01:21:34 +02:00
717513a62d Add is_valid_letter() to TextServer 2024-05-02 21:32:20 +02:00
a116801ec7 Improve TextEdit/LineEdit word selection. 2024-04-22 14:02:07 +03:00
27f6f4147b [TextServer] Expose ICU title case string conversion to scripting. 2024-04-04 10:56:49 +03:00
3bb5047db3 [TextServer] Use GDVIRTUAL_REQUIRED_CALL for required extensions methods, update extension docs. 2024-03-13 12:57:39 +02:00
061e0c758d Merge pull request #89395 from bruvzg/rtl_ts_img_range
[RTL] Use "visible characters" property for inline object visibility
2024-03-12 14:23:03 +01:00
433de7f1a8 [RTL] Use "visible characters" property for inline object visibility 2024-03-12 11:28:45 +02:00
911fa38d3a [Font] Add option to disable embedded bitmaps loading. 2024-03-11 16:31:10 +02:00
dad4aae386 [TextEdit] Add support for optional wrapped line indentation. 2024-02-26 08:20:14 +02:00
ad017a20ea [TextServer] Implement soft hyphen handling. 2024-02-23 12:40:13 +02:00
85df221610 [TextServer / Font] Add support for customizable baseline offset. 2024-01-28 13:26:49 +02:00
476331eef3 [TextServer] Fix precision loss in the string drawing methods. 2024-01-18 15:33:05 +02:00
56579f397d [Text Overrun] Add option to set custom ellipsis character, add support for system font fallback. 2023-12-04 08:21:42 +02:00
9a1e0e4aef [Bitmap fonts] Add support for scaling. 2023-10-13 12:57:45 +03:00
4a167fc740 [TextServer] Store font extra spacing variations without making a full copy of font. 2023-09-28 10:45:09 +03:00
5453503697 [Text Server] Store extra spacing of individual font variations. 2023-08-24 11:58:12 +03:00
07d859de25 [TextServer] Fix issues with character breaks, add more tests. 2023-08-19 11:49:34 +03:00
5d3fcc5766 [TextServer] Fix system font fallback and caret/selection behavior for composite characters. 2023-08-15 11:42:40 +03:00
55c8cdb332 [Text Server] Fix ellipsis outline drawing. 2023-07-24 08:07:29 +03:00
8a4a883854 [TextServer] Prevent duplicate line breaks on virtual spaces when line width is significantly smaller than character width. 2023-05-26 16:18:26 +03:00
aaddec7cb8 [TextServer] Add support for retrieving OpenType name strings. 2023-05-22 18:08:34 +03:00
9163d8c336 Expose TextServer justification flags to Label, Label3D, TextMesh and RTL. Add flags to control last/single line justification. 2023-05-15 19:23:54 +03:00
d904516e55 [TextServer] Use dedicated flag for object replacement characters. 2023-04-12 10:08:51 +03:00
8459aeaab0 [Font] Implement get_char_from_glyph_index function. 2023-03-01 09:29:11 +02:00
5361ec9f43 Implement BiDi override mode for GDScript source. 2023-01-18 19:22:20 +02:00
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
207e52c161 Fix String::word_wrap() for long words
- Changes `TextServer.string_get_word_breaks()`
  - Returns pairs of boundary start and end offsets
  - Accepts `chars_per_line` to return line breaks
- Removes `String::word_wrap()`

Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2022-12-16 13:18:57 +08:00
53c76fa5d1 [RTL/TextServer] Add baseline inline alignment mode for objects and RTL tables. 2022-12-15 23:16:02 +02:00
ecec415988 Use system fonts as fallback and improve system font handling.
Add support for font weight and stretch selection when using system fonts.
Add function to get system fallback font from a font name, style, text, and language code.
Implement system font support for Android.
Use system fonts as a last resort fallback.
2022-12-04 18:44:20 +02:00