mate-desktop / mate-settings-daemon

MATE settings daemon
https://mate-desktop.org
GNU General Public License v2.0
43 stars 47 forks source link

Make setting QT_SCALE_FACTOR optional. #225

Closed vkareh closed 6 years ago

vkareh commented 6 years ago

When enabling org.mate.interface window-scaling-factor-qt-sync (default), m-s-d will attempt to set QT_SCALE_FACTOR during the init phase. When disabled, the user can then choose to control this env var elsewhere.

raveit65 commented 6 years ago

How is this testable? 1) set windows-scaling=2 2) set window-scaling-factor-qt-sync =disable 3) restart session 4) expected result= small fonts in Ot apps with HIDPI resolution

I ask because currently i can't use my main box with a graphic card which support HIDPI. So, only qemu-kvm with 2650x1600 px resolution is possible with my older notebook.

vkareh commented 6 years ago

Yes, exactly. By setting the QT flag to disabled, changing the scale should have no effect on QT apps (which means they will always behave as non-hidpi)

raveit65 commented 6 years ago

This works well. i tested it with KeepassXC. screenshot from f28 in qemu-kvm VM with 2650x1600 px resolution and window-scaling-factor-qt-sync =disable keepassxc-qt-scale-disable screenshot from f28 in qemu-kvm VM with 2650x1600 px resolution and window-scaling-factor-qt-sync =enable keepassxc-qt-scale-enable

I am not sure about version bumping after merge. I assume m-s-d will crash without related commit in mate-desktop. So we need to update required version of mate-desktop in m-s-d?

vkareh commented 6 years ago

@lukefromdc - correct, in this case you can probably force scaling=2 on GTK, and having this new flag enabled will force QT to scale=2 as well. With a small screen, this will mean that GTK apps will be way too big to be usable, and QT apps will be either too big (with the flag enabled) or "normal" (with the flag disabled).

If your GTK is scale=1, then QT will always be scale=1 with or without this flag.

@raveit65 - yes, you're right. we would need to merge mate-desktop first and bump it, then we can change the required version in m-s-d and merge. Since mate-desktop just adds the schema, it can be merged without any side effects. This PR can wait for the bump, and it's a non-critical feature.

raveit65 commented 6 years ago

I just tested it again with my main box with HIDPI display and it works like expected. But i couldn't test use case from reporter. If i set resolution from 3840x2160 to 1920x1080 (non-HIDPI) than everything is to huge, and i need to disable windows-scaling which disabled auto-qt-scaling too. So, this is only useful if auto-scale-detection is working, maybe with a laptop HIDPI-monitor. In my case with an external HIDPI monitor where auto-detection doesn't work this setting doesn't make any sense.

raveit65 commented 6 years ago

I merged related mate-desktop PR and bumped version for master. Same fr 1.20 after cherry-picking the commit.