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

List:       kde-commits
Subject:    KDE/kdebase/workspace/libs/plasma
From:       Rob Scheepmaker <r.scheepmaker () student ! utwente ! nl>
Date:       2008-10-27 17:02:47
Message-ID: 1225126967.219240.25205.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 876611 by scheepmaker:

setting the size hints before changing the views sceneRect fixes the bug where \
reordering items within an extender resizes the dialog to a size that is too small.



 M  +5 -8      dialog.cpp  


--- trunk/KDE/kdebase/workspace/libs/plasma/dialog.cpp #876610:876611
@@ -138,14 +138,6 @@
                  << "| Widget maxsize hint:" << widget->maximumSize()
                  << "| Widget bounding rect:" << widget->boundingRect();
 
-        QRectF boundingRect = widget->boundingRect();
-        boundingRect.setSize(widget->effectiveSizeHint(Qt::PreferredSize));
-
-        //reposition and resize the view.
-        view->setSceneRect(widget->sceneBoundingRect());
-        view->resize(view->mapFromScene(view->sceneRect()).boundingRect().size());
-        view->centerOn(widget);
-
         //set the sizehints correctly:
         int left, top, right, bottom;
         q->getContentsMargins(&left, &top, &right, &bottom);
@@ -158,6 +150,11 @@
                           qMin(int(view->size().height()) + top + bottom, \
QWIDGETSIZE_MAX));  q->updateGeometry();
 
+        //reposition and resize the view.
+        view->setSceneRect(widget->sceneBoundingRect());
+        view->resize(view->mapFromScene(view->sceneRect()).boundingRect().size());
+        view->centerOn(widget);
+
         if (q->size() != prevSize) {
             //the size of the dialog has changed, emit the signal:
             emit q->dialogResized();


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

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