summaryrefslogtreecommitdiff
path: root/modules/text_server_fb
AgeCommit message (Collapse)Author
2022-04-04Style: Apply clang-tidy to current code, add `readability-redundant-member-init`Rémi Verschelde
2022-03-28Fix TextServer build with `builtin_icu=no`.bruvzg
2022-03-17Unify TextServer built-in module and GDExtension code.bruvzg
2022-03-13Improve simulated bold fonts advance.bruvzg
2022-03-11Add options to embolden and transform font outlines to simulate bold and ↵bruvzg
italic typefaces.
2022-02-15Merge pull request #57877 from bruvzg/subpixel_gl_posRémi Verschelde
2022-02-15Add an XML schema for documentationHugo Locurcio
This makes it easier to spot syntax errors when editing the class reference. The schema is referenced locally so validation can still work offline. Each class XML's schema conformance is also checked on GitHub Actions.
2022-02-12Add sub-pixel glyph positioning support.bruvzg
2022-02-04Cleanup and move char functions to the `char_utils.h` header.bruvzg
2022-02-02[TextServer] Add function to change font, font size, and OpenType features ↵bruvzg
without invalidating line break points, justification points, or recreating shaped text buffer.
2022-01-29simplify formatting scripts, add a clang-tidy script, and run clang-tidyNathan Franke
2022-01-17[TextServer] Implement locale and context sensitive case conversion functions.bruvzg
2022-01-13[TextServer] Improvements for line breaking, "Fill" alignment, overrun, and ↵bruvzg
interaction between these modes. Fix "Fill" alignment processing wrong side of the text if overrun trim was applied. Improve "Fill" alignment to avoid adding excessive subsequent spaces or elongations. Add font detection to the overrun, to correctly add ellipsis (was using last glyph font, which doesn't necessary have dot character). Improve line breaking to avoid adding excessive subsequent soft break points for languages without word separator. Port missing overrun/justification code to the Fallback text server. Fix inferred text direction detection by controls. Add tests for "Fill" alignment and line breaking glyph flags.
2022-01-10Merge pull request #55225 from bruvzg/fix_ligature_cursor_and_ot_featuresRémi Verschelde
2022-01-10Fix freezes when tab is zero or negative width.bruvzg
2022-01-09[TextServer] Improve ligature cursor handling.bruvzg
Fix mid-grapheme hit test. Fix OpenType features property handling, add default features override option. Enable mid-grapheme cursor by default.
2022-01-03Update copyright statements to 2022Rémi Verschelde
Happy new year to the wonderful Godot community!
2021-12-15[Text Server] Fix re-shaping of substrings, improve oversampling scale.bruvzg
2021-12-09align to horizontal_alignment, valign to vertical_alignment, relatedNathan Franke
2021-11-23Rename `remove()` to `remove_at()` when removing by indexLightning_A
2021-11-12Add a minimal template build to CIAaron Franke
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2021-11-12Modules: Make sure to include modules_enabled.gen.h where neededRémi Verschelde
2021-11-09Merge pull request #46721 from bruvzg/custom_word_break_punctRémi Verschelde
2021-11-09Merge pull request #54372 from bruvzg/text_edit_uiRémi Verschelde
2021-10-31Repaired mistyped of 'threshold' on several files.M. Huri
2021-10-31Add functions for getting name and font style from dynamic and bitmap fonts.bruvzg
Add font selection toolbar editor plugin.
2021-10-25Ignore empty Font resources as theme override.bruvzg
Add range hint to font_size properties. Remove excessive `base_size` Font property.
2021-10-15[TextServer] Add texture index, offsets array size and Unicode char validation.bruvzg
2021-10-12Move static feature set and number system `StringName`s to the singleton.bruvzg
Remove `hb_` prefix from the custom bitmap font functions to avoid potential conflicts with the HarfBuzz. Cleanup commented debug code. Update numbering system data to CLDR 39.
2021-10-01[Text Server] Add support for user defined punctuation list, used for word ↵bruvzg
breaking.
2021-10-01Implement TextServer GDExtension interface, remove TextServer GDNative ↵bruvzg
interface.
2021-09-30Use range iterators for `Map`Lightning_A
2021-09-29Rename RID's `getornull()` to `get_or_null()`Hugo Locurcio
2021-09-29[Fallback TextServer] Fix char to glyph conversion.bruvzg
2021-09-27Fix trim overrun width not being reset.bruvzg
2021-09-15TextServer: Fix build with freetype disabledRémi Verschelde
Also remove RTR calls as we don't translate internal error messages.
2021-09-01[TextServer] Fix HarfBuzz handle init order. Fix MinGW build.bruvzg
2021-08-27Makes FontData importable resource.bruvzg
Adds multi-channel SDF font texture generation and rendering support. Adds per-font oversampling support. Adds FontData import plugins (for dynamic fonts, BMFonts and monospaced image fonts), font texture cache pre-generation and loading. Adds BMFont binary format and outline support.
2021-08-11Merge pull request #51178 from Geometror/layout-options-textline-textparagraphRémi Verschelde
Various text layout improvements (TextLine, TextParagraph, Label, TextServer)
2021-08-11Various text layout improvements (TextLine, TextParagraph, Label, TextServer)Hendrik Brucker
2021-08-08[Text Server] Improve object (image/table) inline alignment.bruvzg
2021-07-25Use const references where possible for List range iteratorsRémi Verschelde
2021-07-23Use C++ iterators for Lists in many situationsAaron Franke
2021-07-15Misc cleanup of header includesRémi Verschelde
Was looking for misuse of module headers without checking that the module is actually enabled and got carried away...
2021-07-13Separate underscore from grapheme punctuation to enable doubleclick and ↵Leonardo Christino
caret jump over snakecase variables in editor
2021-07-04Improvements to Label's layout optionsHendrik Brucker
- Added options to trim the text in case it overruns - Added more autowrap modes - Improved line breaking, which ignores trailing spaces
2021-06-19Rename `instance()`->`instantiate()` when it's a verbLightning_A
2021-06-10[CTL] Improve font fallback order selection.bruvzg
2021-05-25Rename File::get_len() get_length()Marcel Admiraal
2021-05-17Make all file access 64-bit (uint64_t)Pedro J. Estébanez
This changes the types of a big number of variables. General rules: - Using `uint64_t` in general. We also considered `int64_t` but eventually settled on keeping it unsigned, which is also closer to what one would expect with `size_t`/`off_t`. - We only keep `int64_t` for `seek_end` (takes a negative offset from the end) and for the `Variant` bindings, since `Variant::INT` is `int64_t`. This means we only need to guard against passing negative values in `core_bind.cpp`. - Using `uint32_t` integers for concepts not needing such a huge range, like pages, blocks, etc. In addition: - Improve usage of integer types in some related places; namely, `DirAccess`, core binds. Note: - On Windows, `_ftelli64` reports invalid values when using 32-bit MinGW with version < 8.0. This was an upstream bug fixed in 8.0. It breaks support for big files on 32-bit Windows builds made with that toolchain. We might add a workaround. Fixes #44363. Fixes godotengine/godot-proposals#400. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>