summaryrefslogtreecommitdiff
path: root/src/app.c
AgeCommit message (Collapse)Author
2021-03-04Save identity usage changes immediatelyJaakko Keränen
2021-03-04Possible crash when opening PreferencesJaakko Keränen
2021-03-04Changing UI scaling at runtimeJaakko Keränen
UI scaling factor is applied when closing the Preferences dialog. IssueID #83
2021-03-03Load keyboard modifier mapping from modmap.txtJaakko Keränen
IssueID #87
2021-03-02Windows: Implement IPC with mailslotsJaakko Keränen
2021-03-02Server certificates may also be verified by CAsJaakko Keränen
If the CA file/path are configured in preferences, trust CA verification over manual TOFU checks.
2021-03-01Added a resource for the --help instructionsJaakko Keränen
IssueID #174
2021-03-01Listing open tabs via command lineJaakko Keränen
IssueID #178
2021-02-28Single app instance; IPC mechanismJaakko Keränen
Only one instance of Lagrange is allowed to run per a runtime directory. Otherwise the instances will overwrite each others' files. Added a check at startup to see if an instance is already running. If so, options can be used to communicate with it. By default, a new tab is opened in the running instance. IssueID #37 IssueID #164 IssueID #174 IssueID #178
2021-02-26Visual design improvementsJaakko Keränen
URL input field has a maximum width. Adjusted navbar appearance and margins. Tuned UI palette and added UI accent color preference.
2021-02-26DocumentWidget: Inline downloadsJaakko Keränen
2021-02-24Source Sans Pro and Iosevka as font optionsJaakko Keränen
Allow the UI and monospace fonts to be used as page content fonts.
2021-02-23Option to auto-reload a tab at a given intervalJaakko Keränen
IssueID #116
2021-02-23Preferences: Leave an empty search URL unmodifiedJaakko Keränen
2021-02-23Show a search indicator in the URL barJaakko Keränen
Indicate to user when entered text will be user for a search engine query. IssueID #157
2021-02-22iOS: Font adjustmentsJaakko Keränen
2021-02-21Minor tweaksJaakko Keränen
2021-02-20iOS: Tweaks and changes for phone modeJaakko Keränen
Phone mode uses a modified user interface. Work in progress...
2021-02-19iOS: Further tweaks for mobileJaakko Keränen
2021-02-19iOS: Adjusting the UI for a tablet screenJaakko Keränen
2021-02-18iOS: Working on touch event handlingJaakko Keränen
Handle finger down, motion, and up events to implement basic taps, long presses, and inertia scrolling. Much finetuning still to be done, and certain widgets like input fields and scrollbars need a direct drag mode (they were working fine via the "mouse" events already).
2021-02-16Search engine queries via the navbarJaakko Keränen
Any text that doesn't look like a URL is passed onto the configured search URL as a query string. IssueID #157
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-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-13Windows: Further custom frame improvementsJaakko Keränen
Saving the window rectangle and snap mode. Frame title alignment.
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-10App: Events posted early may cause a crashJaakko Keränen
Attempting to ask SDL about a non-existent window's ID.
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-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: 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-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-02App: List environment variables in "about:debug"Jaakko Keränen
2021-01-27Added preference for maximum cache sizeJaakko Keränen
Rather than simply limiting each tab's cache to 50 most recent URLs, there is now a user-configurable maximum size. If more content is cached, the oldest/largest responses will be removed from memory. The default maximum cache size is 10 MB. IssueID #109
2021-01-19Closing tabs with the middle mouse buttonJaakko Keränen
IssueID #115
2021-01-18Renamed ".binary" filesJaakko Keränen
Use the .lgr extension for Lagrange binary files.
2021-01-15"about:debug" shows cache informationJaakko Keränen
IssueID #109
2021-01-12Added keybinding for toggling URL hover showingJaakko Keränen
IssueID #64
2021-01-10Option to show full URL when hovering on a linkJaakko Keränen
The URL is shown in the bottom of the page. IssueID #64
2021-01-04App: Drag-and-drop events passed to all widgetsJaakko Keränen
2021-01-04Added a client certificate import dialogJaakko Keränen
Todo: Drag-and-drop; the actual identity creation step.