summaryrefslogtreecommitdiff
path: root/src/ui/window.c
AgeCommit message (Collapse)Author
2021-11-27Window: Don't steal focus on hoverJaakko Keränen
This was incorrect on X11 at least. Should still test on Windows. IssueID #399
2021-11-25Unsplit button in toolbarJaakko Keränen
IssueID #378
2021-11-24Window: Only one draw operation at onceJaakko Keränen
Ensure that a draw is not started if it is already ongoing, especially when using the resize event watcher.
2021-11-14Merge branch 'dev' into work/v1.9Jaakko Keränen
# Conflicts: # CMakeLists.txt # Depends.cmake # src/lang.c
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-10-31Changed format of resources.lgrJaakko Keränen
Resources are now stored in a ZIP archive, and it comes with an explicit version number. All the old embed/bincat stuff was removed as unnecessary. resources.lgr is also a valid fontpack, for loading the built-in fonts. IssueID #363
2021-10-23CleanupJaakko Keränen
2021-10-22Window: Close buttons on merged tabsJaakko Keränen
2021-10-22DocumentWidget: Not scrollable until mouse movedJaakko Keränen
The hover widget needs updating if the currently visible tab changes. Normally the hover widget is only updated when the mouse has moved.
2021-10-20iOS: Fixing the buildJaakko Keränen
2021-10-08Colored popup framesJaakko Keränen
2021-10-06Revised runtime font managementJaakko Keränen
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.
2021-09-28Window: Automatic software rendering fallbackJaakko Keränen
2021-09-27CleanupJaakko Keränen
2021-09-27macOS: Maximized window is not a special caseJaakko Keränen
2021-09-27Window: Fixed regressions in retaining window placementJaakko Keränen
Window placement was not restored correctly when the window was maximized. Maximizing a window (on Windows) causes a spurious move event to be received from SDL, and that would mess up the remembered position. Now window placemenet is saved after a run through the event loop, so the rest of the window messages have been handled.
2021-09-27Windows: Enable dark mode; use dark title bar for dark themesJaakko Keränen
This is quite a hack, but Win32 apps don't seem to have documented access to dark mode.
2021-09-26Popup menus are positioned on selected itemJaakko Keränen
2021-09-26macOS: Popup window fixes; simply window creationJaakko Keränen
2021-09-26Window: Set window position during creation; popups use sw renderJaakko Keränen
The renderer is created separately so it's possible to set the window position at creation time. Popup window use basic software rendering for (hopefully) better performance.
2021-09-26X11: Tuning popup window behavior and appearanceJaakko Keränen
2021-09-26Root: Crash when closing split viewJaakko Keränen
Some deleted widgets were kept around in the root's onTop list.
2021-09-25Windows: Various fixes after MainWindow refactoringJaakko Keränen
2021-09-25Window: Fixed build with ENABLE_WINDOWPOS_FIX; cleanupJaakko Keränen
2021-09-25Fixed a build failzocker
There is no member of d with name win, but base seems to have one.
2021-09-25Persistent bookmark folder stateJaakko Keränen
Incremented the version of state.lgr so it can include bookmark folder open/closed state for each of the two/four sidebars.
2021-09-24Bookmark foldersJaakko Keränen
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
2021-09-23MainWindow: Tweaks to avoid flash at launchJaakko Keränen
When the window appears, it should have all the actual contents and not a placeholder.
2021-09-21Added build options for popup/macOS menusJaakko Keränen
2021-09-21Fixed issues with popup windowsJaakko Keränen
2021-09-20Fixed build on Windows (MSYS)Jaakko Keränen
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-19CleanupJaakko Keränen
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-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-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-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-08-29Merge branch 'dev' into work/v1.7Jaakko Keränen
2021-08-29Fixed running under KMSDRM video driver on LinuxJaakko Keränen
SDL2 works fine without a window system, but it seems the DPI-querying API will crash so let's not call that. Should still add command line options to control the screen resolution, i.e., overriding the window size.
2021-08-22Window: Update UI layout after split changesJaakko Keränen
2021-08-20Added build options to force phone/tablet mobile UIJaakko Keränen
These options are mostly useful on mobile platforms that are not iOS or Android, and for testing purposes.
2021-08-20Window: Update UI layout after split changesJaakko Keränen
2021-08-20Window: Allow Escape to affect all splitsJaakko Keränen
Allow dismissing sidebars in the unfocused split.
2021-08-17Window: Redraw tweaks on MSYSJaakko Keränen
2021-08-17Window: Experimenting with draw-driven UI resizeJaakko Keränen
The notification about UI resize will not occur until a draw has been started, so we can avoid any unnecessary resize handling between draws. May not work?
2021-08-15SDL 2.0.16 line drawing regression (OpenGL renderer)Jaakko Keränen
This is not specific to macOS, but seems to affect OpenGL rendering on all platforms.
2021-07-31Window: Update contents when (re)shownJaakko Keränen
IssueID #311