aboutsummaryrefslogtreecommitdiff
path: root/src/wl_window.c
AgeCommit message (Collapse)Author
2021-07-29Scale fonts when Wayland updates scaling factorIvan Oleynikov
Before this commit, the code in src/wl_window.c seemed to handle the Wayland scaling [1] correctly, it was sending resize events to imv to update the buffer size accordingly. One thing it didn't update is the scaling of fonts that Pango renders on Cairo. This commit simply forwards the scaling factor (computed as [1] requests) together with updated buffer dimentions in resize event, and when the resize event is handled it calls cairo_surface_set_device_scale to notify Pango/Cairo of the scaling. For X11, I simply assume the scaline factor is always 1. This seems to be what the old code did: `grep scale src/x11_window.c` gives no matches. AFAIK, X11 does not have an established way of telling clients what scaling factor to use (and never updates it at runtime). [1]: https://wayland-book.com/surfaces-in-depth/hidpi.html
2021-07-08Fix image skipping when reading slow filesystemsHarry Jeffery
Fixes #201
2021-01-09Wayland: Perform display roundtrip after changing scaleHarry Jeffery
Fixes #305
2020-12-02wayland: Fix initial black screen due to size of 0x0Scott Moreau
https://gitlab.freedesktop.org/wayland/wayland-protocols/-/blob/master/stable/xdg-shell/xdg-shell.xml#L1037 states regarding xdg_toplevel.configure "The width and height arguments specify a hint to the window". imv was using these dimensions even if they are 0x0, which is valid for the compositor to send. Clearly this is a bad hint and should be ignored. This patch does that, and fixes #293.
2020-07-21Use private mapping for memfd with keymap.Aleksei Bavshin
mmap with MAP_SHARED would fail if the compositor provides a read-only descriptor with keymap. And at least weston applies F_SEAL_WRITE to the memfd if supported by the platform. Fixes #263
2020-07-21wayland: Do not commit surface until configureKenny Levinsen
2020-07-21wayland: Use wl_display_roundtrip to wait for globalsKenny Levinsen
2020-05-21Fix memory leak in imv_event structureRobert Sacks
2019-09-02wl_window: Remove unused includesHarry Jeffery
2019-08-25wl_window: Fix segfault under velox WMHarry Jeffery
2019-08-25wl_window: Fix incorrect timer_deleteHarry Jeffery
2019-08-25Remove unused imv_window_get_keymap functionHarry Jeffery
2019-08-25wl_window: Implement key repeatingHarry Jeffery
2019-08-24imv: Move keyboard handling into window subsystemHarry Jeffery
This is required as key repeating is going to need to be handled locally on Wayland, which means a slight refactor.
2019-08-24window: Set Wayland/X11 class/app_id hintsHarry Jeffery
2019-08-23wl_window: Maintain keyboard modifiers stateHarry Jeffery
2019-08-18x11_window: Use XCB to load keymapHarry Jeffery
2019-08-15wl_window: Check poll() return codeHarry Jeffery
2019-08-15wl/x11: Ensure event writes are always atomicHarry Jeffery
2019-08-15wl_window: Patch up possible memory leaksHarry Jeffery
2019-08-13Wayland: Detect keyboard layout automaticallyHarry Jeffery
2019-07-28wl: Tidy up imv_window_wait_for_eventHarry Jeffery
2019-07-28wl: Implement hidpi supportHarry Jeffery
2019-07-16wl: Pass events via pipe not queueHarry Jeffery
2019-07-16x11: Use pipe for custom event notificationHarry Jeffery
2019-07-15Wayland: Remove linux-only eventfd usageHarry Jeffery
2019-07-13Make window system configurableHarry Jeffery