@theia/core 1.59.0-next.72 → 1.60.0-next.43
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 +16 -16
- package/i18n/nls.cs.json +344 -23
- package/i18n/nls.de.json +344 -23
- package/i18n/nls.es.json +344 -23
- package/i18n/nls.fr.json +344 -23
- package/i18n/nls.hu.json +344 -23
- package/i18n/nls.it.json +344 -23
- package/i18n/nls.ja.json +344 -23
- package/i18n/nls.json +344 -23
- package/i18n/nls.ko.json +344 -23
- package/i18n/nls.pl.json +344 -23
- package/i18n/nls.pt-br.json +344 -23
- package/i18n/nls.ru.json +344 -23
- package/i18n/nls.tr.json +344 -23
- package/i18n/nls.zh-cn.json +344 -23
- package/i18n/nls.zh-tw.json +344 -23
- package/lib/browser/about-dialog.d.ts.map +1 -1
- package/lib/browser/about-dialog.js +3 -2
- package/lib/browser/about-dialog.js.map +1 -1
- package/lib/browser/browser.d.ts +2 -0
- package/lib/browser/browser.d.ts.map +1 -1
- package/lib/browser/browser.js +6 -1
- package/lib/browser/browser.js.map +1 -1
- package/lib/browser/catalog.json +207 -14
- package/lib/browser/common-frontend-contribution.d.ts +2 -0
- package/lib/browser/common-frontend-contribution.d.ts.map +1 -1
- package/lib/browser/common-frontend-contribution.js +56 -22
- package/lib/browser/common-frontend-contribution.js.map +1 -1
- package/lib/browser/common-styling-participants.js +25 -25
- package/lib/browser/context-menu-renderer.d.ts +3 -3
- package/lib/browser/context-menu-renderer.d.ts.map +1 -1
- package/lib/browser/core-preferences.js +5 -5
- package/lib/browser/core-preferences.js.map +1 -1
- package/lib/browser/menu/browser-context-menu-renderer.d.ts.map +1 -1
- package/lib/browser/menu/browser-context-menu-renderer.js +1 -2
- package/lib/browser/menu/browser-context-menu-renderer.js.map +1 -1
- package/lib/browser/menu/browser-menu-plugin.d.ts +5 -5
- package/lib/browser/menu/browser-menu-plugin.d.ts.map +1 -1
- package/lib/browser/menu/browser-menu-plugin.js +23 -13
- package/lib/browser/menu/browser-menu-plugin.js.map +1 -1
- package/lib/browser/preferences/injectable-preference-proxy.d.ts +1 -1
- package/lib/browser/preferences/injectable-preference-proxy.d.ts.map +1 -1
- package/lib/browser/preferences/preference-contribution.d.ts +1 -1
- package/lib/browser/preferences/preference-contribution.d.ts.map +1 -1
- package/lib/browser/preferences/preference-provider.d.ts +1 -1
- package/lib/browser/preferences/preference-provider.d.ts.map +1 -1
- package/lib/browser/preferences/preference-provider.js +1 -1
- package/lib/browser/preferences/preference-provider.js.map +1 -1
- package/lib/browser/preferences/preference-service.d.ts +1 -1
- package/lib/browser/preferences/preference-service.d.ts.map +1 -1
- package/lib/browser/preferences/preference-service.js +3 -3
- package/lib/browser/preferences/preference-service.js.map +1 -1
- package/lib/browser/preferences/preference-validation-service.d.ts +1 -1
- package/lib/browser/preferences/preference-validation-service.d.ts.map +1 -1
- package/lib/browser/preload/i18n-preload-contribution.d.ts +4 -0
- package/lib/browser/preload/i18n-preload-contribution.d.ts.map +1 -1
- package/lib/browser/preload/i18n-preload-contribution.js +23 -1
- package/lib/browser/preload/i18n-preload-contribution.js.map +1 -1
- package/lib/browser/preload/preload-module.d.ts.map +1 -1
- package/lib/browser/preload/preload-module.js +5 -3
- package/lib/browser/preload/preload-module.js.map +1 -1
- package/lib/browser/preload/text-replacement-contribution.d.ts +37 -0
- package/lib/browser/preload/text-replacement-contribution.d.ts.map +1 -0
- package/lib/browser/preload/text-replacement-contribution.js +20 -0
- package/lib/browser/preload/text-replacement-contribution.js.map +1 -0
- package/lib/browser/saveable.d.ts +11 -3
- package/lib/browser/saveable.d.ts.map +1 -1
- package/lib/browser/saveable.js +2 -1
- package/lib/browser/saveable.js.map +1 -1
- package/lib/browser/shell/application-shell-mouse-tracker.d.ts +1 -1
- package/lib/browser/shell/application-shell-mouse-tracker.d.ts.map +1 -1
- package/lib/browser/shell/application-shell-mouse-tracker.js +3 -3
- package/lib/browser/shell/application-shell-mouse-tracker.js.map +1 -1
- package/lib/browser/shell/application-shell.d.ts +10 -7
- package/lib/browser/shell/application-shell.d.ts.map +1 -1
- package/lib/browser/shell/application-shell.js +24 -21
- package/lib/browser/shell/application-shell.js.map +1 -1
- package/lib/browser/shell/shell-layout-restorer.d.ts +1 -1
- package/lib/browser/shell/shell-layout-restorer.d.ts.map +1 -1
- package/lib/browser/shell/side-panel-handler.d.ts +2 -2
- package/lib/browser/shell/side-panel-handler.d.ts.map +1 -1
- package/lib/browser/shell/side-panel-handler.js +13 -12
- package/lib/browser/shell/side-panel-handler.js.map +1 -1
- package/lib/browser/shell/side-panel-toolbar.d.ts +2 -2
- package/lib/browser/shell/side-panel-toolbar.d.ts.map +1 -1
- package/lib/browser/shell/side-panel-toolbar.js +1 -1
- package/lib/browser/shell/side-panel-toolbar.js.map +1 -1
- package/lib/browser/shell/sidebar-bottom-menu-widget.d.ts.map +1 -1
- package/lib/browser/shell/sidebar-bottom-menu-widget.js +2 -1
- package/lib/browser/shell/sidebar-bottom-menu-widget.js.map +1 -1
- package/lib/browser/shell/sidebar-menu-widget.d.ts.map +1 -1
- package/lib/browser/shell/sidebar-menu-widget.js +1 -0
- package/lib/browser/shell/sidebar-menu-widget.js.map +1 -1
- package/lib/browser/shell/split-panels.d.ts +1 -1
- package/lib/browser/shell/split-panels.d.ts.map +1 -1
- package/lib/browser/shell/split-panels.js +1 -1
- package/lib/browser/shell/split-panels.js.map +1 -1
- package/lib/browser/shell/tab-bar-decorator.d.ts +1 -1
- package/lib/browser/shell/tab-bar-decorator.d.ts.map +1 -1
- package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.d.ts +1 -1
- package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.d.ts.map +1 -1
- package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.js +3 -3
- package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.js.map +1 -1
- package/lib/browser/shell/tab-bars.d.ts +18 -12
- package/lib/browser/shell/tab-bars.d.ts.map +1 -1
- package/lib/browser/shell/tab-bars.js +80 -51
- package/lib/browser/shell/tab-bars.js.map +1 -1
- package/lib/browser/shell/tab-bars.spec.js +1 -1
- package/lib/browser/shell/tab-bars.spec.js.map +1 -1
- package/lib/browser/shell/theia-dock-panel.d.ts +2 -2
- package/lib/browser/shell/theia-dock-panel.d.ts.map +1 -1
- package/lib/browser/shell/theia-dock-panel.js +3 -3
- package/lib/browser/shell/theia-dock-panel.js.map +1 -1
- package/lib/browser/shell/view-column-service.d.ts +1 -1
- package/lib/browser/shell/view-column-service.d.ts.map +1 -1
- package/lib/browser/shell/view-column-service.js +1 -1
- package/lib/browser/shell/view-column-service.js.map +1 -1
- package/lib/browser/shell/view-contribution.d.ts +1 -1
- package/lib/browser/shell/view-contribution.d.ts.map +1 -1
- package/lib/browser/source-tree/source-tree.d.ts.map +1 -1
- package/lib/browser/source-tree/source-tree.js +3 -2
- package/lib/browser/source-tree/source-tree.js.map +1 -1
- package/lib/browser/source-tree/tree-source.d.ts +1 -0
- package/lib/browser/source-tree/tree-source.d.ts.map +1 -1
- package/lib/browser/source-tree/tree-source.js.map +1 -1
- package/lib/browser/tree/tree-widget.d.ts +1 -1
- package/lib/browser/tree/tree-widget.d.ts.map +1 -1
- package/lib/browser/tree/tree-widget.js +2 -1
- package/lib/browser/tree/tree-widget.js.map +1 -1
- package/lib/browser/view-container.d.ts +6 -7
- package/lib/browser/view-container.d.ts.map +1 -1
- package/lib/browser/view-container.js +31 -27
- package/lib/browser/view-container.js.map +1 -1
- package/lib/browser/widget-manager.d.ts +1 -1
- package/lib/browser/widget-manager.d.ts.map +1 -1
- package/lib/browser/widget-manager.js +1 -1
- package/lib/browser/widget-manager.js.map +1 -1
- package/lib/browser/widget-manager.spec.js +1 -1
- package/lib/browser/widget-manager.spec.js.map +1 -1
- package/lib/browser/widgets/react-widget.d.ts +1 -1
- package/lib/browser/widgets/react-widget.d.ts.map +1 -1
- package/lib/browser/widgets/react-widget.js +1 -1
- package/lib/browser/widgets/react-widget.js.map +1 -1
- package/lib/browser/widgets/widget.d.ts +6 -6
- package/lib/browser/widgets/widget.d.ts.map +1 -1
- package/lib/browser/widgets/widget.js +10 -8
- package/lib/browser/widgets/widget.js.map +1 -1
- package/lib/common/i18n/localization.d.ts +2 -3
- package/lib/common/i18n/localization.d.ts.map +1 -1
- package/lib/common/i18n/localization.js +10 -3
- package/lib/common/i18n/localization.js.map +1 -1
- package/lib/common/json-schema.d.ts +1 -1
- package/lib/common/json-schema.d.ts.map +1 -1
- package/lib/common/preferences/preference-schema.d.ts +4 -1
- package/lib/common/preferences/preference-schema.d.ts.map +1 -1
- package/lib/common/preferences/preference-schema.js.map +1 -1
- package/lib/common/theme.d.ts +2 -0
- package/lib/common/theme.d.ts.map +1 -1
- package/lib/common/theme.js +5 -1
- package/lib/common/theme.js.map +1 -1
- package/lib/electron-browser/menu/electron-context-menu-renderer.d.ts.map +1 -1
- package/lib/electron-browser/menu/electron-context-menu-renderer.js +3 -1
- package/lib/electron-browser/menu/electron-context-menu-renderer.js.map +1 -1
- package/lib/electron-browser/menu/electron-menu-contribution.d.ts +1 -1
- package/lib/electron-browser/menu/electron-menu-contribution.d.ts.map +1 -1
- package/lib/electron-browser/menu/electron-menu-contribution.js +6 -4
- package/lib/electron-browser/menu/electron-menu-contribution.js.map +1 -1
- package/lib/electron-browser/preload.d.ts.map +1 -1
- package/lib/electron-browser/preload.js +3 -0
- package/lib/electron-browser/preload.js.map +1 -1
- package/lib/electron-common/electron-api.d.ts +3 -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 +1 -0
- package/lib/electron-main/electron-api-main.js.map +1 -1
- package/lib/electron-main/electron-main-application.d.ts +2 -0
- 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/node/messaging/websocket-frontend-connection-service.js +1 -1
- package/package.json +26 -26
- package/shared/@lumino/algorithm/index.d.ts +1 -0
- package/shared/@lumino/algorithm/index.js +1 -0
- package/shared/@lumino/commands/index.d.ts +1 -0
- package/shared/@lumino/commands/index.js +1 -0
- package/shared/@lumino/coreutils/index.d.ts +1 -0
- package/shared/@lumino/coreutils/index.js +1 -0
- package/shared/@lumino/domutils/index.d.ts +1 -0
- package/shared/@lumino/domutils/index.js +1 -0
- package/shared/@lumino/dragdrop/index.d.ts +1 -0
- package/shared/@lumino/dragdrop/index.js +1 -0
- package/shared/@lumino/messaging/index.d.ts +1 -0
- package/shared/@lumino/messaging/index.js +1 -0
- package/shared/@lumino/properties/index.d.ts +1 -0
- package/shared/@lumino/properties/index.js +1 -0
- package/shared/@lumino/signaling/index.d.ts +1 -0
- package/shared/@lumino/signaling/index.js +1 -0
- package/shared/@lumino/virtualdom/index.d.ts +1 -0
- package/shared/@lumino/virtualdom/index.js +1 -0
- package/shared/@lumino/widgets/index.d.ts +1 -0
- package/shared/@lumino/widgets/index.js +1 -0
- package/src/browser/about-dialog.tsx +3 -2
- package/src/browser/browser.ts +6 -1
- package/src/browser/common-frontend-contribution.ts +54 -22
- package/src/browser/common-styling-participants.ts +25 -25
- package/src/browser/context-menu-renderer.ts +3 -3
- package/src/browser/core-preferences.ts +5 -5
- package/src/browser/menu/browser-context-menu-renderer.ts +1 -2
- package/src/browser/menu/browser-menu-plugin.ts +24 -14
- package/src/browser/preferences/injectable-preference-proxy.ts +1 -1
- package/src/browser/preferences/preference-contribution.ts +1 -1
- package/src/browser/preferences/preference-provider.ts +1 -1
- package/src/browser/preferences/preference-service.ts +1 -1
- package/src/browser/preferences/preference-validation-service.spec.ts +1 -1
- package/src/browser/preferences/preference-validation-service.ts +1 -1
- package/src/browser/preload/i18n-preload-contribution.ts +22 -2
- package/src/browser/preload/preload-module.ts +5 -3
- package/src/browser/preload/text-replacement-contribution.ts +53 -0
- package/src/browser/saveable.ts +13 -3
- package/src/browser/shell/application-shell-mouse-tracker.ts +3 -3
- package/src/browser/shell/application-shell.ts +36 -32
- package/src/browser/shell/shell-layout-restorer.ts +1 -1
- package/src/browser/shell/side-panel-handler.ts +13 -12
- package/src/browser/shell/side-panel-toolbar.ts +2 -2
- package/src/browser/shell/sidebar-bottom-menu-widget.tsx +2 -1
- package/src/browser/shell/sidebar-menu-widget.tsx +1 -0
- package/src/browser/shell/split-panels.ts +1 -1
- package/src/browser/shell/tab-bar-decorator.ts +1 -1
- package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar.tsx +3 -3
- package/src/browser/shell/tab-bars.spec.ts +1 -1
- package/src/browser/shell/tab-bars.ts +93 -57
- package/src/browser/shell/theia-dock-panel.ts +3 -3
- package/src/browser/shell/view-column-service.ts +2 -2
- package/src/browser/shell/view-contribution.ts +1 -1
- package/src/browser/source-tree/source-tree.ts +3 -2
- package/src/browser/source-tree/tree-source.ts +1 -0
- package/src/browser/style/dialog.css +12 -12
- package/src/browser/style/dockpanel.css +19 -19
- package/src/browser/style/hover-service.css +1 -0
- package/src/browser/style/index.css +3 -3
- package/src/browser/style/menus.css +34 -31
- package/src/browser/style/sidepanel.css +52 -48
- package/src/browser/style/split-widget.css +5 -5
- package/src/browser/style/tabs.css +91 -97
- package/src/browser/style/view-container.css +14 -14
- package/src/browser/tree/tree-widget.tsx +3 -2
- package/src/browser/view-container.ts +40 -36
- package/src/browser/widget-manager.spec.ts +1 -1
- package/src/browser/widget-manager.ts +1 -1
- package/src/browser/widgets/react-widget.tsx +1 -1
- package/src/browser/widgets/widget.ts +11 -9
- package/src/common/i18n/localization.ts +10 -4
- package/src/common/i18n/nls.metadata.json +34921 -32708
- package/src/common/json-schema.ts +1 -1
- package/src/common/preferences/preference-schema.ts +4 -1
- package/src/common/theme.ts +6 -0
- package/src/electron-browser/menu/electron-context-menu-renderer.ts +3 -1
- package/src/electron-browser/menu/electron-menu-contribution.ts +6 -5
- package/src/electron-browser/preload.ts +6 -3
- package/src/electron-common/electron-api.ts +3 -0
- package/src/electron-main/electron-api-main.ts +4 -1
- package/src/electron-main/electron-main-application.ts +5 -0
- package/src/node/messaging/websocket-frontend-connection-service.ts +1 -2
- package/shared/@phosphor/algorithm/index.d.ts +0 -1
- package/shared/@phosphor/algorithm/index.js +0 -1
- package/shared/@phosphor/commands/index.d.ts +0 -1
- package/shared/@phosphor/commands/index.js +0 -1
- package/shared/@phosphor/coreutils/index.d.ts +0 -1
- package/shared/@phosphor/coreutils/index.js +0 -1
- package/shared/@phosphor/domutils/index.d.ts +0 -1
- package/shared/@phosphor/domutils/index.js +0 -1
- package/shared/@phosphor/dragdrop/index.d.ts +0 -1
- package/shared/@phosphor/dragdrop/index.js +0 -1
- package/shared/@phosphor/messaging/index.d.ts +0 -1
- package/shared/@phosphor/messaging/index.js +0 -1
- package/shared/@phosphor/properties/index.d.ts +0 -1
- package/shared/@phosphor/properties/index.js +0 -1
- package/shared/@phosphor/signaling/index.d.ts +0 -1
- package/shared/@phosphor/signaling/index.js +0 -1
- package/shared/@phosphor/virtualdom/index.d.ts +0 -1
- package/shared/@phosphor/virtualdom/index.js +0 -1
- package/shared/@phosphor/widgets/index.d.ts +0 -1
- package/shared/@phosphor/widgets/index.js +0 -1
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
// *****************************************************************************
|
|
16
16
|
|
|
17
17
|
import { interfaces, injectable, inject, postConstruct } from 'inversify';
|
|
18
|
-
import {
|
|
18
|
+
import { find, some, every, map, ArrayExt } from '@lumino/algorithm';
|
|
19
19
|
import {
|
|
20
20
|
Widget, EXPANSION_TOGGLE_CLASS, COLLAPSED_CLASS, CODICON_TREE_ITEM_CLASSES, MessageLoop, Message, SplitPanel,
|
|
21
21
|
BaseWidget, addEventListener, SplitLayout, LayoutItem, PanelLayout, addKeyListener, waitForRevealed, UnsafeWidgetUtilities, DockPanel, PINNED_CLASS
|
|
@@ -34,9 +34,9 @@ import { isEmpty, isObject, nls } from '../common';
|
|
|
34
34
|
import { WidgetManager } from './widget-manager';
|
|
35
35
|
import { Key } from './keys';
|
|
36
36
|
import { ProgressBarFactory } from './progress-bar-factory';
|
|
37
|
-
import { Drag
|
|
38
|
-
import { MimeData } from '@
|
|
39
|
-
import { ElementExt } from '@
|
|
37
|
+
import { Drag } from '@lumino/dragdrop';
|
|
38
|
+
import { MimeData } from '@lumino/coreutils';
|
|
39
|
+
import { ElementExt } from '@lumino/domutils';
|
|
40
40
|
import { TabBarDecoratorService } from './shell/tab-bar-decorator';
|
|
41
41
|
|
|
42
42
|
export interface ViewContainerTitleOptions {
|
|
@@ -170,7 +170,11 @@ export class ViewContainer extends BaseWidget implements StatefulWidget, Applica
|
|
|
170
170
|
if (event.button === 2 && every(this.containerLayout.iter(), part => !!part.isHidden)) {
|
|
171
171
|
event.stopPropagation();
|
|
172
172
|
event.preventDefault();
|
|
173
|
-
contextMenuRenderer.render({
|
|
173
|
+
contextMenuRenderer.render({
|
|
174
|
+
menuPath: this.contextMenuPath,
|
|
175
|
+
anchor: event,
|
|
176
|
+
context: event.currentTarget instanceof HTMLElement ? event.currentTarget : this.node
|
|
177
|
+
});
|
|
174
178
|
}
|
|
175
179
|
}),
|
|
176
180
|
commandRegistry.registerCommand({ id: this.globalHideCommandId }, {
|
|
@@ -220,7 +224,7 @@ export class ViewContainer extends BaseWidget implements StatefulWidget, Applica
|
|
|
220
224
|
}
|
|
221
225
|
|
|
222
226
|
protected updateSplitterVisibility(): void {
|
|
223
|
-
const className = '
|
|
227
|
+
const className = 'lm-first-visible';
|
|
224
228
|
let firstFound = false;
|
|
225
229
|
for (const part of this.getParts()) {
|
|
226
230
|
if (!part.isHidden && !firstFound) {
|
|
@@ -436,7 +440,7 @@ export class ViewContainer extends BaseWidget implements StatefulWidget, Applica
|
|
|
436
440
|
if (event.button === 2) {
|
|
437
441
|
event.preventDefault();
|
|
438
442
|
event.stopPropagation();
|
|
439
|
-
this.contextMenuRenderer.render({ menuPath: this.contextMenuPath, anchor: event });
|
|
443
|
+
this.contextMenuRenderer.render({ menuPath: this.contextMenuPath, anchor: event, context: this.node });
|
|
440
444
|
}
|
|
441
445
|
}),
|
|
442
446
|
newPart.onTitleChanged(() => this.refreshMenu(newPart)),
|
|
@@ -713,47 +717,47 @@ export class ViewContainer extends BaseWidget implements StatefulWidget, Applica
|
|
|
713
717
|
|
|
714
718
|
protected override onBeforeAttach(msg: Message): void {
|
|
715
719
|
super.onBeforeAttach(msg);
|
|
716
|
-
this.node.addEventListener('
|
|
717
|
-
this.node.addEventListener('
|
|
718
|
-
this.node.addEventListener('
|
|
719
|
-
this.node.addEventListener('
|
|
720
|
+
this.node.addEventListener('lm-dragenter', this, true);
|
|
721
|
+
this.node.addEventListener('lm-dragover', this, true);
|
|
722
|
+
this.node.addEventListener('lm-dragleave', this, true);
|
|
723
|
+
this.node.addEventListener('lm-drop', this, true);
|
|
720
724
|
}
|
|
721
725
|
|
|
722
726
|
protected override onAfterDetach(msg: Message): void {
|
|
723
727
|
super.onAfterDetach(msg);
|
|
724
|
-
this.node.removeEventListener('
|
|
725
|
-
this.node.removeEventListener('
|
|
726
|
-
this.node.removeEventListener('
|
|
727
|
-
this.node.removeEventListener('
|
|
728
|
+
this.node.removeEventListener('lm-dragenter', this, true);
|
|
729
|
+
this.node.removeEventListener('lm-dragover', this, true);
|
|
730
|
+
this.node.removeEventListener('lm-dragleave', this, true);
|
|
731
|
+
this.node.removeEventListener('lm-drop', this, true);
|
|
728
732
|
}
|
|
729
733
|
|
|
730
734
|
handleEvent(event: Event): void {
|
|
731
735
|
switch (event.type) {
|
|
732
|
-
case '
|
|
733
|
-
this.handleDragEnter(event as
|
|
736
|
+
case 'lm-dragenter':
|
|
737
|
+
this.handleDragEnter(event as Drag.Event);
|
|
734
738
|
break;
|
|
735
|
-
case '
|
|
736
|
-
this.handleDragOver(event as
|
|
739
|
+
case 'lm-dragover':
|
|
740
|
+
this.handleDragOver(event as Drag.Event);
|
|
737
741
|
break;
|
|
738
|
-
case '
|
|
739
|
-
this.handleDragLeave(event as
|
|
742
|
+
case 'lm-dragleave':
|
|
743
|
+
this.handleDragLeave(event as Drag.Event);
|
|
740
744
|
break;
|
|
741
|
-
case '
|
|
742
|
-
this.handleDrop(event as
|
|
745
|
+
case 'lm-drop':
|
|
746
|
+
this.handleDrop(event as Drag.Event);
|
|
743
747
|
break;
|
|
744
748
|
}
|
|
745
749
|
}
|
|
746
750
|
|
|
747
|
-
handleDragEnter(event:
|
|
748
|
-
if (event.mimeData.hasData('application/vnd.
|
|
751
|
+
handleDragEnter(event: Drag.Event): void {
|
|
752
|
+
if (event.mimeData.hasData('application/vnd.lumino.view-container-factory')) {
|
|
749
753
|
event.preventDefault();
|
|
750
754
|
event.stopPropagation();
|
|
751
755
|
}
|
|
752
756
|
}
|
|
753
757
|
|
|
754
758
|
toDisposeOnDragEnd = new DisposableCollection();
|
|
755
|
-
handleDragOver(event:
|
|
756
|
-
const factory = event.mimeData.getData('application/vnd.
|
|
759
|
+
handleDragOver(event: Drag.Event): void {
|
|
760
|
+
const factory = event.mimeData.getData('application/vnd.lumino.view-container-factory');
|
|
757
761
|
const widget = factory && factory();
|
|
758
762
|
if (!(widget instanceof ViewContainerPart)) {
|
|
759
763
|
return;
|
|
@@ -797,17 +801,17 @@ export class ViewContainer extends BaseWidget implements StatefulWidget, Applica
|
|
|
797
801
|
event.dropAction = event.proposedAction;
|
|
798
802
|
};
|
|
799
803
|
|
|
800
|
-
handleDragLeave(event:
|
|
804
|
+
handleDragLeave(event: Drag.Event): void {
|
|
801
805
|
this.toDisposeOnDragEnd.dispose();
|
|
802
|
-
if (event.mimeData.hasData('application/vnd.
|
|
806
|
+
if (event.mimeData.hasData('application/vnd.lumino.view-container-factory')) {
|
|
803
807
|
event.preventDefault();
|
|
804
808
|
event.stopPropagation();
|
|
805
809
|
}
|
|
806
810
|
};
|
|
807
811
|
|
|
808
|
-
handleDrop(event:
|
|
812
|
+
handleDrop(event: Drag.Event): void {
|
|
809
813
|
this.toDisposeOnDragEnd.dispose();
|
|
810
|
-
const factory = event.mimeData.getData('application/vnd.
|
|
814
|
+
const factory = event.mimeData.getData('application/vnd.lumino.view-container-factory');
|
|
811
815
|
const draggedPart = factory && factory();
|
|
812
816
|
if (!(draggedPart instanceof ViewContainerPart)) {
|
|
813
817
|
event.dropAction = 'none';
|
|
@@ -834,7 +838,7 @@ export class ViewContainer extends BaseWidget implements StatefulWidget, Applica
|
|
|
834
838
|
event => {
|
|
835
839
|
event.preventDefault();
|
|
836
840
|
const mimeData = new MimeData();
|
|
837
|
-
mimeData.setData('application/vnd.
|
|
841
|
+
mimeData.setData('application/vnd.lumino.view-container-factory', () => part);
|
|
838
842
|
const clonedHeader = part.headerElement.cloneNode(true) as HTMLElement;
|
|
839
843
|
clonedHeader.style.width = part.node.style.width;
|
|
840
844
|
clonedHeader.style.opacity = '0.6';
|
|
@@ -844,7 +848,7 @@ export class ViewContainer extends BaseWidget implements StatefulWidget, Applica
|
|
|
844
848
|
proposedAction: 'move',
|
|
845
849
|
supportedActions: 'move'
|
|
846
850
|
});
|
|
847
|
-
part.node.classList.add('
|
|
851
|
+
part.node.classList.add('lm-mod-hidden');
|
|
848
852
|
drag.start(event.clientX, event.clientY).then(dropAction => {
|
|
849
853
|
// The promise is resolved when the drag has ended
|
|
850
854
|
if (dropAction === 'move' && part.currentViewContainerId !== this.id) {
|
|
@@ -852,7 +856,7 @@ export class ViewContainer extends BaseWidget implements StatefulWidget, Applica
|
|
|
852
856
|
this.lastVisibleState = this.doStoreState();
|
|
853
857
|
}
|
|
854
858
|
});
|
|
855
|
-
setTimeout(() => { part.node.classList.remove('
|
|
859
|
+
setTimeout(() => { part.node.classList.remove('lm-mod-hidden'); }, 0);
|
|
856
860
|
}, false));
|
|
857
861
|
}
|
|
858
862
|
|
|
@@ -1364,13 +1368,13 @@ export class ViewContainerLayout extends SplitLayout {
|
|
|
1364
1368
|
return (this as any)._items as Array<LayoutItem & ViewContainerLayout.Item>;
|
|
1365
1369
|
}
|
|
1366
1370
|
|
|
1367
|
-
|
|
1371
|
+
iter(): IterableIterator<ViewContainerPart> {
|
|
1368
1372
|
return map(this.items, item => item.widget);
|
|
1369
1373
|
}
|
|
1370
1374
|
|
|
1371
1375
|
// @ts-expect-error TS2611 `SplitLayout.widgets` is declared as `readonly widgets` but is implemented as a getter.
|
|
1372
1376
|
get widgets(): ViewContainerPart[] {
|
|
1373
|
-
return
|
|
1377
|
+
return Array.from(this.iter());
|
|
1374
1378
|
}
|
|
1375
1379
|
|
|
1376
1380
|
override attachWidget(index: number, widget: ViewContainerPart): void {
|
|
@@ -20,7 +20,7 @@ let disableJsDom = enableJSDOM();
|
|
|
20
20
|
import { Container, ContainerModule } from 'inversify';
|
|
21
21
|
import { expect } from 'chai';
|
|
22
22
|
import { WidgetManager, WidgetFactory } from './widget-manager';
|
|
23
|
-
import { Widget } from '@
|
|
23
|
+
import { Widget } from '@lumino/widgets';
|
|
24
24
|
import { ILogger } from '../common/logger';
|
|
25
25
|
import { MockLogger } from '../common/test/mock-logger';
|
|
26
26
|
import { bindContributionProvider } from '../common';
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
// *****************************************************************************
|
|
16
16
|
|
|
17
17
|
import { inject, named, injectable } from 'inversify';
|
|
18
|
-
import { Widget } from '@
|
|
18
|
+
import { Widget } from '@lumino/widgets';
|
|
19
19
|
import { ILogger, Emitter, Event, ContributionProvider, MaybePromise, WaitUntilEvent } from '../common';
|
|
20
20
|
import stableJsonStringify = require('fast-json-stable-stringify');
|
|
21
21
|
|
|
@@ -18,7 +18,7 @@ import * as React from 'react';
|
|
|
18
18
|
import { injectable, unmanaged } from 'inversify';
|
|
19
19
|
import { Disposable } from '../../common';
|
|
20
20
|
import { BaseWidget, Message } from './widget';
|
|
21
|
-
import { Widget } from '@
|
|
21
|
+
import { Widget } from '@lumino/widgets';
|
|
22
22
|
import { createRoot, Root } from 'react-dom/client';
|
|
23
23
|
|
|
24
24
|
@injectable()
|
|
@@ -17,20 +17,20 @@
|
|
|
17
17
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
18
18
|
|
|
19
19
|
import { injectable, decorate, unmanaged } from 'inversify';
|
|
20
|
-
import { Title, Widget } from '@
|
|
21
|
-
import { Message, MessageLoop } from '@
|
|
20
|
+
import { Title, Widget } from '@lumino/widgets';
|
|
21
|
+
import { Message, MessageLoop } from '@lumino/messaging';
|
|
22
22
|
import { Emitter, Event, Disposable, DisposableCollection, MaybePromise, isObject } from '../../common';
|
|
23
23
|
import { KeyCode, KeysOrKeyCodes } from '../keyboard/keys';
|
|
24
24
|
|
|
25
25
|
import PerfectScrollbar from 'perfect-scrollbar';
|
|
26
26
|
import { PreviewableWidget } from '../widgets/previewable-widget';
|
|
27
|
-
import { Slot } from '@
|
|
27
|
+
import { Slot } from '@lumino/signaling';
|
|
28
28
|
|
|
29
29
|
decorate(injectable(), Widget);
|
|
30
30
|
decorate(unmanaged(), Widget, 0);
|
|
31
31
|
|
|
32
|
-
export * from '@
|
|
33
|
-
export * from '@
|
|
32
|
+
export * from '@lumino/widgets';
|
|
33
|
+
export * from '@lumino/messaging';
|
|
34
34
|
|
|
35
35
|
export const ACTION_ITEM = 'action-label';
|
|
36
36
|
|
|
@@ -62,8 +62,8 @@ export const DEFAULT_SCROLL_OPTIONS: PerfectScrollbar.Options = {
|
|
|
62
62
|
};
|
|
63
63
|
|
|
64
64
|
/**
|
|
65
|
-
* At a number of places in the code, we have effectively reimplemented
|
|
66
|
-
* but omitted the checks that
|
|
65
|
+
* At a number of places in the code, we have effectively reimplemented Lumino's Widget.attach and Widget.detach,
|
|
66
|
+
* but omitted the checks that Lumino expects to be performed for those operations. That is a bad idea, because it
|
|
67
67
|
* means that we are telling widgets that they are attached or detached when not all the conditions that should apply
|
|
68
68
|
* do apply. We should explicitly mark those locations so that we know where we should go fix them later.
|
|
69
69
|
*/
|
|
@@ -234,9 +234,11 @@ export class BaseWidget extends Widget implements PreviewableWidget {
|
|
|
234
234
|
}
|
|
235
235
|
|
|
236
236
|
override clearFlag(flag: Widget.Flag): void {
|
|
237
|
+
const wasVisible = this.isVisible;
|
|
237
238
|
super.clearFlag(flag);
|
|
238
|
-
|
|
239
|
-
|
|
239
|
+
const isVisible = this.isVisible;
|
|
240
|
+
if (isVisible !== wasVisible) {
|
|
241
|
+
this.handleVisiblityChanged(isVisible);
|
|
240
242
|
}
|
|
241
243
|
}
|
|
242
244
|
}
|
|
@@ -25,7 +25,8 @@ export interface AsyncLocalizationProvider {
|
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
export interface Localization extends LanguageInfo {
|
|
28
|
-
translations:
|
|
28
|
+
translations: Record<string, string>;
|
|
29
|
+
replacements?: Record<string, string>;
|
|
29
30
|
}
|
|
30
31
|
|
|
31
32
|
export interface LanguageInfo {
|
|
@@ -50,9 +51,14 @@ export namespace Localization {
|
|
|
50
51
|
export function localize(localization: Localization | undefined, key: string, defaultValue: string, ...args: FormatType[]): string {
|
|
51
52
|
let value = defaultValue;
|
|
52
53
|
if (localization) {
|
|
53
|
-
const
|
|
54
|
-
if (
|
|
55
|
-
value =
|
|
54
|
+
const replacement = localization.replacements?.[defaultValue];
|
|
55
|
+
if (typeof replacement === 'string') {
|
|
56
|
+
value = replacement;
|
|
57
|
+
} else {
|
|
58
|
+
const translation = localization.translations[key];
|
|
59
|
+
if (translation) {
|
|
60
|
+
value = normalize(translation);
|
|
61
|
+
}
|
|
56
62
|
}
|
|
57
63
|
}
|
|
58
64
|
return format(value, args);
|