Diffusion KWin ff6e042c7f96

Fix scissoring of VBO rendering in multi-screen setup on Wayland

Authored by graesslin on Oct 6 2016, 7:57 AM.

Description

Fix scissoring of VBO rendering in multi-screen setup on Wayland

Summary:
On Wayland in multi-screen a "window" is used to render to per screen.
In OpenGL every "window" is at 0/0 and scissoring is in respect to the
window geometry. The rendering geometry passed to VBO rendering, which
performs the scissoring, is in virtual combined screen geometry space.
Thus the scissoring always removes any rendering on the second screen.
This results in e.g. wobbly windows not working on any additional screen
on Wayland.

This change makes the VBO rendering multi-screen aware by passing the
current virtual window geometry in each rendering pass. That replaces
the so far used virtual screen size. For single screen rendering or
multi-screen rendering on X11 this doesn't change anything as there is
always only one OpenGL window and the screen geoemetry starts at 0/0.
Thus the subtracting of x/y geometry do not affect the scissoring at
all.

Reviewers: KWin, Plasma on Wayland

Subscribers: plasma-devel, kwin

Tags: Plasma on Wayland, KWin

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

Details

Committed
graesslinOct 6 2016, 11:30 AM
Differential Revision
D2955: Fix scissoring of VBO rendering in multi-screen setup on Wayland
Parents
R108:196ac5eb381e: Merge branch 'Plasma/5.8'
Branches
Unknown
Tags
Unknown