Age | Commit message (Collapse) | Author |
|
Internal behavior tags are now written in bookmarks.ini with a dot prefix (like hidden files on Unix), and at runtime they are removed from the tags string.
This makes things more efficient as it isn't necessary to compile regular expressions all the time.
TODO: Add "Edit Feed..." into the Bookmarks context menu, and a new menu item for listing all subscriptions.
IssueID #331
|
|
|
|
IssueID #388
|
|
|
|
|
|
|
|
The action toolbar now has a button for marking all as read, and keyboard shortcuts for switching between Unread and All modes.
|
|
Most recently used folder is persistently stored in bookmarks.ini.
IssueID #358
|
|
Input query responses (status 1x) are not preserved in History so that when navigating back, they are skipped.
The corresponding URLs are flagged as Transient so they are not shown in the History sidebar.
The History sidebar shows the query string in URLs.
IssueID #382
|
|
|
|
|
|
The built-in fonts are loaded via FontPack, and the font table is now constructed dynamically based on available fonts.
A full set of variants (style, size) are prepared for each font, but some of the data gets allocated lazily when needed.
GmRun needed a larger allocation for fonts, so now all the fields are combined into a single bit field.
TODO: Glyph scaling, vertical offsets, and symbol lookup are still not fully working.
|
|
The heading items will be obsolete if clicking in the sidebar before a page load finishes.
IssueID #350
|
|
Three important changes:
1) Visited URLs can be marked as "kept" so they will never be discarded due to old age.
2) Feed entries are not discarded from the database until they are removed from the source, and then become too old (six months).
3) Visited feed entry URLs are always flagged as kept, so the (un)read status will not be forgotten.
|
|
New bookmarks and folders shouldn't appear outside the visible part of the list.
|
|
It's useful to make a distinction whether a drag ended before or after an item, even if it's still referring to the same boundary between items.
This allows bookmarks to be reordered inside a folder so that an item is moved to the bottom of a folder, or out of the folder following it in order.
|
|
Use the regular bookmark editor but hide the Special Tags section,
and disable all but the Title for now.
|
|
|
|
Incremented the version of state.lgr so it can include bookmark folder open/closed state for each of the two/four sidebars.
|
|
Sidebar asks for confirmation when deleting a folder hierarchy of bookmarks.
|
|
|
|
The user can now create bookmark folders, and drag bookmarks into them. Folders can also be nested.
The bookmark sorting menu item sorts inside the chosen folder/root.
Remote bookmark sources appear also as folders, although they cannot be sorted/edited.
IssueID #339
|
|
One can now drag and drop bookmarks to change their order in the list.
|
|
The bookmarks file is now saved in a TOML subset and named "bookmarks.ini". This makes it more robust and forwards compatible.
Added a field for sort order, since that will be used for manual ordering.
|
|
Added the special prefix `///` to mark items disabled.
|
|
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.
|
|
|
|
Widgets can now be marked for buffering their contents, which is useful if their contents change seldom but they are drawn often.
For example, the navbar is always visible but doesn't change very often, and during animations menu contents are static but there is a moving animation so everything gets drawn 60 FPS.
Focus handling was also improved so the lookup results can be scrolled while entering text, and one can tap outside an input field to unfocus it.
|
|
# Conflicts:
# CMakeLists.txt
# res/about/version.gmi
|
|
The sidebar context menu should open when clicking on the tabs, not the item context menu.
|
|
These options are mostly useful on mobile platforms that are not iOS or Android, and for testing purposes.
|
|
The distinction between measure_Text and advance_Text was not very clear. Now there are only measure_Text functions that return both the bounds and the cursor position advancement, and the appropriate metrics are used by the caller.
|
|
Internally, all URIs should be converted to a canonical form so that they can be compared against each other.
The canonical form is an IRI with spaces and reserved characters percent-encoded.
|
|
The sidebars are not supposed to have borders or background fades.
|
|
|
|
Toolbar should reflect the colors of the current view, whether it's a page or the sidebar.
|
|
When a page is opened from the sidebar, swiping back will now reopen the sidebar. Another swipe will dismiss the sidebar and navigate back as usual.
Attempted to cache theme colors in GmDocument, but there were issues with theme changes.
|
|
|
|
Also fixing glitch with search input field where pressing Return would insert newline.
|
|
|
|
Some of the icons in the Bookmarks list and lookup results were misaligned.
|
|
In some situations, e.g., when a client certificate is required but not active, make available action buttons that offer related shortcuts.
Selecting or deselecting an identity for use will automatically reload the current page for convenience.
Animate closing sidebars with Escape key.
|
|
Exporting an identity will display it in a new tab in PEM encoded format, where it can be saved or copied.
IssueID #236
|
|
Avoid accidental activations by never (de)activating identities based on a single click. Now both left and right mouse clicks will open the context menu.
|
|
|
|
Prevent redundant activations: the highest-level URL overrides the
same identity being used on lower-level URLs. Changed the icons in
the list and added the list of used URLs into the context menu as
clickable items.
|
|
Use the animations introduced for mobile on desktop as well. Adding a
preference for this might be prudent.
|
|
Heights of InputWidget vs. LabelWidget. The default sizes should be equal, e.g., so the navbar elements align properly.
Don't set the input focus automatically when opening a dialog, since the keyboard may cover much of the UI.
|
|
|
|
Also addressed clipping issues when using multiple roots.
|