summaryrefslogtreecommitdiff
path: root/src/ui/documentwidget.c
AgeCommit message (Collapse)Author
2021-05-16Cleanup: Moved mobile UI code to its own fileJaakko Keränen
The mobile UI related code has grown large enough to warrant a separate file. Also, work-in-progress redo of the Preferences layout so it can be used with landscape as well.
2021-05-16Changed UI icons related to bookmarksJaakko Keränen
Use the Book and Bookmark characters.
2021-05-15Mobile: Various improvements and fixesJaakko Keränen
- fill the safe area with theme background - don't set button hover states if dragging/scrolling - edge-draggable widgets must be flagged as such - Preferences top panel offset matches sibling panels' offset - allow toolbar to unhide when document is not scrollable
2021-05-14Mobile and iOS: Various fixes and cleanupJaakko Keränen
Several regressions occurred when the split view mode was implemented.
2021-05-14Show "Line break" help text in input dialogJaakko Keränen
2021-05-14DocumentWidget: Keep scroll position for special responsesJaakko Keränen
For example, receiving an input prompt response shouldn't change the current scroll position in the open document.
2021-05-12DocumentWidget: Input query length validationJaakko Keränen
Enforce the maximum length of 1024 bytes for Gemini URLs. The input query prompt shows how many bytes are remaining.
2021-05-12CleanupJaakko Keränen
Use the Return key symbol consistently, also in the Search Query indicator. The input dialog "Send" label now no longer needs the "⇒" icon.
2021-05-12DocumentWidget: Clean up drawingJaakko Keränen
Children drawn were twice?
2021-05-09Fixed showing of pinning indicatorJaakko Keränen
The indicator always shows the current tab's status.
2021-05-07Gempub: Restoring pages from cacheJaakko Keränen
Only auto-open the first chapter when navigating normally, and not via cache. Otherwise the previous read position would be lost.
2021-05-06DocumentWidget: Update pinning indicatorJaakko Keränen
2021-05-06Indicate pinning state in URL barJaakko Keränen
2021-05-06Gempub: Decode URLs, only load cover imageJaakko Keränen
2021-05-06Split view: Fixed theme and title updatesJaakko Keränen
Now every DocumentWidget is guaranteed a unique ID. The window title is updated when the keyroot chages.
2021-05-05Gempub: Split to show index and first chapterJaakko Keränen
When opening a Gempub, split the window and show the index page and the first chapter.
2021-05-05Lang: New strings for directory/archive browsingJaakko Keränen
2021-05-04Split view pinning, "linksplit" special tagJaakko Keränen
A navigation aid: when in split mode, option to keep one of the tabs pinned to the current page so all links open to the side. Added "linksplit" bookmark tag to activate view splitting when opening a link on the page.
2021-05-04Highlight links opened in other tabsJaakko Keränen
The primary purpose is to aid navigation in split view, so one can see exactly which links have been opened.
2021-05-04DocumentWidget: Update the correct fetch progressJaakko Keränen
2021-05-03Lang: Added new and missing stringsJaakko Keränen
IssueID #192
2021-05-02DocumentWidget: Retain Gempub data; cleanupJaakko Keränen
Keep hold of the `Gempub` data while the page is open so it can be used for other purposes.
2021-05-02DocumentWidget: Update the right lock buttonJaakko Keränen
2021-05-02Added a Gempub helperJaakko Keränen
`Gempub` opens and parses a Gempub archive and provides access to the contents in a common way.
2021-04-29Working on multiple UI rootsJaakko Keränen
Added a menu for changing the split mode.
2021-04-29Working on multiple UI rootsJaakko Keränen
Restore previous root after processing events. Adjusted colors of the non-focused root.
2021-04-28Working on multiple UI rootsJaakko Keränen
Root focus switching and opening links in the other root.
2021-04-28Working on multiple UI rootsJaakko Keränen
Various refactorings and fixes to handle root-global and window-global state, root-specific palettes, and proper coordinate system changes (e.g., when opening menus). UI events are posted and handled in the context of a specific root.
2021-04-27Refactor: Update event processing to not assume a single UI rootJaakko Keränen
Most actions should occur in the context of the current UI root.
2021-04-27UI root sizing is independent of window sizingJaakko Keränen
2021-04-27Refactor: Separating UI creation and root widget from WindowJaakko Keränen
Making the way for multiple roots/windows.
2021-04-25GmRequest: Use unique IDs to avoid confusionJaakko Keränen
It is conceivable that a newly created GmRequest gets the same memory location than the one just destroyed. IssueID #148
2021-04-24Gempub cover page; cleanupJaakko Keränen
Use MIME hooks to generate a Gempub cover page with a preloaded cover image. This required applying MIME filtering to "file://" requests as well. Todo: More cleanup, add a gempub.c.
2021-04-24Added "Show Downloads" and "Open Downloaded File"Jaakko Keränen
Contents of the Downloads folder can now be viewed as a directory index page.
2021-04-23File URLs support directories and ZIP archivesJaakko Keränen
One is now able to view directory and ZIP archive contents using file URLs. Directory contents are shown as a list of links, enabling previewing supported formats. A link to the parent directory is included at the top of the page. ZIP archives behave like directories, except they also recognize "index.gmi" and "index.gemini" files and display them instead of the regular directory index (when viewing a directory inside a ZIP archive). This enables archiving a Gemini capsule and browsing it as a ZIP archive. Added a preference to disable loading of index pages.
2021-04-23CleanupJaakko Keränen
2021-04-23DocumentWidget: Crash after receiving a redirectJaakko Keränen
The `GmRequest` object is destroyed after handling a redirect, but afterwards a check was still made to cache the request contents. IssueID #148
2021-04-22Fixed dialog item formattingJaakko Keränen
Confused the `-` prefix and `---` as separator.
2021-04-22ListWidget: Use SmoothScrollJaakko Keränen
2021-04-22SmoothScroll is a UI utility; moved itJaakko Keränen
2021-04-22CleanupJaakko Keränen
2021-04-22DocumentWidget: SmoothScroll utilityJaakko Keränen
Added a `SmoothScroll` utility to make the smooth scroll and bounce behavior applicable elsewhere as well.
2021-04-21Mobile: Working on scroll bounce behaviorJaakko Keränen
2021-04-21Touch: Stopping momentum scrollJaakko Keränen
When a widget runs out of scrollable area, stop any momentum scrolls.
2021-04-21Mobile: Autoreload intervals are missingJaakko Keränen
2021-04-21iOS: Background audio; MP3/AAC playbackJaakko Keränen
2021-04-20iOS: Haptic tap at 100% pinch zoomJaakko Keränen
2021-04-20DocumentWidget: Pre-rendering finetuningJaakko Keränen
Ensure there is more buffered content available in the current scrolling direction, and also make sure that all buffers get pre-rendered after a short delay with the view being stationary.
2021-04-17DocumentWidget: Undefined behaviorJaakko Keränen
2021-04-16VisBuf: Only draw buffers that are within boundsJaakko Keränen
One of the four buffers will be always outside the viewport.