Commit e5561b19 authored by Vlad Zahorodnii's avatar Vlad Zahorodnii
Browse files

Remove AbstractClient plumbing casts in WindowItem

parent 76a3a31f
......@@ -21,11 +21,9 @@ WindowItem::WindowItem(AbstractClient *window, Item *parent)
: Item(parent)
, m_window(window)
{
auto client = static_cast<AbstractClient *>(window->isClient() ? window : nullptr);
if (client) {
connect(client, &AbstractClient::decorationChanged, this, &WindowItem::updateDecorationItem);
updateDecorationItem();
}
connect(window, &AbstractClient::decorationChanged, this, &WindowItem::updateDecorationItem);
updateDecorationItem();
connect(window, &AbstractClient::shadowChanged, this, &WindowItem::updateShadowItem);
updateShadowItem();
......@@ -108,12 +106,11 @@ void WindowItem::updateShadowItem()
void WindowItem::updateDecorationItem()
{
auto client = static_cast<AbstractClient *>(m_window->isClient() ? m_window : nullptr);
if (!client || client->isZombie()) {
if (m_window->isDeleted() || m_window->isZombie()) {
return;
}
if (client->decoration()) {
m_decorationItem.reset(new DecorationItem(client->decoration(), client, this));
if (m_window->decoration()) {
m_decorationItem.reset(new DecorationItem(m_window->decoration(), m_window, this));
if (m_shadowItem) {
m_decorationItem->stackAfter(m_shadowItem.data());
} else if (m_surfaceItem) {
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment