Rely on isLayered() to decide layering
The logic here was a bit broken. Every QWindow has an opacity which is 1 by default so the expose was hit for every single window, regardless of it being layered or not. Change-Id: I04873cd5db1cd147708e7de140f5947d3a01e9e1 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
This commit is contained in:
parent
5d8a882c11
commit
cbcfbd798f
@ -1056,9 +1056,10 @@ void QWindowsWindow::setVisible(bool visible)
|
||||
// When the window is layered, we won't get WM_PAINT, and "we" are in control
|
||||
// over the rendering of the window
|
||||
// There is nobody waiting for this, so we don't need to flush afterwards.
|
||||
QWindow *w = window();
|
||||
if (w->format().hasAlpha() || qFuzzyCompare(w->opacity(), qreal(1)))
|
||||
if (isLayered()) {
|
||||
QWindow *w = window();
|
||||
fireExpose(QRect(0, 0, w->width(), w->height()));
|
||||
}
|
||||
|
||||
} else {
|
||||
if (hasMouseCapture())
|
||||
|
Loading…
Reference in New Issue
Block a user