diff options
| author | Méven Car <[email protected]> | 2020-11-08 08:21:56 +0100 |
|---|---|---|
| committer | Méven Car <[email protected]> | 2021-04-17 10:44:28 +0200 |
| commit | 4f4e3d392c9645e3d43c362af72e2066430890f6 (patch) | |
| tree | 24cc999a3d0ae67a63ed7fc961b98231cbec633b /src | |
| parent | 20848147813a0c5de3427c4d6a36c31d03563c89 (diff) | |
PlacesPanel: activating a place does not select its previously selected children
BUG: 421347
Diffstat (limited to 'src')
| -rw-r--r-- | src/dolphinmainwindow.cpp | 2 | ||||
| -rw-r--r-- | src/dolphinviewcontainer.cpp | 12 | ||||
| -rw-r--r-- | src/dolphinviewcontainer.h | 9 |
3 files changed, 23 insertions, 0 deletions
diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index e7c402b88..0ff7e77e5 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -1243,7 +1243,9 @@ void DolphinMainWindow::slotPlaceActivated(const QUrl& url) // which had been unmounted earlier, see https://bugs.kde.org/show_bug.cgi?id=161385. reloadView(); } else { + view->disableUrlNavigatorSelectionRequests(); changeUrl(url); + view->enableUrlNavigatorSelectionRequests(); } } diff --git a/src/dolphinviewcontainer.cpp b/src/dolphinviewcontainer.cpp index 549b62b03..1a608669f 100644 --- a/src/dolphinviewcontainer.cpp +++ b/src/dolphinviewcontainer.cpp @@ -727,6 +727,18 @@ void DolphinViewContainer::slotUrlSelectionRequested(const QUrl& url) m_view->markUrlAsCurrent(url); // makes the item scroll into view } +void DolphinViewContainer::disableUrlNavigatorSelectionRequests() +{ + disconnect(m_urlNavigator.get(), &KUrlNavigator::urlSelectionRequested, + this, &DolphinViewContainer::slotUrlSelectionRequested); +} + +void DolphinViewContainer::enableUrlNavigatorSelectionRequests() +{ + connect(m_urlNavigator.get(), &KUrlNavigator::urlSelectionRequested, + this, &DolphinViewContainer::slotUrlSelectionRequested); +} + void DolphinViewContainer::redirect(const QUrl& oldUrl, const QUrl& newUrl) { Q_UNUSED(oldUrl) diff --git a/src/dolphinviewcontainer.h b/src/dolphinviewcontainer.h index 40e4978d9..1a92e1fa6 100644 --- a/src/dolphinviewcontainer.h +++ b/src/dolphinviewcontainer.h @@ -174,6 +174,15 @@ public: */ QString caption() const; + /** + * Disable/enable the behavior of "select child when moving to parent folder" + * offered by KUrlNavigator. + * + * See KUrlNavigator::urlSelectionRequested + */ + void disableUrlNavigatorSelectionRequests(); + void enableUrlNavigatorSelectionRequests(); + public Q_SLOTS: /** * Sets the current active URL, where all actions are applied. The |
