X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/3d7b54b21a47e98d1d02c7d21061a6bd43b8d1c7..233a08164f79d9909693c5de438f856467ad5b76:/src/dolphinviewcontainer.cpp diff --git a/src/dolphinviewcontainer.cpp b/src/dolphinviewcontainer.cpp index 5639d9bf2..a821d5d29 100644 --- a/src/dolphinviewcontainer.cpp +++ b/src/dolphinviewcontainer.cpp @@ -191,20 +191,6 @@ DolphinViewContainer::~DolphinViewContainer() m_dirLister = 0; // deleted by m_dolphinModel } -void DolphinViewContainer::setUrl(const KUrl& newUrl) -{ - if (newUrl != m_urlNavigator->url()) { - m_urlNavigator->setUrl(newUrl); - // Temporary disable the 'File'->'Create New...' menu until - // the write permissions can be checked in a fast way at - // DolphinViewContainer::slotDirListerCompleted(). - m_isFolderWritable = false; - if (isActive()) { - m_mainWindow->newMenu()->menu()->setEnabled(false); - } - } -} - const KUrl& DolphinViewContainer::url() const { return m_urlNavigator->url(); @@ -236,6 +222,20 @@ bool DolphinViewContainer::isFilterBarVisible() const return m_filterBar->isVisible(); } +void DolphinViewContainer::setUrl(const KUrl& newUrl) +{ + if (newUrl != m_urlNavigator->url()) { + m_urlNavigator->setUrl(newUrl); + // Temporary disable the 'File'->'Create New...' menu until + // the write permissions can be checked in a fast way at + // DolphinViewContainer::slotDirListerCompleted(). + m_isFolderWritable = false; + if (isActive()) { + m_mainWindow->newMenu()->menu()->setEnabled(false); + } + } +} + void DolphinViewContainer::showFilterBar(bool show) { Q_ASSERT(m_filterBar != 0); @@ -314,7 +314,6 @@ void DolphinViewContainer::slotDirListerCompleted() } else { updateStatusBar(); } - QMetaObject::invokeMethod(this, "restoreContentsPos", Qt::QueuedConnection); // Enable the 'File'->'Create New...' menu only if the directory // supports writing. @@ -387,17 +386,11 @@ void DolphinViewContainer::openContextMenu(const KFileItem& item, void DolphinViewContainer::saveContentsPos(int x, int y) { + // TODO: If DolphinViewContainer uses DolphinView::saveState(...) to save the + // view state in KDE 4.5, this funciton can be removed. m_urlNavigator->savePosition(x, y); } -void DolphinViewContainer::restoreContentsPos() -{ - if (!url().isEmpty()) { - const QPoint pos = m_urlNavigator->savedPosition(); - m_view->setContentsPosition(pos.x(), pos.y()); - } -} - void DolphinViewContainer::activate() { setActive(true); @@ -484,6 +477,8 @@ void DolphinViewContainer::slotHistoryChanged() // the previous directory as active item: const KUrl url = m_urlNavigator->historyUrl(index - 1); m_view->activateItem(url); + QPoint pos = m_urlNavigator->savedPosition(); + m_view->setRestoredContentsPosition(pos); } }