Avoid again invalid geometry of internal clients
Summary: This adds again the workaround from1fb2eace3f
, which got temporarily removed by9b922f8833
. BUG: 386304 Test Plan: Manually Reviewers: #kwin Subscribers: kwin Tags: #kwin Differential Revision: https://phabricator.kde.org/D21601
This commit is contained in:
parent
1b8e5061ab
commit
7c7fb758ad
1 changed files with 6 additions and 1 deletions
|
@ -1211,7 +1211,12 @@ void ShellClient::installPlasmaShellSurface(PlasmaShellSurfaceInterface *surface
|
|||
m_plasmaShellSurface = surface;
|
||||
auto updatePosition = [this, surface] {
|
||||
QRect rect = QRect(surface->position(), m_clientSize + QSize(borderLeft() + borderRight(), borderTop() + borderBottom()));
|
||||
doSetGeometry(rect);
|
||||
// Shell surfaces of internal windows are sometimes desync to current value.
|
||||
// Make sure to not set window geometry of internal windows to invalid values (bug 386304).
|
||||
// This is a workaround.
|
||||
if (!m_internal || rect.isValid()) {
|
||||
doSetGeometry(rect);
|
||||
}
|
||||
};
|
||||
auto updateRole = [this, surface] {
|
||||
NET::WindowType type = NET::Unknown;
|
||||
|
|
Loading…
Reference in a new issue