Improving support for higher DPI on Vista

I did some work this week on a task related to higher DPI values on Vista. The task was essentially about scaling artifacts related to checkboxes, radio buttons and menus. However after fixing up those I decided that we needed a little more to really work properly on Vista and Windows 7 and realized that there were still quite a few hard-coded pixel metrics in the current styling API that really should depend on DPI as well. So after adjusting those metrics, most Qt apps should now look a lot nicer at higher DPI values. The fixes will also directly benefit similar functionality on Mac, once this gets properly supported by Apple.

Here are some screenshots showing noticable improvements in 4.6 vs 4.5 at a moderate scale size of 1.25:

dpi1.png

With the improved DPI-scaled metrics this is what it should look like in 4.6:

dpi2.png

No radical change in this case, but it certainly looks more polished than the old one. At very high DPI scaling values (1.5 and up) Windows Vista defaults to showing applications in a compatibility friendly, but rather fuzzy scaled mode. In 4.6 we plan to make applications scale properly by default. Unfortunately existing applications are likely to have pixel-based assumptions, so the only real way to ensure that your app will look correct is to try it out.

dpi45.png

And again, this is how things should look with 4.6:

dpi46.png


Blog Topics:

Comments

Commenting for this post has ended.

?
Eritak Matias
0 points
192 months ago

Amazing !
Is very nice to see windows love !

Thanks !

?
Scorp1us
0 points
192 months ago

"Little things" like this are bigger than you imagine. Thanks for the attention to detail!

(And those who make pixel assumptions deserve what they get!)

?
Philippe
0 points
192 months ago

I second Scorp1us, attention to details is important. I favour quality of features over quantity.