Explicitly repaint when thumbnails are requested/removed
That looks like it only worked because the thumbnail background was repainted at the same time. Let's make it a little bit more reliable.
This commit is contained in:
parent
e25913cafb
commit
39151f8454
1 changed files with 4 additions and 0 deletions
|
@ -136,6 +136,9 @@ void TaskbarThumbnailEffect::slotPropertyNotify(EffectWindow* w, long a)
|
||||||
{
|
{
|
||||||
if (!w || a != atom)
|
if (!w || a != atom)
|
||||||
return;
|
return;
|
||||||
|
foreach (const Data & thumb, thumbnails.values(w)) {
|
||||||
|
effects->addRepaint(thumb.rect);
|
||||||
|
}
|
||||||
thumbnails.remove(w);
|
thumbnails.remove(w);
|
||||||
QByteArray data = w->readProperty(atom, atom, 32);
|
QByteArray data = w->readProperty(atom, atom, 32);
|
||||||
if (data.length() < 1)
|
if (data.length() < 1)
|
||||||
|
@ -156,6 +159,7 @@ void TaskbarThumbnailEffect::slotPropertyNotify(EffectWindow* w, long a)
|
||||||
data.window = d[ pos ];
|
data.window = d[ pos ];
|
||||||
data.rect = QRect(d[ pos + 1 ], d[ pos + 2 ], d[ pos + 3 ], d[ pos + 4 ]);
|
data.rect = QRect(d[ pos + 1 ], d[ pos + 2 ], d[ pos + 3 ], d[ pos + 4 ]);
|
||||||
thumbnails.insert(w, data);
|
thumbnails.insert(w, data);
|
||||||
|
effects->addRepaint(data.rect);
|
||||||
pos += size;
|
pos += size;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue