Enable high DPI scaling in qt.py #12314
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
This enables automatic scaling for the qt5 GUI backend based on the monitor's pixel density.
I haven't yet been able to find a case (on mac/linux/windows) in which this didn't just "do the right thing" depending on pixel density ... but let me know if someone here has already considered and rejected this approach (couldn't find anything in the issues).
It is possible for the end-user to enable this themselves with the
QT_ENABLE_HIGHDPI_SCALING
environment variable, but if the user doesn't know to do that, any downstream Qt-based application that runs in the IPython event loop will not be able to correct scaling on a high DPI monitor, since it has to be set before creating theQApplication
(we're running into this with napari)Reference: https://doc.qt.io/qt-5/highdpi.html