X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/e54e6a9cdbc0e37e7c81abcea4e69838cddabaa3..8d95c06df13717fe1e8dfd0d28dc0b8357e32064:/src/dolphinview.cpp diff --git a/src/dolphinview.cpp b/src/dolphinview.cpp index ae6ea5ec7..023a73800 100644 --- a/src/dolphinview.cpp +++ b/src/dolphinview.cpp @@ -102,7 +102,7 @@ DolphinView::DolphinView(QWidget* parent, connect(m_controller, SIGNAL(urlChanged(const KUrl&)), this, SIGNAL(urlChanged(const KUrl&))); connect(m_controller, SIGNAL(requestUrlChange(const KUrl&)), - this, SIGNAL(urlChanged(const KUrl&))); + this, SLOT(slotRequestUrlChange(const KUrl&))); connect(m_controller, SIGNAL(requestContextMenu(const QPoint&)), this, SLOT(openContextMenu(const QPoint&))); @@ -125,6 +125,8 @@ DolphinView::DolphinView(QWidget* parent, connect(m_controller, SIGNAL(viewportEntered()), this, SLOT(clearHoverInformation())); + connect(m_dirLister, SIGNAL(redirection(KUrl, KUrl)), + this, SLOT(slotRedirection(KUrl, KUrl))); connect(m_dirLister, SIGNAL(completed()), this, SLOT(restoreCurrentItem())); @@ -153,7 +155,6 @@ void DolphinView::setActive(bool active) } m_active = active; - m_selectionModel->clearSelection(); QColor color = KColorScheme(QPalette::Active, KColorScheme::View).background().color(); if (active) { @@ -174,6 +175,7 @@ void DolphinView::setActive(bool active) update(); if (active) { + itemView()->setFocus(); emit activated(); } @@ -1203,4 +1205,17 @@ void DolphinView::pasteToUrl(const KUrl& url) } } +void DolphinView::slotRequestUrlChange(const KUrl& url) +{ + emit requestUrlChange(url); + m_controller->setUrl(url); +} + +void DolphinView::slotRedirection(const KUrl& oldUrl, const KUrl& newUrl) +{ + if (oldUrl == m_controller->url()) { + m_controller->setUrl(newUrl); + } +} + #include "dolphinview.moc"