From: Peter Penz Date: Fri, 5 Nov 2010 15:31:23 +0000 (+0000) Subject: Fix issue that the horizontal scrollbar is not updated correctly when resizing the... X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/commitdiff_plain/e8bbbd57036950e6290bf8de936b5dfe769a0256 Fix issue that the horizontal scrollbar is not updated correctly when resizing the window svn path=/trunk/KDE/kdebase/apps/; revision=1193329 --- diff --git a/src/views/dolphincolumnviewcontainer.cpp b/src/views/dolphincolumnviewcontainer.cpp index 7346532a1..31ec21083 100644 --- a/src/views/dolphincolumnviewcontainer.cpp +++ b/src/views/dolphincolumnviewcontainer.cpp @@ -331,15 +331,12 @@ void DolphinColumnViewContainer::layoutColumns() contentWidth += column->maximumWidth(); } - if (horizontalScrollBar()->pageStep() != contentWidth) { - disconnect(horizontalScrollBar(), SIGNAL(valueChanged(int)), - this, SLOT(moveContentHorizontally(int))); - + const int scrollBarMax = contentWidth - viewport()->width(); + const bool updateScrollBar = (horizontalScrollBar()->pageStep() != contentWidth) + || (horizontalScrollBar()->maximum() != scrollBarMax); + if (updateScrollBar) { horizontalScrollBar()->setPageStep(contentWidth); - horizontalScrollBar()->setRange(0, contentWidth - viewport()->width()); - - connect(horizontalScrollBar(), SIGNAL(valueChanged(int)), - this, SLOT(moveContentHorizontally(int))); + horizontalScrollBar()->setRange(0, scrollBarMax); } } @@ -351,13 +348,13 @@ void DolphinColumnViewContainer::requestActivation(DolphinColumnView* column) if (focusProxy() != column) { setFocusProxy(column); } - + if (!column->isActive()) { // Deactivate the currently active column if (m_index >= 0) { m_columns[m_index]->setActive(false); } - + // Get the index of the column that should get activated int index = 0; foreach (DolphinColumnView* currColumn, m_columns) {