]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/dolphinpart.cpp
added settings module for 'Navigation', that can be used by Konqueror
[dolphin.git] / src / dolphinpart.cpp
index 05bc2216a58d3a806de6532831fdad0d09ac3582..5d5a905b37025454d54f6ff6dda27cc06753f759 100644 (file)
@@ -18,6 +18,7 @@
 */
 
 #include "dolphinpart.h"
+#include <kdebug.h>
 #include "dolphinviewactionhandler.h"
 #include "dolphinsortfilterproxymodel.h"
 #include "dolphinview.h"
@@ -101,12 +102,12 @@ DolphinPart::DolphinPart(QWidget* parentWidget, QObject* parent, const QVariantL
             this, SLOT(slotSelectionChanged(KFileItemList)));
     connect(m_view, SIGNAL(requestItemInfo(KFileItem)),
             this, SLOT(slotRequestItemInfo(KFileItem)));
-    connect(m_view, SIGNAL(urlChanged(KUrl)),
-            this, SLOT(slotUrlChanged(KUrl)));
     connect(m_view, SIGNAL(requestUrlChange(KUrl)),
             this, SLOT(slotRequestUrlChange(KUrl)));
     connect(m_view, SIGNAL(modeChanged()),
             this, SIGNAL(viewModeChanged())); // relay signal
+    connect(m_view, SIGNAL(redirection(KUrl, KUrl)),
+            this, SLOT(slotRedirection(KUrl, KUrl)));
 
     // Watch for changes that should result in updates to the
     // status bar text.
@@ -414,11 +415,14 @@ void DolphinPart::slotOpenContextMenu(const KFileItem& _item, const KUrl&)
                                 actionGroups);
 }
 
-void DolphinPart::slotUrlChanged(const KUrl& url)
+void DolphinPart::slotRedirection(const KUrl& oldUrl, const KUrl& newUrl)
 {
-    KParts::ReadOnlyPart::setUrl(url);
-    QString prettyUrl = url.pathOrUrl();
-    emit m_extension->setLocationBarUrl(prettyUrl);
+    //kDebug() << oldUrl << newUrl << "currentUrl=" << url();
+    if (oldUrl == url()) {
+        KParts::ReadOnlyPart::setUrl(newUrl);
+        const QString prettyUrl = newUrl.pathOrUrl();
+        emit m_extension->setLocationBarUrl(prettyUrl);
+    }
 }
 
 void DolphinPart::slotRequestUrlChange(const KUrl& url)