未验证 提交 30ad9f9c 编写于 作者: J Joao Moreno

fixes #72973

上级 9616ab9b
......@@ -6,7 +6,7 @@
import 'vs/css!./media/scmViewlet';
import { Event, Emitter } from 'vs/base/common/event';
import { domEvent } from 'vs/base/browser/event';
import { basename } from 'vs/base/common/resources';
import { basename, isEqual } from 'vs/base/common/resources';
import { IDisposable, Disposable, DisposableStore, combinedDisposable } from 'vs/base/common/lifecycle';
import { ViewletPanel, IViewletPanelOptions } from 'vs/workbench/browser/parts/views/panelViewlet';
import { append, $, addClass, toggleClass, trackFocus, removeClass } from 'vs/base/browser/dom';
......@@ -47,7 +47,7 @@ import { compareFileNames } from 'vs/base/common/comparers';
import { FuzzyScore, createMatches } from 'vs/base/common/filters';
import { IViewDescriptor } from 'vs/workbench/common/views';
import { localize } from 'vs/nls';
import { flatten } from 'vs/base/common/arrays';
import { flatten, find } from 'vs/base/common/arrays';
import { memoize } from 'vs/base/common/decorators';
import { IWorkbenchThemeService, IFileIconTheme } from 'vs/workbench/services/themes/common/workbenchThemeService';
import { IStorageService, StorageScope } from 'vs/platform/storage/common/storage';
......@@ -536,12 +536,15 @@ class ViewModel {
// go backwards from last group
for (let i = this.items.length - 1; i >= 0; i--) {
const node = this.items[i].tree.getNode(uri);
if (node && node.element) {
this.tree.reveal(node.element);
this.tree.setSelection([node.element]);
this.tree.setFocus([node.element]);
const item = this.items[i];
const resource = this.mode === ViewModelMode.Tree
? item.tree.getNode(uri)?.element
: find(item.resources, r => isEqual(r.sourceUri, uri));
if (resource) {
this.tree.reveal(resource);
this.tree.setSelection([resource]);
this.tree.setFocus([resource]);
return;
}
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册