From b84118a51bba5846136202ed7b57d548954b6805 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Gr=C3=A4=C3=9Flin?= Date: Fri, 13 Mar 2015 09:26:09 +0100 Subject: [PATCH] Workspace::updateClientLayer operates on AbstractClient Requires a virtual updateLayer in AbstractClient. Default implementation does nothing. --- abstract_client.cpp | 4 ++++ abstract_client.h | 1 + client.h | 2 +- layers.cpp | 2 +- workspace.h | 2 +- 5 files changed, 8 insertions(+), 3 deletions(-) diff --git a/abstract_client.cpp b/abstract_client.cpp index 62a609cd62..c4bedb91c6 100644 --- a/abstract_client.cpp +++ b/abstract_client.cpp @@ -137,4 +137,8 @@ void AbstractClient::doSetActive() { } +void AbstractClient::updateLayer() +{ +} + } diff --git a/abstract_client.h b/abstract_client.h index 1d8dde372e..e9637d1761 100644 --- a/abstract_client.h +++ b/abstract_client.h @@ -193,6 +193,7 @@ public: * @param mode The tile mode (left/right) to give this window. */ virtual void setQuickTileMode(QuickTileMode mode, bool keyboard = false) = 0; + virtual void updateLayer(); // TODO: remove boolean trap static bool belongToSameApplication(const AbstractClient* c1, const AbstractClient* c2, bool active_hack = false); diff --git a/client.h b/client.h index 90a1eba23e..d2e7801440 100644 --- a/client.h +++ b/client.h @@ -392,7 +392,7 @@ public: virtual Layer layer() const; Layer belongsToLayer() const; void invalidateLayer(); - void updateLayer(); + void updateLayer() override; int sessionStackingOrder() const; void setModal(bool modal); diff --git a/layers.cpp b/layers.cpp index 32dc02c309..5cfaadbd19 100644 --- a/layers.cpp +++ b/layers.cpp @@ -102,7 +102,7 @@ namespace KWin // Workspace //******************************* -void Workspace::updateClientLayer(Client* c) +void Workspace::updateClientLayer(AbstractClient* c) { if (c) c->updateLayer(); diff --git a/workspace.h b/workspace.h index 7f42121f18..5ef8dfa57b 100644 --- a/workspace.h +++ b/workspace.h @@ -180,7 +180,7 @@ public: void lowerClientRequest(Client* c, NET::RequestSource src, xcb_timestamp_t timestamp); void restackClientUnderActive(AbstractClient*); void restack(AbstractClient *c, AbstractClient *under, bool force = false); - void updateClientLayer(Client* c); + void updateClientLayer(AbstractClient* c); void raiseOrLowerClient(AbstractClient*); void resetUpdateToolWindowsTimer(); void restoreSessionStackingOrder(Client* c);