summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-07-16Updated HelpJaakko Keränen
2021-07-16Improved TOFU implementationJaakko Keränen
If a server sends a different certificate (checked by matching public key fingerprints), abort the connection at the TLS handshake stage. A new error page is shown explaining the situation. A button is provided for conveniently opening Page Information, where trust can be updated. The file format of "visited.txt" was updated, so it is now called "visited.2.txt". The new format includes server port numbers, and the fingerprints are calculated based on public keys. IssueID #308 IssueID #309 IssueID #310
2021-07-16Updated the_FoundationJaakko Keränen
2021-07-16Updated the_FoundationJaakko Keränen
2021-07-15Fixing regressions text metrics, InputWidgetJaakko Keränen
`run_Font_` was moving the Y cursor position twice for each line break. Checking for the HarfBuzz UNSAFE_TO_BREAK flag leads to some unexpected behavior near edges of words. The old `tryAdvanceNoWrap` method should return the maximum horizontal advance of the text, and not the cursor position's advance. `draw_WrapText` used the wrong foreground color. `TextBuf` now uses WrapText to do all the measuring and drawing, making things much simpler.
2021-07-15RTL line quote and link hover infoJaakko Keränen
2021-07-15HarfBuzz: Upgraded submodule to the 2.8.2 releaseJaakko Keränen
2021-07-15FriBidi: Static library on all platformsJaakko Keränen
2021-07-15FriBidi: Build as static libraryJaakko Keränen
Static linkage will avoid conflicts with FriBidi that's already installed on the system.
2021-07-15macOS: Build tweaks for HarfBuzz/FriBidiJaakko Keränen
Use static libraries when possible, and ensure the external projects are built first.
2021-07-15CleanupJaakko Keränen
2021-07-15GmDocument: Right-align RTL decorationsJaakko Keränen
2021-07-15HarfBuzz: Never build the documentationJaakko Keränen
2021-07-15Disable further HarfBuzz dependencies in minimal buildJaakko Keränen
2021-07-15Improving integrated HarfBuzz and FriBidi buildsJaakko Keränen
Build HarfBuzz with Meson, too, since that's what it recommends doing. Both HarfBuzz and FriBidi are always built as release builds. Install DLLs in the MSYS2 build. TODO: The HarfBuzz CMake build should *not* use a subdirectory, but use ExternalProject instead so it can always be a Release build.
2021-07-15Widget: Removed unnecessary assertionsJaakko Keränen
2021-07-15Fixed whitespace encoding in query stringJaakko Keränen
2021-07-14GmDocument: Fixed lede font change on retryJaakko Keränen
2021-07-14Updated release notesJaakko Keränen
2021-07-14Updated README and release notesJaakko Keränen
Details about HarfBuzz and FriBidi.
2021-07-14Text: Detect Arabic scriptJaakko Keränen
It appears HarfBuzz's script autodetection isn't working here for Arabic.
2021-07-14Fixed text wrapping when HarfBuzz is disabledJaakko Keränen
Updated the old simple text renderer for the new WrapText wrapping.
2021-07-14Text: Ordering runs vs. paragraph/run directionJaakko Keränen
2021-07-14CleanupJaakko Keränen
2021-07-13Drawing document RTL text runsJaakko 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-13Updated the_FoundationJaakko Keränen
2021-07-13Text: Bidi text wrappingJaakko 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-13GmCerts: Make the server port knownJaakko Keränen
2021-07-13Text: Working on bidi text wrappingJaakko Keränen
2021-07-12CleanupJaakko Keränen
2021-07-12GmDocument: CleanupJaakko Keränen
2021-07-12Update link visited status when navigatingJaakko Keränen
When an URL is visited, ensure that links to that URL update their visual state.
2021-07-11GmDocument: Big lede is all or nothingJaakko Keränen
Font size should not suddenly change halfway through a paragraph.
2021-07-11GmDocument: More efficient line wrappingJaakko 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-11GmDocument: Refactoring line typesetterJaakko 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-11Lang: Added strings for new preferencesJaakko Keränen
2021-07-11Preferences: Settings for smooth scroll speedJaakko Keränen
IssueID #297
2021-07-11Preferences: Added setting for line spacingJaakko Keränen
IssueID #229
2021-07-11CleanupJaakko Keränen
2021-07-10Fixed input dialog closing accidentallyJaakko 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-06macOS: ^⌘Space shows character paletteJaakko Keränen
2021-07-06GmDocument: Ignore BOM if presentJaakko Keränen
2021-07-06InputWidget: Fixed cursor positioningJaakko Keränen
Use advance and not bounds.
2021-07-06Text run measurement API change; bug fixesJaakko 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-05Updated the_FoundationJaakko Keränen
Socket close behavior.
2021-07-04CleanupJaakko Keränen
2021-07-04Text: Apply FriBidi (again); fixed wrapping bugsJaakko Keränen
2021-07-04Text: Refactoring AttributedTextJaakko 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-04Text: Adjusted Noto Symbols scalingJaakko Keränen
2021-07-04Updated Smol EmojiJaakko Keränen