On Monday 01 September 2008, Aaron J. Seigo wrote:
> On Sunday 31 August 2008, Marco Martin wrote:
> > -tab geometry should change when the panel is on top or at right of the
> > screen
>
> fixed; however there are some visual artifacts with the PanelSvgWidget now;
> when the tabs are on top, the black line at the top of the view area is
> quite plainly visible.
>
> Davide: can you please looking into that? it's easy enough to emulate with:
>
> plasmoidviewer -f horizontal -l top launcher
>
> and then put the viewer to the very top of the screen
his seems to solve,
don't think it's from PanelSvgWidget 
but seem to be in TabBar::TabPath under RoundedNorth, where the path of the 
tab starts from r.bottom() that is like r.top()+r.height()-1
also a line from rect().bottomLeft() to rect().bottomRight() seems not really 
meaningful, just a bit harmful...

Cheers,
Marco Martin
Index: ui/tabbar.cpp
===================================================================
--- ui/tabbar.cpp	(revision 855891)
+++ ui/tabbar.cpp	(working copy)
@@ -181,8 +181,7 @@
         case RoundedSouth:
         case TriangularSouth:
             r.adjust(0, 0, 0, -3);
-            path.moveTo(rect().topLeft());
-            path.lineTo(r.topLeft());
+            path.moveTo(r.topLeft());
             // Top left corner
             path.quadTo(r.topLeft() + QPoint(radius, 0), r.topLeft() + QPoint(radius, radius));
             path.lineTo(r.bottomLeft() + QPoint(radius, -radius));
@@ -194,14 +193,12 @@
             path.lineTo(r.topRight() + QPoint(-radius, radius));
             // Top right corner
             path.quadTo(r.topRight() + QPoint(-radius, 0), r.topRight());
-            path.lineTo(rect().topRight());
             break;
         case RoundedNorth:
         case TriangularNorth:
-            r.adjust(0, 3, 0, 0);
-            path.moveTo(rect().bottomLeft());
+            r.adjust(0, 3, 0, 1);
+            path.moveTo(r.bottomLeft());
             // Bottom left corner
-            path.lineTo(r.bottomLeft());
             path.quadTo(r.bottomLeft() + QPoint(radius, 0), r.bottomLeft() + QPoint(radius, -radius));
             // Top left corner
             path.lineTo(r.topLeft() + QPoint(radius, radius));
@@ -212,12 +209,11 @@
             // Bottom right corner
             path.lineTo(r.bottomRight() + QPoint(-radius, -radius));
             path.quadTo(r.bottomRight() + QPoint(-radius, 0), r.bottomRight());
-            path.lineTo(rect().bottomRight());
             break;
         case RoundedWest:
         case TriangularWest:
-            r.adjust(3, 0, 0, 0);
-            path.moveTo(rect().topRight());
+            r.adjust(3, 0, 1, 0);
+            path.moveTo(r.topRight());
             // Top right corner
             path.lineTo(r.topRight());
             path.quadTo(r.topRight() + QPoint(0, radius), r.topRight() + QPoint(-radius, radius));
@@ -230,14 +226,12 @@
             // Bottom right corner
             path.lineTo(r.bottomRight() + QPoint(-radius, -radius));
             path.quadTo(r.bottomRight() + QPoint(0, -radius), r.bottomRight());
-            path.lineTo(rect().bottomRight());
             break;
         case RoundedEast:
         case TriangularEast:
             r.adjust(0, 0, -3, 0);
-            path.moveTo(rect().topLeft());
+            path.moveTo(r.topLeft());
             // Top left corner
-            path.lineTo(r.topLeft());
             path.quadTo(r.topLeft() + QPoint(0, radius), r.topLeft() + QPoint(radius, radius));
             // Top right corner
             path.lineTo(r.topRight() + QPoint(-radius, radius));
@@ -248,7 +242,6 @@
             // Bottom left corner
             path.lineTo(r.bottomLeft() + QPoint(radius, -radius));
             path.quadTo(r.bottomLeft() + QPoint(0, -radius), r.bottomLeft());
-            path.lineTo(rect().bottomLeft());
             break;
     }
 
_______________________________________________
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel

Reply via email to