@theia/editor-preview 1.27.0-next.4 → 1.27.0-next.41
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/lib/browser/editor-preview-manager.d.ts +2 -4
- package/lib/browser/editor-preview-manager.d.ts.map +1 -1
- package/lib/browser/editor-preview-manager.js +22 -24
- package/lib/browser/editor-preview-manager.js.map +1 -1
- package/lib/browser/editor-preview-widget.js +1 -1
- package/lib/browser/editor-preview-widget.js.map +1 -1
- package/package.json +5 -5
- package/src/browser/editor-preview-manager.ts +22 -22
- package/src/browser/editor-preview-widget.ts +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EditorManager, EditorOpenerOptions, EditorWidget } from '@theia/editor/lib/browser';
|
|
2
2
|
import { EditorPreviewPreferences } from './editor-preview-preferences';
|
|
3
|
-
import {
|
|
3
|
+
import { MaybePromise } from '@theia/core/lib/common';
|
|
4
4
|
import URI from '@theia/core/lib/common/uri';
|
|
5
5
|
import { EditorPreviewOptions } from './editor-preview-widget-factory';
|
|
6
6
|
import { EditorPreviewWidget } from './editor-preview-widget';
|
|
@@ -9,15 +9,13 @@ export declare class EditorPreviewManager extends EditorManager {
|
|
|
9
9
|
readonly id: string;
|
|
10
10
|
protected readonly preferences: EditorPreviewPreferences;
|
|
11
11
|
protected readonly stateService: FrontendApplicationStateService;
|
|
12
|
-
protected currentPreview: EditorPreviewWidget | undefined;
|
|
13
|
-
protected toDisposeOnPreviewChange: DisposableCollection;
|
|
14
12
|
/**
|
|
15
13
|
* Until the layout has been restored, widget state is not reliable, so we ignore creation events.
|
|
16
14
|
*/
|
|
17
15
|
protected layoutIsSet: boolean;
|
|
18
16
|
protected init(): void;
|
|
19
17
|
protected doOpen(widget: EditorPreviewWidget, options?: EditorOpenerOptions): Promise<void>;
|
|
20
|
-
protected handleNewPreview(
|
|
18
|
+
protected handleNewPreview(newPreviewWidget: EditorPreviewWidget): void;
|
|
21
19
|
protected tryGetPendingWidget(uri: URI, options?: EditorOpenerOptions): MaybePromise<EditorWidget> | undefined;
|
|
22
20
|
protected getWidget(uri: URI, options?: EditorOpenerOptions): Promise<EditorWidget | undefined>;
|
|
23
21
|
protected getOrCreateWidget(uri: URI, options?: EditorOpenerOptions): Promise<EditorWidget>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editor-preview-manager.d.ts","sourceRoot":"","sources":["../../src/browser/editor-preview-manager.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE7F,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"editor-preview-manager.d.ts","sourceRoot":"","sources":["../../src/browser/editor-preview-manager.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE7F,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,GAAG,MAAM,4BAA4B,CAAC;AAC7C,OAAO,EAA8B,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACnG,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,+BAA+B,EAAE,MAAM,oDAAoD,CAAC;AAErG,qBACa,oBAAqB,SAAQ,aAAa;IACnD,SAAkB,EAAE,SAAiC;IAEnB,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,wBAAwB,CAAC;IAClD,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,+BAA+B,CAAC;IAE1G;;OAEG;IACH,SAAS,CAAC,WAAW,UAAS;cAGX,IAAI,IAAI,IAAI;cAkCN,MAAM,CAAC,MAAM,EAAE,mBAAmB,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAe1G,SAAS,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,mBAAmB,GAAG,IAAI;cAapD,mBAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,YAAY,CAAC,YAAY,CAAC,GAAG,SAAS;cAI9F,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;cAIrF,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,CAAC;cAIvF,mBAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,oBAAoB;IAMrG,SAAS,CAAC,0BAA0B,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;CAM3D"}
|
|
@@ -28,14 +28,13 @@ exports.EditorPreviewManager = void 0;
|
|
|
28
28
|
const browser_1 = require("@theia/editor/lib/browser");
|
|
29
29
|
const inversify_1 = require("@theia/core/shared/inversify");
|
|
30
30
|
const editor_preview_preferences_1 = require("./editor-preview-preferences");
|
|
31
|
-
const common_1 = require("@theia/core/lib/common");
|
|
32
31
|
const editor_preview_widget_factory_1 = require("./editor-preview-widget-factory");
|
|
32
|
+
const editor_preview_widget_1 = require("./editor-preview-widget");
|
|
33
33
|
const frontend_application_state_1 = require("@theia/core/lib/browser/frontend-application-state");
|
|
34
34
|
let EditorPreviewManager = class EditorPreviewManager extends browser_1.EditorManager {
|
|
35
35
|
constructor() {
|
|
36
36
|
super(...arguments);
|
|
37
37
|
this.id = editor_preview_widget_factory_1.EditorPreviewWidgetFactory.ID;
|
|
38
|
-
this.toDisposeOnPreviewChange = new common_1.DisposableCollection();
|
|
39
38
|
/**
|
|
40
39
|
* Until the layout has been restored, widget state is not reliable, so we ignore creation events.
|
|
41
40
|
*/
|
|
@@ -47,17 +46,18 @@ let EditorPreviewManager = class EditorPreviewManager extends browser_1.EditorMa
|
|
|
47
46
|
this.onCreated((widget) => {
|
|
48
47
|
if (this.layoutIsSet && widget.isPreview) {
|
|
49
48
|
const oneTimeDisposable = widget.onDidChangeVisibility(() => {
|
|
50
|
-
const { currentPreview } = this;
|
|
51
49
|
this.handleNewPreview(widget);
|
|
52
|
-
currentPreview === null || currentPreview === void 0 ? void 0 : currentPreview.dispose();
|
|
53
50
|
oneTimeDisposable.dispose();
|
|
54
51
|
});
|
|
55
52
|
}
|
|
56
53
|
});
|
|
57
54
|
this.preferences.onPreferenceChanged(change => {
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
55
|
+
if (change.preferenceName === 'editor.enablePreview' && !change.newValue) {
|
|
56
|
+
this.all.forEach((editor) => {
|
|
57
|
+
if (editor.isPreview) {
|
|
58
|
+
editor.convertToNonPreview();
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
61
|
}
|
|
62
62
|
;
|
|
63
63
|
});
|
|
@@ -74,15 +74,9 @@ let EditorPreviewManager = class EditorPreviewManager extends browser_1.EditorMa
|
|
|
74
74
|
async doOpen(widget, options) {
|
|
75
75
|
const { preview, widgetOptions = { area: 'main' }, mode = 'activate' } = options !== null && options !== void 0 ? options : {};
|
|
76
76
|
if (!widget.isAttached) {
|
|
77
|
-
|
|
78
|
-
const insertionOptions = this.currentPreview ? { ref: this.currentPreview } : widgetOptions;
|
|
79
|
-
await this.shell.addWidget(widget, insertionOptions);
|
|
80
|
-
}
|
|
81
|
-
else {
|
|
82
|
-
this.shell.addWidget(widget, widgetOptions);
|
|
83
|
-
}
|
|
77
|
+
this.shell.addWidget(widget, widgetOptions);
|
|
84
78
|
}
|
|
85
|
-
else if (!preview && widget
|
|
79
|
+
else if (!preview && widget.isPreview) {
|
|
86
80
|
widget.convertToNonPreview();
|
|
87
81
|
}
|
|
88
82
|
if (mode === 'activate') {
|
|
@@ -92,12 +86,17 @@ let EditorPreviewManager = class EditorPreviewManager extends browser_1.EditorMa
|
|
|
92
86
|
await this.shell.revealWidget(widget.id);
|
|
93
87
|
}
|
|
94
88
|
}
|
|
95
|
-
handleNewPreview(
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
89
|
+
handleNewPreview(newPreviewWidget) {
|
|
90
|
+
if (newPreviewWidget.isPreview) {
|
|
91
|
+
const tabbar = this.shell.getTabBarFor(newPreviewWidget);
|
|
92
|
+
if (tabbar) {
|
|
93
|
+
for (const title of tabbar.titles) {
|
|
94
|
+
if (title.owner !== newPreviewWidget && title.owner instanceof editor_preview_widget_1.EditorPreviewWidget && title.owner.isPreview) {
|
|
95
|
+
title.owner.dispose();
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
101
100
|
}
|
|
102
101
|
tryGetPendingWidget(uri, options) {
|
|
103
102
|
var _a;
|
|
@@ -117,10 +116,9 @@ let EditorPreviewManager = class EditorPreviewManager extends browser_1.EditorMa
|
|
|
117
116
|
return navigatableOptions;
|
|
118
117
|
}
|
|
119
118
|
convertEditorOnDoubleClick(event) {
|
|
120
|
-
var _a;
|
|
121
119
|
const widget = this.shell.findTargetedWidget(event);
|
|
122
|
-
if (widget
|
|
123
|
-
|
|
120
|
+
if (widget instanceof editor_preview_widget_1.EditorPreviewWidget && widget.isPreview) {
|
|
121
|
+
widget.convertToNonPreview();
|
|
124
122
|
}
|
|
125
123
|
}
|
|
126
124
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editor-preview-manager.js","sourceRoot":"","sources":["../../src/browser/editor-preview-manager.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,6CAA6C;AAC7C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;;;;;;;;;;;;AAEhF,uDAA6F;AAC7F,4DAAiF;AACjF,6EAAwE;
|
|
1
|
+
{"version":3,"file":"editor-preview-manager.js","sourceRoot":"","sources":["../../src/browser/editor-preview-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -44,7 +44,7 @@ class EditorPreviewWidget extends browser_2.EditorWidget {
|
|
|
44
44
|
});
|
|
45
45
|
oneTimeListeners.push(oneTimeDirtyChangeListener);
|
|
46
46
|
const oneTimeTitleChangeHandler = () => {
|
|
47
|
-
if (this.title.className.
|
|
47
|
+
if (this.title.className.includes(browser_1.PINNED_CLASS)) {
|
|
48
48
|
this.convertToNonPreview();
|
|
49
49
|
oneTimeListeners.dispose();
|
|
50
50
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editor-preview-widget.js","sourceRoot":"","sources":["../../src/browser/editor-preview-widget.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0CAA0C;AAC1C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;;;AAGhF,qDAAkF;AAClF,uDAAqE;AACrE,mDAAsH;AACtH,sEAA8D;AAE9D,MAAM,mBAAmB,GAAG,qCAAqC,CAAC;AAClE,MAAa,mBAAoB,SAAQ,sBAAY;IAajD,YACI,MAAkB,EAClB,gBAAkC;QAElC,KAAK,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;QAhB1B,eAAU,GAAG,KAAK,CAAC;QAGV,mCAA8B,GAAG,IAAI,gBAAO,EAAQ,CAAC;QAC/D,4BAAuB,GAAG,IAAI,CAAC,8BAA8B,CAAC,KAAK,CAAC;QAE1D,8BAAyB,GAAG,IAAI,6BAAoB,EAAE,CAAC;QAWtE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;QACzD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IACxD,CAAC;IAXD,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAWD,iBAAiB;QACb,MAAM,gBAAgB,GAAG,IAAI,6BAAoB,EAAE,CAAC;QACpD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,IAAI,mBAAmB,EAAE,CAAC;QAClD,MAAM,0BAA0B,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,EAAE;YACjE,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC3B,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,gBAAgB,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QAClD,MAAM,yBAAyB,GAAG,GAAG,EAAE;YACnC,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"editor-preview-widget.js","sourceRoot":"","sources":["../../src/browser/editor-preview-widget.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theia/editor-preview",
|
|
3
|
-
"version": "1.27.0-next.
|
|
3
|
+
"version": "1.27.0-next.41+f6c0689dde8",
|
|
4
4
|
"description": "Theia - Editor Preview Extension",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@theia/core": "1.27.0-next.
|
|
7
|
-
"@theia/editor": "1.27.0-next.
|
|
8
|
-
"@theia/navigator": "1.27.0-next.
|
|
6
|
+
"@theia/core": "1.27.0-next.41+f6c0689dde8",
|
|
7
|
+
"@theia/editor": "1.27.0-next.41+f6c0689dde8",
|
|
8
|
+
"@theia/navigator": "1.27.0-next.41+f6c0689dde8"
|
|
9
9
|
},
|
|
10
10
|
"publishConfig": {
|
|
11
11
|
"access": "public"
|
|
@@ -45,5 +45,5 @@
|
|
|
45
45
|
"nyc": {
|
|
46
46
|
"extends": "../../configs/nyc.json"
|
|
47
47
|
},
|
|
48
|
-
"gitHead": "
|
|
48
|
+
"gitHead": "f6c0689dde8b207726deab75bc3cb5cfdae6acfb"
|
|
49
49
|
}
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
import { EditorManager, EditorOpenerOptions, EditorWidget } from '@theia/editor/lib/browser';
|
|
18
18
|
import { inject, injectable, postConstruct } from '@theia/core/shared/inversify';
|
|
19
19
|
import { EditorPreviewPreferences } from './editor-preview-preferences';
|
|
20
|
-
import {
|
|
20
|
+
import { MaybePromise } from '@theia/core/lib/common';
|
|
21
21
|
import URI from '@theia/core/lib/common/uri';
|
|
22
22
|
import { EditorPreviewWidgetFactory, EditorPreviewOptions } from './editor-preview-widget-factory';
|
|
23
23
|
import { EditorPreviewWidget } from './editor-preview-widget';
|
|
@@ -30,8 +30,6 @@ export class EditorPreviewManager extends EditorManager {
|
|
|
30
30
|
@inject(EditorPreviewPreferences) protected readonly preferences: EditorPreviewPreferences;
|
|
31
31
|
@inject(FrontendApplicationStateService) protected readonly stateService: FrontendApplicationStateService;
|
|
32
32
|
|
|
33
|
-
protected currentPreview: EditorPreviewWidget | undefined;
|
|
34
|
-
protected toDisposeOnPreviewChange = new DisposableCollection();
|
|
35
33
|
/**
|
|
36
34
|
* Until the layout has been restored, widget state is not reliable, so we ignore creation events.
|
|
37
35
|
*/
|
|
@@ -44,17 +42,19 @@ export class EditorPreviewManager extends EditorManager {
|
|
|
44
42
|
this.onCreated((widget: EditorPreviewWidget) => {
|
|
45
43
|
if (this.layoutIsSet && widget.isPreview) {
|
|
46
44
|
const oneTimeDisposable = widget.onDidChangeVisibility(() => {
|
|
47
|
-
const { currentPreview } = this;
|
|
48
45
|
this.handleNewPreview(widget);
|
|
49
|
-
currentPreview?.dispose();
|
|
50
46
|
oneTimeDisposable.dispose();
|
|
51
47
|
});
|
|
52
48
|
}
|
|
53
49
|
});
|
|
54
50
|
|
|
55
51
|
this.preferences.onPreferenceChanged(change => {
|
|
56
|
-
if (!change.newValue) {
|
|
57
|
-
this.
|
|
52
|
+
if (change.preferenceName === 'editor.enablePreview' && !change.newValue) {
|
|
53
|
+
this.all.forEach((editor: EditorPreviewWidget) => {
|
|
54
|
+
if (editor.isPreview) {
|
|
55
|
+
editor.convertToNonPreview();
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
58
|
};
|
|
59
59
|
});
|
|
60
60
|
|
|
@@ -73,13 +73,8 @@ export class EditorPreviewManager extends EditorManager {
|
|
|
73
73
|
protected override async doOpen(widget: EditorPreviewWidget, options?: EditorOpenerOptions): Promise<void> {
|
|
74
74
|
const { preview, widgetOptions = { area: 'main' }, mode = 'activate' } = options ?? {};
|
|
75
75
|
if (!widget.isAttached) {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
await this.shell.addWidget(widget, insertionOptions);
|
|
79
|
-
} else {
|
|
80
|
-
this.shell.addWidget(widget, widgetOptions);
|
|
81
|
-
}
|
|
82
|
-
} else if (!preview && widget === this.currentPreview) {
|
|
76
|
+
this.shell.addWidget(widget, widgetOptions);
|
|
77
|
+
} else if (!preview && widget.isPreview) {
|
|
83
78
|
widget.convertToNonPreview();
|
|
84
79
|
}
|
|
85
80
|
|
|
@@ -90,12 +85,17 @@ export class EditorPreviewManager extends EditorManager {
|
|
|
90
85
|
}
|
|
91
86
|
}
|
|
92
87
|
|
|
93
|
-
protected handleNewPreview(
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
88
|
+
protected handleNewPreview(newPreviewWidget: EditorPreviewWidget): void {
|
|
89
|
+
if (newPreviewWidget.isPreview) {
|
|
90
|
+
const tabbar = this.shell.getTabBarFor(newPreviewWidget);
|
|
91
|
+
if (tabbar) {
|
|
92
|
+
for (const title of tabbar.titles) {
|
|
93
|
+
if (title.owner !== newPreviewWidget && title.owner instanceof EditorPreviewWidget && title.owner.isPreview) {
|
|
94
|
+
title.owner.dispose();
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
99
|
}
|
|
100
100
|
|
|
101
101
|
protected override tryGetPendingWidget(uri: URI, options?: EditorOpenerOptions): MaybePromise<EditorWidget> | undefined {
|
|
@@ -118,8 +118,8 @@ export class EditorPreviewManager extends EditorManager {
|
|
|
118
118
|
|
|
119
119
|
protected convertEditorOnDoubleClick(event: Event): void {
|
|
120
120
|
const widget = this.shell.findTargetedWidget(event);
|
|
121
|
-
if (widget
|
|
122
|
-
|
|
121
|
+
if (widget instanceof EditorPreviewWidget && widget.isPreview) {
|
|
122
|
+
widget.convertToNonPreview();
|
|
123
123
|
}
|
|
124
124
|
}
|
|
125
125
|
}
|
|
@@ -53,7 +53,7 @@ export class EditorPreviewWidget extends EditorWidget {
|
|
|
53
53
|
});
|
|
54
54
|
oneTimeListeners.push(oneTimeDirtyChangeListener);
|
|
55
55
|
const oneTimeTitleChangeHandler = () => {
|
|
56
|
-
if (this.title.className.
|
|
56
|
+
if (this.title.className.includes(PINNED_CLASS)) {
|
|
57
57
|
this.convertToNonPreview();
|
|
58
58
|
oneTimeListeners.dispose();
|
|
59
59
|
}
|