Bug 128561 - no arrow on a menu entry
Summary: no arrow on a menu entry
Status: RESOLVED FIXED
Alias: None
Product: kicker
Classification: Unmaintained
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR normal
Target Milestone: ---
Assignee: Aaron J. Seigo
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-06-03 14:01 UTC by Daniel
Modified: 2006-06-05 16:49 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
there is no arrow (979.61 KB, image/png)
2006-06-04 15:07 UTC, Daniel
Details
there is an arrow (958.32 KB, image/png)
2006-06-04 15:12 UTC, Daniel
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel 2006-06-03 14:01:02 UTC
Version:           3.5.3 (using KDE KDE 3.5.3)
Installed from:    Compiled From Sources
OS:                Linux

Upgrading from 3.5.2 to 3.5.3.

If I add a menu entry to my Panel, there is no arrow on the icon. The arrow used to represent that an icon on a panel is a menu, and it will not start an application.
Comment 1 Aaron J. Seigo 2006-06-03 19:13:33 UTC
the arrow appears on hover. the change was intentional.
Comment 2 Daniel 2006-06-04 14:45:25 UTC
The arrow doesn't appear on hover for me...
Comment 3 Daniel 2006-06-04 15:07:58 UTC
Created attachment 16468 [details]
there is no arrow
Comment 4 Daniel 2006-06-04 15:12:12 UTC
Created attachment 16470 [details]
there is an arrow
Comment 5 Daniel 2006-06-04 15:13:31 UTC
a small correction. the arrow doesn't appear if the icon (for the menu) is on a panel, which is on the left side of the screen. weird... two screenshots for the audience.
Comment 6 Aaron J. Seigo 2006-06-05 16:49:24 UTC
SVN commit 548428 by aseigo:

fix arrow locations on vert panels
patch by Maxilys <maxilys@tele2.fr>
BUGS:128622,128561


 M  +8 -3      panelbutton.cpp  


--- branches/KDE/3.5/kdebase/kicker/libkicker/panelbutton.cpp #548427:548428
@@ -631,7 +631,8 @@
     if (m_drawArrow && (m_highlight || active))
     {
         QStyle::PrimitiveElement e = QStyle::PE_ArrowUp;
-        QRect r(width() / 2 - 4, 0, 8, 8);
+        int arrowSize = style().pixelMetric(QStyle::PM_MenuButtonIndicator);
+        QRect r((width() - arrowSize)/2, 0, arrowSize, arrowSize);
 
         switch (m_arrowDirection)
         {
@@ -640,27 +641,31 @@
                 break;
             case KPanelExtension::Bottom:
                 e = QStyle::PE_ArrowDown;
-                r.moveBy(0, height() - 8);
+                r.moveBy(0, height() - arrowSize);
                 break;
             case KPanelExtension::Right:
                 e = QStyle::PE_ArrowRight;
-                r.moveBy(width() - 8 , 0);
+                r = QRect(width() - arrowSize, (height() - arrowSize)/2, arrowSize, arrowSize);
                 break;
             case KPanelExtension::Left:
                 e = QStyle::PE_ArrowLeft;
+                r = QRect(0, (height() - arrowSize)/2, arrowSize, arrowSize);
                 break;
             case KPanelExtension::Floating:
                 if (orientation() == Horizontal)
                 {
                     e = QStyle::PE_ArrowDown;
+                    r.moveBy(0, height() - arrowSize);
                 }
                 else if (QApplication::reverseLayout())
                 {
                     e = QStyle::PE_ArrowLeft;
+                    r = QRect(0, (height() - arrowSize)/2, arrowSize, arrowSize);
                 }
                 else
                 {
                     e = QStyle::PE_ArrowRight;
+                    r = QRect(width() - arrowSize, (height() - arrowSize)/2, arrowSize, arrowSize);
                 }
                 break;
         }