Commit graph

217 commits

Author SHA1 Message Date
Rémi Verschelde
25fe3d4b46
Merge pull request #81639 from MJacred/is_letter
Add `is_valid_letter()` to `TextServer`
2024-05-03 01:21:34 +02:00
MJacred
717513a62d Add is_valid_letter() to TextServer 2024-05-02 21:32:20 +02:00
bruvzg
1f8387f8fd
[TextServer] Improve empty glyph handling to allow glyphs smaller than 2px and avoid unnecessary texture updates. 2024-04-07 18:19:45 +03:00
Haoyu Qiu
9bcda8f94c Prefer family name in fonts' names table 2024-04-06 16:08:59 +08:00
bruvzg
27f6f4147b
[TextServer] Expose ICU title case string conversion to scripting. 2024-04-04 10:56:49 +03:00
bruvzg
f6a532d501
[Font] Apply oversampling to the "embolden" strength. 2024-03-19 08:50:01 +02:00
Rémi Verschelde
48b650c254
Merge pull request #89422 from Repiteo/clang-tidy-NULL
clang-tidy: Enforce `modernize-use-nullptr`
2024-03-13 18:41:39 +01:00
Rémi Verschelde
0478998148
Merge pull request #89414 from bruvzg/update_icu_msdfgen
Update ICU and msdfgen.
2024-03-13 18:41:35 +01:00
bruvzg
0d02568ff8
Update ICU and msdfgen. 2024-03-13 09:12:50 +02:00
Thaddeus Crews
3b3e2374c9
clang-tidy: Enforce modernize-use-nullptr 2024-03-12 10:59:53 -05:00
Rémi Verschelde
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
bruvzg
433de7f1a8
[RTL] Use "visible characters" property for inline object visibility 2024-03-12 11:28:45 +02:00
bruvzg
911fa38d3a
[Font] Add option to disable embedded bitmaps loading. 2024-03-11 16:31:10 +02:00
bruvzg
b58e45ed43
[TextServer] Fix fallback line breaking code adding two breaks for CR-LF. 2024-03-05 09:15:11 +02:00
bruvzg
ad017a20ea
[TextServer] Implement soft hyphen handling. 2024-02-23 12:40:13 +02:00
Rémi Verschelde
4bb3af67e0
Merge pull request #88091 from bruvzg/extra_fallback
[TextServer] Add extra fallback step, to lookup for individual characters.
2024-02-15 17:35:40 +01:00
Rémi Verschelde
eac054f1cc
Merge pull request #87971 from bruvzg/font_no_image_dup
[TextServer / Font] Do not duplicate images to prevent unnecessary embedding.
2024-02-15 17:35:36 +01:00
bruvzg
062a93fb77
[TextServer] Add extra fallback step, to lookup for individual characters. 2024-02-09 23:47:48 +02:00
bruvzg
04c0e4446f
[TextServer] Fix bitmap font kerning override. 2024-02-08 08:32:45 +02:00
bruvzg
19f1d5afa9
[TextServer / Font] Do not duplicate images to prevent unnecessary embedding. 2024-02-05 10:38:32 +02:00
bruvzg
85df221610
[TextServer / Font] Add support for customizable baseline offset. 2024-01-28 13:26:49 +02:00
Aaron Franke
91b24b2780
Use GODOT_MODULE define in TextServer modules 2024-01-06 01:19:29 -06:00
bruvzg
575e1201cb [TextServer] Do not draw non-visual characters. 2023-12-12 12:17:10 +02:00
bruvzg
56579f397d
[Text Overrun] Add option to set custom ellipsis character, add support for system font fallback. 2023-12-04 08:21:42 +02:00
Rémi Verschelde
61b62fc047
Merge pull request #81438 from 0xafbf/patch-2
Fix subpixel layouts in text rendering
2023-11-10 21:52:48 +01:00
bruvzg
9ad55dc32d
[TextServer] Fix line breaks for dropcap and resizing embedded objects. 2023-10-31 22:39:42 +02:00
bruvzg
0fb5d53feb
[TextServerAdvanced] Keep dynamically loaded ICU data in memory. 2023-10-23 11:21:13 +03:00
bruvzg
9a1e0e4aef
[Bitmap fonts] Add support for scaling. 2023-10-13 12:57:45 +03:00
A Thousand Ships
f18aa00e85 Replace ERR_FAIL_COND with ERR_FAIL_NULL where applicable 2023-10-08 17:23:33 +02:00
bruvzg
4a167fc740
[TextServer] Store font extra spacing variations without making a full copy of font. 2023-09-28 10:45:09 +03:00
A Thousand Ships
517e9f8aef [Modules] Replace ERR_FAIL_COND with ERR_FAIL_NULL where applicable 2023-09-26 16:44:52 +02:00
Rémi Verschelde
31a7fd1951
Merge pull request #81406 from bruvzg/ts_dict_chk2
[TextServer] Pass Dictionary properties by value and check property values instead of references.
2023-09-08 09:11:23 +02:00
Andrés Botero
ab52f70a03 Fix subpixel layouts in text rendering 2023-09-07 20:36:00 -05:00
bruvzg
1ced1f9c99
[TextServer] Pass Dictionary properties by value and check property values instead of references.. 2023-09-07 11:59:51 +03:00
bruvzg
1cb63fc719
[TextServer] Use locale or first span language to select preferred direction for neutral text. 2023-09-06 08:50:08 +03:00
bruvzg
31a8a9b2e1
[TextServer] Remove excessive Dictionary checks. 2023-09-04 09:47:55 +03:00
bruvzg
5453503697
[Text Server] Store extra spacing of individual font variations. 2023-08-24 11:58:12 +03:00
bruvzg
07d859de25
[TextServer] Fix issues with character breaks, add more tests. 2023-08-19 11:49:34 +03:00
Rémi Verschelde
b51ee8b029
Merge pull request #80650 from bruvzg/comp_char_fix
[TextServer] Fix system font fallback and caret/selection behavior for composite characters.
2023-08-18 17:24:54 +02:00
bruvzg
5d3fcc5766
[TextServer] Fix system font fallback and caret/selection behavior for composite characters. 2023-08-15 11:42:40 +03:00
David Snopek
d585ca546b Use String::resize() and CharString in text_server_adv again 2023-08-14 18:12:05 -05:00
Rémi Verschelde
faaf27f284
Fix various typos with codespell
Also includes typo fixes from #79993, #80068, #80276, and #80303.

Co-authored-by: betalars <contact@betalars.de>
Co-authored-by: spaceyjase <429978+spaceyjase@users.noreply.github.com>
Co-authored-by: Swarkin <102416174+Swarkin@users.noreply.github.com>
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-08-07 13:09:47 +02:00
Hendrik Brucker
7e21eb7e00 Extract and reorganize texture resource classes 2023-07-14 20:04:21 +02:00
David Snopek
263c909349 Fix text_server_adv compiling as a GDExtension 2023-06-20 10:50:33 -05:00
Rémi Verschelde
25b2f1780a
Style: Harmonize header includes in modules
This applies our existing style guide, and adds a new rule to that style
guide for modular components such as platform ports and modules:

Includes from the platform port or module ("local" includes) should be listed
first in their own block using relative paths, before Godot's "core" includes
which use "absolute" (project folder relative) paths, and finally thirdparty
includes.

Includes in `#ifdef`s come after their relevant section, i.e. the overall
structure is:

- Local includes
  * Conditional local includes
- Core includes
  * Conditional core includes
- Thirdparty includes
  * Conditional thirdparty includes
2023-06-15 14:35:45 +02:00
bruvzg
aaddec7cb8
[TextServer] Add support for retrieving OpenType name strings. 2023-05-22 18:08:34 +03:00
Rémi Verschelde
fb3e4e7967
Merge pull request #75975 from bruvzg/bidi_and_log_errors
Improve line BiDi handling, prevent crash on recursive log updates.
2023-04-12 13:28:12 +02:00
bruvzg
282e4231c2
Improve line BiDi handling, prevent crash on recursive log updates. 2023-04-12 11:39:05 +03:00
bruvzg
d904516e55
[TextServer] Use dedicated flag for object replacement characters. 2023-04-12 10:08:51 +03:00
bruvzg
d8d88e1530
[TextServer] Improve BiDi error handling. 2023-04-11 10:07:00 +03:00