don't reset the x-position to 0 in the Column View, if a new directory is loaded

svn path=/trunk/KDE/kdebase/apps/; revision=673500
This commit is contained in:
Peter Penz 2007-06-10 11:54:12 +00:00
parent 293e65797a
commit 321c5cded3
2 changed files with 10 additions and 5 deletions

View file

@ -61,7 +61,7 @@ DolphinView::DolphinView(QWidget* parent,
Mode mode) :
QWidget(parent),
m_active(true),
m_blockContentsMovedSignal(false),
m_loadingDirectory(false),
m_initializeColumnView(false),
m_mode(mode),
m_topLayout(0),
@ -337,7 +337,7 @@ void DolphinView::setContentsPosition(int x, int y)
view->horizontalScrollBar()->setValue(x);
view->verticalScrollBar()->setValue(y);
m_blockContentsMovedSignal = false;
m_loadingDirectory = false;
}
QPoint DolphinView::contentsPosition() const
@ -541,7 +541,7 @@ void DolphinView::startDirLister(const KUrl& url, bool reload)
}
m_cutItemsCache.clear();
m_blockContentsMovedSignal = true;
m_loadingDirectory = true;
m_dirLister->stop();
@ -754,7 +754,12 @@ void DolphinView::updateSortOrder(Qt::SortOrder order)
void DolphinView::emitContentsMoved()
{
if (!m_blockContentsMovedSignal) {
// only emit the contents moved signal if:
// - no directory loading is ongoing (this would reset the contents position
// always to (0, 0))
// - if the Column View is active: the column view does an automatic
// positioning during the loading operation, which must be remembered
if (!m_loadingDirectory || isColumnViewActive()) {
const QPoint pos(contentsPosition());
emit contentsMoved(pos.x(), pos.y());
}

View file

@ -527,7 +527,7 @@ private:
};
bool m_active;
bool m_blockContentsMovedSignal;
bool m_loadingDirectory;
bool m_initializeColumnView;
Mode m_mode;