Created attachment 110760 [details] phone taken picture shows font rendering with Kate on both monitors (left monitor is normaldpi, right is hidpi) having two monitors, where one is hidpi and the other one is not, the picture on the hidpi monitor is quite worse when compared to the normal-dpi monitor. scaling on hidpi monitor: 2 scaling on normaldpi monitor: 1
here are two pictures that show also how application icon is rendered (so not only fonts are affected) https://imgur.com/a/xrkYS
It can't split the window in half, it renders at whatever largest scale and then downscales for the other monitor. What it will eventually do (Qt does not yet support that) is rerender at proper scale once it moves to the other screen.
The point was not on the splitting the window. The split i provided just to show how the same window is rendered on different hidpi. If i move the complete window to the hidpi monitor, it is rendered in the same 'bad' manner as in the picture.
Plus, this happens when whole window is on hidpi monitor: - window titlebar fonts are rendered ok - window titlebar icon is not rendered ok - application menu bar is not rendered ok
Decorations are all done properly with the right DPR on the paint device. QIcon::pixmap() is scaled by the qApp->devicePixelRatio rather than the current paint device. This works in system settings, and everything looks spot-on. In kwin qApp->devicePixelRatio doesn't work, so we get a standard res icon.
Is this on X11 or Wayland?
Wayland
Fixed with c32eb41292752fd9a82fa258fb93f538f712cb91 Don't know why this didn't auto-close
This only fixes the icon (since bug got categorized as decorations)? Or also the menu bar and the content...?
Git commit c32eb41292752fd9a82fa258fb93f538f712cb91 by David Edmundson. Committed on 21/02/2018 at 13:35. Pushed by davidedmundson into branch 'Plasma/5.12'. Render application icon at paintdevice DPR Summary: QIcon::pixmap doesn't know anything about the paint device currently being used so uses qApp->devicePixelRatio. This works in systemsettings, but not in kwin and we get a standard resolution pixmap returned. We can't manually multiply by painter->device->dpr because then system settings would get scaled twice. QIcon::paint solves that in a way that won't break should kwin's qApp->dpr change. Also it's IMHO cleaner as it does the alignment internally. Test Plan: System settings look the same Icon in kwin deco is crisper than before Reviewers: #plasma, mart Reviewed By: #plasma, mart Subscribers: plasma-devel Tags: #plasma Differential Revision: https://phabricator.kde.org/D10713 M +2 -2 kdecoration/breezebutton.cpp https://commits.kde.org/breeze/c32eb41292752fd9a82fa258fb93f538f712cb91
>This only fixes the icon (since bug got categorized as decorations)? Yes. > Or also the menu bar and the content...? Is it just icons? If so, they should get fixed with Qt5.11.
It is also menu bar and content that have rendering issue. The pictures show how it looks like (disregard that the window is split between standard and hidpi monitor). Do i need to open another bug to cover menu bar and content or this can be all done through this one?
(In reply to David Edmundson from comment #11) > Is it just icons? If so, they should get fixed with Qt5.11. Could you elaborate on that?
What's wrong with the menubar?
(In reply to David Edmundson from comment #14) > What's wrong with the menubar? The AppMenu in Kwin is pixelated when scaling on HiDPI. I was curious if Qt 5.11 as you mentioned might resolve that.
Exactly, menu bar and window content are pixelated. If you check the attachment, you'll see the extent of it. Most severe effect is seen on '/'. It looks lika a saw.