Merge branch 'release/19.12'

This commit is contained in:
Alexander Saoutkin 2020-03-01 17:22:46 +00:00
commit 7a2885853a
3 changed files with 17 additions and 7 deletions

View file

@ -206,6 +206,10 @@ void DolphinTabWidget::openDirectories(const QList<QUrl>& dirs, bool splitView)
} else {
tabPage->secondaryViewContainer()->setActive(true);
}
// BUG: 417230
// Required for updateViewState() call in openFiles() to work as expected
// If there is a selection, updateViewState() calls are effectively a no-op
tabPage->activeViewContainer()->view()->clearSelection();
continue;
}
if (splitView && (it != dirs.constEnd())) {
@ -239,10 +243,14 @@ void DolphinTabWidget::openFiles(const QList<QUrl>& files, bool splitView)
// Select the files. Although the files can be split between several
// tabs, there is no need to split 'files' accordingly, as
// the DolphinView will just ignore invalid selections.
for (int i = oldTabCount; i < tabCount; ++i) {
for (int i = 0; i < tabCount; ++i) {
DolphinTabPage* tabPage = tabPageAt(i);
tabPage->markUrlsAsSelected(files);
tabPage->markUrlAsCurrent(files.first());
if (i < oldTabCount) {
// Force selection of file if directory was already open, BUG: 417230
tabPage->activeViewContainer()->view()->updateViewState();
}
}
}

View file

@ -589,6 +589,8 @@
<binary>dolphin</binary>
</provides>
<releases>
<release version="19.12.3" date="2020-03-05"/>
<release version="19.12.2" date="2020-02-06"/>
<release version="19.12.1" date="2020-01-09"/>
<release version="19.12.0" date="2019-12-12"/>
</releases>

View file

@ -381,6 +381,12 @@ public slots:
void stopLoading();
/**
* Applies the state that has been restored by restoreViewState()
* to the view.
*/
void updateViewState();
/** Activates the view if the item list container gets focus. */
bool eventFilter(QObject* watched, QEvent* event) override;
@ -702,12 +708,6 @@ private slots:
*/
void slotDirectoryRedirection(const QUrl& oldUrl, const QUrl& newUrl);
/**
* Applies the state that has been restored by restoreViewState()
* to the view.
*/
void updateViewState();
/**
* Calculates the number of currently shown files into
* \a fileCount and the number of folders into \a folderCount.