summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2021-02-17Added a built-in Atom-to-Gemini feed translatorJaakko Keränen
If no user-configured MIME hooks handle an Atom XML document, it will be translated using a built-in filter hook. Only Atom is supported. IssueID #78
2021-02-15Added user preference to disable vertical centering of pagesJaakko Keränen
The centering option affects all pages, including "about:" and error messages.
2021-02-14Windows: Improved custom frame behavior; default to disabledJaakko Keränen
2021-02-14Color: Extended range for color escapesJaakko Keränen
Use a double \r for color IDs 95 and beyond.
2021-02-14DocumentWidget: Alignment excludes bannerJaakko Keränen
Short pages are vertically centered, but the site banner should be excluded from this because it is not part of the actual page contents.
2021-02-14SidebarWidget: Handling feed entry URLs with spacesJaakko Keränen
The sidebar failed to realize that an entry was the current one and/or already read, because URL encoding is not consistently applied. This needs addressing soon — internally, all URLs should have a consistent format (fully encoded or decoded, NFC normalized).
2021-02-14Open Help on first runJaakko Keränen
Make things less confusing for newcomers by showing the Help document on first run. Moved up the "What is Gemini" section to the top since it has the FAQ link. IssueID #159
2021-02-13App: Fixed crash at shutdownJaakko Keränen
Must remove the resize watcher so it doesn't trigger redraws during shutdown.
2021-02-13Windows: Custom frame preference; further minor tweaksJaakko Keränen
2021-02-13Text: No scaling for text glyphsJaakko Keränen
2021-02-13Windows: Custom frame app icon, finishing touchesJaakko Keränen
2021-02-13Windows: Further custom frame improvementsJaakko Keränen
Saving the window rectangle and snap mode. Frame title alignment.
2021-02-13Windows: CleanupJaakko Keränen
2021-02-13Windows: Improved custom frame behaviorJaakko Keränen
Windows-key shortcuts and cursor edge snapping. Still missing: window shadow and saving the snap mode.
2021-02-12Windows: Custom frame behaviorJaakko Keränen
A borderless SDL window gets no standard window behavior, so this commit implements support for some of them. There is special handling for the window frame and various snapping modes. Not quite finished yet... It might make sense to research if a custom window class could work with this app (with SDL); could be less work.
2021-02-11Windows: Experimenting with a custom window frame and title barJaakko Keränen
Added the build option ENABLE_CUSTOM_FRAME that causes the window to be created as borderless. Lagrange's own UI widgets are used to draw the title bar elements, including the window buttons. There is plenty of sizing behavior still missing, for instance snapping to fullscreen left/right side, double-clicking the frame edges, and proper maximize mode that doesn't cover the entire screen. The window system menu is also missing, but that can be shown manually when appropriate. A command-line option should also be provided to disable winbar in case the default title bar is required.
2021-02-11Windows: Draw something immediately when the window is openedJaakko Keränen
Avoids having a flash of white or other system-provided default window contents when opening a window for the first time.
2021-02-11Added keybinding for finding textJaakko Keränen
IssueID #153
2021-02-10Fixed URL path decoding issueJaakko Keränen
One should not decode characters that are reserved for the URL syntax.
2021-02-10Bookmarks: Fixed crash when removing a bookmark sourceJaakko Keränen
Remote bookmarks from a deleted source page were not immediately removed, so the UI got confused about the missing source bookmark. IssueID #154
2021-02-10Window: Keep scroll position when resizing verticallyJaakko Keränen
Fixed broken logic. IssueID #138
2021-02-10App: Events posted early may cause a crashJaakko Keränen
Attempting to ask SDL about a non-existent window's ID.
2021-02-10CleanupJaakko Keränen
2021-02-10Merge branch 'dev' of github.com:skyjake/lagrange into devJaakko Keränen
2021-02-10Window: Keep scroll position when resizing verticallyJaakko Keränen
IssueID #138
2021-02-09Feeds: Wait up to 10 seconds for responseJaakko Keränen
If a server doesn't respond, there is no use waiting indefinitely in a background request.
2021-02-08Bookmarks: Do not require a label for remote linksJaakko Keränen
IssueID #147
2021-02-08DocumentWidget: Update hover link after context menu closesJaakko Keränen
IssueID #145
2021-02-08CleanupJaakko Keränen
Function naming convention is: {method}_{class}() Ran clang-format on the changes.
2021-02-08Merge commit 'pullrequests/ThomasAdam/ta/shift-ins' into devJaakko Keränen
2021-02-07paste: refactor to allow for Shift+InsThomas Adam
Under Linux/Unix, the key combination of "Shift+Ins" allows for pasting from the clipboard into most applications. Refactor pasting to its own function and define the key combination of Shift+Ins to allow for this.
2021-02-07App: Determine first run based on existence of prefs.cfgJaakko Keränen
2021-02-07Windows: Check for a portable userdata directoryJaakko Keränen
IssueID #120
2021-02-07DocumentWidget: Wrong tab gets input query stringJaakko Keränen
Input submission events are now tied to a particular document and not implicitly to the current one. As a workaround, input queries will now force a tab to the foreground. IssueID #142
2021-02-05Experimenting with an iOS buildJaakko Keränen
iPlatformApple applies to both macOS and iOS. Added iPlatformAppleDesktop and iPlatformAppleMobile to make a distinction between the two. IssueID #96
2021-02-05macOS: Fixed buildJaakko Keränen
2021-02-03XDG: Check XDG_CONFIG_HOME and the user's download directoryJaakko Keränen
Also added a build option to disable changing the user download directory within Lagrange, since that's set via XDG config.
2021-02-03Improved first-run experienceJaakko Keränen
Use a remote source for Getting Started bookmarks. Tweaked default values of preferences.
2021-02-03Window: Fixed invalid contents are restoring in fullscreen modeJaakko Keränen
When the window was put in the background in fullscreen mode and then restored to foreground, buffered contents were lost. IssueID #130
2021-02-03Window: Fullscreen mode shouldn't affect the retained window rectJaakko Keränen
IssueID #130
2021-02-03Added keybinding (F11) for toggling fullscreen modeJaakko Keränen
IssueID #130
2021-02-02Stripping the URL fragmentJaakko Keränen
Lagrange will retain URL fragments when parsing gemtext, but will strip them when making requests or when a DocumentWidget's URL is set. This allows opening URLs with fragments in an external browser. IssueID #128
2021-02-02Linux: Use SDL to query display monitor DPI valueJaakko Keränen
IssueID #133
2021-02-02Improved focus switching for dialogsJaakko Keränen
Widgets can now be defined as being the "focus root", i.e., the topmost widget under which focus switching happens. Normally this is the window root widget, but dialogs use this flag to confine focus switching inside the dialog. InputWidget in Overwrite mode will focus switch to the next focusable widget when the text field becomes full.
2021-02-02InputWidget: Fixed cursor missing in an empty input widgetJaakko Keränen
2021-02-02App: List environment variables in "about:debug"Jaakko Keränen
2021-02-01DocumentWidget: Allow reloading the current URLJaakko Keränen
IssueID #129
2021-01-29Fixed drawing of widget framesJaakko Keränen
In CertImportWidget at regular-DPI 1.0 scaling, the frames of the certificate and private key labels were drawn incorrectly. Now the non-button LabelWidget relies on Widget to draw the frames.
2021-01-29Bookmarks: Remove default Gemini portsJaakko Keränen
Normalize bookmark URLs by removing the default Gemini ports.
2021-01-29Allow importing remote bookmarksJaakko Keränen
Importing bookmarks should be allowed to create local copies of remote bookmarks, so that one can add any locally missing bookmarks from a shared remote source.