summaryrefslogtreecommitdiff
path: root/src/ui/documentwidget.c
AgeCommit message (Collapse)Author
2021-08-10DocumentWidget: Fixed drawing of empty documentJaakko Keränen
An empty document would could the widget to be drawn as a black non-themed rectangle, with a single-pixel horizontal line in the middle. This fixes that by just clearing the widget to the UI background color. The most notable situation where this occurred was immediately after activating split view mode.
2021-08-04DocumentWidget: Slightly wider minimum bordersJaakko Keränen
2021-08-02DocumentWidget: Redirecting between gemini/titan schemesJaakko Keränen
Automatic redirects between `gemini` and `titan` are allowed, because a reasonable response to a Titan request is a redirect to a Gemini URL. Gemini may likewise redirect to a Titan URL to initiate an upload.
2021-08-01Translations for hardcoded English stringsJaakko Keränen
IssueID #276
2021-07-28Titan: Reloading should re-open the Upload UIJaakko Keränen
2021-07-25UploadWidget: Fixes and improvementsJaakko Keränen
Fixed update after undo. Line wrap long destination URLs. Don't open a new upload dialog if one is already open.
2021-07-23Window: Mouse wheel events vs. split modeJaakko Keränen
Only process mouse wheel events on the root over which the mouse is currently.
2021-07-23InputWidget: Buffer contents not activeJaakko Keränen
2021-07-22Added a setting for Return key behaviorJaakko Keränen
User preference for line break / accept behavior in input fields. Still needs to be added to the Preferences dialog.
2021-07-22DocumentWidget: No line breaks in sensitive input modeJaakko Keränen
2021-07-17Working on Titan uploadsJaakko Keränen
There may be a bug in `TlsRequest` when sending out large amounts of data.
2021-07-17GmDocument: Link scheme flagsJaakko Keränen
A better way to keep track of the scheme used in a link.
2021-07-16DocumentWidget: Shortcut for ignoring expirationJaakko Keränen
2021-07-16Allow override for certificate expiryJaakko Keränen
The user is able to ignore certificate expiry and continue loading the page regardless. This adds a one hour exception to the expiration date.
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-15RTL line quote and link hover infoJaakko 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-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-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-11Preferences: Settings for smooth scroll speedJaakko Keränen
IssueID #297
2021-07-11Preferences: Added setting for line spacingJaakko Keränen
IssueID #229
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-01Using Canonical URLsJaakko Keränen
2021-06-30Canonical URIsJaakko 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-25Merge branch 'dev' into work/v1.6Jaakko Keränen
# Conflicts: # CMakeLists.txt
2021-06-24DocumentWidget: Fixed link number alignmentJaakko Keränen
The link numbers were not aligned with all fonts.
2021-06-17DocumentWidget: Spaces in image URLJaakko Keränen
On a generated image page, the image link URL was not escaped so any spaces would cause it to be broken. These content links also should not use the background highlighting meant for links open in other tabs.
2021-06-16DocumentWidget: Spaces in image URLJaakko Keränen
On a generated image page, the image link URL was not escaped so any spaces would cause it to be broken. These content links also should not use the background highlighting meant for links open in other tabs.
2021-06-15DocumentWidget: Caching error page documentsJaakko Keränen
2021-06-15iOS: Gentle haptic tap for sidebar-back-swipeJaakko Keränen
2021-06-14Mobile: Toolbar color depends on sidebarJaakko Keränen
Toolbar should reflect the colors of the current view, whether it's a page or the sidebar.
2021-06-14Swiping and sidebar; various tweaksJaakko Keränen
When a page is opened from the sidebar, swiping back will now reopen the sidebar. Another swipe will dismiss the sidebar and navigate back as usual. Attempted to cache theme colors in GmDocument, but there were issues with theme changes.
2021-06-13Mobile: Swipe navigationJaakko Keränen
Swipes are working much better. Todo: - Pinch must always cancel/override edge swipes. - Use the right palette for the "swipein" placeholder.
2021-06-13Mobile: Working on swipe navigationJaakko Keränen
Swipes back and forward are now working, although there are some glitches remaining. Most notably, when swiping back the previous document does not appear until the finger is released.
2021-06-11Mobile: Minor tweaksJaakko Keränen
2021-06-10DocumentWidget: Deleting local files via link context menuJaakko Keränen
2021-06-10DocumentWidget: Pause audio when document changesJaakko Keränen
While document media is now kept in memory even in history, it's quite strange if audio players keep playing on a page viewed in the past without a way to control the playback.
2021-06-09Merge branch 'dev' into work/typesetterJaakko Keränen
# Conflicts: # src/gmdocument.c # src/ui/documentwidget.c # src/ui/inputwidget.h
2021-05-29DocumentWidget: Looking up URLs from historyJaakko Keränen
URLs in the history are in decoded and NFC normalized form, except for spaces which are stored as %20.
2021-05-29DocumentWidget: Retain scroll positionJaakko Keränen
Use scroll position from history when the page content wasn't in the cache.
2021-05-29Gempub: Fixed glitches in DocumentWidgetJaakko Keränen
2021-05-28Gempub: Linear navigation with left/right arrow keysJaakko Keränen
2021-05-28DocumentWidget: Improved drawing of link key shortcutsJaakko Keränen
2021-05-27DocumentWidget: Composited link numbers/lettersJaakko Keränen
Draw the circle and the number/letter separately since we don't have a font with all the glyphs.
2021-05-25Use "Close" instead of "Dismiss"Jaakko Keränen
IssueID #285
2021-05-22Document footer buttonsJaakko Keränen
In some situations, e.g., when a client certificate is required but not active, make available action buttons that offer related shortcuts. Selecting or deselecting an identity for use will automatically reload the current page for convenience. Animate closing sidebars with Escape key.
2021-05-22DocumentWidget: Working on footer button positioningJaakko Keränen
2021-05-21DocumentWidget: Working on buttons related to page contentJaakko Keränen
2021-05-21DocumentWidget: CleanupJaakko Keränen
Group the member variables for clarity.