Commit Graph

18 Commits

Author SHA1 Message Date
c75923498e Use integer coordinates for the font glyphs rendering. 2021-01-31 20:10:50 +02:00
eeced6d6f2 [CTL] Do not break line on the span (e.g. RTL BBCode tag) edges. 2021-01-25 09:45:29 +02:00
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
5b937d493f Rename empty() to is_empty() 2020-12-28 10:39:56 +00:00
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
c7b53c03ae SCons: Add explicit dependencies on thirdparty code in cloned env
Since we clone the environments to build thirdparty code, we don't get an
explicit dependency on the build objects produced by that environment.

So when we update thirdparty code, Godot code using it is not necessarily
rebuilt (I think it is for changed headers, but not for changed .c/.cpp files),
which can lead to an invalid compilation output (linking old Godot .o files
with a newer, potentially ABI breaking version of thirdparty code).

This was only seen as really problematic with bullet updates (leading to
crashes when rebuilding Godot after a bullet update without cleaning .o files),
but it's safer to fix it everywhere, even if it's a LOT of hacky boilerplate.
2020-12-18 10:29:34 +01:00
06ae77a320 Add word breaks on punctuation characters. 2020-12-14 11:36:13 +02:00
c1d261fdb0 [Complex Text Layouts] Add variable fonts support. 2020-12-13 18:43:39 +02:00
644f739660 Static analyzer fixes:
Removes unused code in OS.
Fixes return types.
Fixes few typos.
2020-12-09 10:17:53 +02:00
93e9c9c470 Merge pull request #43981 from bruvzg/ctl_font_spacing
[Complex Text Layouts] Adds missing Font::SPACING_* to the controls, align glyphs to pixel grid.
2020-12-07 11:08:34 +01:00
29e5b900d0 Load dynamic fonts to memory on all platforms, to avoid locked files. 2020-12-07 10:53:15 +02:00
0ef483e9a9 [Complex Text Layouts] Performance optimizations. 2020-12-07 08:53:02 +02:00
384211af4b [Complex Text Layouts] Fix bitmap font memory leak. 2020-12-06 20:31:00 +02:00
c3cc9d82b4 [Complex Text Layouts] Align glyph offsets and advances to the pixel grid. 2020-12-06 20:31:00 +02:00
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
07d14f5bb8 [Complex Text Layouts] Implement GDNative interface for TextServer. 2020-11-26 13:55:29 +02:00
200828276e [Complex Text Layouts] Implement ICU / HarfBuzz based TextServer module. 2020-11-26 13:55:28 +02:00
b9f441e81e [Complex Text Layouts] Add third-party TextServer dependencies (ICU, HarfBuzz, Graphite). 2020-11-26 13:55:27 +02:00