Skip to content

Commit 647e25e

Browse files
committed
collapseByDefault for notebook should also honor new setting
fixes microsoft#164542
1 parent bcb20dc commit 647e25e

File tree

3 files changed

+10
-9
lines changed

3 files changed

+10
-9
lines changed

src/vs/workbench/contrib/codeEditor/browser/outline/documentSymbolsOutline.ts

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
import { Emitter, Event } from 'vs/base/common/event';
77
import { Disposable, DisposableStore, IDisposable, toDisposable } from 'vs/base/common/lifecycle';
8-
import { IBreadcrumbsDataSource, IOutline, IOutlineCreator, IOutlineListConfig, IOutlineService, OutlineChangeEvent, OutlineConfigKeys, OutlineTarget, } from 'vs/workbench/services/outline/browser/outline';
8+
import { OutlineConfigCollapseItemsValues, IBreadcrumbsDataSource, IOutline, IOutlineCreator, IOutlineListConfig, IOutlineService, OutlineChangeEvent, OutlineConfigKeys, OutlineTarget, } from 'vs/workbench/services/outline/browser/outline';
99
import { IWorkbenchContributionsRegistry, Extensions as WorkbenchExtensions } from 'vs/workbench/common/contributions';
1010
import { Registry } from 'vs/platform/registry/common/platform';
1111
import { LifecyclePhase } from 'vs/workbench/services/lifecycle/common/lifecycle';
@@ -103,10 +103,6 @@ class DocumentSymbolBreadcrumbsSource implements IBreadcrumbsDataSource<Document
103103
}
104104
}
105105

106-
export const enum DocumentSymbolsOutlineInitialState {
107-
Collapsed = 'alwaysCollapse',
108-
Expanded = 'alwaysExpand'
109-
}
110106

111107
class DocumentSymbolsOutline implements IOutline<DocumentSymbolItem> {
112108

@@ -161,9 +157,9 @@ class DocumentSymbolsOutline implements IOutline<DocumentSymbolItem> {
161157
}
162158
};
163159
const comparator = new DocumentSymbolComparator();
164-
const initialState = textResourceConfigurationService.getValue<DocumentSymbolsOutlineInitialState>(_editor.getModel()?.uri, OutlineConfigKeys.collapseItems);
160+
const initialState = textResourceConfigurationService.getValue<OutlineConfigCollapseItemsValues>(_editor.getModel()?.uri, OutlineConfigKeys.collapseItems);
165161
const options = {
166-
collapseByDefault: target === OutlineTarget.Breadcrumbs || (target === OutlineTarget.OutlinePane && initialState === DocumentSymbolsOutlineInitialState.Collapsed),
162+
collapseByDefault: target === OutlineTarget.Breadcrumbs || (target === OutlineTarget.OutlinePane && initialState === OutlineConfigCollapseItemsValues.Collapsed),
167163
expandOnlyOnTwistieClick: true,
168164
multipleSelectionSupport: false,
169165
identityProvider: new DocumentSymbolIdentityProvider(),

src/vs/workbench/contrib/notebook/browser/contrib/outline/notebookOutline.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import { IThemeService, ThemeIcon } from 'vs/platform/theme/common/themeService'
1111
import { CellRevealType, IActiveNotebookEditor, ICellViewModel, INotebookEditorOptions, INotebookViewCellsUpdateEvent } from 'vs/workbench/contrib/notebook/browser/notebookBrowser';
1212
import { NotebookEditor } from 'vs/workbench/contrib/notebook/browser/notebookEditor';
1313
import { CellKind } from 'vs/workbench/contrib/notebook/common/notebookCommon';
14-
import { IOutline, IOutlineComparator, IOutlineCreator, IOutlineListConfig, IOutlineService, IQuickPickDataSource, IQuickPickOutlineElement, OutlineChangeEvent, OutlineConfigKeys, OutlineTarget } from 'vs/workbench/services/outline/browser/outline';
14+
import { IOutline, IOutlineComparator, IOutlineCreator, IOutlineListConfig, IOutlineService, IQuickPickDataSource, IQuickPickOutlineElement, OutlineChangeEvent, OutlineConfigCollapseItemsValues, OutlineConfigKeys, OutlineTarget } from 'vs/workbench/services/outline/browser/outline';
1515
import { IWorkbenchContributionsRegistry, Extensions as WorkbenchExtensions } from 'vs/workbench/common/contributions';
1616
import { Registry } from 'vs/platform/registry/common/platform';
1717
import { LifecyclePhase } from 'vs/workbench/services/lifecycle/common/lifecycle';
@@ -362,7 +362,7 @@ export class NotebookCellOutline implements IOutline<OutlineEntry> {
362362
installSelectionListener();
363363

364364
const options: IWorkbenchDataTreeOptions<OutlineEntry, FuzzyScore> = {
365-
collapseByDefault: _target === OutlineTarget.Breadcrumbs,
365+
collapseByDefault: _target === OutlineTarget.Breadcrumbs || (_target === OutlineTarget.OutlinePane && _configurationService.getValue(OutlineConfigKeys.collapseItems) === OutlineConfigCollapseItemsValues.Collapsed),
366366
expandOnlyOnTwistieClick: true,
367367
multipleSelectionSupport: false,
368368
accessibilityProvider: new NotebookOutlineAccessibility(),

src/vs/workbench/services/outline/browser/outline.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,3 +97,8 @@ export const enum OutlineConfigKeys {
9797
'problemsColors' = 'outline.problems.colors',
9898
'problemsBadges' = 'outline.problems.badges'
9999
}
100+
101+
export const enum OutlineConfigCollapseItemsValues {
102+
Collapsed = 'alwaysCollapse',
103+
Expanded = 'alwaysExpand'
104+
}

0 commit comments

Comments
 (0)