提交 bf86f521 编写于 作者: B Benjamin Pasero

quick access - reduce constant config lookup

上级 d514636c
......@@ -18,6 +18,14 @@ export class GotoLineQuickAccessProvider extends AbstractGotoLineQuickAccessProv
protected readonly onDidActiveTextEditorControlChange = this.editorService.onDidActiveEditorChange;
private readonly configuration = (() => {
const editorConfig = this.configurationService.getValue<IWorkbenchEditorConfiguration>().workbench.editor;
return {
openEditorPinned: !editorConfig.enablePreviewFromQuickOpen
};
})();
constructor(
@IEditorService private readonly editorService: IEditorService,
@IConfigurationService private readonly configurationService: IConfigurationService
......@@ -25,14 +33,6 @@ export class GotoLineQuickAccessProvider extends AbstractGotoLineQuickAccessProv
super();
}
private get configuration() {
const editorConfig = this.configurationService.getValue<IWorkbenchEditorConfiguration>().workbench.editor;
return {
openEditorPinned: !editorConfig.enablePreviewFromQuickOpen,
};
}
protected get activeTextEditorControl() {
return this.editorService.activeTextEditorControl;
}
......
......@@ -18,6 +18,15 @@ export class GotoSymbolQuickAccessProvider extends AbstractGotoSymbolQuickAccess
protected readonly onDidActiveTextEditorControlChange = this.editorService.onDidActiveEditorChange;
private readonly configuration = (() => {
const editorConfig = this.configurationService.getValue<IWorkbenchEditorConfiguration>().workbench.editor;
return {
openEditorPinned: !editorConfig.enablePreviewFromQuickOpen,
openSideBySideDirection: editorConfig.openSideBySideDirection
};
})();
constructor(
@IEditorService private readonly editorService: IEditorService,
@IConfigurationService private readonly configurationService: IConfigurationService
......@@ -27,15 +36,6 @@ export class GotoSymbolQuickAccessProvider extends AbstractGotoSymbolQuickAccess
});
}
private get configuration() {
const editorConfig = this.configurationService.getValue<IWorkbenchEditorConfiguration>().workbench.editor;
return {
openEditorPinned: !editorConfig.enablePreviewFromQuickOpen,
openSideBySideDirection: editorConfig.openSideBySideDirection
};
}
protected get activeTextEditorControl() {
return this.editorService.activeTextEditorControl;
}
......
......@@ -75,6 +75,20 @@ export class AnythingQuickAccessProvider extends PickerQuickAccessProvider<IAnyt
}
}(this);
private readonly configuration = (() => {
const editorConfig = this.configurationService.getValue<IWorkbenchEditorConfiguration>().workbench.editor;
const searchConfig = this.configurationService.getValue<IWorkbenchSearchConfiguration>();
return {
openEditorPinned: !editorConfig.enablePreviewFromQuickOpen,
openSideBySideDirection: editorConfig.openSideBySideDirection,
includeSymbols: searchConfig.search.quickOpen.includeSymbols,
workspaceSymbolsFilter: searchConfig.search.quickOpen.workspaceSymbolsFilter,
includeHistory: searchConfig.search.quickOpen.includeHistory,
shortAutoSaveDelay: this.filesConfigurationService.getAutoSaveMode() === AutoSaveMode.AFTER_SHORT_DELAY
};
})();
constructor(
@IInstantiationService private readonly instantiationService: IInstantiationService,
@ISearchService private readonly searchService: ISearchService,
......@@ -94,20 +108,6 @@ export class AnythingQuickAccessProvider extends PickerQuickAccessProvider<IAnyt
super(AnythingQuickAccessProvider.PREFIX, { canAcceptInBackground: true });
}
private get configuration() {
const editorConfig = this.configurationService.getValue<IWorkbenchEditorConfiguration>().workbench.editor;
const searchConfig = this.configurationService.getValue<IWorkbenchSearchConfiguration>();
return {
openEditorPinned: !editorConfig.enablePreviewFromQuickOpen,
openSideBySideDirection: editorConfig.openSideBySideDirection,
includeSymbols: searchConfig.search.quickOpen.includeSymbols,
workspaceSymbolsFilter: searchConfig.search.quickOpen.workspaceSymbolsFilter,
includeHistory: searchConfig.search.quickOpen.includeHistory,
shortAutoSaveDelay: this.filesConfigurationService.getAutoSaveMode() === AutoSaveMode.AFTER_SHORT_DELAY
};
}
provide(picker: IQuickPick<IAnythingQuickPickItem>, token: CancellationToken): IDisposable {
// Reset the pick state for this run
......
......@@ -47,7 +47,18 @@ export class SymbolsQuickAccessProvider extends PickerQuickAccessProvider<ISymbo
SymbolKind.Module
]);
private delayer = this._register(new ThrottledDelayer<ISymbolQuickPickItem[]>(SymbolsQuickAccessProvider.TYPING_SEARCH_DELAY));
private readonly configuration = (() => {
const editorConfig = this.configurationService.getValue<IWorkbenchEditorConfiguration>().workbench.editor;
const searchConfig = this.configurationService.getValue<IWorkbenchSearchConfiguration>();
return {
openEditorPinned: !editorConfig.enablePreviewFromQuickOpen,
openSideBySideDirection: editorConfig.openSideBySideDirection,
workspaceSymbolsFilter: searchConfig.search.quickOpen.workspaceSymbolsFilter
};
})();
private readonly delayer = this._register(new ThrottledDelayer<ISymbolQuickPickItem[]>(SymbolsQuickAccessProvider.TYPING_SEARCH_DELAY));
private readonly resourceExcludeMatcher = this._register(createResourceExcludeMatcher(this.instantiationService, this.configurationService));
......@@ -61,17 +72,6 @@ export class SymbolsQuickAccessProvider extends PickerQuickAccessProvider<ISymbo
super(SymbolsQuickAccessProvider.PREFIX, { canAcceptInBackground: true });
}
private get configuration() {
const editorConfig = this.configurationService.getValue<IWorkbenchEditorConfiguration>().workbench.editor;
const searchConfig = this.configurationService.getValue<IWorkbenchSearchConfiguration>();
return {
openEditorPinned: !editorConfig.enablePreviewFromQuickOpen,
openSideBySideDirection: editorConfig.openSideBySideDirection,
workspaceSymbolsFilter: searchConfig.search.quickOpen.workspaceSymbolsFilter
};
}
protected getPicks(filter: string, disposables: DisposableStore, token: CancellationToken): Promise<Array<ISymbolQuickPickItem>> {
return this.getSymbolPicks(filter, { skipLocal: this.configuration.workspaceSymbolsFilter === 'reduced' }, token);
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册