@codingame/monaco-vscode-views-service-override 1.82.6 → 1.83.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/assets/index-no-csp.html +2 -1
  2. package/assets/index.html +3 -2
  3. package/package.json +4 -4
  4. package/views.js +1 -1
  5. package/vscode/src/vs/base/browser/ui/grid/gridview.js +31 -12
  6. package/vscode/src/vs/base/common/codicons.d.ts +1 -1
  7. package/vscode/src/vs/platform/actions/browser/toolbar.d.ts +7 -2
  8. package/vscode/src/vs/workbench/api/browser/viewsExtensionPoint.js +2 -1
  9. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarActions.js +26 -28
  10. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.d.ts +4 -2
  11. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js +19 -8
  12. package/vscode/src/vs/workbench/browser/parts/activitybar/media/activityaction.css.js +1 -1
  13. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +44 -1
  14. package/vscode/src/vs/workbench/browser/parts/editor/editorDropTarget.js +18 -18
  15. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +82 -91
  16. package/vscode/src/vs/workbench/browser/parts/editor/editorPart.js +15 -13
  17. package/vscode/src/vs/workbench/browser/parts/editor/{titleControl.js → editorTabsControl.js} +69 -87
  18. package/vscode/src/vs/workbench/browser/parts/editor/editorTitleControl.js +152 -0
  19. package/vscode/src/vs/workbench/browser/parts/editor/media/{titlecontrol.css.js → editortabscontrol.css.js} +1 -1
  20. package/vscode/src/vs/workbench/browser/parts/editor/media/editortitlecontrol.css.js +6 -0
  21. package/vscode/src/vs/workbench/browser/parts/editor/media/multieditortabscontrol.css.js +6 -0
  22. package/vscode/src/vs/workbench/browser/parts/editor/media/singleeditortabscontrol.css.js +6 -0
  23. package/vscode/src/vs/workbench/browser/parts/editor/{tabsTitleControl.js → multiEditorTabsControl.js} +265 -252
  24. package/vscode/src/vs/workbench/browser/parts/editor/multiRowEditorTabsControl.js +152 -0
  25. package/vscode/src/vs/workbench/browser/parts/editor/{noTabsTitleControl.js → singleEditorTabsControl.js} +39 -31
  26. package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +1 -0
  27. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +10 -13
  28. package/vscode/src/vs/workbench/common/editor/filteredEditorGroupModel.js +109 -0
  29. package/vscode/src/vs/workbench/contrib/customEditor/common/customEditorModelManager.js +2 -2
  30. package/vscode/src/vs/workbench/contrib/files/browser/editors/fileEditorInput.js +1 -1
  31. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +3 -3
  32. package/vscode/src/vs/workbench/contrib/webview/browser/themeing.js +2 -2
  33. package/vscode/src/vs/workbench/contrib/webview/browser/webviewElement.js +1 -1
  34. package/vscode/src/vs/workbench/services/history/browser/historyService.js +11 -0
  35. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +7 -0
  36. package/vscode/src/vs/workbench/services/views/browser/viewDescriptorService.js +15 -8
  37. package/vscode/src/vs/workbench/services/views/common/viewContainerModel.js +9 -14
  38. package/vscode/src/vs/workbench/browser/parts/editor/media/notabstitlecontrol.css.js +0 -6
  39. package/vscode/src/vs/workbench/browser/parts/editor/media/tabstitlecontrol.css.js +0 -6
@@ -227,7 +227,6 @@ let EditorPart = class EditorPart extends Part {
227
227
  activateGroup(group) {
228
228
  const groupView = this.assertGroupView(group);
229
229
  this.doSetGroupActive(groupView);
230
- this._onDidActivateGroup.fire(groupView);
231
230
  return groupView;
232
231
  }
233
232
  restoreGroup(group) {
@@ -359,11 +358,12 @@ let EditorPart = class EditorPart extends Part {
359
358
  }
360
359
  return false;
361
360
  }
362
- addGroup(location, direction, options) {
361
+ addGroup(location, direction) {
363
362
  const locationView = this.assertGroupView(location);
363
+ const restoreFocus = this.shouldRestoreFocus(locationView.element);
364
364
  const group = this.doAddGroup(locationView, direction);
365
- if (options?.activate) {
366
- this.doSetGroupActive(group);
365
+ if (restoreFocus) {
366
+ locationView.focus();
367
367
  }
368
368
  return group;
369
369
  }
@@ -426,16 +426,18 @@ let EditorPart = class EditorPart extends Part {
426
426
  return groupView;
427
427
  }
428
428
  doSetGroupActive(group) {
429
- if (this._activeGroup === group) {
430
- return;
429
+ if (this._activeGroup !== group) {
430
+ const previousActiveGroup = this._activeGroup;
431
+ this._activeGroup = group;
432
+ this.doUpdateMostRecentActive(group, true);
433
+ if (previousActiveGroup && !previousActiveGroup.disposed) {
434
+ previousActiveGroup.setActive(false);
435
+ }
436
+ group.setActive(true);
437
+ this.doRestoreGroup(group);
438
+ this._onDidChangeActiveGroup.fire(group);
431
439
  }
432
- const previousActiveGroup = this._activeGroup;
433
- this._activeGroup = group;
434
- this.doUpdateMostRecentActive(group, true);
435
- previousActiveGroup?.setActive(false);
436
- group.setActive(true);
437
- this.doRestoreGroup(group);
438
- this._onDidChangeActiveGroup.fire(group);
440
+ this._onDidActivateGroup.fire(group);
439
441
  }
440
442
  doRestoreGroup(group) {
441
443
  if (this.gridWidget) {
@@ -1,15 +1,14 @@
1
1
  import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
- import './media/titlecontrol.css.js';
2
+ import './media/editortabscontrol.css.js';
3
3
  import { localize } from 'monaco-editor/esm/vs/nls.js';
4
4
  import { DataTransfers, applyDragImage } from 'monaco-editor/esm/vs/base/browser/dnd.js';
5
5
  import { addDisposableListener, EventType } from 'monaco-editor/esm/vs/base/browser/dom.js';
6
6
  import { StandardMouseEvent } from 'monaco-editor/esm/vs/base/browser/mouseEvent.js';
7
7
  import { prepareActions } from 'monaco-editor/esm/vs/base/browser/ui/actionbar/actionbar.js';
8
8
  import { ActionRunner } from 'monaco-editor/esm/vs/base/common/actions.js';
9
- import { DisposableStore, dispose } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
9
+ import { DisposableStore } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
10
10
  import { createActionViewItem, createAndFillInActionBarActions } from 'monaco-editor/esm/vs/platform/actions/browser/menuEntryActionViewItem.js';
11
11
  import { MenuId, IMenuService } from 'monaco-editor/esm/vs/platform/actions/common/actions.js';
12
- import { IConfigurationService } from 'monaco-editor/esm/vs/platform/configuration/common/configuration.js';
13
12
  import { IContextKeyService } from 'monaco-editor/esm/vs/platform/contextkey/common/contextkey.js';
14
13
  import { IContextMenuService } from 'monaco-editor/esm/vs/platform/contextview/browser/contextView.js';
15
14
  import { IInstantiationService } from 'monaco-editor/esm/vs/platform/instantiation/common/instantiation.js';
@@ -20,11 +19,8 @@ import { listActiveSelectionBackground, listActiveSelectionForeground } from 'mo
20
19
  import { Themable, IThemeService } from 'monaco-editor/esm/vs/platform/theme/common/themeService.js';
21
20
  import { DraggedEditorGroupIdentifier, fillEditorsDragData } from 'vscode/vscode/vs/workbench/browser/dnd';
22
21
  import { EditorPane } from 'vscode/vscode/vs/workbench/browser/parts/editor/editorPane';
23
- import { BreadcrumbsConfig } from 'vscode/vscode/vs/workbench/browser/parts/editor/breadcrumbs';
24
- import { BreadcrumbsControl } from './breadcrumbsControl.js';
25
22
  import { EditorResourceAccessor, SideBySideEditor } from 'vscode/vscode/vs/workbench/common/editor';
26
23
  import { ResourceContextKey, ActiveEditorPinnedContext, ActiveEditorFirstInGroupContext, ActiveEditorLastInGroupContext, ActiveEditorStickyContext, ActiveEditorAvailableEditorIdsContext, ActiveEditorCanSplitInGroupContext, SideBySideEditorActiveContext, ActiveEditorGroupLockedContext, applyAvailableEditorIds } from 'vscode/vscode/vs/workbench/common/contextkeys';
27
- import { IFileService } from 'monaco-editor/esm/vs/platform/files/common/files.js';
28
24
  import { assertIsDefined } from 'monaco-editor/esm/vs/base/common/types.js';
29
25
  import { isFirefox } from 'monaco-editor/esm/vs/base/browser/browser.js';
30
26
  import { isCancellationError } from 'monaco-editor/esm/vs/base/common/errors.js';
@@ -32,7 +28,9 @@ import { SideBySideEditorInput } from 'vscode/vscode/vs/workbench/common/editor/
32
28
  import { WorkbenchToolBar } from 'monaco-editor/esm/vs/platform/actions/browser/toolbar.js';
33
29
  import { LocalSelectionTransfer } from 'monaco-editor/esm/vs/platform/dnd/browser/dnd.js';
34
30
  import { IEditorResolverService } from 'vscode/vscode/vs/workbench/services/editor/common/editorResolverService';
31
+ import { EDITOR_CORE_NAVIGATION_COMMANDS } from 'vscode/vscode/vs/workbench/browser/parts/editor/editorCommands';
35
32
 
33
+ var EditorTabsControl_1;
36
34
  class EditorCommandsContextActionRunner extends ActionRunner {
37
35
  constructor(context) {
38
36
  super();
@@ -49,11 +47,18 @@ class EditorCommandsContextActionRunner extends ActionRunner {
49
47
  return super.run(action, mergedContext);
50
48
  }
51
49
  }
52
- let TitleControl = class TitleControl extends Themable {
53
- constructor(parent, accessor, group, contextMenuService, instantiationService, contextKeyService, keybindingService, notificationService, menuService, quickInputService, themeService, configurationService, fileService, editorResolverService) {
50
+ let EditorTabsControl = class EditorTabsControl extends Themable {
51
+ static { EditorTabsControl_1 = this; }
52
+ static { this.EDITOR_TAB_HEIGHT = {
53
+ normal: 35,
54
+ compact: 22
55
+ }; }
56
+ constructor(parent, groupsView, groupView, tabsModel, contextMenuService, instantiationService, contextKeyService, keybindingService, notificationService, menuService, quickInputService, themeService, editorResolverService) {
54
57
  super(themeService);
55
- this.accessor = accessor;
56
- this.group = group;
58
+ this.parent = parent;
59
+ this.groupsView = groupsView;
60
+ this.groupView = groupView;
61
+ this.tabsModel = tabsModel;
57
62
  this.contextMenuService = contextMenuService;
58
63
  this.instantiationService = instantiationService;
59
64
  this.contextKeyService = contextKeyService;
@@ -61,13 +66,10 @@ let TitleControl = class TitleControl extends Themable {
61
66
  this.notificationService = notificationService;
62
67
  this.menuService = menuService;
63
68
  this.quickInputService = quickInputService;
64
- this.configurationService = configurationService;
65
- this.fileService = fileService;
66
69
  this.editorResolverService = editorResolverService;
67
70
  this.editorTransfer = LocalSelectionTransfer.getInstance();
68
71
  this.groupTransfer = LocalSelectionTransfer.getInstance();
69
72
  this.treeItemsTransfer = LocalSelectionTransfer.getInstance();
70
- this.breadcrumbsControl = undefined;
71
73
  this.editorToolBarMenuDisposables = this._register(( new DisposableStore()));
72
74
  this.resourceContext = this._register(instantiationService.createInstance(ResourceContextKey));
73
75
  this.editorPinnedContext = ActiveEditorPinnedContext.bindTo(contextKeyService);
@@ -81,35 +83,11 @@ let TitleControl = class TitleControl extends Themable {
81
83
  this.renderDropdownAsChildElement = false;
82
84
  this.create(parent);
83
85
  }
84
- createBreadcrumbsControl(container, options) {
85
- const config = this._register(BreadcrumbsConfig.IsEnabled.bindTo(this.configurationService));
86
- this._register(config.onDidChange(() => {
87
- const value = config.getValue();
88
- if (!value && this.breadcrumbsControl) {
89
- this.breadcrumbsControl.dispose();
90
- this.breadcrumbsControl = undefined;
91
- this.handleBreadcrumbsEnablementChange();
92
- }
93
- else if (value && !this.breadcrumbsControl) {
94
- this.breadcrumbsControl = this.instantiationService.createInstance(BreadcrumbsControl, container, options, this.group);
95
- this.breadcrumbsControl.update();
96
- this.handleBreadcrumbsEnablementChange();
97
- }
98
- }));
99
- if (config.getValue()) {
100
- this.breadcrumbsControl = this.instantiationService.createInstance(BreadcrumbsControl, container, options, this.group);
101
- }
102
- this._register(this.fileService.onDidChangeFileSystemProviderRegistrations(e => {
103
- if (this.breadcrumbsControl?.model && this.breadcrumbsControl.model.resource.scheme !== e.scheme) {
104
- return;
105
- }
106
- if (this.breadcrumbsControl?.update()) {
107
- this.handleBreadcrumbsEnablementChange();
108
- }
109
- }));
86
+ create(parent) {
87
+ this.updateTabHeight();
110
88
  }
111
89
  createEditorActionsToolBar(container) {
112
- const context = { groupId: this.group.id };
90
+ const context = { groupId: this.groupView.id };
113
91
  this.editorActionsToolbar = this._register(this.instantiationService.createInstance(WorkbenchToolBar, container, {
114
92
  actionViewItemProvider: action => this.actionViewItemProvider(action),
115
93
  orientation: 0 ,
@@ -120,7 +98,7 @@ let TitleControl = class TitleControl extends Themable {
120
98
  renderDropdownAsChildElement: this.renderDropdownAsChildElement,
121
99
  telemetrySource: 'editorPart',
122
100
  resetMenu: MenuId.EditorTitle,
123
- maxNumberOfItems: 9,
101
+ overflowBehavior: { maxItems: 9, exempted: EDITOR_CORE_NAVIGATION_COMMANDS },
124
102
  highlightToggledItems: true,
125
103
  }));
126
104
  this.editorActionsToolbar.context = context;
@@ -131,7 +109,7 @@ let TitleControl = class TitleControl extends Themable {
131
109
  }));
132
110
  }
133
111
  actionViewItemProvider(action) {
134
- const activeEditorPane = this.group.activeEditorPane;
112
+ const activeEditorPane = this.groupView.activeEditorPane;
135
113
  if (activeEditorPane instanceof EditorPane) {
136
114
  const result = activeEditorPane.getActionViewItem(action);
137
115
  if (result) {
@@ -150,18 +128,18 @@ let TitleControl = class TitleControl extends Themable {
150
128
  const secondary = [];
151
129
  this.editorToolBarMenuDisposables.clear();
152
130
  this.contextKeyService.bufferChangeEvents(() => {
153
- const activeEditor = this.group.activeEditor;
131
+ const activeEditor = this.groupView.activeEditor;
154
132
  this.resourceContext.set(EditorResourceAccessor.getOriginalUri(activeEditor, { supportSideBySide: SideBySideEditor.PRIMARY } ?? null));
155
- this.editorPinnedContext.set(activeEditor ? this.group.isPinned(activeEditor) : false);
156
- this.editorIsFirstContext.set(activeEditor ? this.group.isFirst(activeEditor) : false);
157
- this.editorIsLastContext.set(activeEditor ? this.group.isLast(activeEditor) : false);
158
- this.editorStickyContext.set(activeEditor ? this.group.isSticky(activeEditor) : false);
133
+ this.editorPinnedContext.set(activeEditor ? this.groupView.isPinned(activeEditor) : false);
134
+ this.editorIsFirstContext.set(activeEditor ? this.groupView.isFirst(activeEditor) : false);
135
+ this.editorIsLastContext.set(activeEditor ? this.groupView.isLast(activeEditor) : false);
136
+ this.editorStickyContext.set(activeEditor ? this.groupView.isSticky(activeEditor) : false);
159
137
  applyAvailableEditorIds(this.editorAvailableEditorIds, activeEditor, this.editorResolverService);
160
138
  this.editorCanSplitInGroupContext.set(activeEditor ? activeEditor.hasCapability(32 ) : false);
161
139
  this.sideBySideEditorContext.set(activeEditor?.typeId === SideBySideEditorInput.ID);
162
- this.groupLockedContext.set(this.group.isLocked);
140
+ this.groupLockedContext.set(this.groupView.isLocked);
163
141
  });
164
- const activeEditorPane = this.group.activeEditorPane;
142
+ const activeEditorPane = this.groupView.activeEditorPane;
165
143
  if (activeEditorPane instanceof EditorPane) {
166
144
  const scopedContextKeyService = this.getEditorPaneAwareContextKeyService();
167
145
  const titleBarMenu = this.menuService.createMenu(MenuId.EditorTitle, scopedContextKeyService, { emitEventsForSubmenuChanges: true, eventDebounceDelay: 0 });
@@ -175,7 +153,7 @@ let TitleControl = class TitleControl extends Themable {
175
153
  return { primary, secondary };
176
154
  }
177
155
  getEditorPaneAwareContextKeyService() {
178
- return this.group.activeEditorPane?.scopedContextKeyService ?? this.contextKeyService;
156
+ return this.groupView.activeEditorPane?.scopedContextKeyService ?? this.contextKeyService;
179
157
  }
180
158
  clearEditorActionsToolbar() {
181
159
  this.editorActionsToolbar?.setActions([], []);
@@ -185,26 +163,26 @@ let TitleControl = class TitleControl extends Themable {
185
163
  if (e.target !== element) {
186
164
  return;
187
165
  }
188
- this.groupTransfer.setData([( new DraggedEditorGroupIdentifier(this.group.id))], DraggedEditorGroupIdentifier.prototype);
166
+ this.groupTransfer.setData([( new DraggedEditorGroupIdentifier(this.groupView.id))], DraggedEditorGroupIdentifier.prototype);
189
167
  if (e.dataTransfer) {
190
168
  e.dataTransfer.effectAllowed = 'copyMove';
191
169
  }
192
170
  let hasDataTransfer = false;
193
- if (this.accessor.partOptions.showTabs) {
194
- hasDataTransfer = this.doFillResourceDataTransfers(this.group.getEditors(1 ), e);
171
+ if (this.groupsView.partOptions.showTabs) {
172
+ hasDataTransfer = this.doFillResourceDataTransfers(this.groupView.getEditors(1 ), e);
195
173
  }
196
174
  else {
197
- if (this.group.activeEditor) {
198
- hasDataTransfer = this.doFillResourceDataTransfers([this.group.activeEditor], e);
175
+ if (this.groupView.activeEditor) {
176
+ hasDataTransfer = this.doFillResourceDataTransfers([this.groupView.activeEditor], e);
199
177
  }
200
178
  }
201
179
  if (!hasDataTransfer && isFirefox) {
202
- e.dataTransfer?.setData(DataTransfers.TEXT, String(this.group.label));
180
+ e.dataTransfer?.setData(DataTransfers.TEXT, String(this.groupView.label));
203
181
  }
204
- if (this.group.activeEditor) {
205
- let label = this.group.activeEditor.getName();
206
- if (this.accessor.partOptions.showTabs && this.group.count > 1) {
207
- label = ( localize('draggedEditorGroup', "{0} (+{1})", label, this.group.count - 1));
182
+ if (this.groupView.activeEditor) {
183
+ let label = this.groupView.activeEditor.getName();
184
+ if (this.groupsView.partOptions.showTabs && this.groupView.count > 1) {
185
+ label = ( localize('draggedEditorGroup', "{0} (+{1})", label, this.groupView.count - 1));
208
186
  }
209
187
  applyDragImage(e, label, 'monaco-editor-group-drag-image', this.getColor(listActiveSelectionBackground), this.getColor(listActiveSelectionForeground));
210
188
  }
@@ -215,24 +193,24 @@ let TitleControl = class TitleControl extends Themable {
215
193
  }
216
194
  doFillResourceDataTransfers(editors, e) {
217
195
  if (editors.length) {
218
- this.instantiationService.invokeFunction(fillEditorsDragData, ( editors.map(editor => ({ editor, groupId: this.group.id }))), e);
196
+ this.instantiationService.invokeFunction(fillEditorsDragData, ( editors.map(editor => ({ editor, groupId: this.groupView.id }))), e);
219
197
  return true;
220
198
  }
221
199
  return false;
222
200
  }
223
- onContextMenu(editor, e, node) {
201
+ onTabContextMenu(editor, e, node) {
224
202
  const currentResourceContext = this.resourceContext.get();
225
203
  this.resourceContext.set(EditorResourceAccessor.getOriginalUri(editor, { supportSideBySide: SideBySideEditor.PRIMARY } ?? null));
226
204
  const currentPinnedContext = !!this.editorPinnedContext.get();
227
- this.editorPinnedContext.set(this.group.isPinned(editor));
205
+ this.editorPinnedContext.set(this.tabsModel.isPinned(editor));
228
206
  const currentEditorIsFirstContext = !!this.editorIsFirstContext.get();
229
- this.editorIsFirstContext.set(this.group.isFirst(editor));
207
+ this.editorIsFirstContext.set(this.tabsModel.isFirst(editor));
230
208
  const currentEditorIsLastContext = !!this.editorIsLastContext.get();
231
- this.editorIsLastContext.set(this.group.isLast(editor));
209
+ this.editorIsLastContext.set(this.tabsModel.isLast(editor));
232
210
  const currentStickyContext = !!this.editorStickyContext.get();
233
- this.editorStickyContext.set(this.group.isSticky(editor));
211
+ this.editorStickyContext.set(this.tabsModel.isSticky(editor));
234
212
  const currentGroupLockedContext = !!this.groupLockedContext.get();
235
- this.groupLockedContext.set(this.group.isLocked);
213
+ this.groupLockedContext.set(this.tabsModel.isLocked);
236
214
  const currentEditorCanSplitContext = !!this.editorCanSplitInGroupContext.get();
237
215
  this.editorCanSplitInGroupContext.set(editor.hasCapability(32 ));
238
216
  const currentSideBySideEditorContext = !!this.sideBySideEditorContext.get();
@@ -248,7 +226,7 @@ let TitleControl = class TitleControl extends Themable {
248
226
  menuId: MenuId.EditorTitleContext,
249
227
  menuActionOptions: { shouldForwardArgs: true, arg: this.resourceContext.get() },
250
228
  contextKeyService: this.contextKeyService,
251
- getActionsContext: () => ({ groupId: this.group.id, editorIndex: this.group.getIndexOfEditor(editor) }),
229
+ getActionsContext: () => ({ groupId: this.groupView.id, editorIndex: this.groupView.getIndexOfEditor(editor) }),
252
230
  getKeyBinding: action => this.getKeybinding(action),
253
231
  onHide: () => {
254
232
  this.resourceContext.set(currentResourceContext || null);
@@ -260,7 +238,7 @@ let TitleControl = class TitleControl extends Themable {
260
238
  this.editorCanSplitInGroupContext.set(currentEditorCanSplitContext);
261
239
  this.sideBySideEditorContext.set(currentSideBySideEditorContext);
262
240
  this.editorAvailableEditorIds.set(currentEditorAvailableEditorIds);
263
- this.accessor.activeGroup.focus();
241
+ this.groupsView.activeGroup.focus();
264
242
  }
265
243
  });
266
244
  }
@@ -271,24 +249,28 @@ let TitleControl = class TitleControl extends Themable {
271
249
  const keybinding = this.getKeybinding(action);
272
250
  return keybinding ? keybinding.getLabel() ?? undefined : undefined;
273
251
  }
274
- dispose() {
275
- dispose(this.breadcrumbsControl);
276
- this.breadcrumbsControl = undefined;
277
- super.dispose();
252
+ get tabHeight() {
253
+ return this.groupsView.partOptions.tabHeight !== 'compact' ? EditorTabsControl_1.EDITOR_TAB_HEIGHT.normal : EditorTabsControl_1.EDITOR_TAB_HEIGHT.compact;
254
+ }
255
+ updateTabHeight() {
256
+ this.parent.style.setProperty('--editor-group-tab-height', `${this.tabHeight}px`);
257
+ }
258
+ updateOptions(oldOptions, newOptions) {
259
+ if (oldOptions.tabHeight !== newOptions.tabHeight) {
260
+ this.updateTabHeight();
261
+ }
278
262
  }
279
263
  };
280
- TitleControl = ( __decorate([
281
- ( __param(3, IContextMenuService)),
282
- ( __param(4, IInstantiationService)),
283
- ( __param(5, IContextKeyService)),
284
- ( __param(6, IKeybindingService)),
285
- ( __param(7, INotificationService)),
286
- ( __param(8, IMenuService)),
287
- ( __param(9, IQuickInputService)),
288
- ( __param(10, IThemeService)),
289
- ( __param(11, IConfigurationService)),
290
- ( __param(12, IFileService)),
291
- ( __param(13, IEditorResolverService))
292
- ], TitleControl));
264
+ EditorTabsControl = EditorTabsControl_1 = ( __decorate([
265
+ ( __param(4, IContextMenuService)),
266
+ ( __param(5, IInstantiationService)),
267
+ ( __param(6, IContextKeyService)),
268
+ ( __param(7, IKeybindingService)),
269
+ ( __param(8, INotificationService)),
270
+ ( __param(9, IMenuService)),
271
+ ( __param(10, IQuickInputService)),
272
+ ( __param(11, IThemeService)),
273
+ ( __param(12, IEditorResolverService))
274
+ ], EditorTabsControl));
293
275
 
294
- export { EditorCommandsContextActionRunner, TitleControl };
276
+ export { EditorCommandsContextActionRunner, EditorTabsControl };
@@ -0,0 +1,152 @@
1
+ import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
+ import './media/editortitlecontrol.css.js';
3
+ import { clearNode, Dimension } from 'monaco-editor/esm/vs/base/browser/dom.js';
4
+ import { IInstantiationService } from 'monaco-editor/esm/vs/platform/instantiation/common/instantiation.js';
5
+ import { Themable, IThemeService } from 'monaco-editor/esm/vs/platform/theme/common/themeService.js';
6
+ import { BreadcrumbsControlFactory, BreadcrumbsControl } from './breadcrumbsControl.js';
7
+ import { MultiEditorTabsControl } from './multiEditorTabsControl.js';
8
+ import { SingleEditorTabsControl } from './singleEditorTabsControl.js';
9
+ import { DisposableStore } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
10
+ import { MultiRowEditorControl } from './multiRowEditorTabsControl.js';
11
+
12
+ let EditorTitleControl = class EditorTitleControl extends Themable {
13
+ get breadcrumbsControl() { return this.breadcrumbsControlFactory?.control; }
14
+ constructor(parent, groupsView, groupView, model, instantiationService, themeService) {
15
+ super(themeService);
16
+ this.parent = parent;
17
+ this.groupsView = groupsView;
18
+ this.groupView = groupView;
19
+ this.model = model;
20
+ this.instantiationService = instantiationService;
21
+ this.editorTabsControlDisposable = this._register(( new DisposableStore()));
22
+ this.breadcrumbsControlDisposables = this._register(( new DisposableStore()));
23
+ this.editorTabsControl = this.createEditorTabsControl();
24
+ this.breadcrumbsControlFactory = this.createBreadcrumbsControl();
25
+ }
26
+ createEditorTabsControl() {
27
+ let control;
28
+ if (this.groupsView.partOptions.showTabs) {
29
+ if (this.groupsView.partOptions.pinnedTabsOnSeparateRow) {
30
+ control = this.instantiationService.createInstance(MultiRowEditorControl, this.parent, this.groupsView, this.groupView, this.model);
31
+ }
32
+ else {
33
+ control = this.instantiationService.createInstance(MultiEditorTabsControl, this.parent, this.groupsView, this.groupView, this.model);
34
+ }
35
+ }
36
+ else {
37
+ control = this.instantiationService.createInstance(SingleEditorTabsControl, this.parent, this.groupsView, this.groupView, this.model);
38
+ }
39
+ return this.editorTabsControlDisposable.add(control);
40
+ }
41
+ createBreadcrumbsControl() {
42
+ if (!this.groupsView.partOptions.showTabs) {
43
+ return undefined;
44
+ }
45
+ const breadcrumbsContainer = document.createElement('div');
46
+ breadcrumbsContainer.classList.add('breadcrumbs-below-tabs');
47
+ this.parent.appendChild(breadcrumbsContainer);
48
+ const breadcrumbsControlFactory = this.breadcrumbsControlDisposables.add(this.instantiationService.createInstance(BreadcrumbsControlFactory, breadcrumbsContainer, this.groupView, {
49
+ showFileIcons: true,
50
+ showSymbolIcons: true,
51
+ showDecorationColors: false,
52
+ showPlaceholder: true
53
+ }));
54
+ this.breadcrumbsControlDisposables.add(breadcrumbsControlFactory.onDidEnablementChange(() => this.handleBreadcrumbsEnablementChange()));
55
+ return breadcrumbsControlFactory;
56
+ }
57
+ handleBreadcrumbsEnablementChange() {
58
+ this.groupView.relayout();
59
+ }
60
+ openEditor(editor, options) {
61
+ const didChange = this.editorTabsControl.openEditor(editor, options);
62
+ this.handleOpenedEditors(didChange);
63
+ }
64
+ openEditors(editors) {
65
+ const didChange = this.editorTabsControl.openEditors(editors);
66
+ this.handleOpenedEditors(didChange);
67
+ }
68
+ handleOpenedEditors(didChange) {
69
+ if (didChange) {
70
+ this.breadcrumbsControl?.update();
71
+ }
72
+ else {
73
+ this.breadcrumbsControl?.revealLast();
74
+ }
75
+ }
76
+ beforeCloseEditor(editor) {
77
+ return this.editorTabsControl.beforeCloseEditor(editor);
78
+ }
79
+ closeEditor(editor) {
80
+ this.editorTabsControl.closeEditor(editor);
81
+ this.handleClosedEditors();
82
+ }
83
+ closeEditors(editors) {
84
+ this.editorTabsControl.closeEditors(editors);
85
+ this.handleClosedEditors();
86
+ }
87
+ handleClosedEditors() {
88
+ if (!this.groupView.activeEditor) {
89
+ this.breadcrumbsControl?.update();
90
+ }
91
+ }
92
+ moveEditor(editor, fromIndex, targetIndex, stickyStateChange) {
93
+ return this.editorTabsControl.moveEditor(editor, fromIndex, targetIndex, stickyStateChange);
94
+ }
95
+ pinEditor(editor) {
96
+ return this.editorTabsControl.pinEditor(editor);
97
+ }
98
+ stickEditor(editor) {
99
+ return this.editorTabsControl.stickEditor(editor);
100
+ }
101
+ unstickEditor(editor) {
102
+ return this.editorTabsControl.unstickEditor(editor);
103
+ }
104
+ setActive(isActive) {
105
+ return this.editorTabsControl.setActive(isActive);
106
+ }
107
+ updateEditorLabel(editor) {
108
+ return this.editorTabsControl.updateEditorLabel(editor);
109
+ }
110
+ updateEditorDirty(editor) {
111
+ return this.editorTabsControl.updateEditorDirty(editor);
112
+ }
113
+ updateOptions(oldOptions, newOptions) {
114
+ if (oldOptions.showTabs !== newOptions.showTabs ||
115
+ (newOptions.showTabs && oldOptions.pinnedTabsOnSeparateRow !== newOptions.pinnedTabsOnSeparateRow)) {
116
+ this.editorTabsControlDisposable.clear();
117
+ this.breadcrumbsControlDisposables.clear();
118
+ clearNode(this.parent);
119
+ this.editorTabsControl = this.createEditorTabsControl();
120
+ this.breadcrumbsControlFactory = this.createBreadcrumbsControl();
121
+ }
122
+ else {
123
+ this.editorTabsControl.updateOptions(oldOptions, newOptions);
124
+ }
125
+ }
126
+ layout(dimensions) {
127
+ const tabsControlDimension = this.editorTabsControl.layout(dimensions);
128
+ let breadcrumbsControlDimension = undefined;
129
+ if (this.breadcrumbsControl?.isHidden() === false) {
130
+ breadcrumbsControlDimension = ( new Dimension(dimensions.container.width, BreadcrumbsControl.HEIGHT));
131
+ this.breadcrumbsControl.layout(breadcrumbsControlDimension);
132
+ }
133
+ return ( new Dimension(
134
+ dimensions.container.width,
135
+ tabsControlDimension.height + (breadcrumbsControlDimension ? breadcrumbsControlDimension.height : 0)
136
+ ));
137
+ }
138
+ getHeight() {
139
+ const tabsControlHeight = this.editorTabsControl.getHeight();
140
+ const breadcrumbsControlHeight = this.breadcrumbsControl?.isHidden() === false ? BreadcrumbsControl.HEIGHT : 0;
141
+ return {
142
+ total: tabsControlHeight + breadcrumbsControlHeight,
143
+ offset: tabsControlHeight
144
+ };
145
+ }
146
+ };
147
+ EditorTitleControl = ( __decorate([
148
+ ( __param(4, IInstantiationService)),
149
+ ( __param(5, IThemeService))
150
+ ], EditorTitleControl));
151
+
152
+ export { EditorTitleControl };
@@ -1,6 +1,6 @@
1
1
  import n from '../../../../../../../../external/rollup-plugin-styles/dist/runtime/inject-css.js';
2
2
 
3
- var css = ".monaco-workbench .part.editor>.content .editor-group-container>.title{cursor:pointer}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab .tab-label,.monaco-workbench .part.editor>.content .editor-group-container>.title .title-label{flex:1;white-space:nowrap}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab .tab-label a,.monaco-workbench .part.editor>.content .editor-group-container>.title .title-label a{font-size:13px}.monaco-workbench .part.editor>.content .editor-group-container>.title .monaco-icon-label:before,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab .monaco-icon-label:before,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab .tab-label a,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab .tab-label span,.monaco-workbench .part.editor>.content .editor-group-container>.title .title-label a,.monaco-workbench .part.editor>.content .editor-group-container>.title .title-label h2{cursor:pointer}.monaco-workbench .part.editor>.content .editor-group-container>.title .monaco-icon-label:before{height:35px}.monaco-workbench .part.editor>.content .editor-group-container>.title.breadcrumbs .monaco-icon-label:after,.monaco-workbench .part.editor>.content .editor-group-container>.title.tabs .monaco-icon-label:after{margin-right:0}.monaco-editor-group-drag-image{border-radius:10px;display:inline-block;font-size:12px;padding:1px 7px;position:absolute}";
3
+ var css = ".monaco-workbench .part.editor>.content .editor-group-container>.title{cursor:pointer}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab .tab-label,.monaco-workbench .part.editor>.content .editor-group-container>.title .title-label{flex:1;white-space:nowrap}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab .tab-label a,.monaco-workbench .part.editor>.content .editor-group-container>.title .title-label a{font-size:13px}.monaco-workbench .part.editor>.content .editor-group-container>.title .monaco-icon-label:before,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab .monaco-icon-label:before,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab .tab-label a,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab .tab-label span,.monaco-workbench .part.editor>.content .editor-group-container>.title .title-label a,.monaco-workbench .part.editor>.content .editor-group-container>.title .title-label h2{cursor:pointer}.monaco-workbench .part.editor>.content .editor-group-container>.title .monaco-icon-label:before{height:var(--editor-group-tab-height)}.monaco-workbench .part.editor>.content .editor-group-container>.title.breadcrumbs .monaco-icon-label:after,.monaco-workbench .part.editor>.content .editor-group-container>.title.tabs .monaco-icon-label:after{margin-right:0}.monaco-editor-group-drag-image{border-radius:10px;display:inline-block;font-size:12px;padding:1px 7px;position:absolute}";
4
4
  n(css,{});
5
5
 
6
6
  export { css, css as default };
@@ -0,0 +1,6 @@
1
+ import n from '../../../../../../../../external/rollup-plugin-styles/dist/runtime/inject-css.js';
2
+
3
+ var css = ".monaco-workbench .part.editor>.content .editor-group-container>.title .breadcrumbs-below-tabs .breadcrumbs-control{cursor:default;flex:1 100%;height:22px}.monaco-workbench .part.editor>.content .editor-group-container>.title .breadcrumbs-below-tabs .breadcrumbs-control .monaco-icon-label{height:22px;line-height:22px}.monaco-workbench .part.editor>.content .editor-group-container>.title .breadcrumbs-below-tabs .breadcrumbs-control .monaco-icon-label:before{height:22px}.monaco-workbench .part.editor>.content .editor-group-container>.title .breadcrumbs-below-tabs .breadcrumbs-control .outline-element-icon{height:22px;line-height:22px;padding-right:3px}.monaco-workbench .part.editor>.content .editor-group-container>.title .breadcrumbs-below-tabs .breadcrumbs-control .monaco-breadcrumb-item{max-width:80%}.monaco-workbench .part.editor>.content .editor-group-container>.title .breadcrumbs-below-tabs .breadcrumbs-control .monaco-breadcrumb-item:before{align-items:center;display:flex;height:22px;justify-content:center;width:16px}.monaco-workbench .part.editor>.content .editor-group-container>.title .breadcrumbs-below-tabs .breadcrumbs-control .monaco-breadcrumb-item:last-child{padding-right:8px}.monaco-workbench .part.editor>.content .editor-group-container>.title .breadcrumbs-below-tabs .breadcrumbs-control .monaco-breadcrumb-item:last-child .codicon:last-child{display:none}";
4
+ n(css,{});
5
+
6
+ export { css, css as default };
@@ -0,0 +1,6 @@
1
+ import n from '../../../../../../../../external/rollup-plugin-styles/dist/runtime/inject-css.js';
2
+
3
+ var css = ".monaco-workbench .part.editor>.content .editor-group-container>.title>.tabs-and-actions-container{display:flex;position:relative}.monaco-workbench .part.editor>.content .editor-group-container>.title>.tabs-and-actions-container.empty{display:none}.monaco-workbench .part.editor>.content .editor-group-container>.title>.tabs-and-actions-container.tabs-border-bottom:after{background-color:var(--tabs-border-bottom-color);bottom:0;content:\"\";height:1px;left:0;pointer-events:none;position:absolute;width:100%;z-index:9}.monaco-workbench .part.editor>.content .editor-group-container>.title>.tabs-and-actions-container>.monaco-scrollable-element{flex:1}.monaco-workbench .part.editor>.content .editor-group-container>.title>.tabs-and-actions-container>.monaco-scrollable-element .scrollbar{cursor:default;z-index:11}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container{display:flex;height:var(--editor-group-tab-height);scrollbar-width:none}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container.scroll{overflow:scroll!important}.monaco-workbench .part.editor>.content .editor-group-container>.title>.tabs-and-actions-container.wrapping .tabs-container{flex-wrap:wrap;height:auto}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container::-webkit-scrollbar{display:none}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab{box-sizing:border-box;cursor:pointer;display:flex;height:var(--editor-group-tab-height);padding-left:10px;position:relative;white-space:nowrap}.monaco-workbench .part.editor>.content .editor-group-container>.title>.tabs-and-actions-container.wrapping .tabs-container>.tab:last-child{margin-right:var(--last-tab-margin-right)}.monaco-workbench .part.editor>.content .editor-group-container>.title>.tabs-and-actions-container.wrapping .tabs-container>.tab.last-in-row:not(:last-child){border-right:0!important}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fixed.has-icon.tab-actions-off:not(.sticky-compact),.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fixed.has-icon.tab-actions-right,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-shrink.has-icon.tab-actions-off:not(.sticky-compact),.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-shrink.has-icon.tab-actions-right{padding-left:5px}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fit{flex-shrink:0;min-width:fit-content;width:120px}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fixed{flex:1 0 0;max-width:var(--tab-sizing-current-width,var(--tab-sizing-fixed-max-width,160px));min-width:var(--tab-sizing-current-width,var(--tab-sizing-fixed-min-width,50px))}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fixed.last-in-row{min-width:calc(var(--tab-sizing-current-width, var(--tab-sizing-fixed-min-width, 50px)) - 1px)}.monaco-workbench .part.editor>.content .editor-group-container>.title>.tabs-and-actions-container.wrapping .tabs-container>.tab.sizing-fit.last-in-row:not(:last-child){flex-grow:1}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-shrink{flex-basis:0;flex-grow:1;max-width:fit-content;min-width:80px}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fit.sticky-compact,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fit.sticky-shrink,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fixed.sticky-compact,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fixed.sticky-shrink,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-shrink.sticky-compact,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-shrink.sticky-shrink{flex-basis:0;flex-grow:0;position:sticky;z-index:8}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fit.sticky-compact,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fixed.sticky-compact,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-shrink.sticky-compact{max-width:38px;min-width:38px;width:38px}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fit.sticky-shrink,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fixed.sticky-shrink,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-shrink.sticky-shrink{max-width:80px;min-width:80px;width:80px}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container.disable-sticky-tabs>.tab.sizing-fit.sticky-compact,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container.disable-sticky-tabs>.tab.sizing-fit.sticky-shrink,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container.disable-sticky-tabs>.tab.sizing-fixed.sticky-compact,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container.disable-sticky-tabs>.tab.sizing-fixed.sticky-shrink,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container.disable-sticky-tabs>.tab.sizing-shrink.sticky-compact,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container.disable-sticky-tabs>.tab.sizing-shrink.sticky-shrink{left:unset!important;position:relative;z-index:unset}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fixed.tab-actions-left:after,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fixed.tab-actions-off:after,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-shrink.tab-actions-left:after,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-shrink.tab-actions-off:after{content:\"\";display:flex;flex:0;width:5px}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fixed.tab-actions-left,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-shrink.tab-actions-left{min-width:80px;padding-right:5px}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.dragged{transform:translateZ(0)}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.dragged-over div{pointer-events:none}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.tab-actions-left{flex-direction:row-reverse;padding-left:0;padding-right:10px}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab>.tab-border-bottom-container,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab>.tab-border-top-container{display:none}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.active.tab-border-top>.tab-border-top-container,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.dirty-border-top>.tab-border-top-container,.monaco-workbench .part.editor>.content .editor-group-container>.title.two-tab-bars .tabs-and-actions-container:not(:first-child) .tabs-container>.tab.active.tab-border-bottom>.tab-border-bottom-container,.monaco-workbench .part.editor>.content .editor-group-container>.title:not(.two-tab-bars) .tabs-container>.tab.active.tab-border-bottom>.tab-border-bottom-container{display:block;left:0;pointer-events:none;position:absolute;width:100%}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.active.tab-border-top>.tab-border-top-container{background-color:var(--tab-border-top-color);height:1px;top:0;z-index:6}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.active.tab-border-bottom>.tab-border-bottom-container{background-color:var(--tab-border-bottom-color);bottom:0;height:1px;z-index:10}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.dirty-border-top>.tab-border-top-container{background-color:var(--tab-dirty-border-top-color);height:2px;top:0;z-index:6}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab .tab-label{line-height:var(--editor-group-tab-height);margin-bottom:auto;margin-top:auto}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fixed .tab-label,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-shrink .tab-label{position:relative}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fixed>.tab-label>.monaco-icon-label-container:after,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-shrink>.tab-label>.monaco-icon-label-container:after{bottom:1px;content:\"\";height:calc(100% - 2px);opacity:1;padding:0;position:absolute;right:0;top:1px;width:5px}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fixed:focus>.tab-label>.monaco-icon-label-container:after,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-shrink:focus>.tab-label>.monaco-icon-label-container:after{opacity:0}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fixed>.tab-label.tab-label-has-badge:after,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-shrink:not(.tab-actions-left):not(.tab-actions-off) .tab-label,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-shrink>.tab-label.tab-label-has-badge:after{padding-right:5px}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sticky-compact:not(.has-icon) .monaco-icon-label{text-align:center}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fit .monaco-icon-label,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fit .monaco-icon-label>.monaco-icon-label-container{overflow:visible}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fixed>.monaco-icon-label>.monaco-icon-label-container,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-shrink>.monaco-icon-label>.monaco-icon-label-container{flex:none;text-overflow:clip}.monaco-workbench.hc-black .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fixed>.monaco-icon-label>.monaco-icon-label-container,.monaco-workbench.hc-black .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-shrink>.monaco-icon-label>.monaco-icon-label-container,.monaco-workbench.hc-light .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fixed>.monaco-icon-label>.monaco-icon-label-container,.monaco-workbench.hc-light .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-shrink>.monaco-icon-label>.monaco-icon-label-container{text-overflow:ellipsis}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab>.tab-actions{margin-bottom:auto;margin-top:auto;width:28px}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab>.tab-actions>.monaco-action-bar{width:28px}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.tab-actions-right.sizing-fixed>.tab-actions,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.tab-actions-right.sizing-shrink>.tab-actions{flex:0;overflow:hidden}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.dirty.tab-actions-right.sizing-fixed>.tab-actions,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.dirty.tab-actions-right.sizing-shrink>.tab-actions,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sticky.tab-actions-right.sizing-fixed>.tab-actions,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sticky.tab-actions-right.sizing-shrink>.tab-actions,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.tab-actions-right.sizing-fixed:hover>.tab-actions,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.tab-actions-right.sizing-fixed>.tab-actions:focus-within,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.tab-actions-right.sizing-shrink:hover>.tab-actions,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.tab-actions-right.sizing-shrink>.tab-actions:focus-within{overflow:visible}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.tab-actions-off.sticky-compact>.tab-actions,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.tab-actions-off:not(.dirty):not(.sticky)>.tab-actions{display:none}.monaco-workbench .part.editor>.content .editor-group-container.active>.title .tabs-container>.tab.active:hover>.tab-actions .action-label,.monaco-workbench .part.editor>.content .editor-group-container.active>.title .tabs-container>.tab.active>.tab-actions .action-label,.monaco-workbench .part.editor>.content .editor-group-container.active>.title .tabs-container>.tab.dirty>.tab-actions .action-label,.monaco-workbench .part.editor>.content .editor-group-container.active>.title .tabs-container>.tab.sticky>.tab-actions .action-label,.monaco-workbench .part.editor>.content .editor-group-container.active>.title .tabs-container>.tab:hover>.tab-actions .action-label,.monaco-workbench .part.editor>.content .editor-group-container.active>.title .tabs-container>.tab>.tab-actions .action-label:focus{opacity:1}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab>.tab-actions .actions-container{justify-content:center}.monaco-workbench .part.editor>.content .editor-group-container.active>.title .tabs-container>.tab>.tab-actions .action-label.codicon{color:inherit;font-size:16px;height:16px;padding:2px;width:16px}.monaco-workbench .part.editor>.content .editor-group-container.active>.title .tabs-container>.tab.sticky.dirty>.tab-actions .action-label:not(:hover):before,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sticky.dirty>.tab-actions .action-label:not(:hover):before{content:\"\\ebb2\"}.monaco-workbench .part.editor>.content .editor-group-container.active>.title .tabs-container>.tab.dirty>.tab-actions .action-label:not(:hover):before,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.dirty>.tab-actions .action-label:not(:hover):before{content:\"\\ea71\"}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.active:hover>.tab-actions .action-label,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.active>.tab-actions .action-label,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.dirty>.tab-actions .action-label,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sticky>.tab-actions .action-label,.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab:hover>.tab-actions .action-label{opacity:.5}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab>.tab-actions .action-label{opacity:0}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.tab-actions-off{padding-right:10px}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-fixed.tab-actions-off:not(.sticky-compact),.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.sizing-shrink.tab-actions-off:not(.sticky-compact){padding-right:5px}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.tab-actions-off.dirty-border-top>.tab-actions{display:none}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.tab-actions-off.dirty:not(.dirty-border-top):not(.sticky-compact),.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.tab-actions-off.sticky:not(.sticky-compact){padding-right:0}.monaco-workbench .part.editor>.content .editor-group-container>.title .tabs-container>.tab.tab-actions-off>.tab-actions{pointer-events:none}.monaco-workbench .part.editor>.content .editor-group-container>.title .editor-actions{cursor:default;flex:initial;height:var(--editor-group-tab-height);padding:0 8px 0 4px}.monaco-workbench .part.editor>.content .editor-group-container>.title .editor-actions .action-item{margin-right:4px}.monaco-workbench .part.editor>.content .editor-group-container>.title>.tabs-and-actions-container.wrapping .editor-actions{bottom:0;position:absolute;right:0}.monaco-workbench .part.editor>.content .editor-group-container>.title.two-tab-bars>.tabs-and-actions-container:first-child .editor-actions{display:none}";
4
+ n(css,{});
5
+
6
+ export { css, css as default };
@@ -0,0 +1,6 @@
1
+ import n from '../../../../../../../../external/rollup-plugin-styles/dist/runtime/inject-css.js';
2
+
3
+ var css = ".monaco-workbench .part.editor>.content .editor-group-container>.title>.label-container{align-items:center;display:flex;flex:auto;height:var(--editor-group-tab-height);justify-content:flex-start;overflow:hidden}.monaco-workbench .part.editor>.content .editor-group-container>.title>.label-container>.title-label{line-height:var(--editor-group-tab-height);overflow:hidden;padding-left:20px;position:relative;text-overflow:ellipsis}.monaco-workbench .part.editor>.content .editor-group-container>.title>.label-container>.title-label>.monaco-icon-label-container{flex:initial}.monaco-workbench .part.editor>.content .editor-group-container>.title.breadcrumbs .no-tabs.title-label{flex:none}.monaco-workbench .part.editor>.content .editor-group-container>.title.breadcrumbs .breadcrumbs-control{flex:1 50%;margin-left:.45em;overflow:hidden}.monaco-workbench .part.editor>.content .editor-group-container>.title.breadcrumbs .breadcrumbs-control .monaco-breadcrumb-item{font-size:.9em}.monaco-workbench .part.editor>.content .editor-group-container>.title.breadcrumbs .breadcrumbs-control.preview .monaco-breadcrumb-item{font-style:italic}.monaco-workbench .part.editor>.content .editor-group-container>.title.breadcrumbs .breadcrumbs-control .monaco-breadcrumb-item:before{background-image:none;content:\"/\";height:inherit;opacity:1;width:inherit}.monaco-workbench .part.editor>.content .editor-group-container>.title.breadcrumbs .breadcrumbs-control.backslash-path .monaco-breadcrumb-item:before{content:\"\\\\\"}.monaco-workbench .part.editor>.content .editor-group-container>.title.breadcrumbs .breadcrumbs-control .monaco-breadcrumb-item.root_folder+.monaco-breadcrumb-item:before,.monaco-workbench .part.editor>.content .editor-group-container>.title.breadcrumbs .breadcrumbs-control .monaco-breadcrumb-item.root_folder:before,.monaco-workbench .part.editor>.content .editor-group-container>.title.breadcrumbs .breadcrumbs-control.relative-path .monaco-breadcrumb-item:nth-child(2):before,.monaco-workbench.windows .part.editor>.content .editor-group-container>.title.breadcrumbs .breadcrumbs-control .monaco-breadcrumb-item:nth-child(2):before{display:none}.monaco-workbench .part.editor>.content .editor-group-container>.title.breadcrumbs .breadcrumbs-control .monaco-breadcrumb-item.root_folder:after{content:\"\\00a0•\\00a0\";padding:0}.monaco-workbench .part.editor>.content .editor-group-container>.title.breadcrumbs .breadcrumbs-control .monaco-breadcrumb-item:last-child{padding-right:4px}.monaco-workbench .part.editor>.content .editor-group-container>.title.breadcrumbs .breadcrumbs-control .monaco-breadcrumb-item .codicon[class*=codicon-symbol-]{padding:0 1px}.monaco-workbench .part.editor>.content .editor-group-container>.title.breadcrumbs .breadcrumbs-control .monaco-breadcrumb-item .codicon:last-child{display:none}.monaco-workbench .part.editor>.content .editor-group-container>.title.breadcrumbs .breadcrumbs-control .monaco-icon-label:before{height:18px;padding-right:2px}.monaco-workbench .part.editor>.content .editor-group-container>.title>.title-actions{display:flex;flex:initial;height:var(--editor-group-tab-height);opacity:.5;padding-right:8px}.monaco-workbench .part.editor>.content .editor-group-container>.title>.title-actions .action-item{margin-right:4px}.monaco-workbench .part.editor>.content .editor-group-container.active>.title>.title-actions{opacity:1}";
4
+ n(css,{});
5
+
6
+ export { css, css as default };