Commit Graph

508 Commits

Author SHA1 Message Date
Pāvels Nadtočajevs 95a03a8b30 Fix unused variable error with old system HarfBuzz. 2026-05-06 20:13:39 +03:00
Pāvels Nadtočajevs 94cd2364ae [TextServer] Use FT rasterizer if hinting is enabled. 2026-04-27 11:55:21 +03:00
Thaddeus Crews e2115157f1 Merge pull request #118785 from bruvzg/hb_1420
Update HarfBuzz to 14.2.0 and ICU4C to 78.3
2026-04-23 08:34:58 -05:00
Thaddeus Crews 0e25644655 Merge pull request #118796 from deralmas/gotta-go-wrap
Buildsystem: Simplify `format_buffer` utility method
2026-04-22 09:58:29 -05:00
Dery Almas e4dcf1d852 Buildsystem: Simplify format_buffer utility method
This method is used to generate headers for embedding files into the binary
(think about the new `#embed` feature in C23 and C++26).

While the stringification step itself was plenty fast, it then proceeded
to wrap everything using the `textwrap` module. `textwrap` is *very*
slow, as it's apparently optimized for human text.

This patch reimplements the wrapping logic using a simple regex,
resulting in a tremendous speed improvement (~6x), and switches to `map`
for the stringification itself (thanks Rémi!)

It also removes a (practically) unused argument, `initial_indent`.

The generated files are pretty much the same, with a tiny difference in
line length (for some reason the old logic overshot the requested line
length)
2026-04-21 23:18:42 +02:00
Pāvels Nadtočajevs f9d5c544c8 Update HarfBuzz to 14.2.0 and ICU4C to 78.3 2026-04-20 21:25:32 +03:00
Thaddeus Crews 1b49449749 Merge pull request #118259 from bruvzg/hb_transform
[TextServer] Fix variable font transform.
2026-04-20 09:15:34 -05:00
Pāvels Nadtočajevs eeafab862d Increase max RID count for some owners, decrease RID usage by RichTextLabel. 2026-04-07 17:07:23 +03:00
Pāvels Nadtočajevs 15b8429995 [TextServer] Fix variable font transform. 2026-04-06 23:58:48 +03:00
Thaddeus Crews c068a92e19 Merge pull request #116024 from Chubercik/thorvg-1.0.0
thorvg: Update to 1.0.3
2026-04-03 11:52:14 -05:00
Jakub Marcowski 7770103858 thorvg: Update to 1.0.3 2026-03-31 21:48:43 +02:00
Danil Alexeev 32d1f518fa Improve editor-only class checking 2026-03-25 17:07:39 +03:00
Pāvels Nadtočajevs abc5c87451 [HarfBuzz] Use separate rendering context for each font. 2026-03-18 21:38:06 +02:00
Pāvels Nadtočajevs f5d278fe90 Update HarfBuzz to 13.1.1 and optionally use new hb-raster API to render glyphs. 2026-03-18 10:48:27 +02:00
Rémi Verschelde e33e98a26f Style: Apply clang-format grouping rules 2026-03-17 20:11:01 +01:00
Rémi Verschelde 6d309c858e Remove unused includes in modules with clangd-tidy 2026-03-16 16:40:39 +01:00
Pāvels Nadtočajevs 2bc2e93e88 Update AccessKit to 0.21.1 2026-03-09 20:39:42 +02:00
Pāvels Nadtočajevs b83ca97659 [TextServer] Remove GDExtension build support. 2026-03-04 19:34:46 +02:00
Rémi Verschelde eabb9a63d4 Rename callable_method_pointer.h to callable_mp.h and include it explicitly
This allows removing it from `class_db.h`, significantly reducing the amount of files
that include it transitively.

Also includes some include cleanup in `control.h` and `rich_text_label.h` done while
ensure they don't depend on `callable_mp`.
2026-03-04 16:23:23 +01:00
Rémi Verschelde f332faf46b Explicitly include core/os/os.h where used 2026-03-04 09:54:10 +01:00
StarryWorm 357fa00a4a rm class_db.h from resource.h 2026-02-27 19:08:29 -05:00
Pāvels Nadtočajevs 9036ab6a6a Remove direct RenderingServer dependency from TextServer. 2026-02-26 10:25:59 +02:00
Thaddeus Crews e6f5f5a1ca Merge pull request #116197 from bruvzg/rtl_wj
[TextServer] Ignore language of embedded object replacement spans when updating line breaks.
2026-02-20 11:36:04 -06:00
Lukas Tenbrink 0ea5ece984 Move binary math functions to Math namespace in math_funcs_binary header. 2026-02-17 12:24:35 +01:00
Pāvels Nadtočajevs 149ecbcbfd [TextServer] Ignore language of embedded object replacement spans when updating line breaks. 2026-02-12 10:11:56 +02:00
Thaddeus Crews 3f3dc88c7e Merge pull request #115949 from bruvzg/ts_clamp_size
[TextServer] Clamp internal font rendering size to 2048.
2026-02-06 08:17:57 -06:00
Pāvels Nadtočajevs cfe2a6c2ce [TextServer] Clamp internal font rendering size to 2048. 2026-02-06 11:26:05 +02:00
Thaddeus Crews 7dae5da198 Style: Convert *.gen.inc to *.gen.h 2026-02-05 19:47:56 -06:00
Pāvels Nadtočajevs 1ad9dbd35a [TextServer] Reuse FT_Face and data for all font sizes. 2026-02-02 11:36:42 +02:00
Warren Partridge 24d9448daf [TextServer] Fix keycap emoji sequence rendering 2026-01-31 10:41:50 -08:00
Fredia Huya-Kouadio e86050e745 Annual Android versions bump for 2026 2026-01-28 13:17:48 -08:00
Pāvels Nadtočajevs ffd5129337 Remove leftover print line from TextServer. 2025-12-19 07:51:36 +02:00
Rémi Verschelde f1afe67b3b Merge pull request #111062 from bruvzg/ts_autoinculde_data
Automatically include text server data if project includes translations requiring it.
2025-12-18 23:30:49 +01:00
Pāvels Nadtočajevs 5afbbc71a4 Automatically include text server data if project includes translations requiring it. 2025-12-18 15:32:52 +02:00
Rémi Verschelde 5d89816d93 Merge pull request #112661 from bruvzg/lang_shape
Improve language selection when shaping text.
2025-12-18 14:23:42 +01:00
Rémi Verschelde 65676315c6 Merge pull request #110310 from bruvzg/check_gl_cache
[TextServer] Check if texture cache is valid when loading glyph.
2025-12-18 14:23:10 +01:00
Pāvels Nadtočajevs 997f326b58 Improve language selection when shaping text. 2025-12-18 09:05:07 +02:00
Rémi Verschelde 9d8180edb8 Merge pull request #114027 from bruvzg/e_no_skip
[TextServer] Do not skip non-color font if system fallback is disabled.
2025-12-16 11:26:59 +01:00
Thaddeus Crews 76972d691d Merge pull request #113908 from bruvzg/ts_dup_fix
[TextServer] Fix `duplicated` losing span info, and RID leak.
2025-12-15 17:40:53 -06:00
Thaddeus Crews 4d0ddafa21 Merge pull request #113965 from akien-mga/msdfgen-1.13
msdfgen: Update to 1.13
2025-12-15 08:01:02 -06:00
Pāvels Nadtočajevs 3caa3d57db [TextServer] Do not skip non-color font if system fallback is disabled. 2025-12-15 09:07:11 +02:00
Pāvels Nadtočajevs 1ca8f1d7f6 Update ICU to 78.1 2025-12-13 00:04:35 +02:00
Rémi Verschelde 76dda1f2c8 msdfgen: Update to 1.13
Remove unused `export-svg` and `save-*` files.
2025-12-12 22:39:53 +01:00
Pāvels Nadtočajevs 8fa484f331 [TextServer] Fix duplicated losing span info, and RID leak. 2025-12-11 21:50:22 +02:00
Pāvels Nadtočajevs 1682f6d4dd Fix build errors and warnings with LLVM-21 2025-12-10 20:05:38 +02:00
Thaddeus Crews ee5f8bbf11 Merge pull request #112940 from bruvzg/emo_st
[TextServer] Track emoji subruns separately from parentheses stack.
2025-11-25 09:52:29 -06:00
Pāvels Nadtočajevs 5fdcb805d4 [TextServer] Use a separate flag to disable min. string length for adding ellipsis. 2025-11-21 07:49:26 +02:00
Pāvels Nadtočajevs 2479e1737a [TextServer] Track emoji subruns separately from parentheses stack. 2025-11-19 08:36:20 +02:00
Pāvels Nadtočajevs 369e690c55 [TextServer] Remove negative offset from the first char when shaping substrings. 2025-11-16 20:59:26 +02:00
Pāvels Nadtočajevs e4ba8c550f [TextServer] Fix some emoji sequences and add missing ICU emoji property data. 2025-11-11 18:31:47 +02:00