Merge remote-tracking branch 'origin/KDE/4.10'

This commit is contained in:
Frank Reininghaus 2013-03-15 00:28:40 +01:00
commit 31b0b565fe
4 changed files with 19 additions and 1 deletions

View file

@ -261,7 +261,9 @@ void KItemListContainer::updateScrollOffsetScrollBar()
smoothScroller = m_verticalSmoothScroller; smoothScroller = m_verticalSmoothScroller;
scrollOffsetScrollBar = verticalScrollBar(); scrollOffsetScrollBar = verticalScrollBar();
singleStep = view->itemSize().height(); singleStep = view->itemSize().height();
pageStep = view->size().height(); // We cannot use view->size().height() because this height might
// include the header widget, which is not part of the scrolled area.
pageStep = view->verticalPageStep();
} else { } else {
smoothScroller = m_horizontalSmoothScroller; smoothScroller = m_horizontalSmoothScroller;
scrollOffsetScrollBar = horizontalScrollBar(); scrollOffsetScrollBar = horizontalScrollBar();

View file

@ -388,6 +388,15 @@ void KItemListView::setGeometry(const QRectF& rect)
} }
} }
qreal KItemListView::verticalPageStep() const
{
qreal headerHeight = 0;
if (m_headerWidget->isVisible()) {
headerHeight = m_headerWidget->size().height();
}
return size().height() - headerHeight;
}
int KItemListView::itemAt(const QPointF& pos) const int KItemListView::itemAt(const QPointF& pos) const
{ {
QHashIterator<int, KItemListWidget*> it(m_visibleItems); QHashIterator<int, KItemListWidget*> it(m_visibleItems);

View file

@ -162,6 +162,12 @@ public:
/** @reimp */ /** @reimp */
virtual void setGeometry(const QRectF& rect); virtual void setGeometry(const QRectF& rect);
/**
* @return The page step which should be used by the vertical scroll bar.
* This is the height of the view except for the header widget.
*/
qreal verticalPageStep() const;
/** /**
* @return Index of the item that is below the point \a pos. * @return Index of the item that is below the point \a pos.
* The position is relative to the upper right of * The position is relative to the upper right of

View file

@ -144,6 +144,7 @@ void TerminalPanel::changeDir(const KUrl& url)
void TerminalPanel::sendCdToTerminal(const QString& dir) void TerminalPanel::sendCdToTerminal(const QString& dir)
{ {
if (dir == m_konsolePartCurrentDirectory) { if (dir == m_konsolePartCurrentDirectory) {
m_clearTerminal = false;
return; return;
} }