----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://reviewboard.kde.org/r/4463/#review6314 -----------------------------------------------------------
Ship it! looks good and the improvement is quite noticeable. great work. i'll commit and backport to the 4.5 branch shortly. and yes, please consider getting an svn account: http://techbase.kde.org/Contribute/Get_a_SVN_Account :) - Aaron On 2010-06-27 11:52:59, Anthony Bryant wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > http://reviewboard.kde.org/r/4463/ > ----------------------------------------------------------- > > (Updated 2010-06-27 11:52:59) > > > Review request for Plasma. > > > Summary > ------- > > Resizing a horizontal panel's height or a vertical panel's width currently > has some problems, which make it look like the size is randomly adjusting > while you drag it. > The cause turns out to be a sequence of calls resulting in setContainment() > being called on every resize: > 1. Containment::resizeEvent() - from Qt > 2. ContainmentPrivate::positionPanel() > 3. Containment::setPos() - to Qt > 4. Containment::geometryChanged() signal - from Qt > 5. ViewPrivate::updateSceneRect() slot > 6. View::sceneRectAboutToChange() signal > 7. PanelView::pinchContainmentToCurrentScreen() slot > 8. PanelView::pinchContainment() > 9. PanelController::setContainment() > Whenever setContainment() is called, some of the tool buttons in the > controller are removed and re-added. Since this happens on every resize > event, resizing the panel is very slow and jerky, and if local coordinates > from the mouse event are being compared it turns out in the wrong place. > > To fix this, I have used global coordinates to find the new position of the > controller, and removed the call to setContainment() from pinchContainment() > - it should only be called on initialization afaics. > > Another issue this fixes is to always resize with something, even if the > mouse is out of the allowed range. In this case, it bounds the new size to > the allowed range, so that resizing past the limit works as expected. > > > Diffs > ----- > > /trunk/KDE/kdebase/workspace/plasma/desktop/shell/panelcontroller.h 1143346 > /trunk/KDE/kdebase/workspace/plasma/desktop/shell/panelcontroller.cpp > 1143346 > /trunk/KDE/kdebase/workspace/plasma/desktop/shell/panelview.cpp 1143346 > > Diff: http://reviewboard.kde.org/r/4463/diff > > > Testing > ------- > > Tried moving and resizing both horizontal and vertical panels. I noticed some > visible relayouting of the controller and repainting issues in the panel, but > they seem to have existed before this patch as well. > > > Thanks, > > Anthony > >
_______________________________________________ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel