KDE 3.2.2 and Qt 3.3.1 [Re: remember KDE 3.2.2]
Frerich Raabe
raabe at kde.org
Sun Mar 28 23:06:38 BST 2004
On Sun, Mar 28, 2004 at 09:35:13PM +0200, Stephan Binner wrote:
> On Friday 26 March 2004 11:06, Stephan Kulow wrote:
>
> > So if you have anything left to do for that release (including increasing
> > version numbers :), do so next week.
>
> And don't forget to update changelog www/announcements/changelogs and also to
> add your new version numbers to the products on http://bugs.kde.org. :-)
>
> On the subject, shouldn't KDE 3.2.2 work flawless with the current Qt version?
> At the moment I'm aware of these unsolved problems:
>
> - K Menu gets wider with time (#78573, #78556)
Try the attached patch. It basically reverts revision 1.24 of
kicker/ui/k_mnu.h and revision 1.86 of k_mnu.cpp - both had the
log message 'Fix Kmenu width (broken by Qt 3.3)'.
- Frerich
--
if new true friend not protected for explicit private union, break
case and try using this.
-------------- next part --------------
Index: ui/k_mnu.cpp
===================================================================
RCS file: /home/kde/kdebase/kicker/ui/k_mnu.cpp,v
retrieving revision 1.89
diff -u -3 -p -r1.89 k_mnu.cpp
--- ui/k_mnu.cpp 27 Mar 2004 07:57:12 -0000 1.89
+++ ui/k_mnu.cpp 28 Mar 2004 22:08:08 -0000
@@ -325,8 +325,6 @@ void PanelKMenu::initialize()
insertTearOffHandle();
#endif
- setMinimumSize( sizeHint() );
-
setInitialized(true);
}
@@ -421,6 +419,26 @@ void PanelKMenu::slotEditUserContact()
{
}
+void PanelKMenu::setMinimumSize(const QSize & s)
+{
+ KPanelMenu::setMinimumSize(s.width() + sidePixmap.width(), s.height());
+}
+
+void PanelKMenu::setMaximumSize(const QSize & s)
+{
+ KPanelMenu::setMaximumSize(s.width() + sidePixmap.width(), s.height());
+}
+
+void PanelKMenu::setMinimumSize(int w, int h)
+{
+ KPanelMenu::setMinimumSize(w + sidePixmap.width(), h);
+}
+
+void PanelKMenu::setMaximumSize(int w, int h)
+{
+ KPanelMenu::setMaximumSize(w + sidePixmap.width(), h);
+}
+
QRect PanelKMenu::sideImageRect()
{
return QStyle::visualRect( QRect( frameWidth(), frameWidth(), sidePixmap.width(),
@@ -429,6 +447,9 @@ QRect PanelKMenu::sideImageRect()
void PanelKMenu::resizeEvent(QResizeEvent * e)
{
+// kdDebug(1210) << "PanelKMenu::resizeEvent():" << endl;
+// kdDebug(1210) << geometry().width() << ", " << geometry().height() << endl;
+
PanelServiceMenu::resizeEvent(e);
setFrameRect( QStyle::visualRect( QRect( sidePixmap.width(), 0,
@@ -438,7 +459,8 @@ void PanelKMenu::resizeEvent(QResizeEven
QSize PanelKMenu::sizeHint() const
{
QSize s = PanelServiceMenu::sizeHint();
- s.setWidth( s.width() + sidePixmap.width() );
+// kdDebug(1210) << "PanelKMenu::sizeHint()" << endl;
+// kdDebug(1210) << s.width() << ", " << s.height() << endl;
return s;
}
Index: ui/k_mnu.h
===================================================================
RCS file: /home/kde/kdebase/kicker/ui/k_mnu.h,v
retrieving revision 1.24
diff -u -3 -p -r1.24 k_mnu.h
--- ui/k_mnu.h 9 Feb 2004 07:35:57 -0000 1.24
+++ ui/k_mnu.h 28 Mar 2004 22:08:08 -0000
@@ -47,6 +47,10 @@ public:
void removeClientMenu(int id);
virtual QSize sizeHint() const;
+ virtual void setMinimumSize(const QSize &);
+ virtual void setMaximumSize(const QSize &);
+ virtual void setMinimumSize(int, int);
+ virtual void setMaximumSize(int, int);
public slots:
virtual void initialize();
More information about the kde-core-devel
mailing list