X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/43da84eefc7d68ce86cda2d353216dbe7552fc2c..784734ca16803f5109e6268d1afc6c4f33d41def:/src/dolphintabpage.cpp diff --git a/src/dolphintabpage.cpp b/src/dolphintabpage.cpp index 1d3a6f08c..0193aaad0 100644 --- a/src/dolphintabpage.cpp +++ b/src/dolphintabpage.cpp @@ -19,8 +19,8 @@ #include "dolphintabpage.h" -#include "dolphinviewcontainer.h" #include "dolphin_generalsettings.h" +#include "dolphinviewcontainer.h" #include #include @@ -94,6 +94,7 @@ void DolphinTabPage::setSplitViewEnabled(bool enabled, const QUrl &secondaryUrl) // If the primary view is active, we have to swap the pointers // because the secondary view will be the new primary view. qSwap(m_primaryViewContainer, m_secondaryViewContainer); + m_primaryViewActive = false; } m_primaryViewContainer->setActive(true); view->close(); @@ -311,24 +312,28 @@ void DolphinTabPage::slotViewActivated() m_primaryViewActive = !m_primaryViewActive; } else { m_primaryViewActive = true; + if (m_secondaryViewContainer) { + m_secondaryViewContainer->setActive(false); + } } } const DolphinView* newActiveView = activeViewContainer()->view(); - if (newActiveView != oldActiveView) { - disconnect(oldActiveView, &DolphinView::urlChanged, - this, &DolphinTabPage::activeViewUrlChanged); - disconnect(oldActiveView, &DolphinView::redirection, - this, &DolphinTabPage::slotViewUrlRedirection); - connect(newActiveView, &DolphinView::urlChanged, - this, &DolphinTabPage::activeViewUrlChanged); - connect(newActiveView, &DolphinView::redirection, - this, &DolphinTabPage::slotViewUrlRedirection); + if (newActiveView == oldActiveView) { + return; } - emit activeViewUrlChanged(activeViewContainer()->url()); + disconnect(oldActiveView, &DolphinView::urlChanged, + this, &DolphinTabPage::activeViewUrlChanged); + disconnect(oldActiveView, &DolphinView::redirection, + this, &DolphinTabPage::slotViewUrlRedirection); + connect(newActiveView, &DolphinView::urlChanged, + this, &DolphinTabPage::activeViewUrlChanged); + connect(newActiveView, &DolphinView::redirection, + this, &DolphinTabPage::slotViewUrlRedirection); emit activeViewChanged(activeViewContainer()); + emit activeViewUrlChanged(activeViewContainer()->url()); } void DolphinTabPage::slotViewUrlRedirection(const QUrl& oldUrl, const QUrl& newUrl)