[Development] Bringing Qt's high-dpi support to more platforms
Alessandro.Portale at digia.com
Mon May 26 23:58:13 CEST 2014
> From: Sorvig Morten [Morten.Sorvig at digia.com]
> Sent: Monday, May 26, 2014 14:03
> On 23 May 2014, at 18:30, Thiago Macieira <thiago.macieira at intel.com> wrote:
> > Em sex 23 maio 2014, às 07:20:42, Sorvig Morten escreveu:
> >> Adding support to QtWayland looks like a win to me. Do we want to add
> >> platform-indepent support to Qt?
> > I think my question is: why wouldn't we?
> The platform independent patch adds coordinate system conversion calls to most QWindowSystemInterface::handle* functions and some QWindow functions. These have to be maintained by everyone that works on that code. Its not that much work but still yet another thing to be aware of. So I would like to see consensus on “Yes, this is worth maintaining”.
I believe it is definitely worth maintaining! And I believe Qt desperately needs it, since high-dpi is a very common case on Mobile devices and it is becoming common on non-Apple Desktop. (Is your current device pixel ratio really just 1? http://www.devicepixelratio.com/ )
Just to make an example, Qt Creator looks bad on Windows or Linux with 200% "font scaling" https://bugreports.qt-project.org/browse/QTCREATORBUG-11179 while it is in much better shape on Mac+Retina . The devicePixelRatio scaling feature in Qt on all platforms would be a sane solution for high-dpi Qt Creator, and most likely for other applications as-well.
The second part of your proposed implementation, the settable QT_HIGHDPI_SCALE_FACTOR, makes it very flexible. That way the application author can decide when to turn off devicePixelRatio scaling on Apple devices or turn it on on others. I am looking forward for Qt 5.4, the high-dpi release :)
More information about the Development