ubuntu-webapps-bugs team mailing list archive
-
ubuntu-webapps-bugs team
-
Mailing list archive
-
Message #03840
[Bug 1548996] Re: Fix device scaling mess
** Changed in: oxide
Status: In Progress => Fix Released
--
You received this bug notification because you are a member of Ubuntu
WebApps bug tracking, which is subscribed to Oxide.
https://bugs.launchpad.net/bugs/1548996
Title:
Fix device scaling mess
Status in Oxide:
Fix Released
Bug description:
Oxide assumes that the coordinate space for QtQuick is always physical
pixels, and that device scaling is always performed by the application
/ toolkit. This is only true for Ubuntu UI apps running on the Ubuntu
QPA plugin though.
Other QPA plugins take care of scaling already if it's not handled by
the windowing system (eg, xcb). In Qt 5.6, the API boundary between
QPA plugins and Qt works in native pixels (which are in the coordinate
space that the windowing system works with - in X11 this is physical
pixels, in OS X this is scaled already), and Qt takes care of mapping
between native pixels and device independent pixels rather than this
being done in the QPA plugins.
Today Oxide is completely broken on xcb with a device scale other than
1. If you launch the browser with QT_DEVICE_PIXEL_RATIO=2 (and without
GRID_UNIT_PX set), then the application UI appears to scale correctly
because of the scaling in the xcb QPA plugin. However, the webview
content is scaled twice (eg, on my 1600 pixel wide display, the
webview gets a width of 400 device independent pixels) because we
wrongly assume that QtQuick is operating in physical pixels.
We can fix this in Oxide by assuming that QtQuick operates in device
independent pixels (as it does on most platforms), but we need to add
in an Ubuntu-specific quirk because it does all of its scaling in the
UI toolkit.
To manage notifications about this bug go to:
https://bugs.launchpad.net/oxide/+bug/1548996/+subscriptions
References