summaryrefslogtreecommitdiff
path: root/src/app.h
AgeCommit message (Collapse)Author
2022-02-20Adding context items to open in new windowJaakko Keränen
2022-02-19Fixed several event handling issuesJaakko Keränen
Events are expected to have a valid windowID now, and the current window also has to be correct when dispatching or processing any events.
2022-02-18Serializing multiple windowsJaakko Keränen
Not quite fully functional yet. The window positioning still needs to be written to prefs.cfg.
2022-02-18Basic opening and closing of new windowsJaakko Keränen
One can create a new window with `window.new` and close it with the window close button.
2022-01-20App: Font Library cmap includes pack sizesJaakko Keränen
2022-01-19Fontpack lookup via missing glyphsJaakko Keränen
IssueID #435
2022-01-07App: Optimizing periodic eventsJaakko Keränen
IssueID #416
2021-12-29Inline download context menu; macOS: Show in FinderJaakko Keränen
The inline downloads UI finally has some interactivity: left-clicking on a finished download opens it in the default viewer app, and right-clicking shows a context menu with relevant actions.
2021-12-28Viewing unsupported files in another appJaakko Keränen
After receiving content of unsupported type, show a footer action button to open it in another app. IssueID #135
2021-10-18CleanupJaakko Keränen
2021-10-17Media and FontPacks (work in progress)Jaakko Keränen
Saving this as the last point of progress. This direction is too complicated: Media needs to be a lot more sophisticated to allow dynamic and interactive media at the level of FontPacks. (A bit like Player handles audio playback.) This will be reverted. FontPack management will happen using an another method.
2021-09-26Window: Set window position during creation; popups use sw renderJaakko Keränen
The renderer is created separately so it's possible to set the window position at creation time. Popup window use basic software rendering for (hopefully) better performance.
2021-09-26X11: Tuning popup window behavior and appearanceJaakko Keränen
2021-09-21macOS: Native context menusJaakko Keränen
Popup context menus now use NSMenu. There are still has a few glitches with the navbar identity button, but most menus are working. SDL required another little tweak to force it to update mouse button state after the synchronously handled context menu goes away. Otherwise SDL's internal mouse button state shows that the right mouse button is held down.
2021-09-20Experimenting with independent popup windowsJaakko Keränen
Toe dipping into multiple window support by allowing popup menu widgets to be displayed in independent windows. This is not a 100% replacement for native menus, but it gets pretty close.
2021-09-07App: Added options -w, -h for window sizingJaakko Keränen
2021-08-29Fixed running under KMSDRM video driver on LinuxJaakko Keränen
SDL2 works fine without a window system, but it seems the DPI-querying API will crash so let's not call that. Should still add command line options to control the screen resolution, i.e., overriding the window size.
2021-06-10Mobile: Horizontal sidebar animationJaakko Keränen
Also fixing glitch with search input field where pressing Return would insert newline.
2021-06-10Preferences: Memory size limitJaakko Keränen
Memory used for RAM storage of media along with navigation history so it can be restored instantly.
2021-05-21Added -u,--url-or-search command line optionJaakko Keränen
Opening an URL or making a search query from the command line. IssueID #232
2021-05-14Mobile and iOS: Various fixes and cleanupJaakko Keränen
Several regressions occurred when the split view mode was implemented.
2021-05-11InputWidget: Word wrapping, inserting newlinesJaakko Keränen
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-02App: Save split mode; launch event cleanupJaakko Keränen
The serialized state version was bumped, so old states are incompatible and are ignored. There were redundant events posted during launch.
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-21Mobile: Working on scroll bounce behaviorJaakko Keränen
2021-04-10Touch: Notify widget when tap is about to beginJaakko Keränen
Notify when hover state should be updated again after scrolling.
2021-03-18Scrollbar fading and periodic commandsJaakko Keränen
Added a new mechanism to issue periodic but not per-frame commands. This is used for main-thread operations like checking if it's time to fade away the scrollbars. Scrollbars are faded away completely on Apple platforms. Adjusted list right margins accordingly.
2021-03-13Text: Separate glyph caching procedureJaakko Keränen
Previously glyph caching was done during text rendering, but that would mean lots of swapping between rendering stuff to the cache and then immediately afterward rendering to the display. There would be a swap per each new glyph. Now the entire document's glyphs are precached at once when a request is finished. Glyphs are also cached in larger batches when new text needs to be drawn.
2021-03-01Listing open tabs via command lineJaakko Keränen
IssueID #178
2021-02-26DocumentWidget: Inline downloadsJaakko 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-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-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
2020-12-10Feeds: Show entries in lookup resultsJaakko Keränen
2020-12-06Added build option for sleeping while idleJaakko Keränen
It appears at least on macOS, SDL is doing a while lot of stuff while waiting for new events. Perhaps because it has some sort of high-frequency input/sensor processing? Not sure. Now Lagrange will idle by polling events every 15 ms and sleeping in between. This reduces CPU time by an order of magnitude on macOS. Need to still test on other platforms.
2020-12-02Added MimeHooksJaakko Keränen
This is a very powerful mechanism: translate the contents of any request to something else when the original MIME type matches a configured regexp. The external hook command may still elect not to process the request.
2020-11-28Cleanup: Removed (hidden) preformatted wrap optionJaakko Keränen
2020-11-06Link context menu item to bypass proxyJaakko Keränen
IssueID #25
2020-10-09Fixed memory leak on tab closeJaakko Keränen
The DocumentWidget was not actually deleted when a tab was closed, only hidden.
2020-09-21Added Prefs; placeholders for new optionsJaakko Keränen
2020-09-20Opening links in a new background tabJaakko Keränen
2020-09-17Added a "Save Page" menu itemJaakko Keränen
2020-09-15Added software rendering fallback and --sw optionJaakko Keränen
2020-09-11macOS: Handling launch URLs and drop'n'dropJaakko Keränen
Improved drop and drop event handling: multiple dropped files/URLs open in new tabs. The application registers gemini: as a handled URL scheme.
2020-09-07LookupWidget: Working on history content searchJaakko Keränen
2020-09-07CleanupJaakko Keränen
2020-09-05Option to force break very long linesJaakko Keränen
Even preformatted lines may need to be wrapped so the content remains visible, since there is no horizontal scrolling. However, this is off by default so ASCII art isn't broken in narrow windows.