Age | Commit message (Collapse) | Author |
|
Scaling of monospace and symbols; cache reset.
|
|
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.
|
|
MainWindow represents (one of) the main windows of the app, while the basic Window will be a used for popups.
Only MainWindow supports split view modes.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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.
|
|
|
|
The new panels maker offers a declarative solution for creating consistent UIs.
|
|
"Cancel" would imply here that changes made in the editor would be cancelled, when the opposite is true: the editor contents are saved persistently.
|
|
In the long-form text entry mode, don't use the user's configured Return key behavior, since that's meant for shorter input fields.
Input fields no longer lose focus when the window loses input focus, but the cursor will stop blinking. This makes it easier to resume typing after switching window focus, and also on macOS the symbol picker is easier to use.
|
|
For example, any URL field should disallow line breaks. The line break modifier preference should be disregarded in an input field where there are no line breaks.
|
|
|
|
|
|
|
|
Fixed update after undo. Line wrap long destination URLs. Don't open a new upload dialog if one is already open.
|
|
Tweak that lets a single-line editor (URL field) keep its first line visible when unfocused.
|
|
|
|
When using the upload shortcut, enable configuring a specific port for Titan via site-specific parameters.
|
|
|
|
|
|
|
|
|
|
|
|
Cursor movement and pasting.
|
|
Finding cursor position via coordinates. Handling the mark. Visual wrapped lines vs. content lines. Vertical scrolling inside the visual range.
|
|
`InputWidget` needs to be better at handling multiple lines. The previous implementation assumed that the content was short enough to be fully redrawn each frame, which is not a great idea when you have thousands of lines.
|
|
Socket can now tell us how much data is being sent, so the upload progress can be monitored.
|
|
There may be a bug in `TlsRequest` when sending out large amounts of data.
|
|
`UploadWidget` allows entering long-form text or dropping a file for uploading.
InputWidget isn't yet well suited for really long documents... Some optimizations will be needed.
|