diff --git a/deleted.h b/deleted.h --- a/deleted.h +++ b/deleted.h @@ -62,7 +62,6 @@ return no_border; } void layoutDecorationRects(QRect &left, QRect &top, QRect &right, QRect &bottom) const; - QRect decorationRect() const override; Layer layer() const override { return m_layer; } diff --git a/deleted.cpp b/deleted.cpp --- a/deleted.cpp +++ b/deleted.cpp @@ -224,11 +224,6 @@ bottom = decoration_bottom; } -QRect Deleted::decorationRect() const -{ - return rect(); -} - QRect Deleted::transparentRect() const { return transparent_rect; diff --git a/plugins/scenes/xrender/scene_xrender.cpp b/plugins/scenes/xrender/scene_xrender.cpp --- a/plugins/scenes/xrender/scene_xrender.cpp +++ b/plugins/scenes/xrender/scene_xrender.cpp @@ -464,7 +464,7 @@ X11Client *client = dynamic_cast(toplevel); Deleted *deleted = dynamic_cast(toplevel); - const QRect decorationRect = toplevel->decorationRect(); + const QRect decorationRect = toplevel->rect(); if (((client && !client->noBorder()) || (deleted && !deleted->noBorder())) && true) { // decorated client diff --git a/scene.cpp b/scene.cpp --- a/scene.cpp +++ b/scene.cpp @@ -788,7 +788,7 @@ QRegion Scene::Window::decorationShape() const { - return QRegion(toplevel->decorationRect()) - toplevel->transparentRect(); + return QRegion(toplevel->rect()) - toplevel->transparentRect(); } QPoint Scene::Window::bufferOffset() const diff --git a/toplevel.h b/toplevel.h --- a/toplevel.h +++ b/toplevel.h @@ -376,8 +376,10 @@ */ virtual QPoint clientContentPos() const; virtual QSize clientSize() const = 0; - virtual QRect visibleRect() const; // the area the window occupies on the screen - virtual QRect decorationRect() const; // rect including the decoration shadows + /** + * Returns a rectangle that the window occupies on the screen, including drop-shadows. + */ + virtual QRect visibleRect() const; virtual QRect transparentRect() const = 0; virtual bool isClient() const; virtual bool isDeleted() const; diff --git a/toplevel.cpp b/toplevel.cpp --- a/toplevel.cpp +++ b/toplevel.cpp @@ -75,11 +75,6 @@ return stream; } -QRect Toplevel::decorationRect() const -{ - return rect(); -} - void Toplevel::detectShape(xcb_window_t id) { const bool wasShape = is_shape; diff --git a/x11client.h b/x11client.h --- a/x11client.h +++ b/x11client.h @@ -271,9 +271,6 @@ */ bool hasOffscreenXineramaStrut() const; - // Decorations <-> Effects - QRect decorationRect() const override; - QRect transparentRect() const override; bool isClientSideDecorated() const; diff --git a/x11client.cpp b/x11client.cpp --- a/x11client.cpp +++ b/x11client.cpp @@ -2562,11 +2562,6 @@ updateActivities(false); } -QRect X11Client::decorationRect() const -{ - return QRect(0, 0, width(), height()); -} - Xcb::Property X11Client::fetchFirstInTabBox() const { return Xcb::Property(false, m_client, atoms->kde_first_in_window_list,