Diffusion KWin fc887ab90788

Render GL Window decorations at the correct scale

Authored by davidedmundson on Nov 1 2017, 5:54 PM.

Description

Render GL Window decorations at the correct scale

Summary:
Under wayland we support high DPI putting by putting a separation
between the logical co-ordinate system and the resolution of rendered
assets.

When a window is on a high DPI screen, we should render at the higher
resolution.

Like the window scaling this handles any combination of a 2x scaled
decoration being rendered on a 1x screen or vice versa.


This patch is a bit different from the other scaling stuff. We have to
generate the quads *before* we have an updated texture with the new
scale. This means the scale isn't attached to the buffer like elsewhere.

That's why I added a property in TopLevel so there's still one canonical
source and things can't get out of sync.

BUG: 384765

Test Plan:
Crystal clear breeze and oxygen decos on my @2x display
Drag windows to attached @1x display, things still look OK when across 2
screens
Changing the scale of a screen updated the decos instantly

Reviewers: Plasma, graesslin

Reviewed By: Plasma, graesslin

Subscribers: graesslin, plasma-devel, kwin, KWin

Tags: KWin

Differential Revision: https://phabricator.kde.org/D8600

Details

Committed
davidedmundsonNov 1 2017, 5:59 PM
Reviewer
Plasma
Differential Revision
D8600: Render GL Window decorations at the correct scale
Parents
R108:449c93362b9a: Only cleanup XRenderUtils is we actually created it
Branches
Unknown
Tags
Unknown