Age | Commit message (Collapse) | Author |
|
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.
|
|
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.
|
|
Attempting to ask SDL about a non-existent window's ID.
|
|
|
|
IssueID #120
|
|
iPlatformApple applies to both macOS and iOS. Added iPlatformAppleDesktop and iPlatformAppleMobile to make a distinction between the two.
IssueID #96
|
|
|
|
Also added a build option to disable changing the user download
directory within Lagrange, since that's set via XDG config.
|
|
Use a remote source for Getting Started bookmarks. Tweaked default
values of preferences.
|
|
IssueID #130
|
|
IssueID #130
|
|
IssueID #133
|
|
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.
|
|
|
|
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
|
|
IssueID #115
|
|
Use the .lgr extension for Lagrange binary files.
|
|
IssueID #109
|
|
IssueID #64
|
|
The URL is shown in the bottom of the page.
IssueID #64
|
|
|
|
Todo: Drag-and-drop; the actual identity creation step.
|
|
Just the widgets thus far.
|
|
|
|
SDL_OpenURL() was added in 2.0.14.
|
|
Bookmarks tagged "remotesource" are fetched and all links are treated as remote bookmarks.
Remote bookmarks are not saved locally.
|
|
|
|
|
|
This works if the OS supports the scheme as built-in or via some handler application.
IssueID #103
IssueID #84
|
|
IssueID #73
|
|
This time without a race.
IssueID #90
|
|
|
|
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.
|
|
IssueID #53
|
|
A sidebar on the right is a better solution than a kludgy non-interactive special-purpose outline that appears when hoving the mouse on the document scrollbar.
|
|
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.
|
|
|
|
This also gives feedback about a newly added subscription.
|
|
When "subscribed" and "headings" tags are used, the subscribed page is tracked for newly added headings (of any kind).
This works for the weiph/pikkulogs out there.
|
|
|
|
|
|
SDL clears all buffered rendertargets so we must redraw everything.
|
|
Rearrange and draw window contents with an event watcher during window resizing because SDL is blocking the main thread.
Tested on macOS so far, may need a build option.
In reference to SDL bug: https://bugzilla.libsdl.org/show_bug.cgi?id=2077
|
|
|
|
|
|
|
|
The most serious problem was that GmRequest's response body was being accessed while the TlsRequest thread was modifying it.
Now the response must always be locked before accessing elsewhere.
There were also inefficient data updates in the media players.
|
|
Feeds fetches bookmarks with the "subscribed" tag and looks for feed-formatted links. The found links are added to the database of feed entries.
|
|
|
|
|