summaryrefslogtreecommitdiff
path: root/src/ui/widget.c
AgeCommit message (Collapse)Author
2022-01-05Merge branch 'work/v1.10' into devJaakko Keränen
# Conflicts: # CMakeLists.txt # Depends-Android.cmake # res/about/version.gmi # res/lang/cs.bin # res/lang/eo.bin # res/lang/es.bin # res/lang/fi.bin # res/lang/gl.bin # res/lang/ia.bin # res/lang/ie.bin # res/lang/ru.bin # res/lang/sr.bin # res/lang/tok.bin # res/lang/tr.bin # res/lang/uk.bin # res/lang/zh_Hant.bin # src/app.c # src/main.c # src/ui/documentwidget.c # src/ui/labelwidget.c # src/ui/sidebarwidget.c # src/ui/util.c
2022-01-05Handling keys while navigating via home rowJaakko Keränen
When navigating via home row, ensure that other widgets will not trigger when keys are pressed. The document is given keyboard focus even though it is not flagged as focusable, to make sure it gets to handle all the keys first. On macOS, disable all native menu items that have a home row keyboard shortcut. Also on macOS, disable all native menus when changing bindings. IssueID #419
2021-12-17Mobile: Fixed phone sidebar background fadeJaakko Keränen
2021-12-17DocumentWidget: Swipe animation glitchesJaakko Keränen
Most crucially, sometimes the swipe placeholders would not get deleted at all because the visual offset animation was not finishing as expected. This would cause a number of problems with the document behavior.
2021-12-14iOS: Fixed input positioning (non-animated widget)Jaakko Keränen
If there were no entry animation, the native UI control would not be correctly placed.
2021-12-14Widget: More efficient size change notificationsJaakko Keränen
Only notify once, after the arrangement is done.
2021-12-14Widget: Checking if visual offset appliesJaakko Keränen
2021-12-05Widget: Added flag to always fade the backgroundJaakko Keränen
2021-12-05Mobile: Fixed issues with overflow-scrollingJaakko Keränen
2021-12-04iOS: Position system input controls during animationJaakko Keränen
2021-12-04Mobile: Sidebar is now a vertically sliding panelJaakko Keränen
Switched the phone sidebar to use the iOS half/full-height sliding sheet design. This is better for finger reachability and for retaining access to the current page.
2021-12-03Mobile: Manage Identities via SettingsJaakko Keränen
2021-12-02Widget: Widget rearrangement issuesJaakko Keränen
There were issues where popup menus would only get wider and never narrower. Arrangements should not be dependent on the results of a previous one.
2021-11-30SidebarWidget: Crash when switching Feeds modeJaakko Keränen
Updating items immediately destroys the action widgets. # Conflicts: # src/ui/sidebarwidget.c
2021-11-30SidebarWidget: Crash when switching Feeds modeJaakko Keränen
Updating items immediately destroys the action widgets.
2021-11-29Widget: More accurate division of available spaceJaakko Keränen
Take fractional pixels into account when laying out widgets. This ensures that the entire available space is used, particularly when there are many children. IssueID #403
2021-11-23Widget: Removed the animation offset hackJaakko Keränen
2021-11-06CleanupJaakko Keränen
2021-11-06Fixed issues with tall popup menusJaakko Keränen
A tall popup menu needs to use overflow scrolling, but the size of the display wasn't considered. Now a popup window is fit to the usable bounds of the display.
2021-11-04Widget: Scroll overflow widgets via mouse hoverJaakko Keränen
Useful for tall menus and dialogs on the desktop.
2021-10-23CleanupJaakko Keränen
2021-10-22CleanupJaakko Keränen
2021-10-22Merge branch 'work/v1.8' into devJaakko Keränen
2021-10-22Working on tab close buttonsJaakko Keränen
An [x] button appears on tab buttons when hovering on them. Still needs a bit of layout tweaks and the first tab doesn't have a button yet.
2021-10-20Touch: Fixed motion eventsJaakko Keränen
The windowID was expected to be set, but wasn't for touch events. IssueID #351
2021-10-09Widget: Keep frame inside the widget areaJaakko Keränen
TODO: Check if this is only applicable to HiDPI.
2021-10-01Added feeds update progress indicatorJaakko Keränen
Show some status info about the progress of feed refresh. The search query and feeds indicators now use the small UI font size.
2021-09-26Root: Crash when closing split viewJaakko Keränen
Some deleted widgets were kept around in the root's onTop list.
2021-09-21macOS: Native context menusJaakko Keränen
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.
2021-09-20Experimenting with independent popup windowsJaakko Keränen
Toe dipping into multiple window support by allowing popup menu widgets to be displayed in independent windows. This is not a 100% replacement for native menus, but it gets pretty close.
2021-09-19Refactoring Window to split off MainWindowJaakko Keränen
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.
2021-09-19Widget: Scrollable widgets will draw a scrollbarJaakko Keränen
A proper scrollbar would be grabbable, but this is just a visual indication that a menu/dialog/panel can be scrolled. IssueID #337
2021-09-19Widget: Scrolling tall widgets in vertical splitJaakko Keränen
Root's safe rect was not using the right origin coordinates. IssueID #337
2021-09-18Fixed crash when hovered widget is destroyedJaakko Keränen
2021-09-18Tracking hover widget; cleanupJaakko Keränen
The hover widget may get deleted during event processing, so Window keeps track of it for refreshing. TODO: Random crash when a destroyed menu is still in the onTop array (?).
2021-09-14Widget: Fixed overflow scroll boundsJaakko Keränen
2021-09-13Mobile: New selection logic for InputWidgetJaakko Keränen
Touch-based interaction requires a different kind of selection and copy/paste behavior. This isn't done yet; especially multi-line text still needs work.
2021-09-12Mobile: Better Settings tap targets; fixed safe area drawingJaakko Keränen
2021-09-12Widget: More accurate draw countJaakko Keränen
2021-09-12Mobile: Draw optimizations; focus handlingJaakko Keränen
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.
2021-09-11Mobile: Many UI improvements; Upload UIJaakko Keränen
2021-09-08Mobile: Preferences is completed, improvedJaakko Keränen
2021-09-07Mobile: Redoing PreferencesJaakko Keränen
Contents of the Preferences split panel view are created based on arrays of MenuItems. This removes the confusing indirection of trying to modify the desktop widget tree to fit mobile.
2021-07-15Widget: Removed unnecessary assertionsJaakko Keränen
2021-06-15Fixed visual artifact during sidebar animationJaakko Keränen
The sidebars are not supposed to have borders or background fades.
2021-06-15Mobile: Show identity name in toolbarJaakko Keränen
Shuffled the widget flags a bit to make room for a new one.
2021-06-14Swiping and sidebar; various tweaksJaakko Keränen
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.
2021-06-13Mobile: Swipe navigationJaakko Keränen
Swipes are working much better. Todo: - Pinch must always cancel/override edge swipes. - Use the right palette for the "swipein" placeholder.
2021-06-13Mobile: Working on swipe navigationJaakko Keränen
Swipes back and forward are now working, although there are some glitches remaining. Most notably, when swiping back the previous document does not appear until the finger is released.
2021-06-13Touch: Swiping away the sidebarJaakko Keränen