don't allow to resize or move fullscreen windows

Summary:
add the same check of the Client class: if a window
is fullscreen, is not movable nor resizable

Test Plan:
Doesn't have any visible regression over normal usage,
this partially tackles a bug that can be seen in plasma mobile:
if the placement is "maximizing", then asking windows to be
shown as fullscreen has no effect and they will always be shown as a normal
maximized window.

this now doesn't happen anymore.. most of the times,
 as there must be some race condition
as a concause of the problem

Reviewers: #plasma, davidedmundson

Reviewed By: #plasma, davidedmundson

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D24515
This commit is contained in:
Marco Martin 2019-10-09 13:56:55 +02:00
parent b1b675e50a
commit 8d847bd0ff

View file

@ -805,6 +805,9 @@ bool ShellClient::isMinimizable() const
bool ShellClient::isMovable() const
{
if (isFullScreen()) {
return false;
}
if (rules()->checkPosition(invalidPoint) != invalidPoint) {
return false;
}
@ -833,6 +836,9 @@ bool ShellClient::isMovableAcrossScreens() const
bool ShellClient::isResizable() const
{
if (isFullScreen()) {
return false;
}
if (rules()->checkSize(QSize()).isValid()) {
return false;
}