summaryrefslogtreecommitdiff
path: root/servers/text_server.cpp
AgeCommit message (Collapse)Author
2023-01-05One Copyright Update to rule them allRémi Verschelde
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".
2022-12-16Fix String::word_wrap() for long wordsHaoyu Qiu
- 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-15[RTL/TextServer] Add baseline inline alignment mode for objects and RTL tables.bruvzg
2022-12-04Use system fonts as fallback and improve system font handling.bruvzg
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-10-07Add split caret direction markers. Fix block/overtype caret size.bruvzg
2022-09-28[GDExtension] Use function names with underscore for TextServer extension, ↵bruvzg
add macros to generate wrappers for module functions.
2022-09-01[TextServer] Fix excessive space trimming.bruvzg
2022-09-01[TextServer] Add support for trimming edge spaces on line break.bruvzg
2022-08-26Merge pull request #64422 from bruvzg/make_fonts_unbearably_ugly_2.0Rémi Verschelde
2022-08-24Merge pull request #64082 from KoBeWi/array3kRémi Verschelde
2022-08-24Merge pull request #64346 from firefly2442/patch-1Rémi Verschelde
2022-08-24Replace Array return types with TypedArray 3kobewi
2022-08-23Add font LCD sub-pixel anti-aliasing support.bruvzg
2022-08-22Replace Array return types with TypedArraykobewi
2022-08-13small typo in TextServer, changes bitwise to logical which can be faster in ↵Patrick
some cases via "short circuiting"
2022-08-04HarfBuzz: Update to version 5.1.0, use new FLAG_SAFE_TO_INSERT_TATWEEL flag ↵bruvzg
to improve justification.
2022-08-02[TextServer] Add ICU Unicode security and spoofing detection.bruvzg
2022-08-02[TextServer] Implement ICU/UAX 31 based `is_valid_identifier` function.bruvzg
2022-07-15Use BitField hint for the TextServer enums. Add missing parts for BitField ↵bruvzg
support to the GDextension API.
2022-07-06Refactor Font configuration and import UI, and Font resources.bruvzg
2022-06-16Move duplicate AutoWrap, Overrun and VisibleChar behavior enums to the ↵bruvzg
TextServer.
2022-06-07[TextServer] Adds support for TrueType / OpenType collection files (*.TTC, ↵bruvzg
*.OTC).
2022-05-25use ERR_FAIL_INDEX when preferredNathan Franke
2022-04-28Implement text-to-speech support on Android, iOS, HTML5, Linux, macOS and ↵bruvzg
Windows. Implement TextServer word break method.
2022-04-22Implement Label3D node.bruvzg
Add "generate_mipmap" font import option. Add some missing features to the Sprite3D. Move BiDi override code from Control to TextServer. Add functions to access TextServer font cache textures. Add MSDF related flags and shader to the standard material. Change standard material cache to use HashMap instead of Vector.
2022-04-11Merge pull request #60102 from KoBeWi/graphememeRémi Verschelde
2022-04-11[TextServer] Fix long selection performance.bruvzg
2022-04-10Improve shaped_text_get_word_breaks()kobewi
2022-04-04Fixed ctrl + backspace on empty linesMarc Garcia Puig
Fix <word><space><caret> scenario Fix move left & right for lines without words
2022-03-17Unify TextServer built-in module and GDExtension code.bruvzg
2022-03-13Fix text clipping on the right side.bruvzg
2022-03-11Add options to embolden and transform font outlines to simulate bold and ↵bruvzg
italic typefaces.
2022-03-05[TextServer] Improve word breaking when there are multiple spaces between words.bruvzg
2022-02-12Add sub-pixel glyph positioning support.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-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-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-09Add a double-precision editor build to CIAaron Franke
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-22Add methods to get position from column and line in TextEditYuri Sizov
2021-11-09Merge pull request #46721 from bruvzg/custom_word_break_punctRémi Verschelde
2021-10-31Add functions for getting name and font style from dynamic and bitmap fonts.bruvzg
Add font selection toolbar editor plugin.
2021-10-28Implement TextServer `strip_diacritics` function.bruvzg
2021-10-18[TextServer] Use `round` instead of `floor` for hex code box size ↵bruvzg
calculation to better match font size.
2021-10-03Remove Scene dependency from the TextServer, use scalable hex box font ↵bruvzg
instead of built-in bitmap one.
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.