[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    KDE/kdebase/workspace/plasma/desktop/shell
From:       Marco Martin <notmart () gmail ! com>
Date:       2010-06-30 21:15:25
Message-ID: 20100630211525.594CFAC8E2 () svn ! kde ! org
[Download RAW message or body]

SVN commit 1144804 by mart:

disable the proper shadow borders


 M  +33 -29    panelview.cpp  


--- trunk/KDE/kdebase/workspace/plasma/desktop/shell/panelview.cpp #1144803:1144804
@@ -227,7 +227,7 @@
 
         m_shadow->setElementPrefix("shadow");
 
-        adjustMargins();
+        adjustMargins(geometry());
     }
 
     bool isValid() const
@@ -235,6 +235,33 @@
         return m_valid;
     }
 
+    void adjustMargins(const QRect &geo)
+    {
+        QRect screenRect = Kephal::ScreenUtils::screenGeometry(m_panel->screen());
+
+        Plasma::FrameSvg::EnabledBorders enabledBorders = Plasma::FrameSvg::AllBorders;
+
+        if (geo.left() <= screenRect.left()) {
+            enabledBorders ^= Plasma::FrameSvg::LeftBorder;
+        }
+        if (geo.top() <= screenRect.top()) {
+            enabledBorders ^= Plasma::FrameSvg::TopBorder;
+        }
+        if (geo.bottom() >= screenRect.bottom()) {
+            enabledBorders ^= Plasma::FrameSvg::BottomBorder;
+        }
+        if (geo.right() >= screenRect.right()) {
+            enabledBorders ^= Plasma::FrameSvg::RightBorder;
+        }
+
+        m_shadow->setEnabledBorders(enabledBorders);
+
+        qreal left, top, right, bottom;
+
+        m_shadow->getMargins(left, top, right, bottom);
+        setContentsMargins(left, top, right, bottom);
+    }
+
 protected:
     bool event(QEvent *event)
     {
@@ -249,7 +276,7 @@
     void resizeEvent(QResizeEvent *event)
     {
         m_shadow->resizeFrame(event->size());
-        adjustMargins();
+        adjustMargins(geometry());
     }
 
     void paintEvent(QPaintEvent *e)
@@ -259,32 +286,7 @@
         m_shadow->paintFrame(&p, e->rect(), e->rect());
     }
 
-    void adjustMargins()
-    {
-        QRect screenRect = Kephal::ScreenUtils::screenGeometry(m_panel->screen());
-        QRect geo = geometry();
 
-        Plasma::FrameSvg::EnabledBorders enabledBorders = Plasma::FrameSvg::AllBorders;
-
-        if (geo.left() <= screenRect.left()) {
-            enabledBorders ^= Plasma::FrameSvg::LeftBorder;
-        }
-        if (geo.top() <= screenRect.top()) {
-            enabledBorders ^= Plasma::FrameSvg::TopBorder;
-        }
-        if (geo.bottom() >= screenRect.bottom()) {
-            enabledBorders ^= Plasma::FrameSvg::BottomBorder;
-        }
-        if (geo.right() >= screenRect.right()) {
-            enabledBorders ^= Plasma::FrameSvg::RightBorder;
-        }
-
-        qreal left, top, right, bottom;
-
-        m_shadow->getMargins(left, top, right, bottom);
-        setContentsMargins(left, top, right, bottom);
-    }
-
 private:
     Plasma::FrameSvg *m_shadow;
     PanelView *m_panel;
@@ -472,7 +474,8 @@
         KWindowSystem::setOnAllDesktops(m_shadowWindow->winId(), true);
         m_shadowWindow->setSvg(containment()->property("shadowPath").toString());
         int left, right, top, bottom;
-        m_shadowWindow->getContentsMargins(&left, &right, &top, &bottom);
+        m_shadowWindow->adjustMargins(geometry());
+        m_shadowWindow->getContentsMargins(&left, &top, &right, &bottom);
         m_shadowWindow->setGeometry(geometry().adjusted(-left, -top, right, bottom));
         if (m_shadowWindow->isValid()) {
             m_shadowWindow->show();
@@ -750,7 +753,8 @@
         setGeometry(geom);
         if (m_shadowWindow) {
             int left, right, top, bottom;
-            m_shadowWindow->getContentsMargins(&left, &right, &top, &bottom);
+            m_shadowWindow->adjustMargins(geometry());
+            m_shadowWindow->getContentsMargins(&left, &top, &right, &bottom);
             m_shadowWindow->setGeometry(geometry().adjusted(-left, -top, right, bottom));
         }
     }
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic