Commit ea7d4f05 authored by Nate Graham's avatar Nate Graham
Browse files

Revert "Don't session-restore invalid paths"

This reverts commit c733b3aa.

There are people who prefer the old behavior of session-restoring all
paths including the ones which are currently inaccessible. The idea is
that Dolphin is like a web browser; if a website is not currently
available, the browser tells you that instead of silently discarding the
URL and showing you the homepage. Doing this can be considered a form
of data loss.

In addition, the reason for the change was to prevent Dolphin from
showing invalid paths on launch for unmounted removable disks, but that
specific case was fixed separately by switching to ~ for any tabs/views
that were showing locations on a just-unmounted removable disk. So you
will never run into the problem if yo unmount a disk in Dolphin and then
close it.

Accordingly, let's revert the change because it causes more problems than
it resolves.

BUG: 439864
CCBUG: 427619
FIXED-IN: 21.08
parent 0cdcf041
Pipeline #72242 passed with stage
in 5 minutes and 19 seconds
......@@ -239,20 +239,6 @@ QVector<DolphinViewContainer*> DolphinMainWindow::viewContainers() const
return viewContainers;
}
void DolphinMainWindow::setViewsWithInvalidPathsToHome()
{
const QVector<DolphinViewContainer*> theViewContainers = viewContainers();
for (DolphinViewContainer *viewContainer : theViewContainers) {
// Only consider local dirs, not remote locations and abstract protocols
if (viewContainer->url().isLocalFile()) {
if (!QFileInfo::exists(viewContainer->url().toLocalFile())) {
viewContainer->setUrl(QUrl::fromLocalFile(QDir::homePath()));
}
}
}
}
void DolphinMainWindow::openDirectories(const QList<QUrl>& dirs, bool splitView)
{
m_tabWidget->openDirectories(dirs, splitView);
......
......@@ -105,12 +105,6 @@ public:
*/
void setViewsToHomeIfMountPathOpen(const QString& mountPath);
/**
* Sets any of the window's view containers which are currently displaying
* invalid locations to the home path
*/
void setViewsWithInvalidPathsToHome();
bool isFoldersPanelEnabled() const;
bool isInformationPanelEnabled() const;
......
......@@ -204,10 +204,6 @@ int main(int argc, char **argv)
if (startedWithURLs) {
mainWindow->openDirectories(urls, splitView);
}
// Now handle invalid locations in the set of active views to
// avoid issues like https://bugs.kde.org/show_bug.cgi?id=427619
mainWindow->setViewsWithInvalidPathsToHome();
} else {
qCWarning(DolphinDebug) << "Unknown class " << className << " in session saved data!";
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment