fcr-ui-scene 3.7.5 → 3.7.7-rc.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.
- package/lib/creator/index.js +15 -7
- package/lib/creator/provider-initializer.browser.js +13 -4
- package/lib/creator/provider-initializer.electron.js +22 -10
- package/lib/electron/bootstrap-sdk.js +90 -6
- package/lib/electron/injections.d.ts +1 -0
- package/lib/electron/injections.js +5 -1
- package/lib/electron/ipc/type.d.ts +1 -0
- package/lib/electron/ipc/type.js +1 -0
- package/lib/electron/preload.js +1 -0
- package/lib/electron/sdk-helper.d.ts +3 -0
- package/lib/electron/sdk-helper.js +53 -19
- package/lib/electron/struct.d.ts +7 -1
- package/lib/electron/struct.js +8 -1
- package/lib/electron/until.d.ts +7 -1
- package/lib/electron/until.js +11 -2
- package/lib/fragments/annotation/store.js +2 -0
- package/lib/modules/action-bar/components/item/index.js +1 -0
- package/lib/modules/action-bar/components/more/poppover-content.js +1 -1
- package/lib/modules/action-bar/components/screen-share/index.browser.js +4 -2
- package/lib/modules/action-bar/components/screen-share/index.electron.js +4 -2
- package/lib/modules/action-bar/components/screen-share/submenu.d.ts +5 -1
- package/lib/modules/action-bar/components/screen-share/submenu.js +12 -9
- package/lib/modules/audio-stream/index.js +4 -2
- package/lib/modules/chat/index.css +8 -0
- package/lib/modules/chat/view.js +7 -1
- package/lib/modules/components/control-bar/components/switch-theme/index.css +2 -0
- package/lib/modules/components/control-bar/components/switch-theme/index.js +5 -7
- package/lib/modules/components/control-bar/index.css +0 -2
- package/lib/modules/components/control-bar/index.d.ts +1 -0
- package/lib/modules/components/control-bar/index.js +51 -15
- package/lib/modules/components/leave-meeting/main-scene/store.d.ts +3 -0
- package/lib/modules/components/leave-meeting/main-scene/store.js +12 -0
- package/lib/modules/components/leave-meeting/store.base.d.ts +4 -3
- package/lib/modules/components/leave-meeting/store.base.js +0 -10
- package/lib/modules/components/leave-meeting/waiting-scene/store.d.ts +5 -1
- package/lib/modules/components/leave-meeting/waiting-scene/store.js +17 -3
- package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +1 -2
- package/lib/modules/components/member-window/components/video-player/components/local-video-player-with-zoom.js +4 -3
- package/lib/modules/components/member-window/components/video-player/components/zoomable-container.js +18 -32
- package/lib/modules/components/toolbar/components/capture-tool/index.d.ts +0 -1
- package/lib/modules/components/toolbar/components/capture-tool/index.js +1 -2
- package/lib/modules/components/toolbar/components/vertical-frame/index.js +2 -2
- package/lib/modules/components/toolbar/hooks/use-resize-visible.js +45 -32
- package/lib/modules/components/toolbar/index.js +6 -24
- package/lib/modules/control-bar/components/boundary-detector.d.ts +7 -5
- package/lib/modules/control-bar/components/boundary-detector.js +22 -2
- package/lib/modules/control-bar/components/cloud-recording-buttons.d.ts +3 -0
- package/lib/modules/control-bar/components/cloud-recording-buttons.js +68 -3
- package/lib/modules/control-bar/hooks.js +2 -1
- package/lib/modules/control-bar/store.d.ts +1 -0
- package/lib/modules/control-bar/store.js +21 -7
- package/lib/modules/control-bar/view.js +96 -28
- package/lib/modules/dialog/components/confirm/index.js +6 -24
- package/lib/modules/dialog/components/dialog-container/component/body.d.ts +1 -0
- package/lib/modules/dialog/components/dialog-container/component/body.js +3 -2
- package/lib/modules/dialog/components/dialog-container/index.css +8 -1
- package/lib/modules/dialog/components/dialog-container/index.d.ts +1 -0
- package/lib/modules/dialog/components/dialog-container/index.js +4 -1
- package/lib/modules/dialog/components/normal-window/index.d.ts +1 -0
- package/lib/modules/dialog/components/normal-window/index.js +3 -1
- package/lib/modules/dialog/dialogs/chat/index.js +2 -1
- package/lib/modules/dialog/dialogs/control-bar-leave-meeting/index.js +0 -1
- package/lib/modules/dialog/dialogs/device-setting/index.d.ts +1 -0
- package/lib/modules/dialog/dialogs/device-setting/index.js +4 -2
- package/lib/modules/dialog/dialogs/end-meeting/index.d.ts +1 -0
- package/lib/modules/dialog/dialogs/end-meeting/index.js +2 -1
- package/lib/modules/dialog/dialogs/invite/index.d.ts +1 -0
- package/lib/modules/dialog/dialogs/invite/index.js +2 -1
- package/lib/modules/dialog/dialogs/mute-all/index.d.ts +1 -0
- package/lib/modules/dialog/dialogs/mute-all/index.js +2 -1
- package/lib/modules/dialog/dialogs/participant/index.js +9 -2
- package/lib/modules/dialog/dialogs/share-screen-selection/index.js +1 -1
- package/lib/modules/dialog/dialogs/sub-window/index.js +1 -7
- package/lib/modules/dialog/dialogs/toast/index.d.ts +1 -1
- package/lib/modules/dialog/dialogs/toast/index.js +1 -1
- package/lib/modules/dialog/dialogs/video-window/index.d.ts +4 -1
- package/lib/modules/dialog/dialogs/video-window/index.js +5 -2
- package/lib/modules/dialog/dialogs/widget/index.d.ts +2 -0
- package/lib/modules/dialog/dialogs/widget/index.js +11 -3
- package/lib/modules/dialog/index.css +6 -2
- package/lib/modules/dialog/level-config.d.ts +1 -0
- package/lib/modules/dialog/level-config.js +2 -1
- package/lib/modules/dialog/store.base.d.ts +2 -0
- package/lib/modules/dialog/store.browser.d.ts +2 -0
- package/lib/modules/dialog/store.browser.js +6 -1
- package/lib/modules/dialog/store.electron.d.ts +9 -1
- package/lib/modules/dialog/store.electron.js +64 -4
- package/lib/modules/dialog/type.d.ts +3 -0
- package/lib/modules/event-toast/index.css +0 -1
- package/lib/modules/event-toast/index.js +1 -0
- package/lib/modules/event-toast/store.base.d.ts +2 -0
- package/lib/modules/event-toast/store.base.js +40 -21
- package/lib/modules/event-toast/store.electron.d.ts +2 -0
- package/lib/modules/event-toast/store.electron.js +19 -9
- package/lib/modules/layout/components/CommonVideoRenderer.js +1 -0
- package/lib/modules/layout/store.electron.js +1 -1
- package/lib/modules/participant/components/confirm-input/index.js +1 -1
- package/lib/modules/participant/store.base.d.ts +30 -3
- package/lib/modules/participant/store.base.js +249 -96
- package/lib/modules/participant/store.browser.js +4 -3
- package/lib/modules/participant/store.electron.js +5 -3
- package/lib/modules/pc-audio-connect/main-scene/store.js +1 -0
- package/lib/modules/secondary-window/store.d.ts +1 -1
- package/lib/modules/secondary-window/store.js +14 -22
- package/lib/modules/secondary-window/view.js +10 -10
- package/lib/modules/setting/audio-settings/audio-settings.js +0 -17
- package/lib/modules/setting/index.js +1 -1
- package/lib/modules/setting/state/index.js +1 -1
- package/lib/modules/setting/store.base.d.ts +5 -2
- package/lib/modules/setting/store.base.js +72 -26
- package/lib/modules/share-screen/components/selection/index.css +4 -0
- package/lib/modules/share-screen/store.base.js +17 -4
- package/lib/modules/share-screen/store.electron.js +5 -2
- package/lib/modules/state-bar/layout-config.js +6 -0
- package/lib/modules/state-bar/main-scene/store.base.d.ts +2 -0
- package/lib/modules/state-bar/main-scene/store.base.js +6 -0
- package/lib/modules/video-window/index.css +6 -0
- package/lib/modules/video-window/popover-watcher.d.ts +5 -10
- package/lib/modules/video-window/popover-watcher.js +34 -31
- package/lib/modules/video-window/store.d.ts +32 -5
- package/lib/modules/video-window/store.js +156 -63
- package/lib/modules/video-window/view.js +50 -1
- package/lib/modules/whiteboard/index.d.ts +1 -1
- package/lib/modules/whiteboard/index.js +1 -1
- package/lib/modules/whiteboard/store.d.ts +3 -0
- package/lib/modules/whiteboard/store.js +31 -2
- package/lib/modules/whiteboard/view.js +10 -1
- package/lib/modules/widget/sdk.js +1 -1
- package/lib/modules/widget/store.base.d.ts +1 -0
- package/lib/modules/widget/store.browser.d.ts +1 -0
- package/lib/modules/widget/store.browser.js +60 -4
- package/lib/modules/widget/store.electron.d.ts +1 -0
- package/lib/modules/widget/store.electron.js +59 -2
- package/lib/modules/widget/type.d.ts +3 -2
- package/lib/modules/widget/view.js +9 -4
- package/lib/modules/widget/web-widget.d.ts +2 -1
- package/lib/modules/widget/web-widget.js +7 -5
- package/lib/object-manager.d.ts +2 -2
- package/lib/object-manager.js +1 -1
- package/lib/providers/board-share/bar-control/base.d.ts +1 -1
- package/lib/providers/board-share/bar-control/base.js +37 -28
- package/lib/providers/board-share/bar-control/electron.d.ts +1 -1
- package/lib/providers/board-share/bar-control/electron.js +19 -16
- package/lib/providers/board-share/provider.base.d.ts +8 -1
- package/lib/providers/board-share/provider.base.js +12 -2
- package/lib/providers/board-share/provider.browser.d.ts +3 -0
- package/lib/providers/board-share/provider.browser.js +21 -3
- package/lib/providers/device-provider.d.ts +16 -2
- package/lib/providers/device-provider.js +53 -60
- package/lib/providers/dialog/provider.base.d.ts +1 -0
- package/lib/providers/dialog/provider.browser.d.ts +1 -0
- package/lib/providers/dialog/provider.browser.js +7 -2
- package/lib/providers/dialog/provider.electron.d.ts +4 -1
- package/lib/providers/dialog/provider.electron.js +94 -2
- package/lib/providers/dialog/type.d.ts +7 -0
- package/lib/providers/mouse-detect/provider.d.ts +9 -1
- package/lib/providers/mouse-detect/provider.js +119 -5
- package/lib/providers/mouse-detect/struct.d.ts +2 -1
- package/lib/providers/mouse-detect/struct.js +1 -0
- package/lib/providers/mouse-detect/type.d.ts +2 -0
- package/lib/providers/multi-display-provider.d.ts +3 -5
- package/lib/providers/multi-display-provider.js +0 -9
- package/lib/providers/renderer-provider.d.ts +5 -0
- package/lib/providers/renderer-provider.js +5 -0
- package/lib/providers/room-provider/room-provider.d.ts +4 -14
- package/lib/providers/room-provider/room-provider.js +28 -39
- package/lib/providers/screen-share/provider.base.js +3 -11
- package/lib/providers/screen-share/provider.browser.js +23 -14
- package/lib/providers/screen-share/provider.electron.d.ts +1 -0
- package/lib/providers/screen-share/provider.electron.js +44 -17
- package/lib/providers/screen-share/strategy/browser.js +16 -13
- package/lib/providers/screen-share/strategy/electron.d.ts +2 -2
- package/lib/providers/screen-share/strategy/electron.js +15 -10
- package/lib/providers/screen-share/strategy/type.d.ts +6 -0
- package/lib/providers/screen-share/stream-state-sync.d.ts +3 -2
- package/lib/providers/screen-share/stream-state-sync.js +26 -16
- package/lib/providers/screen-share/struct.d.ts +9 -7
- package/lib/providers/screen-share/struct.js +11 -8
- package/lib/providers/screen-share/type.d.ts +7 -1
- package/lib/providers/widget-provider.d.ts +5 -3
- package/lib/providers/widget-provider.js +12 -18
- package/lib/providers/window/main-window.d.ts +0 -5
- package/lib/providers/window/main-window.js +3 -44
- package/lib/providers/window/renderer-window.d.ts +1 -0
- package/lib/providers/window/renderer-window.js +13 -2
- package/lib/runtime.d.ts +1 -0
- package/lib/runtime.js +2 -1
- package/lib/scenes/main-scene.js +5 -0
- package/lib/shared-context/board-context.d.ts +2 -0
- package/lib/shared-context/board-context.js +2 -0
- package/lib/shared-data/member-data.d.ts +0 -8
- package/lib/shared-data/member-data.js +26 -78
- package/lib/shared-data/widget-data.d.ts +13 -0
- package/lib/shared-data/widget-data.js +50 -0
- package/lib/translations/enUS.d.ts +0 -2
- package/lib/translations/enUS.js +4 -6
- package/lib/translations/zhCN.d.ts +0 -2
- package/lib/translations/zhCN.js +4 -6
- package/lib/type.d.ts +5 -0
- package/lib/ui-scene.d.ts +2 -4
- package/lib/ui-scene.js +31 -42
- package/lib/utilities/constant.d.ts +3 -1
- package/lib/utilities/constant.js +5 -2
- package/lib/utilities/default-config.d.ts +18 -0
- package/lib/utilities/default-config.js +19 -1
- package/lib/utilities/focus-helper.js +10 -3
- package/lib/utilities/logger.js +3 -1
- package/lib/utilities/renderer.d.ts +1 -0
- package/lib/utilities/renderer.js +7 -1
- package/package.json +5 -5
- package/public/index.html +35 -4
- package/lib/modules/action-bar/index.d.ts +0 -17
- package/lib/modules/action-bar/index.js +0 -63
- package/lib/modules/action-bar/store.base.d.ts +0 -15
- package/lib/modules/action-bar/store.base.js +0 -117
- package/lib/modules/action-bar/view.d.ts +0 -5
- package/lib/modules/action-bar/view.js +0 -112
- package/lib/modules/action-bar/waiting-scene/store.d.ts +0 -6
- package/lib/modules/action-bar/waiting-scene/store.js +0 -91
- package/lib/modules/control-bar/types.d.ts +0 -31
- package/lib/modules/control-bar/types.js +0 -6
- package/lib/modules/dialog/dialogs/pre-setting/index.css +0 -26
- package/lib/modules/dialog/dialogs/pre-setting/index.d.ts +0 -6
- package/lib/modules/dialog/dialogs/pre-setting/index.js +0 -57
- package/lib/modules/dialog/hooks/use-popover-watcher.d.ts +0 -14
- package/lib/modules/dialog/hooks/use-popover-watcher.js +0 -112
- package/lib/modules/event-toast/store.d.ts +0 -23
- package/lib/modules/event-toast/store.js +0 -187
- package/lib/modules/setting/common/advance-link.d.ts +0 -3
- package/lib/modules/setting/common/advance-link.js +0 -27
- package/lib/modules/setting/common/index.css +0 -26
- package/lib/modules/setting/common/useNamespace.d.ts +0 -15
- package/lib/modules/setting/common/useNamespace.js +0 -66
- package/lib/modules/widget/store.d.ts +0 -17
- package/lib/modules/widget/store.js +0 -71
- package/lib/providers/board-share/bar-control.d.ts +0 -51
- package/lib/providers/board-share/bar-control.js +0 -390
- package/lib/providers/board-share/provider.d.ts +0 -66
- package/lib/providers/board-share/provider.js +0 -456
- package/lib/providers/screen-share/provider.d.ts +0 -69
- package/lib/providers/screen-share/provider.js +0 -615
- package/lib/providers/whiteboard-provider.d.ts +0 -26
- package/lib/providers/whiteboard-provider.js +0 -131
- package/lib/providers/window/browser-window-proxy.d.ts +0 -0
- package/lib/providers/window/browser-window-proxy.js +0 -1
- package/lib/providers/window/ipc-protocol.d.ts +0 -0
- package/lib/providers/window/ipc-protocol.js +0 -1
- package/lib/providers/window/main-process-handler.d.ts +0 -0
- package/lib/providers/window/main-process-handler.js +0 -1
- package/lib/providers/window/main-process-integration.d.ts +0 -0
- package/lib/providers/window/main-process-integration.js +0 -1
- package/lib/shared-data/whiteboard-data.d.ts +0 -70
- package/lib/shared-data/whiteboard-data.js +0 -342
- package/lib/utilities/ipc-protocol.d.ts +0 -91
- package/lib/utilities/ipc-protocol.js +0 -61
package/lib/creator/index.js
CHANGED
|
@@ -113,7 +113,7 @@ var FcrUISceneCreator = exports.FcrUISceneCreator = /*#__PURE__*/function () {
|
|
|
113
113
|
(0, _defineProperty2["default"])(this, "_registeredWidgetConfigs", new Map([]));
|
|
114
114
|
(0, _defineProperty2["default"])(this, "_released", false);
|
|
115
115
|
(0, _defineProperty2["default"])(this, "_scene", null);
|
|
116
|
-
(0, _defineProperty2["default"])(this, "_microphoneKeepRecording",
|
|
116
|
+
(0, _defineProperty2["default"])(this, "_microphoneKeepRecording", true);
|
|
117
117
|
(0, _defineProperty2["default"])(this, "_sceneObserver", null);
|
|
118
118
|
(0, _defineProperty2["default"])(this, "_settingModule", null);
|
|
119
119
|
(0, _defineProperty2["default"])(this, "_eventToastModule", null);
|
|
@@ -183,11 +183,17 @@ var FcrUISceneCreator = exports.FcrUISceneCreator = /*#__PURE__*/function () {
|
|
|
183
183
|
type: _type.FcrUIGlobalNodeEventType.LAUNCH_SUCCESS,
|
|
184
184
|
data: args
|
|
185
185
|
});
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
186
|
+
|
|
187
|
+
// if (isElectron()) {
|
|
188
|
+
// const windowProvider = this._objectManager.getObject<FcrUIWindowProvider>(
|
|
189
|
+
// FcrUIObjectKeys.P_WINDOW_PROVIDER,
|
|
190
|
+
// );
|
|
191
|
+
|
|
192
|
+
// const mainWindow = windowProvider.getCurrentWindow();
|
|
193
|
+
|
|
194
|
+
// focusWindow(mainWindow);
|
|
195
|
+
// }
|
|
196
|
+
|
|
191
197
|
onSuccess.apply(void 0, args);
|
|
192
198
|
},
|
|
193
199
|
onLaunchFailure: function onLaunchFailure() {
|
|
@@ -428,7 +434,9 @@ var FcrUISceneCreator = exports.FcrUISceneCreator = /*#__PURE__*/function () {
|
|
|
428
434
|
this._globalNode.addSubNode(eventToastModule);
|
|
429
435
|
this._globalNode.addSubNode(settingModule);
|
|
430
436
|
this._globalNode.addToSlot('dialog', dialogModule.getComponent());
|
|
431
|
-
|
|
437
|
+
if (!(0, _env.isElectron)()) {
|
|
438
|
+
this._globalNode.addToSlot('toast', eventToastModule.getComponent('global'));
|
|
439
|
+
}
|
|
432
440
|
|
|
433
441
|
// other global modules...
|
|
434
442
|
|
|
@@ -34,6 +34,7 @@ var _privilegeProvider = require("../providers/privilege-provider");
|
|
|
34
34
|
var _rendererProvider = require("../providers/renderer-provider");
|
|
35
35
|
var _roomProvider = require("../providers/room-provider/room-provider");
|
|
36
36
|
var _sessionProvider = require("../providers/session-provider");
|
|
37
|
+
var _widgetProvider = require("../providers/widget-provider");
|
|
37
38
|
var _appListData = require("../shared-data/app-list-data");
|
|
38
39
|
var _chatData = require("../shared-data/chat-data");
|
|
39
40
|
var _devicePrivilegeData = require("../shared-data/device-privilege-data");
|
|
@@ -51,6 +52,7 @@ var _pinData = require("../shared-data/pin-data");
|
|
|
51
52
|
var _provider5 = require("../providers/screen-share/provider.browser");
|
|
52
53
|
var _provider6 = require("../providers/board-share/provider.browser");
|
|
53
54
|
var _logger = require("../utilities/logger");
|
|
55
|
+
var _widgetData = require("../shared-data/widget-data");
|
|
54
56
|
var FcrUIBrowserProviderInitializer = exports.FcrUIBrowserProviderInitializer = /*#__PURE__*/function () {
|
|
55
57
|
function FcrUIBrowserProviderInitializer(args) {
|
|
56
58
|
(0, _classCallCheck2["default"])(this, FcrUIBrowserProviderInitializer);
|
|
@@ -97,6 +99,8 @@ var FcrUIBrowserProviderInitializer = exports.FcrUIBrowserProviderInitializer =
|
|
|
97
99
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.P_MONITOR_PROVIDER, monitorProvider);
|
|
98
100
|
var sharedLayoutDataSource = new _layoutData.FcrUISharedLayoutDataSourceImpl(sharedConfigDataSource);
|
|
99
101
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.S_SHARED_LAYOUT_DATA_SOURCE, sharedLayoutDataSource);
|
|
102
|
+
var sharedWidgetDataSource = new _widgetData.FcrUISharedWidgetDataSourceImpl();
|
|
103
|
+
objectManager.setObject(_objectManager.FcrUIObjectKeys.S_SHARED_WIDGET_DATA_SOURCE, sharedWidgetDataSource);
|
|
100
104
|
}
|
|
101
105
|
}, {
|
|
102
106
|
key: "onCreatorRelease",
|
|
@@ -113,6 +117,7 @@ var FcrUIBrowserProviderInitializer = exports.FcrUIBrowserProviderInitializer =
|
|
|
113
117
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.P_DIALOG_PROVIDER);
|
|
114
118
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.P_DEVICE_PROVIDER);
|
|
115
119
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.S_SHARED_SETTING_DATA_SOURCE);
|
|
120
|
+
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.S_SHARED_WIDGET_DATA_SOURCE);
|
|
116
121
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.CORE_ENGINE);
|
|
117
122
|
if (objectManager.size() > 0) {
|
|
118
123
|
this.logger.error("remaing objects: ".concat(objectManager.keys()));
|
|
@@ -133,7 +138,13 @@ var FcrUIBrowserProviderInitializer = exports.FcrUIBrowserProviderInitializer =
|
|
|
133
138
|
var dialogProvider = objectManager.getObject(_objectManager.FcrUIObjectKeys.P_DIALOG_PROVIDER);
|
|
134
139
|
var sharedScreenShareDataSource = new _screenShare.FcrUISharedScreenShareDataSourceImpl();
|
|
135
140
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.S_SHARED_SCREEN_SHARE_DATA_SOURCE, sharedScreenShareDataSource);
|
|
136
|
-
var
|
|
141
|
+
var sharedWidgetDataSource = objectManager.getObject(_objectManager.FcrUIObjectKeys.S_SHARED_WIDGET_DATA_SOURCE);
|
|
142
|
+
var widgetProvider = new _widgetProvider.FcrUIWidgetProviderImpl({
|
|
143
|
+
sharedWidgetDataSource: sharedWidgetDataSource,
|
|
144
|
+
roomProvider: roomProvider,
|
|
145
|
+
dialogProvider: dialogProvider
|
|
146
|
+
});
|
|
147
|
+
objectManager.setObject(_objectManager.FcrUIObjectKeys.P_WIDGET_PROVIDER, widgetProvider);
|
|
137
148
|
var mainRoomControl = roomProvider.currentRoomControl;
|
|
138
149
|
var sharingControl = mainRoomControl.getSharingControl();
|
|
139
150
|
var streamControl = mainRoomControl.getStreamControl();
|
|
@@ -165,8 +176,6 @@ var FcrUIBrowserProviderInitializer = exports.FcrUIBrowserProviderInitializer =
|
|
|
165
176
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.P_INTERPRETER_PROVIDER, interpreterProvider);
|
|
166
177
|
var currentRoomControlProvider = new _roomProvider.FcrUICurrentRoomControlProviderImpl(mainRoomControl);
|
|
167
178
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.P_CURRENT_ROOM_CONTROL_PROVIDER, currentRoomControlProvider);
|
|
168
|
-
var connectionProvider = new _roomProvider.FcrUIConnectionProviderImpl(engine);
|
|
169
|
-
objectManager.setObject(_objectManager.FcrUIObjectKeys.P_CONNECTION_PROVIDER, connectionProvider);
|
|
170
179
|
var sessionProvider = new _sessionProvider.FcrUISessionProviderImpl(engine);
|
|
171
180
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.P_SESSION_PROVIDER, sessionProvider);
|
|
172
181
|
var sharedDevicePrivilegeDataSource = new _devicePrivilegeData.FcrUISharedDevicePrivilegeDataSourceImpl();
|
|
@@ -225,7 +234,6 @@ var FcrUIBrowserProviderInitializer = exports.FcrUIBrowserProviderInitializer =
|
|
|
225
234
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.P_PRIVILEGE_PROVIDER);
|
|
226
235
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.P_INTERPRETER_PROVIDER);
|
|
227
236
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.P_CURRENT_ROOM_CONTROL_PROVIDER);
|
|
228
|
-
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.P_CONNECTION_PROVIDER);
|
|
229
237
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.P_SESSION_PROVIDER);
|
|
230
238
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.P_DEVICE_STREAM_PROVIDER);
|
|
231
239
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.P_WAITING_ROOM_CONTROL_PROVIDER);
|
|
@@ -246,6 +254,7 @@ var FcrUIBrowserProviderInitializer = exports.FcrUIBrowserProviderInitializer =
|
|
|
246
254
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.S_SHARED_PIN_DATA_SOURCE);
|
|
247
255
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.S_SHARED_DEVICE_PRIVILEGE_DATA_SOURCE);
|
|
248
256
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.S_SHARED_INTERPRETER_DATA_SOURCE);
|
|
257
|
+
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.P_WIDGET_PROVIDER);
|
|
249
258
|
// 其它如有遗漏可补充
|
|
250
259
|
}
|
|
251
260
|
}, {
|
|
@@ -35,6 +35,7 @@ var _phoneAudioProvider = require("../providers/phone-audio-provider");
|
|
|
35
35
|
var _rendererProvider = require("../providers/renderer-provider");
|
|
36
36
|
var _roomProvider = require("../providers/room-provider/room-provider");
|
|
37
37
|
var _sessionProvider = require("../providers/session-provider");
|
|
38
|
+
var _widgetProvider = require("../providers/widget-provider");
|
|
38
39
|
var _appListData = require("../shared-data/app-list-data");
|
|
39
40
|
var _chatData = require("../shared-data/chat-data");
|
|
40
41
|
var _devicePrivilegeData = require("../shared-data/device-privilege-data");
|
|
@@ -57,6 +58,7 @@ var _speakerSpotlight = require("../shared-data/speaker-spotlight");
|
|
|
57
58
|
var _pinData = require("../shared-data/pin-data");
|
|
58
59
|
var _logger = require("../utilities/logger");
|
|
59
60
|
var _provider8 = require("../providers/mouse-detect/provider");
|
|
61
|
+
var _widgetData = require("../shared-data/widget-data");
|
|
60
62
|
var FcrUIElectronProviderInitializer = exports.FcrUIElectronProviderInitializer = /*#__PURE__*/function () {
|
|
61
63
|
function FcrUIElectronProviderInitializer(args) {
|
|
62
64
|
(0, _classCallCheck2["default"])(this, FcrUIElectronProviderInitializer);
|
|
@@ -71,12 +73,14 @@ var FcrUIElectronProviderInitializer = exports.FcrUIElectronProviderInitializer
|
|
|
71
73
|
value: function onCreatorInitialize(engineConfig) {
|
|
72
74
|
// initialize all providers and shared data sources
|
|
73
75
|
var objectManager = this._objectManager;
|
|
76
|
+
var fcrUIMainWindowRenderer = new _secondaryWindow.FcrUIMainWindowRendererImpl();
|
|
77
|
+
|
|
78
|
+
// @ts-ignore
|
|
79
|
+
window.FcrUIMainWindowRenderer = fcrUIMainWindowRenderer;
|
|
74
80
|
var engine = new _fcrCore.FcrCoreEngine(engineConfig);
|
|
75
81
|
this._objectManager.setObject(_objectManager.FcrUIObjectKeys.CORE_ENGINE, engine);
|
|
76
82
|
var renderer = new _renderer.FcrUIRendererWrapper();
|
|
77
83
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.RENDERER_WRAPPER, renderer);
|
|
78
|
-
var mouseDetectProvider = new _provider8.FcrUIMouseDetectProviderImpl(objectManager);
|
|
79
|
-
objectManager.setObject(_objectManager.FcrUIObjectKeys.P_MOUSE_DETECT_PROVIDER, mouseDetectProvider);
|
|
80
84
|
var localStorageProvider = new _localStorageProvider.FcrUILocalStorageProviderImpl();
|
|
81
85
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.P_LOCAL_STORAGE_PROVIDER, localStorageProvider);
|
|
82
86
|
var facilityProvider = new _provider5.FcrUIElectronFacilityProviderImpl({
|
|
@@ -93,6 +97,8 @@ var FcrUIElectronProviderInitializer = exports.FcrUIElectronProviderInitializer
|
|
|
93
97
|
renderer: renderer
|
|
94
98
|
});
|
|
95
99
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.P_WINDOW_PROVIDER, windowProvider);
|
|
100
|
+
var mouseDetectProvider = new _provider8.FcrUIMouseDetectProviderImpl(objectManager);
|
|
101
|
+
objectManager.setObject(_objectManager.FcrUIObjectKeys.P_MOUSE_DETECT_PROVIDER, mouseDetectProvider);
|
|
96
102
|
var eventProvider = new _eventProvider.FcrUIEventProviderImpl();
|
|
97
103
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.P_EVENT_PROVIDER, eventProvider);
|
|
98
104
|
var messageProvider = new _provider2.FcrUIMessageProviderImpl();
|
|
@@ -100,7 +106,8 @@ var FcrUIElectronProviderInitializer = exports.FcrUIElectronProviderInitializer
|
|
|
100
106
|
var sharedConfirmDataSource = new _confirmData.FcrUISharedConfirmDataSourceImpl();
|
|
101
107
|
this._objectManager.setObject(_objectManager.FcrUIObjectKeys.S_SHARED_CONFIRM_DATA_SOURCE, sharedConfirmDataSource);
|
|
102
108
|
var dialogProvider = new _provider.FcrUIElectronDialogProviderImpl({
|
|
103
|
-
windowProvider: windowProvider
|
|
109
|
+
windowProvider: windowProvider,
|
|
110
|
+
renderer: renderer
|
|
104
111
|
});
|
|
105
112
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.P_DIALOG_PROVIDER, dialogProvider);
|
|
106
113
|
var deviceProvider = new _deviceProvider.FcrUIDeviceProviderImpl(renderer, facilityProvider, messageProvider, engine.getDesktopMediaControl(), sharedSettingDataSource);
|
|
@@ -113,6 +120,8 @@ var FcrUIElectronProviderInitializer = exports.FcrUIElectronProviderInitializer
|
|
|
113
120
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.P_MONITOR_PROVIDER, monitorProvider);
|
|
114
121
|
var sharedLayoutDataSource = new _layoutData.FcrUISharedLayoutDataSourceImpl(sharedConfigDataSource);
|
|
115
122
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.S_SHARED_LAYOUT_DATA_SOURCE, sharedLayoutDataSource);
|
|
123
|
+
var sharedWidgetDataSource = new _widgetData.FcrUISharedWidgetDataSourceImpl();
|
|
124
|
+
objectManager.setObject(_objectManager.FcrUIObjectKeys.S_SHARED_WIDGET_DATA_SOURCE, sharedWidgetDataSource);
|
|
116
125
|
}
|
|
117
126
|
}, {
|
|
118
127
|
key: "onCreatorRelease",
|
|
@@ -132,6 +141,7 @@ var FcrUIElectronProviderInitializer = exports.FcrUIElectronProviderInitializer
|
|
|
132
141
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.P_DIALOG_PROVIDER);
|
|
133
142
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.P_DEVICE_PROVIDER);
|
|
134
143
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.S_SHARED_SETTING_DATA_SOURCE);
|
|
144
|
+
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.S_SHARED_WIDGET_DATA_SOURCE);
|
|
135
145
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.CORE_ENGINE);
|
|
136
146
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.S_SHARED_CONFIRM_DATA_SOURCE);
|
|
137
147
|
if (objectManager.size() > 0) {
|
|
@@ -152,7 +162,13 @@ var FcrUIElectronProviderInitializer = exports.FcrUIElectronProviderInitializer
|
|
|
152
162
|
var sharedSettingDataSource = objectManager.getObject(_objectManager.FcrUIObjectKeys.S_SHARED_SETTING_DATA_SOURCE);
|
|
153
163
|
var messageProvider = objectManager.getObject(_objectManager.FcrUIObjectKeys.P_MESSAGE_PROVIDER);
|
|
154
164
|
var dialogProvider = objectManager.getObject(_objectManager.FcrUIObjectKeys.P_DIALOG_PROVIDER);
|
|
155
|
-
var
|
|
165
|
+
var sharedWidgetDataSource = objectManager.getObject(_objectManager.FcrUIObjectKeys.S_SHARED_WIDGET_DATA_SOURCE);
|
|
166
|
+
var widgetProvider = new _widgetProvider.FcrUIWidgetProviderImpl({
|
|
167
|
+
sharedWidgetDataSource: sharedWidgetDataSource,
|
|
168
|
+
roomProvider: roomProvider,
|
|
169
|
+
dialogProvider: dialogProvider
|
|
170
|
+
});
|
|
171
|
+
objectManager.setObject(_objectManager.FcrUIObjectKeys.P_WIDGET_PROVIDER, widgetProvider);
|
|
156
172
|
var windowProvider = objectManager.getObject(_objectManager.FcrUIObjectKeys.P_WINDOW_PROVIDER);
|
|
157
173
|
var sharedScreenShareDataSource = new _screenShare.FcrUISharedScreenShareDataSourceImpl();
|
|
158
174
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.S_SHARED_SCREEN_SHARE_DATA_SOURCE, sharedScreenShareDataSource);
|
|
@@ -187,8 +203,6 @@ var FcrUIElectronProviderInitializer = exports.FcrUIElectronProviderInitializer
|
|
|
187
203
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.P_INTERPRETER_PROVIDER, interpreterProvider);
|
|
188
204
|
var currentRoomControlProvider = new _roomProvider.FcrUICurrentRoomControlProviderImpl(mainRoomControl);
|
|
189
205
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.P_CURRENT_ROOM_CONTROL_PROVIDER, currentRoomControlProvider);
|
|
190
|
-
var connectionProvider = new _roomProvider.FcrUIConnectionProviderImpl(engine);
|
|
191
|
-
objectManager.setObject(_objectManager.FcrUIObjectKeys.P_CONNECTION_PROVIDER, connectionProvider);
|
|
192
206
|
var sessionProvider = new _sessionProvider.FcrUISessionProviderImpl(engine);
|
|
193
207
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.P_SESSION_PROVIDER, sessionProvider);
|
|
194
208
|
var sharedDevicePrivilegeDataSource = new _devicePrivilegeData.FcrUISharedDevicePrivilegeDataSourceImpl();
|
|
@@ -215,10 +229,9 @@ var FcrUIElectronProviderInitializer = exports.FcrUIElectronProviderInitializer
|
|
|
215
229
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.S_SHARED_MEETING_TIME_DATA_SOURCE, sharedMeetingTimeDataSource);
|
|
216
230
|
var sharedMemberDataSource = new _memberData.FcrUISharedMemberDataSourceImpl(userControl, streamControl, sharedScreenShareDataSource, eventProvider, mainRoomControl.getSharingControl().getBoardControl());
|
|
217
231
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.S_SHARED_MEMBER_DATA_SOURCE, sharedMemberDataSource);
|
|
218
|
-
var fcrUIMainWindowRenderer = new _secondaryWindow.FcrUIMainWindowRendererImpl();
|
|
219
232
|
|
|
220
233
|
// @ts-ignore
|
|
221
|
-
window.FcrUIMainWindowRenderer
|
|
234
|
+
var fcrUIMainWindowRenderer = window.FcrUIMainWindowRenderer;
|
|
222
235
|
var whiteboardProvider = new _provider7.FcrUIBoardShareProviderImpl(objectManager, fcrUIMainWindowRenderer);
|
|
223
236
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.P_BOARD_SHARE_PROVIDER, whiteboardProvider);
|
|
224
237
|
var sharedSecurityDataSource = new _securityData.FcrUISecurityDataSourceImpl(privilegeProvider, sharedMemberDataSource);
|
|
@@ -241,7 +254,6 @@ var FcrUIElectronProviderInitializer = exports.FcrUIElectronProviderInitializer
|
|
|
241
254
|
windowProvider: windowProvider,
|
|
242
255
|
sharingControl: sharingControl,
|
|
243
256
|
whiteboardProvider: whiteboardProvider,
|
|
244
|
-
fcrUIMainWindowRenderer: fcrUIMainWindowRenderer,
|
|
245
257
|
screenShareProvider: screenShareProvider
|
|
246
258
|
});
|
|
247
259
|
objectManager.setObject(_objectManager.FcrUIObjectKeys.P_MULTI_DISPLAY_PROVIDER, multiDisplayProvider);
|
|
@@ -262,7 +274,6 @@ var FcrUIElectronProviderInitializer = exports.FcrUIElectronProviderInitializer
|
|
|
262
274
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.P_PRIVILEGE_PROVIDER);
|
|
263
275
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.P_INTERPRETER_PROVIDER);
|
|
264
276
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.P_CURRENT_ROOM_CONTROL_PROVIDER);
|
|
265
|
-
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.P_CONNECTION_PROVIDER);
|
|
266
277
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.P_SESSION_PROVIDER);
|
|
267
278
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.P_DEVICE_STREAM_PROVIDER);
|
|
268
279
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.P_WAITING_ROOM_CONTROL_PROVIDER);
|
|
@@ -284,6 +295,7 @@ var FcrUIElectronProviderInitializer = exports.FcrUIElectronProviderInitializer
|
|
|
284
295
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.S_SHARED_PIN_DATA_SOURCE);
|
|
285
296
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.S_SHARED_DEVICE_PRIVILEGE_DATA_SOURCE);
|
|
286
297
|
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.S_SHARED_INTERPRETER_DATA_SOURCE);
|
|
298
|
+
objectManager.deleteObject(_objectManager.FcrUIObjectKeys.P_WIDGET_PROVIDER);
|
|
287
299
|
}
|
|
288
300
|
}, {
|
|
289
301
|
key: "onWaitingSceneInitialize",
|
|
@@ -48,6 +48,8 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
|
|
|
48
48
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
49
49
|
var mainWindow;
|
|
50
50
|
var mainWindowReady = false;
|
|
51
|
+
var userMinimize = false;
|
|
52
|
+
var mainWindowDisplayState = _struct.DisplayState.HIDE;
|
|
51
53
|
(0, _main.initialize)();
|
|
52
54
|
var port = (_process$argv$find = process.argv.find(function (arg) {
|
|
53
55
|
return arg.startsWith('--port=');
|
|
@@ -102,10 +104,17 @@ ipcClient.addObserver({
|
|
|
102
104
|
mainWindow.moveTop();
|
|
103
105
|
var platform = _os["default"].platform();
|
|
104
106
|
if (platform === 'win32') {
|
|
105
|
-
|
|
107
|
+
(0, _logger.getLogger)().info('windows_index setAlwaysOnTop in bootstrap-sdk');
|
|
108
|
+
mainWindow.setAlwaysOnTop(true, 'pop-up-menu');
|
|
106
109
|
setTimeout(function () {
|
|
107
|
-
|
|
108
|
-
|
|
110
|
+
(0, _logger.getLogger)().info("windows_index set main window in bootstrap-sdk,current display state: ".concat(mainWindowDisplayState));
|
|
111
|
+
if (mainWindowDisplayState === _struct.DisplayState.SHOW) {
|
|
112
|
+
mainWindow.moveTop();
|
|
113
|
+
mainWindow.show();
|
|
114
|
+
mainWindow.focus();
|
|
115
|
+
}
|
|
116
|
+
}, 300);
|
|
117
|
+
mainWindow.setAlwaysOnTop(false, 'pop-up-menu');
|
|
109
118
|
}
|
|
110
119
|
}
|
|
111
120
|
break;
|
|
@@ -252,10 +261,10 @@ _electron.app.addListener('ready', function () {
|
|
|
252
261
|
cmd: _type.IPCMessageCMD.ExitedMeeting,
|
|
253
262
|
data: {
|
|
254
263
|
roomId: roomId,
|
|
255
|
-
reason:
|
|
264
|
+
reason: _until.crashedErrorCode
|
|
256
265
|
}
|
|
257
266
|
});
|
|
258
|
-
_eventManager.eventManager.onExitedMeeting(roomId,
|
|
267
|
+
_eventManager.eventManager.onExitedMeeting(roomId, _struct.FcrUISceneLaunchEndReason.CRASHED);
|
|
259
268
|
});
|
|
260
269
|
mainWindow.webContents.addListener('did-finish-load', function () {
|
|
261
270
|
mainWindowReady = true;
|
|
@@ -264,8 +273,47 @@ _electron.app.addListener('ready', function () {
|
|
|
264
273
|
data: {}
|
|
265
274
|
});
|
|
266
275
|
});
|
|
276
|
+
mainWindow.addListener('minimize', function () {
|
|
277
|
+
(0, _logger.getLogger)().info('windows_release main window minimized');
|
|
278
|
+
mainWindowDisplayState = _struct.DisplayState.MINIMIZE;
|
|
279
|
+
userMinimize = true;
|
|
280
|
+
});
|
|
281
|
+
mainWindow.addListener('show', function () {
|
|
282
|
+
(0, _logger.getLogger)().info('windows_release main window show');
|
|
283
|
+
mainWindowDisplayState = _struct.DisplayState.SHOW;
|
|
284
|
+
mainWindow.focus();
|
|
285
|
+
userMinimize = false;
|
|
286
|
+
});
|
|
287
|
+
mainWindow.addListener('always-on-top-changed', function (event, alwaysOnTop) {
|
|
288
|
+
(0, _logger.getLogger)().info("windows_index main window always-on-top-changed: ".concat(alwaysOnTop));
|
|
289
|
+
});
|
|
267
290
|
mainWindow.addListener('hide', function () {
|
|
268
291
|
(0, _logger.getLogger)().info("windows_release main window hidden, current launch state: ".concat(_struct.FcrUISceneLaunchState[_eventManager.eventManager.launchState]));
|
|
292
|
+
mainWindowDisplayState = _struct.DisplayState.HIDE;
|
|
293
|
+
if (userMinimize) {
|
|
294
|
+
(0, _logger.getLogger)().info('windows_release main window hidden, but user minimize, ignore this event');
|
|
295
|
+
return;
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
// if (
|
|
299
|
+
// eventManager.launchState === LaunchState.END &&
|
|
300
|
+
// eventManager.endReason === FcrUISceneLaunchEndReason.LAUNCH_SUCCESS
|
|
301
|
+
// ) {
|
|
302
|
+
// getLogger().info(
|
|
303
|
+
// 'windows_release main window hidden, but launch state is END, send error Event',
|
|
304
|
+
// );
|
|
305
|
+
|
|
306
|
+
// ipcClient.sendMessage({
|
|
307
|
+
// cmd: IPCMessageCMD.Error,
|
|
308
|
+
// data: {
|
|
309
|
+
// roomId: eventManager.roomId,
|
|
310
|
+
// errorCode: mainWindowHiddenOnLaunchSuccessErrorCode,
|
|
311
|
+
// message: 'main window hidden on launch success',
|
|
312
|
+
// },
|
|
313
|
+
// });
|
|
314
|
+
// return;
|
|
315
|
+
// }
|
|
316
|
+
|
|
269
317
|
if (_eventManager.eventManager.launchState !== _struct.FcrUISceneLaunchState.PROCESSING) {
|
|
270
318
|
return;
|
|
271
319
|
}
|
|
@@ -285,6 +333,7 @@ _electron.app.addListener('ready', function () {
|
|
|
285
333
|
_electron.app.exit(_exitCodes.AppExitCode.NORMAL_EXIT);
|
|
286
334
|
});
|
|
287
335
|
mainWindow.addListener('close', function (e) {
|
|
336
|
+
mainWindowDisplayState = _struct.DisplayState.HIDE;
|
|
288
337
|
var closeListenerCount = mainWindow.listenerCount('close');
|
|
289
338
|
(0, _logger.getLogger)().info("windows_release main window close listener count: ".concat(closeListenerCount, ", isInMeeting: ").concat(_meetingState.isInMeeting));
|
|
290
339
|
if (_meetingState.isInMeeting === 0) {
|
|
@@ -310,6 +359,14 @@ _electron.app.addListener('ready', function () {
|
|
|
310
359
|
}, 300);
|
|
311
360
|
}
|
|
312
361
|
});
|
|
362
|
+
mainWindow.addListener('unresponsive', function () {
|
|
363
|
+
(0, _logger.getLogger)().warn("main window unresponsive in bootstrap-sdk");
|
|
364
|
+
handleUnresponsive();
|
|
365
|
+
});
|
|
366
|
+
mainWindow.addListener('responsive', function () {
|
|
367
|
+
(0, _logger.getLogger)().warn("main window responsive in bootstrap-sdk");
|
|
368
|
+
handleResponsive();
|
|
369
|
+
});
|
|
313
370
|
if (_env.isDev) {
|
|
314
371
|
mainWindow.webContents.openDevTools({
|
|
315
372
|
mode: 'detach'
|
|
@@ -336,4 +393,31 @@ _electron.app.addListener('quit', function (event, exitCode) {
|
|
|
336
393
|
(0, _logger.getLogger)().info("app quit event triggered with exit code: ".concat(exitCode));
|
|
337
394
|
// 清理 EventManager 资源
|
|
338
395
|
_eventManager.eventManager.dispose();
|
|
339
|
-
});
|
|
396
|
+
});
|
|
397
|
+
var HANG_DETECTION_TIMEOUT = 60 * 1000; // 1分钟(毫s秒)
|
|
398
|
+
var hangDetectionTimer = null;
|
|
399
|
+
function handleUnresponsive() {
|
|
400
|
+
(0, _logger.getLogger)().warn('Window became unresponsive, starting hang detection timer');
|
|
401
|
+
clearHangDetectionTimer();
|
|
402
|
+
hangDetectionTimer = setTimeout(function () {
|
|
403
|
+
(0, _logger.getLogger)().error('Window has been unresponsive for 1 minute, forcing application exit');
|
|
404
|
+
_eventManager.eventManager.onExitedMeeting(_eventManager.eventManager.roomId, _struct.FcrUISceneLaunchEndReason.HANG_DETECTION);
|
|
405
|
+
ipcClient.sendMessage({
|
|
406
|
+
cmd: _type.IPCMessageCMD.ExitedMeeting,
|
|
407
|
+
data: {
|
|
408
|
+
roomId: _eventManager.eventManager.roomId,
|
|
409
|
+
reason: _until.hangDetectionErrorCode
|
|
410
|
+
}
|
|
411
|
+
});
|
|
412
|
+
}, HANG_DETECTION_TIMEOUT);
|
|
413
|
+
}
|
|
414
|
+
function handleResponsive() {
|
|
415
|
+
(0, _logger.getLogger)().info('Window became responsive again, clearing hang detection timer');
|
|
416
|
+
clearHangDetectionTimer();
|
|
417
|
+
}
|
|
418
|
+
function clearHangDetectionTimer() {
|
|
419
|
+
if (hangDetectionTimer) {
|
|
420
|
+
clearTimeout(hangDetectionTimer);
|
|
421
|
+
hangDetectionTimer = null;
|
|
422
|
+
}
|
|
423
|
+
}
|
|
@@ -19,6 +19,7 @@ export declare const captureScreen: (options?: {
|
|
|
19
19
|
hideWindow?: boolean;
|
|
20
20
|
alwaysHide?: boolean;
|
|
21
21
|
}) => void;
|
|
22
|
+
export declare const getBaseUrl: () => string;
|
|
22
23
|
export declare const openRendererWindow: (frameName: string, callback: (dom: HTMLElement, windowId: string, newRendererWindow: Window) => void, windowOptions: BrowserWindowConstructorOptions) => Promise<void>;
|
|
23
24
|
export declare const checkMediaPermission: (mediaType: "microphone" | "camera" | "sharing") => Promise<any>;
|
|
24
25
|
export declare const openSystemPreferences: (mediaType: "microphone" | "camera" | "sharing") => void;
|
|
@@ -6,7 +6,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
6
6
|
Object.defineProperty(exports, "__esModule", {
|
|
7
7
|
value: true
|
|
8
8
|
});
|
|
9
|
-
exports.showItemInFolder = exports.setUserSettingData = exports.setFragmentOptions = exports.setFragmentBaseUrl = exports.sendEvent = exports.screen = exports.restartApp = exports.removeEventListener = exports.quitApp = exports.openSystemPreferences = exports.openRendererWindow = exports.openLinkInDefaultBrowser = exports.openDirectory = exports.open = exports.loadBuiltinResources = exports.initialize = exports.getUserSettingData = exports.getSystemMemorySize = exports.getSystemCpuInfo = exports.getResourceByFileType = exports.getPrimaryDisplay = exports.getNetworkType = exports.getMediaSourceIdList = exports.getDisplayNearestPoint = exports.getDisplayMatching = exports.getCursorScreenPoint = exports.getCurrentBrowserWindow = exports.getBrowserWindowById = exports.getAllDisplays = exports.fileToBlob = exports.fileToBase64 = exports.createBrowserWindowProxy = exports.close = exports.checkMediaPermission = exports.captureScreen = exports.addEventListener = void 0;
|
|
9
|
+
exports.showItemInFolder = exports.setUserSettingData = exports.setFragmentOptions = exports.setFragmentBaseUrl = exports.sendEvent = exports.screen = exports.restartApp = exports.removeEventListener = exports.quitApp = exports.openSystemPreferences = exports.openRendererWindow = exports.openLinkInDefaultBrowser = exports.openDirectory = exports.open = exports.loadBuiltinResources = exports.initialize = exports.getUserSettingData = exports.getSystemMemorySize = exports.getSystemCpuInfo = exports.getResourceByFileType = exports.getPrimaryDisplay = exports.getNetworkType = exports.getMediaSourceIdList = exports.getDisplayNearestPoint = exports.getDisplayMatching = exports.getCursorScreenPoint = exports.getCurrentBrowserWindow = exports.getBrowserWindowById = exports.getBaseUrl = exports.getAllDisplays = exports.fileToBlob = exports.fileToBase64 = exports.createBrowserWindowProxy = exports.close = exports.checkMediaPermission = exports.captureScreen = exports.addEventListener = void 0;
|
|
10
10
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
11
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
12
12
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
@@ -69,6 +69,7 @@ var _promises = _interopRequireDefault(require("fs/promises"));
|
|
|
69
69
|
var _jszip = _interopRequireDefault(require("jszip"));
|
|
70
70
|
var _exitCodes = require("./exit-codes");
|
|
71
71
|
var _browserWindowProxy = require("./window-proxy/browser-window-proxy");
|
|
72
|
+
var _env = require("./env");
|
|
72
73
|
// import { windowManager as wm } from 'node-window-manager';
|
|
73
74
|
|
|
74
75
|
var USER_SETTING_DATA_FILE_NAME = 'UserSettingData.json';
|
|
@@ -160,6 +161,9 @@ var captureScreen = exports.captureScreen = function captureScreen(options) {
|
|
|
160
161
|
// return wm.getWindows();
|
|
161
162
|
// };
|
|
162
163
|
|
|
164
|
+
var getBaseUrl = exports.getBaseUrl = function getBaseUrl() {
|
|
165
|
+
return _env.isDev ? _env.devPageUrl : '.';
|
|
166
|
+
};
|
|
163
167
|
var openRendererWindow = exports.openRendererWindow = /*#__PURE__*/function () {
|
|
164
168
|
var _ref2 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2(frameName, callback, windowOptions) {
|
|
165
169
|
var isAlreadyOpened, windowConstructorOptionsString, newRendererWindow, windowId, windowIdStr, htmlTemplate, renderDom, parentWindow, parentHead, parentStyles, parentStyleLinks, stylesLoadedPromises, presetWindoStyle, observer, parentRoot, parentRootStyles, _renderDom;
|
|
@@ -6,6 +6,7 @@ export declare enum IPCMessageCMD {
|
|
|
6
6
|
WidgetClicked = "widget-clicked",
|
|
7
7
|
TokenWillExpire = "user-token-will-expire",
|
|
8
8
|
ExitUiSceneFromMainProcess = "exit-ui-scene-from-main-process",
|
|
9
|
+
Error = "error",
|
|
9
10
|
LaunchMeeting = "launch-meeting",
|
|
10
11
|
InitCreator = "init-creator",
|
|
11
12
|
OpenSetting = "open-setting",
|
package/lib/electron/ipc/type.js
CHANGED
|
@@ -14,6 +14,7 @@ var IPCMessageCMD = exports.IPCMessageCMD = /*#__PURE__*/function (IPCMessageCMD
|
|
|
14
14
|
IPCMessageCMD["WidgetClicked"] = "widget-clicked";
|
|
15
15
|
IPCMessageCMD["TokenWillExpire"] = "user-token-will-expire";
|
|
16
16
|
IPCMessageCMD["ExitUiSceneFromMainProcess"] = "exit-ui-scene-from-main-process";
|
|
17
|
+
IPCMessageCMD["Error"] = "error";
|
|
17
18
|
// handle
|
|
18
19
|
IPCMessageCMD["LaunchMeeting"] = "launch-meeting";
|
|
19
20
|
IPCMessageCMD["InitCreator"] = "init-creator";
|
package/lib/electron/preload.js
CHANGED
|
@@ -15,6 +15,7 @@ var runtime = {
|
|
|
15
15
|
openDirectory: _injections.openDirectory,
|
|
16
16
|
showItemInFolder: _injections.showItemInFolder,
|
|
17
17
|
quitApp: _injections.quitApp,
|
|
18
|
+
getBaseUrl: _injections.getBaseUrl,
|
|
18
19
|
getNetworkType: _injections.getNetworkType,
|
|
19
20
|
setFragmentBaseUrl: _injections.setFragmentBaseUrl,
|
|
20
21
|
getMediaSourceIdList: _injections.getMediaSourceIdList,
|
|
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.getBundleType = void 0;
|
|
8
|
+
exports.onWidgetClicked = exports.onUserTokenWillExpire = exports.onExitUiScene = exports.getBundleType = void 0;
|
|
9
9
|
require("core-js/modules/es.array.concat.js");
|
|
10
10
|
require("core-js/modules/es.date.to-json.js");
|
|
11
11
|
require("core-js/modules/es.date.to-string.js");
|
|
@@ -119,6 +119,15 @@ var getIsMeetingLaunched = /*#__PURE__*/function () {
|
|
|
119
119
|
var refreshUserToken = function refreshUserToken(token) {
|
|
120
120
|
_renderer.ipcRenderer.send('refresh-user-token', token);
|
|
121
121
|
};
|
|
122
|
+
var onUserTokenWillExpire = exports.onUserTokenWillExpire = function onUserTokenWillExpire() {
|
|
123
|
+
_renderer.ipcRenderer.send('user-token-will-expire');
|
|
124
|
+
};
|
|
125
|
+
var onWidgetClicked = exports.onWidgetClicked = function onWidgetClicked(widgetId) {
|
|
126
|
+
_renderer.ipcRenderer.send('widget-clicked', widgetId);
|
|
127
|
+
};
|
|
128
|
+
var onExitUiScene = exports.onExitUiScene = function onExitUiScene() {
|
|
129
|
+
_renderer.ipcRenderer.send('exit-ui-scene');
|
|
130
|
+
};
|
|
122
131
|
var cppSdkHelper = {
|
|
123
132
|
getLaunchOptions: getLaunchOptions,
|
|
124
133
|
getBundleType: getBundleType,
|
|
@@ -132,10 +141,35 @@ var cppSdkHelper = {
|
|
|
132
141
|
setParameters: setParameters,
|
|
133
142
|
getIsMeetingLaunched: getIsMeetingLaunched,
|
|
134
143
|
refreshUserToken: refreshUserToken,
|
|
135
|
-
exitedMeeting: exitedMeeting
|
|
144
|
+
exitedMeeting: exitedMeeting,
|
|
145
|
+
onUserTokenWillExpire: onUserTokenWillExpire,
|
|
146
|
+
onWidgetClicked: onWidgetClicked,
|
|
147
|
+
onExitUiScene: onExitUiScene,
|
|
148
|
+
// 需要在 index.html 中设置的回调
|
|
149
|
+
// onCreatorInit
|
|
150
|
+
onCreatorInit: function onCreatorInit() {},
|
|
151
|
+
// onSettingOpen
|
|
152
|
+
onSettingOpen: function onSettingOpen() {},
|
|
153
|
+
// onSettingClose
|
|
154
|
+
onSettingClose: function onSettingClose() {},
|
|
155
|
+
// onSetParameters
|
|
156
|
+
onSetParameters: function onSetParameters() {},
|
|
157
|
+
// onRenewUserToken
|
|
158
|
+
onRenewUserToken: function onRenewUserToken() {},
|
|
159
|
+
// onLaunchMeeting
|
|
160
|
+
onLaunchMeeting: function onLaunchMeeting() {},
|
|
161
|
+
// exitUiScene
|
|
162
|
+
exitUiScene: function exitUiScene() {}
|
|
136
163
|
};
|
|
164
|
+
|
|
137
165
|
// @ts-ignore
|
|
138
166
|
window.cppSdkHelper = cppSdkHelper;
|
|
167
|
+
|
|
168
|
+
/**
|
|
169
|
+
* 监听主进程来的事件
|
|
170
|
+
* 调用渲染进程的方法
|
|
171
|
+
*/
|
|
172
|
+
|
|
139
173
|
_renderer.ipcRenderer.on(_type.IPCMessageCMD.InitCreator, function (_event, value) {
|
|
140
174
|
if (cppSdkHelper.onCreatorInit) {
|
|
141
175
|
var data = value;
|
|
@@ -188,49 +222,49 @@ _renderer.ipcRenderer.on(_type.IPCMessageCMD.ExitUiScene, function (_event, valu
|
|
|
188
222
|
cppSdkHelper.exitUiScene();
|
|
189
223
|
}
|
|
190
224
|
});
|
|
225
|
+
console.log('windows_release sdk-helper loaded add listener close-window-before-launch-success');
|
|
226
|
+
_renderer.ipcRenderer.on('close-window-before-launch-success', function () {
|
|
227
|
+
console.log('windows_release Received close-window-before-launch-success event', new Date().toLocaleTimeString());
|
|
228
|
+
if (cppSdkHelper.exitUiScene) {
|
|
229
|
+
cppSdkHelper.exitUiScene();
|
|
230
|
+
}
|
|
231
|
+
});
|
|
232
|
+
|
|
233
|
+
// demo 发出,fcr-ui-scene 监听
|
|
191
234
|
_renderer.ipcRenderer.on('sdk-ready', function () {
|
|
192
235
|
if (cppSdkHelper.onSDKReady) {
|
|
193
236
|
cppSdkHelper.onSDKReady();
|
|
194
237
|
}
|
|
195
238
|
});
|
|
239
|
+
// demo 发出,fcr-ui-scene 监听
|
|
196
240
|
_renderer.ipcRenderer.on('launch-failure', function (_event, roomId, errorCode) {
|
|
197
241
|
if (cppSdkHelper.onLaunchFailure) {
|
|
198
242
|
cppSdkHelper.onLaunchFailure(roomId, errorCode);
|
|
199
243
|
}
|
|
200
244
|
});
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
if (cppSdkHelper.exitUiScene) {
|
|
204
|
-
cppSdkHelper.exitUiScene();
|
|
205
|
-
}
|
|
206
|
-
});
|
|
245
|
+
|
|
246
|
+
// demo 发出,fcr-ui-scene 监听
|
|
207
247
|
_renderer.ipcRenderer.on('exited-meeting', function (_event, roomId, reason) {
|
|
208
248
|
if (cppSdkHelper.onExitedMeeting) {
|
|
209
249
|
cppSdkHelper.onExitedMeeting(roomId, reason);
|
|
210
250
|
}
|
|
211
251
|
});
|
|
252
|
+
|
|
253
|
+
// demo 发出,fcr-ui-scene 监听
|
|
212
254
|
_renderer.ipcRenderer.on('refresh-user-token', function () {
|
|
213
255
|
if (cppSdkHelper.onRefreshUserToken) {
|
|
214
256
|
cppSdkHelper.onRefreshUserToken();
|
|
215
257
|
}
|
|
216
258
|
});
|
|
259
|
+
|
|
260
|
+
// demo 发出,fcr-ui-scene 监听
|
|
217
261
|
_renderer.ipcRenderer.on('launch-success', function (_event, roomId) {
|
|
218
262
|
if (cppSdkHelper.onLaunchSuccess) {
|
|
219
263
|
cppSdkHelper.onLaunchSuccess(roomId);
|
|
220
264
|
}
|
|
221
265
|
});
|
|
222
266
|
|
|
223
|
-
//
|
|
224
|
-
_renderer.ipcRenderer.on('widget-clicked', function (_event, widgetId) {
|
|
225
|
-
if (cppSdkHelper.onWidgetClicked) {
|
|
226
|
-
cppSdkHelper.onWidgetClicked(widgetId);
|
|
227
|
-
}
|
|
228
|
-
});
|
|
229
|
-
_renderer.ipcRenderer.on('user-token-will-expire', function () {
|
|
230
|
-
if (cppSdkHelper.onUserTokenWillExpire) {
|
|
231
|
-
cppSdkHelper.onUserTokenWillExpire();
|
|
232
|
-
}
|
|
233
|
-
});
|
|
267
|
+
// demo 发出,fcr-ui-scene 监听
|
|
234
268
|
_renderer.ipcRenderer.on('exit-ui-scene', function () {
|
|
235
269
|
if (cppSdkHelper.onExitUiScene) {
|
|
236
270
|
cppSdkHelper.onExitUiScene();
|
package/lib/electron/struct.d.ts
CHANGED
|
@@ -8,5 +8,11 @@ export declare enum FcrUISceneLaunchEndReason {
|
|
|
8
8
|
LAUNCH_FAILURE = "launchFailure",
|
|
9
9
|
CLOSE_WINDOW = "closeWindow",
|
|
10
10
|
EXITED = "exited",
|
|
11
|
-
CRASHED = "crashed"
|
|
11
|
+
CRASHED = "crashed",
|
|
12
|
+
HANG_DETECTION = "hangDetection"
|
|
13
|
+
}
|
|
14
|
+
export declare enum DisplayState {
|
|
15
|
+
SHOW = "show",
|
|
16
|
+
HIDE = "hide",
|
|
17
|
+
MINIMIZE = "minimize"
|
|
12
18
|
}
|
package/lib/electron/struct.js
CHANGED
|
@@ -4,7 +4,7 @@ require("core-js/modules/es.object.define-property.js");
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports.FcrUISceneLaunchState = exports.FcrUISceneLaunchEndReason = void 0;
|
|
7
|
+
exports.FcrUISceneLaunchState = exports.FcrUISceneLaunchEndReason = exports.DisplayState = void 0;
|
|
8
8
|
var FcrUISceneLaunchState = exports.FcrUISceneLaunchState = /*#__PURE__*/function (FcrUISceneLaunchState) {
|
|
9
9
|
FcrUISceneLaunchState[FcrUISceneLaunchState["DEFAULT"] = 0] = "DEFAULT";
|
|
10
10
|
FcrUISceneLaunchState[FcrUISceneLaunchState["PROCESSING"] = 1] = "PROCESSING";
|
|
@@ -17,5 +17,12 @@ var FcrUISceneLaunchEndReason = exports.FcrUISceneLaunchEndReason = /*#__PURE__*
|
|
|
17
17
|
FcrUISceneLaunchEndReason["CLOSE_WINDOW"] = "closeWindow";
|
|
18
18
|
FcrUISceneLaunchEndReason["EXITED"] = "exited";
|
|
19
19
|
FcrUISceneLaunchEndReason["CRASHED"] = "crashed";
|
|
20
|
+
FcrUISceneLaunchEndReason["HANG_DETECTION"] = "hangDetection";
|
|
20
21
|
return FcrUISceneLaunchEndReason;
|
|
22
|
+
}({});
|
|
23
|
+
var DisplayState = exports.DisplayState = /*#__PURE__*/function (DisplayState) {
|
|
24
|
+
DisplayState["SHOW"] = "show";
|
|
25
|
+
DisplayState["HIDE"] = "hide";
|
|
26
|
+
DisplayState["MINIMIZE"] = "minimize";
|
|
27
|
+
return DisplayState;
|
|
21
28
|
}({});
|
package/lib/electron/until.d.ts
CHANGED
|
@@ -19,10 +19,16 @@ declare enum DetailErrorCode {
|
|
|
19
19
|
processLaunchFailed = 81,
|
|
20
20
|
mainWindowHidden = 82,
|
|
21
21
|
closeWindowBeforeLaunchSuccess = 83,
|
|
22
|
-
meetingLaunchProcessing = 84
|
|
22
|
+
meetingLaunchProcessing = 84,
|
|
23
|
+
mainWindowHiddenAfterLaunchSuccess = 85,
|
|
24
|
+
crashed = 86,
|
|
25
|
+
hangDetection = 87
|
|
23
26
|
}
|
|
24
27
|
export declare const generaErrorCode: (serviceCode: ServiceErrorCode, uiSceneCode: UISceneErrorCode, detailCode: DetailErrorCode) => number;
|
|
25
28
|
export declare const windowHideErrorCode: number;
|
|
26
29
|
export declare const closeWindowBeforeLaunchSuccessErrorCode: number;
|
|
27
30
|
export declare const meetingLaunchProcessingErrorCode: number;
|
|
31
|
+
export declare const mainWindowHiddenOnLaunchSuccessErrorCode: number;
|
|
32
|
+
export declare const crashedErrorCode: number;
|
|
33
|
+
export declare const hangDetectionErrorCode: number;
|
|
28
34
|
export {};
|