summaryrefslogtreecommitdiff
path: root/src/ui/inputwidget.c
AgeCommit message (Collapse)Author
2021-07-27InputWidget: Fixed cursor and selection issuesJaakko Keränen
Cursor position was miscalculated because WrapText works a bit differently with maxWidth==0. Selection was not always updated as intended.
2021-07-26InputWidget: Fixed copying a range of textJaakko Keränen
2021-07-25UploadWidget: Fixes and improvementsJaakko Keränen
Fixed update after undo. Line wrap long destination URLs. Don't open a new upload dialog if one is already open.
2021-07-24InputWidget: Focus, cursor and scrollingJaakko Keränen
Tweak that lets a single-line editor (URL field) keep its first line visible when unfocused.
2021-07-24CleanupJaakko Keränen
2021-07-23Window: Mouse wheel events vs. split modeJaakko Keränen
Only process mouse wheel events on the root over which the mouse is currently.
2021-07-23InputWidget: Fixes to updating widget heightJaakko Keränen
2021-07-23InputWidget: Automatic backup modeJaakko Keränen
2021-07-23InputWidget: Buffer contents not activeJaakko Keränen
2021-07-22InputWidget: Fixed multiline deletion; arrow key eventsJaakko Keränen
2021-07-22Added a setting for Return key behaviorJaakko Keränen
User preference for line break / accept behavior in input fields. Still needs to be added to the Preferences dialog.
2021-07-22InputWidget: Showing the hint textJaakko Keränen
2021-07-22InputWidget: Sensitive input modeJaakko Keränen
At a low level when measuring/drawing text, replace all characters with an override character.
2021-07-21InputWidget: Overwrite mode and max lengthJaakko Keränen
2021-07-21InputWidget: Deleting textJaakko Keränen
2021-07-21InputWidget: Fixed and reliabilityJaakko Keränen
Cursor movement and pasting.
2021-07-21InputWidget: Fixed coord-based positioningJaakko Keränen
2021-07-21Text: Finding the advance position of a characterJaakko Keränen
2021-07-21Revising InputWidget (continued)Jaakko Keränen
Finding cursor position via coordinates. Handling the mark. Visual wrapped lines vs. content lines. Vertical scrolling inside the visual range.
2021-07-20Revising InputWidgetJaakko Keränen
`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.
2021-07-15Fixing regressions text metrics, InputWidgetJaakko Keränen
`run_Font_` was moving the Y cursor position twice for each line break. Checking for the HarfBuzz UNSAFE_TO_BREAK flag leads to some unexpected behavior near edges of words. The old `tryAdvanceNoWrap` method should return the maximum horizontal advance of the text, and not the cursor position's advance. `draw_WrapText` used the wrong foreground color. `TextBuf` now uses WrapText to do all the measuring and drawing, making things much simpler.
2021-07-06InputWidget: Fixed cursor positioningJaakko Keränen
Use advance and not bounds.
2021-07-06Text run measurement API change; bug fixesJaakko Keränen
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.
2021-06-30Canonical URIsJaakko Keränen
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.
2021-06-17CleanupJaakko Keränen
2021-06-10Mobile: Horizontal sidebar animationJaakko Keränen
Also fixing glitch with search input field where pressing Return would insert newline.
2021-06-09Merge branch 'dev' into work/typesetterJaakko Keränen
# Conflicts: # src/gmdocument.c # src/ui/documentwidget.c # src/ui/inputwidget.h
2021-06-08Normalize (NFC) document/input field contentJaakko Keränen
The text renderer has problems with composites so normalizing the text (using Unicode normalization form C) yields better results for now.
2021-05-19Merge branch 'dev' into work/typesetterJaakko Keränen
2021-05-19Mobile: InputWidget Return key vs. maxLenJaakko Keränen
Only unlimited-length input should allow line breaks with the Return key.
2021-05-18Mobile: Tablet tweaksJaakko Keränen
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.
2021-05-18Mobile: Tablet tweaksJaakko Keränen
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.
2021-05-18Merge branch 'dev' into work/typesetterJaakko Keränen
# Conflicts: # src/ui/documentwidget.c # src/ui/inputwidget.c
2021-05-17Mobile: Preferences on tablet devicesJaakko Keränen
Use the mobile layout on tablets as well.
2021-05-17Mobile: Return key insert newline by defaultJaakko Keränen
To avoid accidentally submitting queries, use the software keyboard Return key for inserting newlines.
2021-05-14InputWidget: Touch tweaksJaakko Keränen
2021-05-14Mobile and iOS: Various fixes and cleanupJaakko Keränen
Several regressions occurred when the split view mode was implemented.
2021-05-14InputWidget: Rewrap when width changesJaakko Keränen
2021-05-14InputWidget: Fixed cursor moving; scroll the dialogJaakko Keränen
Up/down movement sometimes ended up in the wrong cursor position. Now the nearest overflow-scrollable parent scrolls to keep the cursor visible.
2021-05-13InputWidget: Drawing hint and buffered textJaakko Keränen
Improved TextBuf to handle word/bound-wrapped content.
2021-05-13Debug info shows total cache/RAM usageJaakko Keränen
2021-05-12InputWidget: Shift-click to select a rangeJaakko Keränen
2021-05-12DocumentWidget: Input query length validationJaakko Keränen
Enforce the maximum length of 1024 bytes for Gemini URLs. The input query prompt shows how many bytes are remaining.
2021-05-12CleanupJaakko Keränen
Use the Return key symbol consistently, also in the Search Query indicator. The input dialog "Send" label now no longer needs the "⇒" icon.
2021-05-12InputWidget: Expanding while editingJaakko Keränen
The navbar layout cannot accommodate more than one line of text, but allow the editor to expand while writing text.
2021-05-11InputWidget: Word wrapping, inserting newlinesJaakko Keränen
2021-04-30InputWidget: Highlight only in focused rootJaakko Keränen
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-27UI root sizing is independent of window sizingJaakko Keränen