Drop Toplevel::hasShadow() method
Summary: Use Toplevel::shadow() instead to check whether a Toplevel has a Shadow. Reviewers: #kwin, romangg Reviewed By: #kwin, romangg Subscribers: kwin Tags: #kwin Differential Revision: https://phabricator.kde.org/D24297
This commit is contained in:
parent
da1a47f91b
commit
c1eafcbce1
3 changed files with 6 additions and 20 deletions
|
@ -468,8 +468,9 @@ void SceneXrender::Window::performPaint(int mask, QRegion region, WindowPaintDat
|
||||||
} else {
|
} else {
|
||||||
transformed_shape = shape();
|
transformed_shape = shape();
|
||||||
}
|
}
|
||||||
if (toplevel->hasShadow())
|
if (toplevel->shadow()) {
|
||||||
transformed_shape |= toplevel->shadow()->shadowRegion();
|
transformed_shape |= toplevel->shadow()->shadowRegion();
|
||||||
|
}
|
||||||
|
|
||||||
xcb_render_transform_t xform = {
|
xcb_render_transform_t xform = {
|
||||||
DOUBLE_TO_FIXED(1), DOUBLE_TO_FIXED(0), DOUBLE_TO_FIXED(0),
|
DOUBLE_TO_FIXED(1), DOUBLE_TO_FIXED(0), DOUBLE_TO_FIXED(0),
|
||||||
|
|
14
toplevel.cpp
14
toplevel.cpp
|
@ -146,7 +146,7 @@ void Toplevel::disownDataPassedToDeleted()
|
||||||
QRect Toplevel::visibleRect() const
|
QRect Toplevel::visibleRect() const
|
||||||
{
|
{
|
||||||
QRect r = decorationRect();
|
QRect r = decorationRect();
|
||||||
if (hasShadow() && !shadow()->shadowRegion().isEmpty()) {
|
if (shadow() && !shadow()->shadowRegion().isEmpty()) {
|
||||||
r |= shadow()->shadowRegion().boundingRect();
|
r |= shadow()->shadowRegion().boundingRect();
|
||||||
}
|
}
|
||||||
return r.translated(geometry().topLeft());
|
return r.translated(geometry().topLeft());
|
||||||
|
@ -578,7 +578,7 @@ void Toplevel::getShadow()
|
||||||
{
|
{
|
||||||
QRect dirtyRect; // old & new shadow region
|
QRect dirtyRect; // old & new shadow region
|
||||||
const QRect oldVisibleRect = visibleRect();
|
const QRect oldVisibleRect = visibleRect();
|
||||||
if (hasShadow()) {
|
if (shadow()) {
|
||||||
dirtyRect = shadow()->shadowRegion().boundingRect();
|
dirtyRect = shadow()->shadowRegion().boundingRect();
|
||||||
if (!effectWindow()->sceneWindow()->shadow()->updateShadow()) {
|
if (!effectWindow()->sceneWindow()->shadow()->updateShadow()) {
|
||||||
effectWindow()->sceneWindow()->updateShadow(nullptr);
|
effectWindow()->sceneWindow()->updateShadow(nullptr);
|
||||||
|
@ -587,7 +587,7 @@ void Toplevel::getShadow()
|
||||||
} else {
|
} else {
|
||||||
Shadow::createShadow(this);
|
Shadow::createShadow(this);
|
||||||
}
|
}
|
||||||
if (hasShadow())
|
if (shadow())
|
||||||
dirtyRect |= shadow()->shadowRegion().boundingRect();
|
dirtyRect |= shadow()->shadowRegion().boundingRect();
|
||||||
if (oldVisibleRect != visibleRect())
|
if (oldVisibleRect != visibleRect())
|
||||||
emit paddingChanged(this, oldVisibleRect);
|
emit paddingChanged(this, oldVisibleRect);
|
||||||
|
@ -597,14 +597,6 @@ void Toplevel::getShadow()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Toplevel::hasShadow() const
|
|
||||||
{
|
|
||||||
if (effectWindow() && effectWindow()->sceneWindow()) {
|
|
||||||
return effectWindow()->sceneWindow()->shadow() != nullptr;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
Shadow *Toplevel::shadow()
|
Shadow *Toplevel::shadow()
|
||||||
{
|
{
|
||||||
if (effectWindow() && effectWindow()->sceneWindow()) {
|
if (effectWindow() && effectWindow()->sceneWindow()) {
|
||||||
|
|
|
@ -390,18 +390,11 @@ public:
|
||||||
*/
|
*/
|
||||||
void elevate(bool elevate);
|
void elevate(bool elevate);
|
||||||
|
|
||||||
/**
|
|
||||||
* @returns Whether the Toplevel has a Shadow or not
|
|
||||||
* @see shadow
|
|
||||||
*/
|
|
||||||
bool hasShadow() const;
|
|
||||||
/**
|
/**
|
||||||
* Returns the pointer to the Toplevel's Shadow. A Shadow
|
* Returns the pointer to the Toplevel's Shadow. A Shadow
|
||||||
* is only available if Compositing is enabled and the corresponding X window
|
* is only available if Compositing is enabled and the corresponding X window
|
||||||
* has the Shadow property set.
|
* has the Shadow property set.
|
||||||
* If a shadow is available hasShadow returns @c true.
|
* @returns The Shadow belonging to this Toplevel, @c null if there's no Shadow.
|
||||||
* @returns The Shadow belonging to this Toplevel, may be @c NULL.
|
|
||||||
* @see hasShadow
|
|
||||||
*/
|
*/
|
||||||
const Shadow *shadow() const;
|
const Shadow *shadow() const;
|
||||||
Shadow *shadow();
|
Shadow *shadow();
|
||||||
|
|
Loading…
Reference in a new issue