Skip to content

Commit d683e21

Browse files
committed
reduce usage of MenuEntryActionViewItem
1 parent ab3e5f9 commit d683e21

5 files changed

Lines changed: 30 additions & 36 deletions

File tree

src/vs/editor/contrib/gotoError/gotoErrorWidget.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,9 @@ import { IActionBarOptions, ActionsOrientation } from 'vs/base/browser/ui/action
2626
import { SeverityIcon } from 'vs/platform/severityIcon/common/severityIcon';
2727
import { EditorOption } from 'vs/editor/common/config/editorOptions';
2828
import { IOpenerService } from 'vs/platform/opener/common/opener';
29-
import { MenuId, IMenuService, MenuItemAction } from 'vs/platform/actions/common/actions';
29+
import { MenuId, IMenuService } from 'vs/platform/actions/common/actions';
3030
import { IContextKeyService } from 'vs/platform/contextkey/common/contextkey';
31-
import { createAndFillInActionBarActions, MenuEntryActionViewItem } from 'vs/platform/actions/browser/menuEntryActionViewItem';
31+
import { createAndFillInActionBarActions } from 'vs/platform/actions/browser/menuEntryActionViewItem';
3232
import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation';
3333

3434
class MessageWidget {
@@ -246,10 +246,10 @@ export class MarkerNavigationWidget extends PeekViewWidget {
246246
@IThemeService private readonly _themeService: IThemeService,
247247
@IOpenerService private readonly _openerService: IOpenerService,
248248
@IMenuService private readonly _menuService: IMenuService,
249-
@IContextKeyService private readonly _contextKeyService: IContextKeyService,
250-
@IInstantiationService private readonly _instantiationService: IInstantiationService,
249+
@IInstantiationService instantiationService: IInstantiationService,
250+
@IContextKeyService private readonly _contextKeyService: IContextKeyService
251251
) {
252-
super(editor, { showArrow: true, showFrame: true, isAccessible: true });
252+
super(editor, { showArrow: true, showFrame: true, isAccessible: true }, instantiationService);
253253
this._severity = MarkerSeverity.Warning;
254254
this._backgroundColor = Color.white;
255255

@@ -311,8 +311,8 @@ export class MarkerNavigationWidget extends PeekViewWidget {
311311

312312
protected _getActionBarOptions(): IActionBarOptions {
313313
return {
314-
orientation: ActionsOrientation.HORIZONTAL,
315-
actionViewItemProvider: action => action instanceof MenuItemAction ? this._instantiationService.createInstance(MenuEntryActionViewItem, action) : undefined
314+
...super._getActionBarOptions(),
315+
orientation: ActionsOrientation.HORIZONTAL
316316
};
317317
}
318318

src/vs/editor/contrib/gotoSymbol/peek/referencesWidget.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -220,7 +220,7 @@ export class ReferenceWidget extends peekView.PeekViewWidget {
220220
@ILabelService private readonly _uriLabel: ILabelService,
221221
@IUndoRedoService private readonly _undoRedoService: IUndoRedoService,
222222
) {
223-
super(editor, { showFrame: false, showArrow: true, isResizeable: true, isAccessible: true });
223+
super(editor, { showFrame: false, showArrow: true, isResizeable: true, isAccessible: true }, _instantiationService);
224224

225225
this._applyTheme(themeService.getColorTheme());
226226
this._callOnDispose.add(themeService.onDidColorThemeChange(this._applyTheme.bind(this)));

src/vs/editor/contrib/peekView/peekView.ts

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,15 +18,16 @@ import { EmbeddedCodeEditorWidget } from 'vs/editor/browser/widget/embeddedCodeE
1818
import { IOptions, IStyles, ZoneWidget } from 'vs/editor/contrib/zoneWidget/zoneWidget';
1919
import * as nls from 'vs/nls';
2020
import { RawContextKey, IContextKeyService } from 'vs/platform/contextkey/common/contextkey';
21-
import { ServicesAccessor, createDecorator } from 'vs/platform/instantiation/common/instantiation';
21+
import { ServicesAccessor, createDecorator, IInstantiationService } from 'vs/platform/instantiation/common/instantiation';
2222
import { IDisposable } from 'vs/base/common/lifecycle';
2323
import { registerSingleton } from 'vs/platform/instantiation/common/extensions';
2424
import { EditorOption } from 'vs/editor/common/config/editorOptions';
2525
import { registerEditorContribution } from 'vs/editor/browser/editorExtensions';
2626
import { IEditorContribution } from 'vs/editor/common/editorCommon';
2727
import { registerColor, contrastBorder, activeContrastBorder } from 'vs/platform/theme/common/colorRegistry';
2828
import { Codicon } from 'vs/base/common/codicons';
29-
29+
import { MenuItemAction } from 'vs/platform/actions/common/actions';
30+
import { MenuEntryActionViewItem } from 'vs/platform/actions/browser/menuEntryActionViewItem';
3031

3132
export const IPeekViewService = createDecorator<IPeekViewService>('IPeekViewService');
3233
export interface IPeekViewService {
@@ -115,7 +116,11 @@ export abstract class PeekViewWidget extends ZoneWidget {
115116
protected _actionbarWidget?: ActionBar;
116117
protected _bodyElement?: HTMLDivElement;
117118

118-
constructor(editor: ICodeEditor, options: IPeekViewOptions = {}) {
119+
constructor(
120+
editor: ICodeEditor,
121+
options: IPeekViewOptions,
122+
@IInstantiationService protected readonly instantiationService: IInstantiationService
123+
) {
119124
super(editor, options);
120125
objects.mixin(this.options, defaultOptions, false);
121126
}
@@ -199,7 +204,9 @@ export abstract class PeekViewWidget extends ZoneWidget {
199204
}
200205

201206
protected _getActionBarOptions(): IActionBarOptions {
202-
return {};
207+
return {
208+
actionViewItemProvider: action => action instanceof MenuItemAction ? this.instantiationService.createInstance(MenuEntryActionViewItem, action) : undefined
209+
};
203210
}
204211

205212
protected _onTitleClick(event: IMouseEvent): void {

src/vs/workbench/contrib/callHierarchy/browser/callHierarchyPeek.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,9 @@ import { IStorageService, StorageScope } from 'vs/platform/storage/common/storag
3232
import { Color } from 'vs/base/common/color';
3333
import { TreeMouseEventTarget, ITreeNode } from 'vs/base/browser/ui/tree/tree';
3434
import { URI } from 'vs/base/common/uri';
35-
import { MenuId, IMenuService, MenuItemAction } from 'vs/platform/actions/common/actions';
35+
import { MenuId, IMenuService } from 'vs/platform/actions/common/actions';
3636
import { IContextKeyService } from 'vs/platform/contextkey/common/contextkey';
37-
import { createAndFillInActionBarActions, MenuEntryActionViewItem } from 'vs/platform/actions/browser/menuEntryActionViewItem';
37+
import { createAndFillInActionBarActions } from 'vs/platform/actions/browser/menuEntryActionViewItem';
3838

3939
const enum State {
4040
Loading = 'loading',
@@ -94,7 +94,7 @@ export class CallHierarchyTreePeekWidget extends peekView.PeekViewWidget {
9494
@IContextKeyService private readonly _contextKeyService: IContextKeyService,
9595
@IInstantiationService private readonly _instantiationService: IInstantiationService,
9696
) {
97-
super(editor, { showFrame: true, showArrow: true, isResizeable: true, isAccessible: true });
97+
super(editor, { showFrame: true, showArrow: true, isResizeable: true, isAccessible: true }, _instantiationService);
9898
this.create();
9999
this._peekViewService.addExclusiveWidget(editor, this);
100100
this._applyTheme(themeService.getColorTheme());
@@ -142,8 +142,8 @@ export class CallHierarchyTreePeekWidget extends peekView.PeekViewWidget {
142142

143143
protected _getActionBarOptions(): IActionBarOptions {
144144
return {
145-
orientation: ActionsOrientation.HORIZONTAL,
146-
actionViewItemProvider: action => action instanceof MenuItemAction ? this._instantiationService.createInstance(MenuEntryActionViewItem, action) : undefined
145+
...super._getActionBarOptions(),
146+
orientation: ActionsOrientation.HORIZONTAL
147147
};
148148
}
149149

src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.ts

Lines changed: 6 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -33,20 +33,18 @@ import { rot } from 'vs/base/common/numbers';
3333
import { KeybindingsRegistry, KeybindingWeight } from 'vs/platform/keybinding/common/keybindingsRegistry';
3434
import { EmbeddedDiffEditorWidget } from 'vs/editor/browser/widget/embeddedCodeEditorWidget';
3535
import { IDiffEditorOptions, EditorOption } from 'vs/editor/common/config/editorOptions';
36-
import { Action, IAction, ActionRunner, IActionViewItem } from 'vs/base/common/actions';
36+
import { Action, IAction, ActionRunner } from 'vs/base/common/actions';
3737
import { IActionBarOptions, ActionsOrientation } from 'vs/base/browser/ui/actionbar/actionbar';
3838
import { IKeybindingService } from 'vs/platform/keybinding/common/keybinding';
3939
import { basename, isEqualOrParent } from 'vs/base/common/resources';
4040
import { MenuId, IMenuService, IMenu, MenuItemAction, MenuRegistry } from 'vs/platform/actions/common/actions';
41-
import { createAndFillInActionBarActions, MenuEntryActionViewItem } from 'vs/platform/actions/browser/menuEntryActionViewItem';
41+
import { createAndFillInActionBarActions } from 'vs/platform/actions/browser/menuEntryActionViewItem';
4242
import { IChange, IEditorModel, ScrollType, IEditorContribution, IDiffEditorModel } from 'vs/editor/common/editorCommon';
4343
import { OverviewRulerLane, ITextModel, IModelDecorationOptions, MinimapPosition } from 'vs/editor/common/model';
4444
import { sortedDiff, firstIndex } from 'vs/base/common/arrays';
4545
import { IMarginData } from 'vs/editor/browser/controller/mouseTarget';
4646
import { ICodeEditorService } from 'vs/editor/browser/services/codeEditorService';
4747
import { ISplice } from 'vs/base/common/sequence';
48-
import { IContextMenuService } from 'vs/platform/contextview/browser/contextView';
49-
import { INotificationService } from 'vs/platform/notification/common/notification';
5048
import { createStyleSheet } from 'vs/base/browser/dom';
5149
import { ITextFileEditorModel, IResolvedTextFileEditorModel, ITextFileService } from 'vs/workbench/services/textfile/common/textfiles';
5250
import { EncodingMode } from 'vs/workbench/common/editor';
@@ -176,14 +174,11 @@ class DirtyDiffWidget extends PeekViewWidget {
176174
editor: ICodeEditor,
177175
private model: DirtyDiffModel,
178176
@IThemeService private readonly themeService: IThemeService,
179-
@IInstantiationService private readonly instantiationService: IInstantiationService,
177+
@IInstantiationService instantiationService: IInstantiationService,
180178
@IMenuService menuService: IMenuService,
181-
@IKeybindingService private readonly keybindingService: IKeybindingService,
182-
@INotificationService private readonly notificationService: INotificationService,
183-
@IContextKeyService contextKeyService: IContextKeyService,
184-
@IContextMenuService private readonly contextMenuService: IContextMenuService
179+
@IContextKeyService contextKeyService: IContextKeyService
185180
) {
186-
super(editor, { isResizeable: true, frameWidth: 1, keepEditorSelection: true });
181+
super(editor, { isResizeable: true, frameWidth: 1, keepEditorSelection: true }, instantiationService);
187182

188183
this._disposables.add(themeService.onDidColorThemeChange(this._applyTheme, this));
189184
this._applyTheme(themeService.getColorTheme());
@@ -274,20 +269,12 @@ class DirtyDiffWidget extends PeekViewWidget {
274269
});
275270

276271
return {
272+
...super._getActionBarOptions(),
277273
actionRunner,
278-
actionViewItemProvider: action => this.getActionViewItem(action),
279274
orientation: ActionsOrientation.HORIZONTAL_REVERSE
280275
};
281276
}
282277

283-
getActionViewItem(action: IAction): IActionViewItem | undefined {
284-
if (!(action instanceof MenuItemAction)) {
285-
return undefined;
286-
}
287-
288-
return new MenuEntryActionViewItem(action, this.keybindingService, this.notificationService, this.contextMenuService);
289-
}
290-
291278
protected _fillBody(container: HTMLElement): void {
292279
const options: IDiffEditorOptions = {
293280
scrollBeyondLastLine: true,

0 commit comments

Comments
 (0)