summaryrefslogtreecommitdiff
path: root/modules/text_server_adv
AgeCommit message (Collapse)Author
2023-01-13Refactor ProjectSetting overridesJuan Linietsky
* Overrides no longer happen for set/get. * They must be checked with a new function: `ProjectSettings::get_setting_with_override()`. * GLOBAL_DEF/GLOBAL_GET updated to use this This change solves many problems: * General confusion about getting the actual or overriden setting. * Feature tags available after settings are loaded were being ignored, they are now considered. * Hacks required for the Project Settings editor to work. Fixes #64100. Fixes #64014. Fixes #61908.
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".
2023-01-02[TextServer] Make `free` calls thread safe.bruvzg
2022-12-17Scale MSDF font outline with the font size and MSDF source size to match ↵bruvzg
dynamic font behavior.
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-13graphite: Update to latest Git, switch to MIT licenseRémi Verschelde
Graphite is now available under: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later We pick MIT which is the same as Godot's main license for simplicity. Remove define to skip deprecation warnings, upstream fixed those.
2022-12-12Merge pull request #69718 from groud/finally_rename_gdnative_to_gdextensionRémi Verschelde
Rename all gdnative occurences to gdextension
2022-12-12Rename all gdnative occurences to gdextensionGilles Roudière
Non-exhaustive list of case-sensitive renames: GDExtension -> GDNative GDNATIVE -> GDEXTENSION gdextension -> gdnative ExtensionExtension ->Extension (for where there was GDNativeExtension) EXTENSION_EXTENSION ->EXTENSION (for where there was GDNATIVE_EXTENSION) gdnlib -> gdextension gdn_interface -> gde_interface gdni -> gde_interface
2022-12-11check for empty string TextServer _string_to_upperevan-gordon
2022-12-10[TextServer] Do not clean up font texture cache when setting ↵bruvzg
`allow_system_fallback` property.
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-11-21[TextServer] Fix line breaking for the special fonts that substitute a long ↵bruvzg
string (with breaks opportunities in it) with a single glyph.
2022-11-04Implement SVG in OT support.bruvzg
2022-11-01[TextServer] Fix hex code box positions in vertical text layout.bruvzg
2022-10-31[TextServer] Fix incorrect line breaks count for embedded objects (e.g. RTL ↵bruvzg
tables).
2022-10-31Improve text line breaking performance for long lines.bruvzg
2022-10-31Merge pull request #67562 from bruvzg/improve_font_packingRémi Verschelde
Improve font glyph cache packing shelf best height fit heuristic.
2022-10-31Merge pull request #67968 from bruvzg/icu72.1Rémi Verschelde
ICU: Update to version 72.1
2022-10-31Merge pull request #67585 from bruvzg/fix_no_graphite_buildRémi Verschelde
[TextServer] Fix build with disabled graphite.
2022-10-31Merge pull request #67409 from bruvzg/fix_oversampling_roundingRémi Verschelde
[TextServer] Do not round glyph advances / coordinates if font oversampling or bitmap glyph scaling is used.
2022-10-28ICU: Update to version 72.1bruvzg
2022-10-18Unify usage of GLOBAL/EDITOR_GETkobewi
2022-10-18Improve font glyph cache packing shelf best height fit heuristic.bruvzg
2022-10-18[TextServer] Fix build with disabled graphite.bruvzg
2022-10-17Merge pull request #67521 from nikitalita/speed_up_texture_posRémi Verschelde
Speed up `find_texture_pos_for_glyph()`
2022-10-17[TextServer] Do not round glyph advances / coordinates if font oversampling ↵bruvzg
or bitmap glyph scaling is used.
2022-10-16Speed up `find_texture_pos_for_glyph()`nikitalita
2022-10-17Fix memory leak when `_ensure_cache_for_size()` failsHaoyu Qiu
2022-10-14Make some Image methods statickobewi
2022-10-07Fix MSVC warnings, rename shadowed variables, fix uninitialized values, ↵bruvzg
change warnings=all to use /W4.
2022-10-05[TextServer GDExtension] Update build scripts and `.gdextension` files to ↵bruvzg
use new target names and arch suffixes.
2022-09-30Merge pull request #66242 from akien-mga/scons-unify-tools-targetRémi Verschelde
2022-09-29Merge pull request #66534 from ↵Rémi Verschelde
akien-mga/scons-msvc-graphite-silence-c++17-deprecation-warnings SCons: Silence MSVC C++17 deprecation warnings in Graphite
2022-09-28Merge pull request #66532 from bruvzg/mipmap_changeRémi Verschelde
[Text Server] Clear textures after "generate mipmaps" property change.
2022-09-28SCons: Silence MSVC C++17 deprecation warnings in GraphiteRémi Verschelde
Fixes #66497.
2022-09-28[Text Server] Clear textures after "generate mipmaps" property change.bruvzg
2022-09-28[GDExtension] Use function names with underscore for TextServer extension, ↵bruvzg
add macros to generate wrappers for module functions.
2022-09-26SCons: Unify tools/target build type configurationRémi Verschelde
Implements https://github.com/godotengine/godot-proposals/issues/3371. New `target` presets ==================== The `tools` option is removed and `target` changes to use three new presets, which match the builds users are familiar with. These targets control the default optimization level and enable editor-specific and debugging code: - `editor`: Replaces `tools=yes target=release_debug`. * Defines: `TOOLS_ENABLED`, `DEBUG_ENABLED`, `-O2`/`/O2` - `template_debug`: Replaces `tools=no target=release_debug`. * Defines: `DEBUG_ENABLED`, `-O2`/`/O2` - `template_release`: Replaces `tools=no target=release`. * Defines: `-O3`/`/O2` New `dev_build` option ====================== The previous `target=debug` is now replaced by a separate `dev_build=yes` option, which can be used in combination with either of the three targets, and changes the following: - `dev_build`: Defines `DEV_ENABLED`, disables optimization (`-O0`/`/0d`), enables generating debug symbols, does not define `NDEBUG` so `assert()` works in thirdparty libraries, adds a `.dev` suffix to the binary name. Note: Unlike previously, `dev_build` defaults to off so that users who compile Godot from source get an optimized and small build by default. Engine contributors should now set `dev_build=yes` in their build scripts or IDE configuration manually. Changed binary names ==================== The name of generated binaries and object files are changed too, to follow this format: `godot.<platform>.<target>[.dev][.double].<arch>[.<extra_suffix>][.<ext>]` For example: - `godot.linuxbsd.editor.dev.arm64` - `godot.windows.template_release.double.x86_64.mono.exe` Be sure to update your links/scripts/IDE config accordingly. More flexible `optimize` and `debug_symbols` options ==================================================== The optimization level and whether to generate debug symbols can be further specified with the `optimize` and `debug_symbols` options. So the default values listed above for the various `target` and `dev_build` combinations are indicative and can be replaced when compiling, e.g.: `scons p=linuxbsd target=template_debug dev_build=yes optimize=debug` will make a "debug" export template with dev-only code enabled, `-Og` optimization level for GCC/Clang, and debug symbols. Perfect for debugging complex crashes at runtime in an exported project.
2022-09-26[RTL] Fix font variations / OpenType features of theme default font not ↵bruvzg
updated when default font is changed.
2022-09-25[TextServer] Always prefer main font over fallbacks, regardless of ↵bruvzg
script/language support.
2022-09-22[GDExtension] Implement support for typed arrays.bruvzg
2022-09-21Merge pull request #65914 from bruvzg/fix_trim_wo_spaceRémi Verschelde
Fix line trim/ellipsis when line do not have space or newline at the end.
2022-09-19Replace File/Directory with FileAccess/DirAccesskobewi
2022-09-18Fix crash when executing `FontFile.get_face_count`Haoyu Qiu
2022-09-16Fix line trim/ellipsis when line do not have space or newline at the end.bruvzg
2022-09-02Merge pull request #65170 from KoBeWi/your_argument_is_TypedArrayRémi Verschelde
2022-09-01Change Array arguments to TypedArraykobewi
2022-09-01[TextServer] Fix LCD AA fonts reading wrong glyphs.bruvzg
2022-08-30Merge pull request #65098 from bruvzg/msdf_modulateRémi Verschelde
Fix MSDF fonts color modulation.