diff --git a/shell_client.cpp b/shell_client.cpp index 954327f6c4..23c4293a2e 100644 --- a/shell_client.cpp +++ b/shell_client.cpp @@ -55,6 +55,7 @@ namespace KWin ShellClient::ShellClient(ShellSurfaceInterface *surface) : AbstractClient() , m_shellSurface(surface) + , m_internal(surface->client() == waylandServer()->internalConnection()) { setSurface(surface->surface()); findInternalWindow(); @@ -714,7 +715,7 @@ void ShellClient::updateInternalWindowGeometry() bool ShellClient::isInternal() const { - return m_shellSurface->client() == waylandServer()->internalConnection(); + return m_internal; } bool ShellClient::isLockScreen() const diff --git a/shell_client.h b/shell_client.h index 9acb3e3d47..d7288fd17a 100644 --- a/shell_client.h +++ b/shell_client.h @@ -169,6 +169,7 @@ private: bool m_userNoBorder = false; bool m_fullScreen = false; bool m_transient = false; + bool m_internal; }; }