@theia/core 1.74.0-next.9 → 1.74.0
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.
- package/README.md +10 -10
- package/i18n/nls.cs.json +143 -16
- package/i18n/nls.de.json +143 -16
- package/i18n/nls.es.json +143 -16
- package/i18n/nls.fr.json +143 -16
- package/i18n/nls.hu.json +143 -16
- package/i18n/nls.it.json +143 -16
- package/i18n/nls.ja.json +143 -16
- package/i18n/nls.json +143 -16
- package/i18n/nls.ko.json +143 -16
- package/i18n/nls.pl.json +143 -16
- package/i18n/nls.pt-br.json +143 -16
- package/i18n/nls.ru.json +143 -16
- package/i18n/nls.tr.json +143 -16
- package/i18n/nls.zh-cn.json +143 -16
- package/i18n/nls.zh-tw.json +143 -16
- package/lib/browser/browser-clipboard-service.d.ts +3 -0
- package/lib/browser/browser-clipboard-service.d.ts.map +1 -1
- package/lib/browser/browser-clipboard-service.js +8 -1
- package/lib/browser/browser-clipboard-service.js.map +1 -1
- package/lib/browser/catalog.json +419 -41
- package/lib/browser/clipboard-service.d.ts +11 -0
- package/lib/browser/clipboard-service.d.ts.map +1 -1
- package/lib/browser/clipboard-service.js.map +1 -1
- package/lib/browser/common-frontend-contribution.d.ts.map +1 -1
- package/lib/browser/common-frontend-contribution.js +7 -7
- package/lib/browser/common-frontend-contribution.js.map +1 -1
- package/lib/browser/frontend-application-module.d.ts.map +1 -1
- package/lib/browser/frontend-application-module.js +9 -0
- package/lib/browser/frontend-application-module.js.map +1 -1
- package/lib/browser/frontend-application.d.ts.map +1 -1
- package/lib/browser/frontend-application.js +12 -2
- package/lib/browser/frontend-application.js.map +1 -1
- package/lib/browser/index.d.ts +1 -0
- package/lib/browser/index.d.ts.map +1 -1
- package/lib/browser/index.js +1 -0
- package/lib/browser/index.js.map +1 -1
- package/lib/browser/keybinding.d.ts.map +1 -1
- package/lib/browser/keybinding.js +12 -7
- package/lib/browser/keybinding.js.map +1 -1
- package/lib/browser/perspective-service.d.ts +173 -0
- package/lib/browser/perspective-service.d.ts.map +1 -0
- package/lib/browser/perspective-service.js +484 -0
- package/lib/browser/perspective-service.js.map +1 -0
- package/lib/browser/perspective-service.spec.d.ts +2 -0
- package/lib/browser/perspective-service.spec.d.ts.map +1 -0
- package/lib/browser/perspective-service.spec.js +1806 -0
- package/lib/browser/perspective-service.spec.js.map +1 -0
- package/lib/browser/preferences/preference-contribution.d.ts.map +1 -1
- package/lib/browser/preferences/preference-contribution.js +9 -1
- package/lib/browser/preferences/preference-contribution.js.map +1 -1
- package/lib/browser/preferences/preference-service.spec.js +63 -0
- package/lib/browser/preferences/preference-service.spec.js.map +1 -1
- package/lib/browser/shell/application-shell.d.ts +7 -0
- package/lib/browser/shell/application-shell.d.ts.map +1 -1
- package/lib/browser/shell/application-shell.js +38 -28
- package/lib/browser/shell/application-shell.js.map +1 -1
- package/lib/browser/shell/shell-layout-restorer.d.ts +9 -0
- package/lib/browser/shell/shell-layout-restorer.d.ts.map +1 -1
- package/lib/browser/shell/shell-layout-restorer.js +124 -14
- package/lib/browser/shell/shell-layout-restorer.js.map +1 -1
- package/lib/browser/shell/shell-layout-restorer.spec.d.ts +2 -0
- package/lib/browser/shell/shell-layout-restorer.spec.d.ts.map +1 -0
- package/lib/browser/shell/shell-layout-restorer.spec.js +539 -0
- package/lib/browser/shell/shell-layout-restorer.spec.js.map +1 -0
- package/lib/browser/shell/view-contribution.d.ts +2 -0
- package/lib/browser/shell/view-contribution.d.ts.map +1 -1
- package/lib/browser/shell/view-contribution.js +5 -1
- package/lib/browser/shell/view-contribution.js.map +1 -1
- package/lib/browser/status-bar/status-bar.d.ts +2 -0
- package/lib/browser/status-bar/status-bar.d.ts.map +1 -1
- package/lib/browser/status-bar/status-bar.js +11 -3
- package/lib/browser/status-bar/status-bar.js.map +1 -1
- package/lib/browser/tree/tree-widget.d.ts +7 -33
- package/lib/browser/tree/tree-widget.d.ts.map +1 -1
- package/lib/browser/tree/tree-widget.js +7 -54
- package/lib/browser/tree/tree-widget.js.map +1 -1
- package/lib/browser/widgets/index.d.ts +1 -0
- package/lib/browser/widgets/index.d.ts.map +1 -1
- package/lib/browser/widgets/index.js +1 -0
- package/lib/browser/widgets/index.js.map +1 -1
- package/lib/browser/widgets/select-component.d.ts +2 -2
- package/lib/browser/widgets/select-component.d.ts.map +1 -1
- package/lib/browser/widgets/select-component.js +42 -12
- package/lib/browser/widgets/select-component.js.map +1 -1
- package/lib/browser/widgets/tab-bar-tracker.d.ts +23 -0
- package/lib/browser/widgets/tab-bar-tracker.d.ts.map +1 -0
- package/lib/browser/widgets/tab-bar-tracker.js +65 -0
- package/lib/browser/widgets/tab-bar-tracker.js.map +1 -0
- package/lib/browser/widgets/tab-bar-tracker.spec.d.ts +2 -0
- package/lib/browser/widgets/tab-bar-tracker.spec.d.ts.map +1 -0
- package/lib/browser/widgets/tab-bar-tracker.spec.js +109 -0
- package/lib/browser/widgets/tab-bar-tracker.spec.js.map +1 -0
- package/lib/browser-only/messaging/frontend-only-service-connection-provider.d.ts +13 -2
- package/lib/browser-only/messaging/frontend-only-service-connection-provider.d.ts.map +1 -1
- package/lib/browser-only/messaging/frontend-only-service-connection-provider.js +31 -3
- package/lib/browser-only/messaging/frontend-only-service-connection-provider.js.map +1 -1
- package/lib/common/preferences/index.d.ts +1 -0
- package/lib/common/preferences/index.d.ts.map +1 -1
- package/lib/common/preferences/index.js +1 -0
- package/lib/common/preferences/index.js.map +1 -1
- package/lib/common/preferences/preference-provider.d.ts +15 -0
- package/lib/common/preferences/preference-provider.d.ts.map +1 -1
- package/lib/common/preferences/preference-provider.js +21 -1
- package/lib/common/preferences/preference-provider.js.map +1 -1
- package/lib/common/preferences/preference-provider.spec.js +17 -0
- package/lib/common/preferences/preference-provider.spec.js.map +1 -1
- package/lib/common/preferences/preference-scope.d.ts +6 -1
- package/lib/common/preferences/preference-scope.d.ts.map +1 -1
- package/lib/common/preferences/preference-scope.js +5 -0
- package/lib/common/preferences/preference-scope.js.map +1 -1
- package/lib/common/preferences/preference-scope.spec.js +5 -3
- package/lib/common/preferences/preference-scope.spec.js.map +1 -1
- package/lib/common/preferences/preference-service.d.ts +19 -0
- package/lib/common/preferences/preference-service.d.ts.map +1 -1
- package/lib/common/preferences/preference-service.js +34 -5
- package/lib/common/preferences/preference-service.js.map +1 -1
- package/lib/common/preferences/session-preference-provider.d.ts +17 -0
- package/lib/common/preferences/session-preference-provider.d.ts.map +1 -0
- package/lib/common/preferences/session-preference-provider.js +77 -0
- package/lib/common/preferences/session-preference-provider.js.map +1 -0
- package/lib/common/preferences/session-preference-provider.spec.d.ts +2 -0
- package/lib/common/preferences/session-preference-provider.spec.d.ts.map +1 -0
- package/lib/common/preferences/session-preference-provider.spec.js +71 -0
- package/lib/common/preferences/session-preference-provider.spec.js.map +1 -0
- package/lib/electron-browser/electron-clipboard-service.d.ts +3 -0
- package/lib/electron-browser/electron-clipboard-service.d.ts.map +1 -1
- package/lib/electron-browser/electron-clipboard-service.js +6 -0
- package/lib/electron-browser/electron-clipboard-service.js.map +1 -1
- package/lib/electron-browser/preload.d.ts.map +1 -1
- package/lib/electron-browser/preload.js +2 -1
- package/lib/electron-browser/preload.js.map +1 -1
- package/lib/electron-common/electron-api.d.ts +2 -0
- package/lib/electron-common/electron-api.d.ts.map +1 -1
- package/lib/electron-common/electron-api.js +2 -1
- package/lib/electron-common/electron-api.js.map +1 -1
- package/lib/electron-main/electron-api-main.d.ts.map +1 -1
- package/lib/electron-main/electron-api-main.js +43 -0
- package/lib/electron-main/electron-api-main.js.map +1 -1
- package/lib/electron-main/electron-main-application.d.ts.map +1 -1
- package/lib/electron-main/electron-main-application.js +3 -0
- package/lib/electron-main/electron-main-application.js.map +1 -1
- package/lib/electron-node/hosting/electron-backend-hosting-module.d.ts.map +1 -1
- package/lib/electron-node/hosting/electron-backend-hosting-module.js +7 -0
- package/lib/electron-node/hosting/electron-backend-hosting-module.js.map +1 -1
- package/lib/electron-node/hosting/electron-backend-hosting-module.spec.d.ts +2 -0
- package/lib/electron-node/hosting/electron-backend-hosting-module.spec.d.ts.map +1 -0
- package/lib/electron-node/hosting/electron-backend-hosting-module.spec.js +39 -0
- package/lib/electron-node/hosting/electron-backend-hosting-module.spec.js.map +1 -0
- package/lib/node/hosting/backend-hosting-module.d.ts.map +1 -1
- package/lib/node/hosting/backend-hosting-module.js +4 -1
- package/lib/node/hosting/backend-hosting-module.js.map +1 -1
- package/lib/node/hosting/browser-connection-token.d.ts +29 -1
- package/lib/node/hosting/browser-connection-token.d.ts.map +1 -1
- package/lib/node/hosting/browser-connection-token.js +25 -1
- package/lib/node/hosting/browser-connection-token.js.map +1 -1
- package/lib/node/hosting/browser-connection-token.spec.js +70 -0
- package/lib/node/hosting/browser-connection-token.spec.js.map +1 -1
- package/lib/node/index.d.ts +1 -0
- package/lib/node/index.d.ts.map +1 -1
- package/lib/node/index.js +3 -1
- package/lib/node/index.js.map +1 -1
- package/package.json +11 -11
- package/src/browser/browser-clipboard-service.ts +7 -1
- package/src/browser/clipboard-service.ts +11 -0
- package/src/browser/common-frontend-contribution.ts +7 -7
- package/src/browser/frontend-application-module.ts +11 -1
- package/src/browser/frontend-application.ts +12 -4
- package/src/browser/index.ts +1 -0
- package/src/browser/keybinding.ts +12 -7
- package/src/browser/perspective-service.spec.ts +2270 -0
- package/src/browser/perspective-service.ts +625 -0
- package/src/browser/preferences/preference-contribution.ts +9 -1
- package/src/browser/preferences/preference-service.spec.ts +72 -0
- package/src/browser/shell/application-shell.ts +41 -26
- package/src/browser/shell/shell-layout-restorer.spec.ts +746 -0
- package/src/browser/shell/shell-layout-restorer.ts +134 -13
- package/src/browser/shell/view-contribution.ts +6 -1
- package/src/browser/status-bar/status-bar.tsx +13 -3
- package/src/browser/style/select-component.css +16 -0
- package/src/browser/style/sidepanel.css +5 -0
- package/src/browser/style/status-bar.css +1 -1
- package/src/browser/tree/tree-widget.tsx +12 -78
- package/src/browser/widgets/index.ts +1 -0
- package/src/browser/widgets/select-component.tsx +41 -12
- package/src/browser/widgets/tab-bar-tracker.spec.ts +121 -0
- package/src/browser/widgets/tab-bar-tracker.ts +68 -0
- package/src/browser-only/messaging/frontend-only-service-connection-provider.ts +32 -3
- package/src/common/i18n/nls.metadata.json +4149 -888
- package/src/common/preferences/index.ts +1 -0
- package/src/common/preferences/preference-provider.spec.ts +17 -0
- package/src/common/preferences/preference-provider.ts +22 -1
- package/src/common/preferences/preference-scope.spec.ts +5 -3
- package/src/common/preferences/preference-scope.ts +6 -1
- package/src/common/preferences/preference-service.ts +39 -5
- package/src/common/preferences/session-preference-provider.spec.ts +78 -0
- package/src/common/preferences/session-preference-provider.ts +69 -0
- package/src/electron-browser/electron-clipboard-service.ts +5 -0
- package/src/electron-browser/menu/electron-menu-style.css +3 -1
- package/src/electron-browser/preload.ts +5 -2
- package/src/electron-common/electron-api.ts +4 -0
- package/src/electron-main/electron-api-main.ts +56 -3
- package/src/electron-main/electron-main-application.ts +3 -0
- package/src/electron-node/hosting/electron-backend-hosting-module.spec.ts +42 -0
- package/src/electron-node/hosting/electron-backend-hosting-module.ts +8 -0
- package/src/node/hosting/backend-hosting-module.ts +5 -2
- package/src/node/hosting/browser-connection-token.spec.ts +92 -0
- package/src/node/hosting/browser-connection-token.ts +45 -1
- package/src/node/index.ts +1 -0
|
@@ -262,6 +262,7 @@ describe('Preference Service', () => {
|
|
|
262
262
|
globalValue,
|
|
263
263
|
workspaceValue,
|
|
264
264
|
workspaceFolderValue,
|
|
265
|
+
sessionValue: undefined,
|
|
265
266
|
value,
|
|
266
267
|
};
|
|
267
268
|
const inspection = preferences.inspect(TAB_SIZE, DUMMY_URI);
|
|
@@ -374,6 +375,7 @@ describe('Preference Service', () => {
|
|
|
374
375
|
globalValue: undefined,
|
|
375
376
|
workspaceValue: undefined,
|
|
376
377
|
workspaceFolderValue: undefined,
|
|
378
|
+
sessionValue: undefined,
|
|
377
379
|
value: 4,
|
|
378
380
|
};
|
|
379
381
|
assert.deepStrictEqual(expected, preferences.inspect('editor.tabSize'));
|
|
@@ -397,6 +399,7 @@ describe('Preference Service', () => {
|
|
|
397
399
|
globalValue: 2,
|
|
398
400
|
workspaceValue: undefined,
|
|
399
401
|
workspaceFolderValue: undefined,
|
|
402
|
+
sessionValue: undefined,
|
|
400
403
|
value: 2
|
|
401
404
|
};
|
|
402
405
|
preferences.set('editor.tabSize', 2, PreferenceScope.User);
|
|
@@ -422,6 +425,7 @@ describe('Preference Service', () => {
|
|
|
422
425
|
globalValue: undefined,
|
|
423
426
|
workspaceValue: undefined,
|
|
424
427
|
workspaceFolderValue: undefined,
|
|
428
|
+
sessionValue: undefined,
|
|
425
429
|
value: 4
|
|
426
430
|
};
|
|
427
431
|
assert.deepStrictEqual(expected, preferences.inspect('editor.tabSize'));
|
|
@@ -537,4 +541,72 @@ describe('Preference Service', () => {
|
|
|
537
541
|
});
|
|
538
542
|
});
|
|
539
543
|
|
|
544
|
+
describe('session-scope overrides', () => {
|
|
545
|
+
function getSessionProvider(): PreferenceProvider {
|
|
546
|
+
return testContainer.getNamed<PreferenceProvider>(PreferenceProvider, PreferenceScope.Session);
|
|
547
|
+
}
|
|
548
|
+
|
|
549
|
+
beforeEach(() => {
|
|
550
|
+
prefSchema.addSchema({
|
|
551
|
+
scope: PreferenceScope.Folder,
|
|
552
|
+
properties: {
|
|
553
|
+
'test.session': { type: 'number' }
|
|
554
|
+
}
|
|
555
|
+
});
|
|
556
|
+
});
|
|
557
|
+
|
|
558
|
+
it('takes precedence over the user scope', async () => {
|
|
559
|
+
getProvider(PreferenceScope.User).setPreference('test.session', 1);
|
|
560
|
+
await prefService.set('test.session', 99, PreferenceScope.Session);
|
|
561
|
+
expect(prefService.get('test.session')).equals(99);
|
|
562
|
+
});
|
|
563
|
+
|
|
564
|
+
it('is dropped when the same key is written to a persistent scope', async () => {
|
|
565
|
+
const sessionProvider = getSessionProvider();
|
|
566
|
+
getProvider(PreferenceScope.User).setPreference('test.session', 1);
|
|
567
|
+
await prefService.set('test.session', 99, PreferenceScope.Session);
|
|
568
|
+
expect(prefService.get('test.session')).equals(99);
|
|
569
|
+
|
|
570
|
+
// An explicit user edit must win over the session override and clear it.
|
|
571
|
+
await prefService.set('test.session', 2, PreferenceScope.User);
|
|
572
|
+
expect(sessionProvider.get('test.session')).to.equal(undefined);
|
|
573
|
+
expect(prefService.get('test.session')).equals(2);
|
|
574
|
+
});
|
|
575
|
+
|
|
576
|
+
it('is reported via inspect().sessionValue', async () => {
|
|
577
|
+
await prefService.set('test.session', 42, PreferenceScope.Session);
|
|
578
|
+
expect(prefService.inspect('test.session')?.sessionValue).equals(42);
|
|
579
|
+
});
|
|
580
|
+
|
|
581
|
+
it('emits a Session-scope change event when evicted by a persistent write', async () => {
|
|
582
|
+
// Status bar listeners rely on this: an eviction must surface as an
|
|
583
|
+
// onPreferenceChanged event whose `scope` is Session, otherwise the
|
|
584
|
+
// status bar would never clear after the override is dropped.
|
|
585
|
+
await prefService.set('test.session', 99, PreferenceScope.Session);
|
|
586
|
+
|
|
587
|
+
const sessionScopeEvents: PreferenceScope[] = [];
|
|
588
|
+
const listener = prefService.onPreferenceChanged(e => {
|
|
589
|
+
if (e.preferenceName === 'test.session') {
|
|
590
|
+
sessionScopeEvents.push(e.scope);
|
|
591
|
+
}
|
|
592
|
+
});
|
|
593
|
+
try {
|
|
594
|
+
await prefService.set('test.session', 2, PreferenceScope.User);
|
|
595
|
+
} finally {
|
|
596
|
+
listener.dispose();
|
|
597
|
+
}
|
|
598
|
+
|
|
599
|
+
expect(sessionScopeEvents).to.include(PreferenceScope.Session);
|
|
600
|
+
});
|
|
601
|
+
|
|
602
|
+
it('is left alone when writing to the Session scope itself', async () => {
|
|
603
|
+
const sessionProvider = getSessionProvider();
|
|
604
|
+
await prefService.set('test.session', 7, PreferenceScope.Session);
|
|
605
|
+
expect(sessionProvider.get('test.session')).to.equal(7);
|
|
606
|
+
// A second write to Session must not trigger eviction of itself.
|
|
607
|
+
await prefService.set('test.session', 8, PreferenceScope.Session);
|
|
608
|
+
expect(sessionProvider.get('test.session')).to.equal(8);
|
|
609
|
+
});
|
|
610
|
+
});
|
|
611
|
+
|
|
540
612
|
});
|
|
@@ -181,6 +181,12 @@ interface WidgetDragState {
|
|
|
181
181
|
}
|
|
182
182
|
|
|
183
183
|
export const MAXIMIZED_CLASS = 'theia-maximized';
|
|
184
|
+
export const WidgetAreaResolver = Symbol('WidgetAreaResolver');
|
|
185
|
+
export interface WidgetAreaResolver {
|
|
186
|
+
resolveArea(widgetId: string, requestedArea: ApplicationShell.Area): ApplicationShell.Area | undefined;
|
|
187
|
+
setActivePlacementMap(map: Map<string, ApplicationShell.Area>): void;
|
|
188
|
+
}
|
|
189
|
+
|
|
184
190
|
/**
|
|
185
191
|
* The application shell manages the top-level widgets of the application. Use this class to
|
|
186
192
|
* add, remove, or activate a widget.
|
|
@@ -355,6 +361,7 @@ export class ApplicationShell extends Widget {
|
|
|
355
361
|
});
|
|
356
362
|
}
|
|
357
363
|
});
|
|
364
|
+
this.refreshBottomPanelToggleButton();
|
|
358
365
|
this.initializedDeferred.resolve();
|
|
359
366
|
}
|
|
360
367
|
|
|
@@ -689,14 +696,10 @@ export class ApplicationShell extends Widget {
|
|
|
689
696
|
spacing: 0
|
|
690
697
|
}, area => this.doToggleMaximized(area));
|
|
691
698
|
dockPanel.id = BOTTOM_AREA_ID;
|
|
692
|
-
dockPanel.widgetAdded.connect((sender, widget) => {
|
|
693
|
-
this.refreshBottomPanelToggleButton();
|
|
694
|
-
});
|
|
695
699
|
dockPanel.widgetRemoved.connect((sender, widget) => {
|
|
696
700
|
if (sender.isEmpty) {
|
|
697
701
|
this.collapseBottomPanel();
|
|
698
702
|
}
|
|
699
|
-
this.refreshBottomPanelToggleButton();
|
|
700
703
|
}, this);
|
|
701
704
|
dockPanel.node.addEventListener('lm-dragenter', event => {
|
|
702
705
|
// Make sure that the main panel hides its overlay when the bottom panel is expanded
|
|
@@ -887,7 +890,6 @@ export class ApplicationShell extends Widget {
|
|
|
887
890
|
}
|
|
888
891
|
});
|
|
889
892
|
}
|
|
890
|
-
this.refreshBottomPanelToggleButton();
|
|
891
893
|
}
|
|
892
894
|
// Proceed with the main panel once all others are set up
|
|
893
895
|
await this.bottomPanelState.pendingUpdate;
|
|
@@ -969,6 +971,20 @@ export class ApplicationShell extends Widget {
|
|
|
969
971
|
}
|
|
970
972
|
}
|
|
971
973
|
|
|
974
|
+
@inject(WidgetAreaResolver) @optional()
|
|
975
|
+
protected readonly widgetAreaResolver: WidgetAreaResolver | undefined;
|
|
976
|
+
|
|
977
|
+
protected resolveWidgetArea(widget: Widget, options?: Readonly<ApplicationShell.WidgetOptions>): Readonly<ApplicationShell.WidgetOptions> | undefined {
|
|
978
|
+
if (this.widgetAreaResolver && !options?.ref) {
|
|
979
|
+
const requestedArea = options?.area || 'main';
|
|
980
|
+
const resolvedArea = this.widgetAreaResolver.resolveArea(widget.id, requestedArea);
|
|
981
|
+
if (resolvedArea && resolvedArea !== requestedArea) {
|
|
982
|
+
return { ...options, area: resolvedArea };
|
|
983
|
+
}
|
|
984
|
+
}
|
|
985
|
+
return options;
|
|
986
|
+
}
|
|
987
|
+
|
|
972
988
|
/**
|
|
973
989
|
* Add a widget to the application shell. The given widget must have a unique `id` property,
|
|
974
990
|
* which will be used as the DOM id.
|
|
@@ -982,7 +998,8 @@ export class ApplicationShell extends Widget {
|
|
|
982
998
|
this.logger.error('Widgets added to the application shell must have a unique id property.');
|
|
983
999
|
return;
|
|
984
1000
|
}
|
|
985
|
-
const
|
|
1001
|
+
const resolvedOptions = this.resolveWidgetArea(widget, options);
|
|
1002
|
+
const { area, addOptions } = this.getInsertionOptions(resolvedOptions);
|
|
986
1003
|
const sidePanelOptions: SidePanel.WidgetOptions = { rank: options?.rank };
|
|
987
1004
|
switch (area) {
|
|
988
1005
|
case 'main':
|
|
@@ -1570,9 +1587,11 @@ export class ApplicationShell extends Widget {
|
|
|
1570
1587
|
let size: number | undefined;
|
|
1571
1588
|
if (bottomPanel.isEmpty) {
|
|
1572
1589
|
bottomPanel.node.style.minHeight = '0';
|
|
1573
|
-
|
|
1574
|
-
|
|
1590
|
+
}
|
|
1591
|
+
if (this.bottomPanelState.lastPanelSize) {
|
|
1575
1592
|
size = this.bottomPanelState.lastPanelSize;
|
|
1593
|
+
} else if (bottomPanel.isEmpty) {
|
|
1594
|
+
size = this.options.bottomPanel.emptySize;
|
|
1576
1595
|
} else {
|
|
1577
1596
|
size = this.getDefaultBottomPanelSize();
|
|
1578
1597
|
}
|
|
@@ -1631,24 +1650,20 @@ export class ApplicationShell extends Widget {
|
|
|
1631
1650
|
* and refers to the command `core.toggle.bottom.panel`.
|
|
1632
1651
|
*/
|
|
1633
1652
|
protected refreshBottomPanelToggleButton(): void {
|
|
1634
|
-
|
|
1635
|
-
|
|
1636
|
-
|
|
1637
|
-
|
|
1638
|
-
|
|
1639
|
-
|
|
1640
|
-
|
|
1641
|
-
|
|
1642
|
-
|
|
1643
|
-
|
|
1644
|
-
|
|
1645
|
-
|
|
1646
|
-
|
|
1647
|
-
|
|
1648
|
-
priority: -1000
|
|
1649
|
-
};
|
|
1650
|
-
this.statusBar.setElement(BOTTOM_PANEL_TOGGLE_ID, element);
|
|
1651
|
-
}
|
|
1653
|
+
const label = nls.localize('theia/core/common/collapseBottomPanel', 'Toggle Bottom Panel');
|
|
1654
|
+
const element: StatusBarEntry = {
|
|
1655
|
+
name: label,
|
|
1656
|
+
text: '$(codicon-window)',
|
|
1657
|
+
alignment: StatusBarAlignment.RIGHT,
|
|
1658
|
+
tooltip: label,
|
|
1659
|
+
command: 'core.toggle.bottom.panel',
|
|
1660
|
+
accessibilityInformation: {
|
|
1661
|
+
label: label,
|
|
1662
|
+
role: 'button'
|
|
1663
|
+
},
|
|
1664
|
+
priority: -1000
|
|
1665
|
+
};
|
|
1666
|
+
this.statusBar.setElement(BOTTOM_PANEL_TOGGLE_ID, element);
|
|
1652
1667
|
}
|
|
1653
1668
|
|
|
1654
1669
|
/**
|