Support updating deco for changes of borderless maximize windows config

Summary: So far only updated the Clients, now also ShellClient.

Reviewers: #kwin, #plasma

Subscribers: plasma-devel, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D8095
This commit is contained in:
Martin Flöser 2017-10-01 21:48:57 +02:00
parent 049b34c050
commit 9a965405e3
4 changed files with 9 additions and 3 deletions

View file

@ -1797,4 +1797,9 @@ void AbstractClient::setOnActivities(QStringList newActivitiesList)
Q_UNUSED(newActivitiesList)
}
void AbstractClient::checkNoBorder()
{
setNoBorder(false);
}
}

View file

@ -460,6 +460,7 @@ public:
virtual QRect iconGeometry() const;
virtual bool userCanSetFullScreen() const = 0;
virtual bool userCanSetNoBorder() const = 0;
virtual void checkNoBorder();
virtual void setOnActivities(QStringList newActivitiesList);
virtual void setOnAllActivities(bool set) = 0;
const WindowRules* rules() const {

View file

@ -162,7 +162,7 @@ public:
bool noBorder() const override;
void setNoBorder(bool set) override;
bool userCanSetNoBorder() const override;
void checkNoBorder();
void checkNoBorder() override;
int sessionStackingOrder() const;

View file

@ -865,8 +865,8 @@ void Workspace::slotReconfigure()
!options->borderlessMaximizedWindows()) {
// in case borderless maximized windows option changed and new option
// is to have borders, we need to unset the borders for all maximized windows
for (ClientList::Iterator it = clients.begin();
it != clients.end();
for (auto it = m_allClients.begin();
it != m_allClients.end();
++it) {
if ((*it)->maximizeMode() == MaximizeFull)
(*it)->checkNoBorder();