HiDPI issues with KDE applications

Christoph Cullmann christoph at cullmann.io
Sat Sep 28 16:55:59 BST 2019


On 2019-09-28 17:37, Christoph Cullmann wrote:
> On 2019-09-28 17:34, Albert Vaca Cintora wrote:
>> If this has to be done for all apps, why isn't it done at Qt level?
> 
> Because in some cases, that breaks the application, e.g. if it expects
> pixel to be real physical pixel 1:1.
> 
> Therefore, after changing that, one needs to try the application if it
> behaves OK.
> 
> (I did that for KWrite/Kate)

Still not properly scaled seem to be things that get painted via QStyle,
like the KMultiTabBar buttons:

     QStyleOptionButton opt;
     opt.initFrom(this);
     opt.icon = icon();
     opt.iconSize = iconSize();
     // removes the QStyleOptionButton::HasMenu ButtonFeature
     opt.features = QStyleOptionButton::Flat;
     QPainter painter(this);
     style()->drawControl(QStyle::CE_PushButton, &opt, &painter, this);

=> here I still see artifacts, both on Linux and Windows

(easy to try with some export QT_SCALE_FACTOR=3)

> 
> Greetings
> Christoph
> 
>> 
>> On Sat, Sep 28, 2019 at 5:05 PM Christoph Cullmann
>> <christoph at cullmann.io> wrote:
>>> 
>>> Hi,
>>> 
>>> I just checked again the HIDPI support of Kate/KWrite on Windows and 
>>> it
>>> "sucked".
>>> 
>>> It seems we never properly did setup the stuff to auto-scale, e.g. 
>>> the
>>> 
>>>   QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling, true);
>>> 
>>> call was missing, we only had the
>>> 
>>>   QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps, true);
>>> 
>>> part that we sprinkled in most of KDE's things in the past.
>>> 
>>> I now rectified that for Kate/KWrite, shall we do this for all our
>>> applications?
>>> 
>>> Greetings
>>> Christoph
>>> 
>>> --
>>> Ignorance is bliss...
>>> https://cullmann.io | https://kate-editor.org

-- 
Ignorance is bliss...
https://cullmann.io | https://kate-editor.org




More information about the kde-core-devel mailing list