fix two damage artifact causes
1. when adding a full damange, that must not replace existing (larger) repaints 2. emit geometryChanged before invoking and to update shadowGeometry through addRepaintFull BUG: 324560 FIXED-IN: 4.11.2
This commit is contained in:
parent
149e97fcb9
commit
67cb571f86
2 changed files with 2 additions and 1 deletions
|
@ -989,7 +989,7 @@ void Toplevel::addDamageFull()
|
|||
return;
|
||||
|
||||
damage_region = rect();
|
||||
repaints_region = rect();
|
||||
repaints_region |= rect();
|
||||
|
||||
emit damaged(this, rect());
|
||||
}
|
||||
|
|
|
@ -1521,6 +1521,7 @@ void Unmanaged::configureNotifyEvent(XConfigureEvent* e)
|
|||
addWorkspaceRepaint(visibleRect()); // damage old area
|
||||
QRect old = geom;
|
||||
geom = newgeom;
|
||||
emit geometryChanged(); // update shadow region
|
||||
addRepaintFull();
|
||||
if (old.size() != geom.size())
|
||||
discardWindowPixmap();
|
||||
|
|
Loading…
Reference in a new issue