Age | Commit message (Collapse) | Author | |
---|---|---|---|
2021-07-14 | Text: Detect Arabic script | Jaakko Keränen | |
It appears HarfBuzz's script autodetection isn't working here for Arabic. | |||
2021-07-14 | Fixed text wrapping when HarfBuzz is disabled | Jaakko Keränen | |
Updated the old simple text renderer for the new WrapText wrapping. | |||
2021-07-14 | Text: Ordering runs vs. paragraph/run direction | Jaakko Keränen | |
2021-07-14 | Cleanup | Jaakko Keränen | |
2021-07-13 | Drawing document RTL text runs | Jaakko Keränen | |
The base text direction of each line of text is determined when the document is laid out. When drawing runs, use this predetermined base direction. | |||
2021-07-13 | Text: Bidi text wrapping | Jaakko Keränen | |
There is still some weirdness with wraps that occur inside a bidi region. The problem is that text drawing is done later, in smaller segments, without knowledge of the paragraph base direction. The base direction should be saved into each GmRun as a flag. | |||
2021-07-13 | GmCerts: Make the server port known | Jaakko Keränen | |
2021-07-13 | Text: Working on bidi text wrapping | Jaakko Keränen | |
2021-07-12 | Cleanup | Jaakko Keränen | |
2021-07-12 | GmDocument: Cleanup | Jaakko Keränen | |
2021-07-12 | Update link visited status when navigating | Jaakko Keränen | |
When an URL is visited, ensure that links to that URL update their visual state. | |||
2021-07-11 | GmDocument: Big lede is all or nothing | Jaakko Keränen | |
Font size should not suddenly change halfway through a paragraph. | |||
2021-07-11 | GmDocument: More efficient line wrapping | Jaakko Keränen | |
`WrapText` iterates over the wrapped line segments and does a callback on each one, without losing any work buffers and text shaping information along the way. | |||
2021-07-11 | GmDocument: Refactoring line typesetter | Jaakko Keränen | |
The goal is to switch to `WrapText` so the entire paragraph can be processed in one go without having to re-initialize the HarfBuzz buffers after every wrap. | |||
2021-07-11 | Preferences: Settings for smooth scroll speed | Jaakko Keränen | |
IssueID #297 | |||
2021-07-11 | Preferences: Added setting for line spacing | Jaakko Keränen | |
IssueID #229 | |||
2021-07-11 | Cleanup | Jaakko Keränen | |
2021-07-10 | Fixed input dialog closing accidentally | Jaakko Keränen | |
The input dialog shouldn't respond to the generic "cancel" command because that'll easily lead to loss of user-entered text. "cancel" is emitted in many situations, including right before a context menu is opened. | |||
2021-07-06 | macOS: ^⌘Space shows character palette | Jaakko Keränen | |
2021-07-06 | GmDocument: Ignore BOM if present | Jaakko Keränen | |
2021-07-06 | InputWidget: Fixed cursor positioning | Jaakko Keränen | |
Use advance and not bounds. | |||
2021-07-06 | Text run measurement API change; bug fixes | Jaakko Keränen | |
The distinction between measure_Text and advance_Text was not very clear. Now there are only measure_Text functions that return both the bounds and the cursor position advancement, and the appropriate metrics are used by the caller. | |||
2021-07-04 | Cleanup | Jaakko Keränen | |
2021-07-04 | Text: Apply FriBidi (again); fixed wrapping bugs | Jaakko Keränen | |
2021-07-04 | Text: Refactoring AttributedText | Jaakko Keränen | |
AttributedText converts the text to a visual UTF-32 string. This allows it to be processed in a more straightforward fashion, and the indirection allows reordering via FriBidi. | |||
2021-07-04 | Text: Adjusted Noto Symbols scaling | Jaakko Keränen | |
2021-07-04 | Text: Right-align RTL text lines | Jaakko Keränen | |
2021-07-03 | Feeds: Canonical entry URLs | Jaakko Keränen | |
2021-07-03 | Added build options for HarfBuzz and FriBidi | Jaakko Keränen | |
Allow using both `pkg-config` provided libraries for local builds, and configuring more minimal versions for distribution. HarfBuzz has a bunch of dependencies by default. TODO: ENABLE_FRIBIDI_BUILD should cause a static library to be built. | |||
2021-07-03 | Text: Use FriBidi for visual order | Jaakko Keränen | |
Todo: This seems a little late in the game. The reordering should be done for each paragraph of text. | |||
2021-07-03 | Text: Cleanup | Jaakko Keränen | |
2021-07-02 | Text: Monospace glyph fitting; trying out soft hyphens | Jaakko Keränen | |
If glyphs are borrowed from a different font, the offset/advance are adjusted to fit the correct monospacing (for pictographs/emoji). | |||
2021-07-02 | GmDocument: Tuning whitespace | Jaakko Keränen | |
2021-07-02 | Text: Keep Nunito Italic kerning as-is | Jaakko Keränen | |
2021-07-02 | Further canonical URIs | Jaakko Keränen | |
2021-07-02 | Gopher: Improved ASCII art detection | Jaakko Keränen | |
2021-07-02 | Gopher: Adjusted indents | Jaakko Keränen | |
2021-07-02 | Text: Skip space at word wrap position | Jaakko Keränen | |
2021-07-02 | Cleanup | Jaakko Keränen | |
2021-07-02 | Text: Nunito kerning adjustment | Jaakko Keränen | |
2021-07-02 | Text: Word wrapping; fixed glyph caching | Jaakko Keränen | |
2021-07-01 | Text: Working on line wrapping | Jaakko Keränen | |
2021-07-01 | Text: Working on HarfBuzz | Jaakko Keränen | |
2021-07-01 | Using Canonical URLs | Jaakko Keränen | |
2021-06-30 | Cleanup | Jaakko Keränen | |
2021-06-30 | Text: Internal and ANSI color escapes | Jaakko Keränen | |
2021-06-30 | Text: Use HarfBuzz to shape text | Jaakko Keränen | |
This kind of already works! HarfBuzz will composite glyphs as expected. Still missing: half-pixel offsets, line wrapping, color escapes, monospace grid alignment. FriBidi will still be required to determine/reorder text direction within each run. | |||
2021-06-30 | Canonical URIs | Jaakko Keränen | |
Internally, all URIs should be converted to a canonical form so that they can be compared against each other. The canonical form is an IRI with spaces and reserved characters percent-encoded. | |||
2021-06-26 | Text: Link with HarfBuzz; old run_Font_ is a fallback | Jaakko Keränen | |
HarfBuzz will provide proper Unicode text shaping for both simple and complex scripts. The old `run_Font_` is available for use as a fallback if HarfBuzz is not available due to size or complexity constraints (it's written in C++). | |||
2021-06-25 | Merge branch 'dev' into work/v1.6 | Jaakko Keränen | |
# Conflicts: # CMakeLists.txt |