File 2005-fix-closing-split-view.patch of Package dolphin
diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp
index 696c6492edb6049f6a10865f6f5012821884cebc..8c1878487d41fd7473aa5d0108490ffbceeb7fa7 100644
--- a/src/dolphinmainwindow.cpp
+++ b/src/dolphinmainwindow.cpp
@@ -233,8 +233,6 @@ DolphinMainWindow::DolphinMainWindow()
connect(&m_fileItemActions, &KFileItemActions::error, this, [this](const QString &errorMessage) {
showErrorMessage(errorMessage);
});
-
- connect(GeneralSettings::self(), &GeneralSettings::splitViewChanged, this, &DolphinMainWindow::slotSplitViewChanged);
}
DolphinMainWindow::~DolphinMainWindow()
@@ -486,12 +484,6 @@ void DolphinMainWindow::openNewWindow(const QUrl &url)
Dolphin::openNewWindow({url}, this);
}
-void DolphinMainWindow::slotSplitViewChanged()
-{
- m_tabWidget->currentTabPage()->setSplitViewEnabled(GeneralSettings::splitView(), WithAnimation);
- updateSplitActions();
-}
-
void DolphinMainWindow::openInNewTab()
{
const KFileItemList &list = m_activeViewContainer->view()->selectedItems();
diff --git a/src/dolphinmainwindow.h b/src/dolphinmainwindow.h
index 5f2ed20ca6547c5e78ba6412a1172178e8bba8cc..7505e46b15ed2b59abc6b5d6ea5ef6cdde2612ca 100644
--- a/src/dolphinmainwindow.h
+++ b/src/dolphinmainwindow.h
@@ -222,9 +222,6 @@ public Q_SLOTS:
*/
void openNewWindow(const QUrl &url);
- /** @see GeneralSettings::splitViewChanged() */
- void slotSplitViewChanged();
-
Q_SIGNALS:
/**
* Is sent if the selection of the currently active view has
diff --git a/src/dolphintabwidget.cpp b/src/dolphintabwidget.cpp
index f80b94ea7cc49e43775da1a0d57ae1dfa82920b0..88140f68140edd22fd28ed7ce4af87e99ca6a5ad 100644
--- a/src/dolphintabwidget.cpp
+++ b/src/dolphintabwidget.cpp
@@ -135,6 +135,7 @@ void DolphinTabWidget::openNewActivatedTab()
} else {
oldNavigatorState = m_navigatorsWidget->secondaryUrlNavigator()->visualState();
}
+ oldNavigatorState->isUrlEditable = GeneralSettings::editableUrl();
const DolphinViewContainer *oldActiveViewContainer = currentTabPage()->activeViewContainer();
Q_ASSERT(oldActiveViewContainer);
diff --git a/src/dolphinurlnavigator.cpp b/src/dolphinurlnavigator.cpp
index 3a40eea5c482fbefe777b8f24d5c413909138d82..07553391504e7d079320d140a079fc96a26668b0 100644
--- a/src/dolphinurlnavigator.cpp
+++ b/src/dolphinurlnavigator.cpp
@@ -101,7 +101,9 @@ void DolphinUrlNavigator::setVisualState(const VisualState &visualState)
if (!visualState.isUrlEditable) {
return;
}
- editor()->lineEdit()->setText(visualState.text);
+ if (!visualState.text.isEmpty()) {
+ editor()->lineEdit()->setText(visualState.text);
+ }
if (visualState.hasFocus) {
editor()->lineEdit()->setFocus();
editor()->lineEdit()->setCursorPosition(visualState.cursorPosition);
diff --git a/src/dolphinurlnavigatorscontroller.cpp b/src/dolphinurlnavigatorscontroller.cpp
index 9405bb8621292a3b7c0b3b9d46e05e156caed8f6..e26d848188221b5473f575ae9595d60ce14124ca 100644
--- a/src/dolphinurlnavigatorscontroller.cpp
+++ b/src/dolphinurlnavigatorscontroller.cpp
@@ -20,7 +20,6 @@ void DolphinUrlNavigatorsController::slotReadSettings()
// settings of the URL navigators and split view.
if (GeneralSettings::modifiedStartupSettings()) {
for (DolphinUrlNavigator *urlNavigator : s_instances) {
- urlNavigator->setUrlEditable(GeneralSettings::editableUrl());
urlNavigator->setShowFullPath(GeneralSettings::showFullPath());
urlNavigator->setHomeUrl(Dolphin::homeUrl());
}
diff --git a/src/dolphinviewcontainer.cpp b/src/dolphinviewcontainer.cpp
index 7b9744745c1103f5e90a83db45947a602f0c84e8..4f542530a1f0583be86a82e0653868b1b017a6d3 100644
--- a/src/dolphinviewcontainer.cpp
+++ b/src/dolphinviewcontainer.cpp
@@ -439,13 +439,6 @@ void DolphinViewContainer::showMessage(const QString &message, KMessageWidget::M
void DolphinViewContainer::readSettings()
{
- // The startup settings should (only) get applied if they have been
- // modified by the user. Otherwise keep the (possibly) different current
- // setting of the filterbar.
- if (GeneralSettings::modifiedStartupSettings()) {
- setFilterBarVisible(GeneralSettings::filterBar());
- }
-
m_view->readSettings();
m_statusBar->readSettings();
}