Age | Commit message (Collapse) | Author |
|
Only unlimited-length input should allow line breaks with the Return key.
|
|
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.
|
|
Use the mobile layout on tablets as well.
|
|
To avoid accidentally submitting queries, use the software keyboard Return key for inserting newlines.
|
|
|
|
Several regressions occurred when the split view mode was implemented.
|
|
|
|
Up/down movement sometimes ended up in the wrong cursor position.
Now the nearest overflow-scrollable parent scrolls to keep the cursor visible.
|
|
Improved TextBuf to handle word/bound-wrapped content.
|
|
|
|
Enforce the maximum length of 1024 bytes for Gemini URLs. The input query prompt shows how many bytes are remaining.
|
|
Use the Return key symbol consistently, also in the Search Query indicator. The input dialog "Send" label now no longer needs the "⇒" icon.
|
|
The navbar layout cannot accommodate more than one line of text, but allow the editor to expand while writing text.
|
|
|
|
|
|
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.
|
|
Most actions should occur in the context of the current UI root.
|
|
|
|
|
|
|
|
There is a problem with repeated arrangements: the previous set sizes affect subsequent outcomes. This results in Preferences not being able to reduce in size, only to expand.
It should be possible to reset sizes back to zero/minimum size before starting an arrangement, but LabelWidget needs to cooperate by using `minSize` to set its default size. `minSize` is preferable to fixedSize because then the widget can go through the usual arranging logic.
To be continued at a later time...
|
|
IssueID #134
|
|
The click handling utility no longer treats double clicks as a special case. An arbitrary number of clicks is kept in a separate counter.
|
|
IssueID #192
|
|
More or less everywhere?
IssueID #192
|
|
Restore when there is more space available.
|
|
The default URL scheme is "gemini". If missing, it will always be added back when making requests. This allows it to be omitted from the URL input field if space needs saving.
Other schemes, like "gopher", won't be omitted.
|
|
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.
|
|
|
|
IssueID #175
|
|
|
|
The software keyboard obstructs part of the UI, so need to offset the view if the focused input widget would not be visible.
|
|
|
|
Overflow-scrollable allows momentum scrolls. Adjusting fonts in phone sheets.
|
|
On a phone, dialogs are restructured to be more vertical and full-width.
|
|
UI scaling factor is applied when closing the Preferences dialog.
IssueID #83
|
|
IssueID #87
|
|
|
|
Try to minimize the number of fonts in the UI. Input fields now use the same UI font as everything else. The monospace font was originally used because the widget required one, but that is no longer the case.
|
|
Indicate to user when entered text will be user for a search engine query.
IssueID #157
|
|
IssueID #140
|
|
|
|
|
|
Widgets can be flagged as being touch-draggable, which makes them receive finger down/motion/up events directly, and no momentum scrolling is applied.
|
|
Function naming convention is: {method}_{class}()
Ran clang-format on the changes.
|
|
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.
|
|
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.
|
|
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.
|
|
|