kwin: fixing _NET_WM_OPAQUE_REGION related bug

The initial implementation forgot to consider the client borders.

BUG: 293574
FIXED-IN: 4.8.1
This commit is contained in:
Philipp Knechtges 2012-02-08 16:41:02 +01:00
parent 90e59121dc
commit 6f3b9fae2a

View file

@ -282,7 +282,7 @@ void Scene::paintSimpleScreen(int orig_mask, QRegion region)
data.clip = w->clientShape().translated(w->x(), w->y()); data.clip = w->clientShape().translated(w->x(), w->y());
} else if (topw->hasAlpha() && topw->opacity() == 1.0) { } else if (topw->hasAlpha() && topw->opacity() == 1.0) {
// the window is partially opaque // the window is partially opaque
data.clip = (w->clientShape() & topw->opaqueRegion()).translated(w->x(), w->y()); data.clip = (w->clientShape() & topw->opaqueRegion().translated(topw->clientPos())).translated(w->x(), w->y());
} else { } else {
data.clip = QRegion(); data.clip = QRegion();
} }