fcr-ui-scene 3.7.5 → 3.7.7
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/installer/icons/icon.png +0 -0
- package/installer/mac/entitlements.mac.plist +1 -5
- 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/creator.d.ts +36 -0
- package/lib/creator.js +465 -0
- 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/action-bar/index.d.ts +55 -14
- package/lib/modules/action-bar/index.dev.js +94 -0
- package/lib/modules/action-bar/index.js +78 -32
- package/lib/modules/action-bar/store.d.ts +259 -0
- package/lib/modules/action-bar/store.js +1529 -0
- package/lib/modules/action-bar/types.d.ts +90 -0
- package/lib/modules/action-bar/types.js +6 -0
- package/lib/modules/action-bar/view.d.ts +1 -1
- package/lib/modules/action-bar/view.js +2 -2
- package/lib/modules/annotation/annotation-index.d.ts +2 -0
- package/lib/modules/annotation/annotation-index.js +80 -0
- package/lib/modules/annotation/annotation-toolbar-store.d.ts +75 -0
- package/lib/modules/annotation/annotation-toolbar-store.js +459 -0
- package/lib/modules/annotation/board-cursor.css +77 -0
- package/lib/modules/annotation/components/color-picker/components/color.d.ts +5 -0
- package/lib/modules/annotation/components/color-picker/components/color.js +38 -0
- package/lib/modules/annotation/components/color-picker/components/panel.d.ts +1 -0
- package/lib/modules/annotation/components/color-picker/components/panel.js +109 -0
- package/lib/modules/annotation/components/color-picker/components/picker.d.ts +1 -0
- package/lib/modules/annotation/components/color-picker/components/picker.js +75 -0
- package/lib/modules/annotation/components/color-picker/index.d.ts +2 -0
- package/lib/modules/annotation/components/color-picker/index.js +47 -0
- package/lib/modules/annotation/components/eraser-picker.d.ts +4 -0
- package/lib/modules/annotation/components/eraser-picker.js +144 -0
- package/lib/modules/annotation/components/expansion/index.d.ts +1 -0
- package/lib/modules/annotation/components/expansion/index.js +100 -0
- package/lib/modules/annotation/components/extra-tool-picker.d.ts +1 -0
- package/lib/modules/annotation/components/extra-tool-picker.js +62 -0
- package/lib/modules/annotation/components/history.d.ts +2 -0
- package/lib/modules/annotation/components/history.js +78 -0
- package/lib/modules/annotation/components/icons/fold-icon.d.ts +2 -0
- package/lib/modules/annotation/components/icons/fold-icon.js +41 -0
- package/lib/modules/annotation/components/icons/move-icon.d.ts +1 -0
- package/lib/modules/annotation/components/icons/move-icon.js +66 -0
- package/lib/modules/annotation/components/item/index.d.ts +1 -0
- package/lib/modules/annotation/components/item/index.js +43 -0
- package/lib/modules/annotation/components/move-handle.d.ts +5 -0
- package/lib/modules/annotation/components/move-handle.js +134 -0
- package/lib/modules/annotation/components/pen-picker.d.ts +4 -0
- package/lib/modules/annotation/components/pen-picker.js +155 -0
- package/lib/modules/annotation/components/screen-capture-picker.d.ts +4 -0
- package/lib/modules/annotation/components/screen-capture-picker.js +85 -0
- package/lib/modules/annotation/components/shape-picker.d.ts +4 -0
- package/lib/modules/annotation/components/shape-picker.js +210 -0
- package/lib/modules/annotation/hooks/index.d.ts +14 -0
- package/lib/modules/annotation/hooks/index.js +292 -0
- package/lib/modules/annotation/index.d.ts +45 -0
- package/lib/modules/annotation/index.js +168 -0
- package/lib/modules/annotation/store.d.ts +98 -0
- package/lib/modules/annotation/store.js +620 -0
- package/lib/modules/annotation/style.css +36 -0
- package/lib/modules/annotation/view.d.ts +3 -0
- package/lib/modules/annotation/view.js +44 -0
- 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/device-control/store.d.ts +42 -0
- package/lib/modules/components/device-control/store.js +241 -0
- 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/store.d.ts +39 -0
- package/lib/modules/components/leave-meeting/store.js +270 -0
- 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/annotation-button/index.d.ts +1 -0
- package/lib/modules/control-bar/components/annotation-button/index.js +72 -0
- 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/types.d.ts +5 -16
- 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/pre-setting/index.d.ts +3 -3
- package/lib/modules/dialog/dialogs/pre-setting/index.js +25 -20
- 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/electron.d.ts +6 -0
- package/lib/modules/dialog/dialogs/widget/electron.js +38 -0
- 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/hooks/use-popover-watcher.js +1 -3
- package/lib/modules/dialog/hooks/useElectron.d.ts +28 -0
- package/lib/modules/dialog/hooks/useElectron.js +277 -0
- 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.d.ts +135 -0
- package/lib/modules/dialog/store.electron.d.ts +9 -1
- package/lib/modules/dialog/store.electron.js +64 -4
- package/lib/modules/dialog/store.js +616 -0
- package/lib/modules/dialog/type.d.ts +3 -0
- package/lib/modules/event-confirm/components/window/index.d.ts +7 -0
- package/lib/modules/event-confirm/components/window/index.js +221 -0
- package/lib/modules/event-confirm/index.css +24 -0
- package/lib/modules/event-confirm/index.d.ts +27 -0
- package/lib/modules/event-confirm/index.js +76 -0
- package/lib/modules/event-confirm/store.d.ts +50 -0
- package/lib/modules/event-confirm/store.js +394 -0
- package/lib/modules/event-confirm/view.d.ts +2 -0
- package/lib/modules/event-confirm/view.js +55 -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.d.ts +9 -5
- package/lib/modules/event-toast/store.electron.d.ts +2 -0
- package/lib/modules/event-toast/store.electron.js +19 -9
- package/lib/modules/event-toast/store.js +57 -39
- package/lib/modules/layout/components/CommonVideoRenderer.js +1 -0
- package/lib/modules/layout/store.d.ts +176 -0
- package/lib/modules/layout/store.electron.js +1 -1
- package/lib/modules/layout/store.js +1452 -0
- 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.d.ts +222 -0
- package/lib/modules/participant/store.electron.js +5 -3
- package/lib/modules/participant/store.js +1929 -0
- package/lib/modules/pc-audio-connect/index.d.ts +22 -0
- package/lib/modules/pc-audio-connect/index.js +67 -0
- package/lib/modules/pc-audio-connect/main-scene/store.js +1 -0
- package/lib/modules/pc-audio-connect/store.d.ts +46 -0
- package/lib/modules/pc-audio-connect/store.js +304 -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/dialog-wrapper.d.ts +2 -0
- package/lib/modules/setting/dialog-wrapper.js +110 -0
- 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/setting/store.d.ts +261 -0
- package/lib/modules/setting/store.js +1321 -0
- 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.d.ts +148 -0
- package/lib/modules/share-screen/store.electron.js +5 -2
- package/lib/modules/share-screen/store.js +960 -0
- package/lib/modules/share-screen/types.d.ts +26 -0
- package/lib/modules/share-screen/types.js +6 -0
- 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/state-bar/store.d.ts +124 -0
- package/lib/modules/state-bar/store.js +664 -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/components/progress/electron.d.ts +1 -0
- package/lib/modules/whiteboard/components/progress/electron.js +33 -0
- 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.d.ts +5 -8
- package/lib/modules/widget/store.electron.d.ts +1 -0
- package/lib/modules/widget/store.electron.js +59 -2
- package/lib/modules/widget/store.js +4 -47
- 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/annotation-provider.d.ts +124 -0
- package/lib/providers/annotation-provider.js +369 -0
- 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/dialog-provider.d.ts +137 -0
- package/lib/providers/dialog-provider.js +194 -0
- package/lib/providers/message-provider.d.ts +69 -0
- package/lib/providers/message-provider.js +140 -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/room-provider.d.ts +194 -0
- package/lib/providers/room-provider.js +916 -0
- 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/screen-share-provider.d.ts +245 -0
- package/lib/providers/screen-share-provider.js +850 -0
- package/lib/providers/sharing-provider.d.ts +42 -0
- package/lib/providers/sharing-provider.js +228 -0
- package/lib/providers/user-setting-storage-provider.d.ts +21 -0
- package/lib/providers/user-setting-storage-provider.js +65 -0
- package/lib/providers/whiteboard-provider.d.ts +2 -4
- package/lib/providers/whiteboard-provider.js +4 -7
- 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/shared-data-source/annotation-data.d.ts +17 -0
- package/lib/{modules/action-bar/store.base.js → shared-data-source/annotation-data.js} +34 -41
- package/lib/shared-data-source/app-list-data.d.ts +34 -0
- package/lib/shared-data-source/app-list-data.js +133 -0
- package/lib/shared-data-source/chat-data.d.ts +25 -0
- package/lib/shared-data-source/chat-data.js +139 -0
- package/lib/shared-data-source/config.d.ts +35 -0
- package/lib/shared-data-source/config.js +40 -0
- package/lib/shared-data-source/confirm-data.d.ts +44 -0
- package/lib/shared-data-source/confirm-data.js +201 -0
- package/lib/shared-data-source/device-privilege-data.d.ts +8 -0
- package/lib/shared-data-source/device-privilege-data.js +25 -0
- package/lib/shared-data-source/interpreter.d.ts +77 -0
- package/lib/shared-data-source/interpreter.js +247 -0
- package/lib/shared-data-source/layout-data.d.ts +31 -0
- package/lib/shared-data-source/layout-data.js +189 -0
- package/lib/shared-data-source/meeting-time.d.ts +90 -0
- package/lib/shared-data-source/meeting-time.js +416 -0
- package/lib/shared-data-source/member-data.d.ts +139 -0
- package/lib/shared-data-source/member-data.js +517 -0
- package/lib/shared-data-source/pin-data.d.ts +13 -0
- package/lib/{modules/action-bar/waiting-scene/store.js → shared-data-source/pin-data.js} +55 -35
- package/lib/shared-data-source/screen-share-data.d.ts +357 -0
- package/lib/shared-data-source/screen-share-data.js +513 -0
- package/lib/shared-data-source/security-data.d.ts +39 -0
- package/lib/shared-data-source/security-data.js +156 -0
- package/lib/shared-data-source/setting.d.ts +67 -0
- package/lib/shared-data-source/setting.js +220 -0
- package/lib/shared-data-source/speaker-spotlight.d.ts +5 -0
- package/lib/shared-data-source/speaker-spotlight.js +15 -0
- package/lib/shared-data-source/video-window.d.ts +165 -0
- package/lib/shared-data-source/video-window.js +1266 -0
- package/lib/shared-data-source/waiting-room.d.ts +46 -0
- package/lib/shared-data-source/waiting-room.js +222 -0
- package/lib/{shared-data → shared-data-source}/whiteboard-data.d.ts +2 -2
- package/lib/{shared-data → shared-data-source}/whiteboard-data.js +23 -17
- 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/board-context.d.ts +4 -0
- package/lib/utilities/board-context.js +12 -0
- package/lib/utilities/constant.d.ts +3 -1
- package/lib/utilities/constant.js +5 -2
- package/lib/utilities/copyText.d.ts +2 -0
- package/lib/utilities/copyText.js +48 -0
- 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-event.d.ts +10 -0
- package/lib/utilities/renderer-event.js +95 -0
- package/lib/utilities/renderer.d.ts +1 -0
- package/lib/utilities/renderer.js +7 -1
- package/lib/utilities/screen-capture-permission.d.ts +2 -0
- package/lib/utilities/screen-capture-permission.js +24 -0
- package/lib/utilities/screen.d.ts +3 -0
- package/lib/utilities/screen.js +53 -0
- package/lib/utilities/video-track-render-context.d.ts +6 -0
- package/lib/utilities/video-track-render-context.js +9 -0
- package/lib/waiting-room-control-manager.d.ts +28 -0
- package/lib/waiting-room-control-manager.js +230 -0
- package/package.json +5 -5
- package/public/index.html +35 -4
- package/lib/modules/action-bar/store.base.d.ts +0 -15
- package/lib/modules/action-bar/waiting-scene/store.d.ts +0 -6
- 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/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/utilities/ipc-protocol.d.ts +0 -91
- package/lib/utilities/ipc-protocol.js +0 -61
- /package/lib/{providers/window/browser-window-proxy.d.ts → modules/action-bar/index.dev.d.ts} +0 -0
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { FcrScreenSharingState, FcrSharingControl, FcrWhiteboardState } from 'fcr-core/lib/room-control/sharing-control/type';
|
|
2
|
+
import { FcrScreenStreamCreateConfig } from 'fcr-core/lib/room-control/stream-control/type';
|
|
3
|
+
import { FcrUserControl } from 'fcr-core/lib/type';
|
|
4
|
+
import { FcrUIScreenShareSharedDataSource } from '../shared-data-source/screen-share-data';
|
|
5
|
+
import { FcrUISharedWhiteboardDataSource } from '../shared-data-source/whiteboard-data';
|
|
6
|
+
import { FcrUIWhiteboardProvider } from './whiteboard-provider';
|
|
7
|
+
export interface FcrUISharingProvider {
|
|
8
|
+
get screenSharingOwnerId(): string;
|
|
9
|
+
get whiteboardOwnerId(): string;
|
|
10
|
+
get screenSharingState(): FcrScreenSharingState;
|
|
11
|
+
get whiteboardState(): FcrWhiteboardState;
|
|
12
|
+
startScreenSharing: (config: FcrScreenStreamCreateConfig) => void;
|
|
13
|
+
startWhiteboard: () => void;
|
|
14
|
+
updateScreenSharing: (enableAnnotation: boolean) => void;
|
|
15
|
+
stop: () => void;
|
|
16
|
+
getScreenSharingState: () => FcrScreenSharingState;
|
|
17
|
+
getWhiteboardState: () => FcrWhiteboardState;
|
|
18
|
+
getSharingControl: () => FcrSharingControl;
|
|
19
|
+
}
|
|
20
|
+
export declare class FcrUISharingProviderImpl implements FcrUISharingProvider {
|
|
21
|
+
private _sharingControl;
|
|
22
|
+
private _sharedScreenShareSharedDataSource;
|
|
23
|
+
private _sharedWhiteboardDataSource;
|
|
24
|
+
private _whiteboardProvider;
|
|
25
|
+
private _userControl;
|
|
26
|
+
protected logger: import("agora-foundation/lib/logger").Logger;
|
|
27
|
+
private _observer;
|
|
28
|
+
accessor screenSharingOwnerId: string;
|
|
29
|
+
accessor whiteboardOwnerId: string;
|
|
30
|
+
accessor screenSharingState: FcrScreenSharingState;
|
|
31
|
+
accessor whiteboardState: FcrWhiteboardState;
|
|
32
|
+
get isSeizeStream(): boolean;
|
|
33
|
+
constructor(_sharingControl: FcrSharingControl, _sharedScreenShareSharedDataSource: FcrUIScreenShareSharedDataSource, _sharedWhiteboardDataSource: FcrUISharedWhiteboardDataSource, _whiteboardProvider: FcrUIWhiteboardProvider, _userControl: FcrUserControl);
|
|
34
|
+
startScreenSharing(config: FcrScreenStreamCreateConfig): void;
|
|
35
|
+
startWhiteboard(): void;
|
|
36
|
+
updateScreenSharing(enableAnnotation: boolean): void;
|
|
37
|
+
stop(): void;
|
|
38
|
+
getScreenSharingState(): FcrScreenSharingState;
|
|
39
|
+
getWhiteboardState(): FcrWhiteboardState;
|
|
40
|
+
getSharingControl(): FcrSharingControl;
|
|
41
|
+
release(): void;
|
|
42
|
+
}
|
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.symbol.js");
|
|
4
|
+
require("core-js/modules/es.symbol.description.js");
|
|
5
|
+
require("core-js/modules/es.symbol.to-primitive.js");
|
|
6
|
+
require("core-js/modules/es.error.cause.js");
|
|
7
|
+
require("core-js/modules/es.error.to-string.js");
|
|
8
|
+
require("core-js/modules/es.array.is-array.js");
|
|
9
|
+
require("core-js/modules/es.array.push.js");
|
|
10
|
+
require("core-js/modules/es.date.to-primitive.js");
|
|
11
|
+
require("core-js/modules/es.function.bind.js");
|
|
12
|
+
require("core-js/modules/es.function.name.js");
|
|
13
|
+
require("core-js/modules/es.map.js");
|
|
14
|
+
require("core-js/modules/es.number.constructor.js");
|
|
15
|
+
require("core-js/modules/es.object.create.js");
|
|
16
|
+
require("core-js/modules/es.object.define-property.js");
|
|
17
|
+
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
18
|
+
require("core-js/modules/esnext.function.metadata.js");
|
|
19
|
+
require("core-js/modules/esnext.map.delete-all.js");
|
|
20
|
+
require("core-js/modules/esnext.map.emplace.js");
|
|
21
|
+
require("core-js/modules/esnext.map.every.js");
|
|
22
|
+
require("core-js/modules/esnext.map.filter.js");
|
|
23
|
+
require("core-js/modules/esnext.map.find.js");
|
|
24
|
+
require("core-js/modules/esnext.map.find-key.js");
|
|
25
|
+
require("core-js/modules/esnext.map.includes.js");
|
|
26
|
+
require("core-js/modules/esnext.map.key-of.js");
|
|
27
|
+
require("core-js/modules/esnext.map.map-keys.js");
|
|
28
|
+
require("core-js/modules/esnext.map.map-values.js");
|
|
29
|
+
require("core-js/modules/esnext.map.merge.js");
|
|
30
|
+
require("core-js/modules/esnext.map.reduce.js");
|
|
31
|
+
require("core-js/modules/esnext.map.some.js");
|
|
32
|
+
require("core-js/modules/esnext.map.update.js");
|
|
33
|
+
require("core-js/modules/esnext.symbol.metadata.js");
|
|
34
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
35
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
36
|
+
Object.defineProperty(exports, "__esModule", {
|
|
37
|
+
value: true
|
|
38
|
+
});
|
|
39
|
+
exports.FcrUISharingProviderImpl = void 0;
|
|
40
|
+
require("core-js/modules/es.array.concat.js");
|
|
41
|
+
require("core-js/modules/es.array.iterator.js");
|
|
42
|
+
require("core-js/modules/es.date.to-json.js");
|
|
43
|
+
require("core-js/modules/es.json.stringify.js");
|
|
44
|
+
require("core-js/modules/es.object.to-string.js");
|
|
45
|
+
require("core-js/modules/es.string.iterator.js");
|
|
46
|
+
require("core-js/modules/es.weak-map.js");
|
|
47
|
+
require("core-js/modules/esnext.weak-map.delete-all.js");
|
|
48
|
+
require("core-js/modules/esnext.weak-map.emplace.js");
|
|
49
|
+
require("core-js/modules/web.dom-collections.iterator.js");
|
|
50
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
51
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
52
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
53
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
54
|
+
var _decorator = require("agora-foundation/lib/decorator");
|
|
55
|
+
var _type = require("fcr-core/lib/room-control/sharing-control/type");
|
|
56
|
+
var _mobx = require("mobx");
|
|
57
|
+
var _base = require("../base");
|
|
58
|
+
var _logger = require("../utilities/logger");
|
|
59
|
+
var _env = require("agora-foundation/lib/utilities/env");
|
|
60
|
+
var _FcrUISharingProviderImpl;
|
|
61
|
+
var _initProto, _init_screenSharingOwnerId, _init_whiteboardOwnerId, _init_screenSharingState, _init_whiteboardState;
|
|
62
|
+
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
|
|
63
|
+
function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
|
|
64
|
+
function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
|
|
65
|
+
function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
|
|
66
|
+
function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
|
|
67
|
+
function _applyDecs(e, t, r, n, o, a) { function i(e, t, r) { return function (n, o) { return r && r(n), e[t].call(n, o); }; } function c(e, t) { for (var r = 0; r < e.length; r++) e[r].call(t); return t; } function s(e, t, r, n) { if ("function" != typeof e && (n || void 0 !== e)) throw new TypeError(t + " must " + (r || "be") + " a function" + (n ? "" : " or undefined")); return e; } function applyDec(e, t, r, n, o, a, c, u, l, f, p, d, h) { function m(e) { if (!h(e)) throw new TypeError("Attempted to access private element on non-instance"); } var y, v = t[0], g = t[3], b = !u; if (!b) { r || Array.isArray(v) || (v = [v]); var w = {}, S = [], A = 3 === o ? "get" : 4 === o || d ? "set" : "value"; f ? (p || d ? w = { get: _setFunctionName(function () { return g(this); }, n, "get"), set: function set(e) { t[4](this, e); } } : w[A] = g, p || _setFunctionName(w[A], n, 2 === o ? "" : A)) : p || (w = Object.getOwnPropertyDescriptor(e, n)); } for (var P = e, j = v.length - 1; j >= 0; j -= r ? 2 : 1) { var D = v[j], E = r ? v[j - 1] : void 0, I = {}, O = { kind: ["field", "accessor", "method", "getter", "setter", "class"][o], name: n, metadata: a, addInitializer: function (e, t) { if (e.v) throw Error("attempted to call addInitializer after decoration was finished"); s(t, "An initializer", "be", !0), c.push(t); }.bind(null, I) }; try { if (b) (y = s(D.call(E, P, O), "class decorators", "return")) && (P = y);else { var k, F; O["static"] = l, O["private"] = f, f ? 2 === o ? k = function k(e) { return m(e), w.value; } : (o < 4 && (k = i(w, "get", m)), 3 !== o && (F = i(w, "set", m))) : (k = function k(e) { return e[n]; }, (o < 2 || 4 === o) && (F = function F(e, t) { e[n] = t; })); var N = O.access = { has: f ? h.bind() : function (e) { return n in e; } }; if (k && (N.get = k), F && (N.set = F), P = D.call(E, d ? { get: w.get, set: w.set } : w[A], O), d) { if ("object" == _typeof(P) && P) (y = s(P.get, "accessor.get")) && (w.get = y), (y = s(P.set, "accessor.set")) && (w.set = y), (y = s(P.init, "accessor.init")) && S.push(y);else if (void 0 !== P) throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0"); } else s(P, (p ? "field" : "method") + " decorators", "return") && (p ? S.push(P) : w[A] = P); } } finally { I.v = !0; } } return (p || d) && u.push(function (e, t) { for (var r = S.length - 1; r >= 0; r--) t = S[r].call(e, t); return t; }), p || b || (f ? d ? u.push(i(w, "get"), i(w, "set")) : u.push(2 === o ? w[A] : i.call.bind(w[A])) : Object.defineProperty(e, n, w)), P; } function u(e, t) { return Object.defineProperty(e, Symbol.metadata || Symbol["for"]("Symbol.metadata"), { configurable: !0, enumerable: !0, value: t }); } if (arguments.length >= 6) var l = a[Symbol.metadata || Symbol["for"]("Symbol.metadata")]; var f = Object.create(null == l ? null : l), p = function (e, t, r, n) { var o, a, i = [], s = function s(t) { return _checkInRHS(t) === e; }, u = new Map(); function l(e) { e && i.push(c.bind(null, e)); } for (var f = 0; f < t.length; f++) { var p = t[f]; if (Array.isArray(p)) { var d = p[1], h = p[2], m = p.length > 3, y = 16 & d, v = !!(8 & d), g = 0 == (d &= 7), b = h + "/" + v; if (!g && !m) { var w = u.get(b); if (!0 === w || 3 === w && 4 !== d || 4 === w && 3 !== d) throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: " + h); u.set(b, !(d > 2) || d); } applyDec(v ? e : e.prototype, p, y, m ? "#" + h : _toPropertyKey(h), d, n, v ? a = a || [] : o = o || [], i, v, m, g, 1 === d, v && m ? s : r); } } return l(o), l(a), i; }(e, t, o, f); return r.length || u(e, f), { e: p, get c() { var t = []; return r.length && [u(applyDec(e, [r], n, e.name, 5, f, t), f), c.bind(null, t, e)]; } }; }
|
|
68
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
69
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
70
|
+
function _setFunctionName(e, t, n) { "symbol" == _typeof(t) && (t = (t = t.description) ? "[" + t + "]" : ""); try { Object.defineProperty(e, "name", { configurable: !0, value: n ? n + " " + t : t }); } catch (e) {} return e; }
|
|
71
|
+
function _checkInRHS(e) { if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (null !== e ? _typeof(e) : "null")); return e; }
|
|
72
|
+
var _A = /*#__PURE__*/new WeakMap();
|
|
73
|
+
var _B = /*#__PURE__*/new WeakMap();
|
|
74
|
+
var _C = /*#__PURE__*/new WeakMap();
|
|
75
|
+
var _D = /*#__PURE__*/new WeakMap();
|
|
76
|
+
var FcrUISharingProviderImpl = exports.FcrUISharingProviderImpl = /*#__PURE__*/function () {
|
|
77
|
+
function FcrUISharingProviderImpl(_sharingControl, _sharedScreenShareSharedDataSource, _sharedWhiteboardDataSource, _whiteboardProvider, _userControl) {
|
|
78
|
+
var _this = this;
|
|
79
|
+
(0, _classCallCheck2["default"])(this, FcrUISharingProviderImpl);
|
|
80
|
+
(0, _defineProperty2["default"])(this, "logger", (_initProto(this), (0, _logger.createLogger)({
|
|
81
|
+
prefix: 'FcrUISharingProviderImpl'
|
|
82
|
+
})));
|
|
83
|
+
(0, _defineProperty2["default"])(this, "_observer", {
|
|
84
|
+
onScreenSharingUpdated: function onScreenSharingUpdated(ownerStream, state) {
|
|
85
|
+
_this.screenSharingOwnerId = (ownerStream === null || ownerStream === void 0 ? void 0 : ownerStream.owner.userId) || '';
|
|
86
|
+
_this.screenSharingState = state;
|
|
87
|
+
if (state === _type.FcrScreenSharingState.END && (0, _env.isElectron)()) {
|
|
88
|
+
_this._sharedScreenShareSharedDataSource.setSharingInReplace(false);
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
onWhiteboardStarted: function onWhiteboardStarted(ownerId, operatorUser) {
|
|
92
|
+
if (_this.whiteboardState === _type.FcrWhiteboardState.START) {
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
_this.whiteboardOwnerId = ownerId;
|
|
96
|
+
_this.whiteboardState = _type.FcrWhiteboardState.START;
|
|
97
|
+
var owner = _this._userControl.getUser(ownerId);
|
|
98
|
+
if (owner) {
|
|
99
|
+
_this._sharedWhiteboardDataSource.setSharingUser(owner);
|
|
100
|
+
}
|
|
101
|
+
var background = _this._whiteboardProvider.backgroundColor;
|
|
102
|
+
if (background) {
|
|
103
|
+
_this._sharedWhiteboardDataSource.setBackgroundColor(background);
|
|
104
|
+
}
|
|
105
|
+
_this.logger.info("[sharing-provider]: onWhiteboardStarted ".concat(ownerId, ", ").concat(JSON.stringify(operatorUser), ", backgroundColor: ").concat(_this._whiteboardProvider.backgroundColor));
|
|
106
|
+
},
|
|
107
|
+
onWhiteboardEnded: function onWhiteboardEnded(reason, operatorUser) {
|
|
108
|
+
if (_this.whiteboardState === _type.FcrWhiteboardState.END) {
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
_this._sharedWhiteboardDataSource.setJoinSuccess(false);
|
|
112
|
+
_this._sharedWhiteboardDataSource.setShowLoading(true);
|
|
113
|
+
_this._sharedWhiteboardDataSource.inActive();
|
|
114
|
+
_this._sharedWhiteboardDataSource.setSharingUser(undefined);
|
|
115
|
+
_this.logger.info("[sharing-provider]: onWhiteboardEnded, joinSuccess: ".concat(_this._sharedWhiteboardDataSource.joinSuccess));
|
|
116
|
+
_this.whiteboardState = _type.FcrWhiteboardState.END;
|
|
117
|
+
}
|
|
118
|
+
});
|
|
119
|
+
_classPrivateFieldInitSpec(this, _A, _init_screenSharingOwnerId(this, ''));
|
|
120
|
+
_classPrivateFieldInitSpec(this, _B, _init_whiteboardOwnerId(this, ''));
|
|
121
|
+
_classPrivateFieldInitSpec(this, _C, _init_screenSharingState(this, _type.FcrScreenSharingState.END));
|
|
122
|
+
_classPrivateFieldInitSpec(this, _D, _init_whiteboardState(this, _type.FcrWhiteboardState.END));
|
|
123
|
+
this._sharingControl = _sharingControl;
|
|
124
|
+
this._sharedScreenShareSharedDataSource = _sharedScreenShareSharedDataSource;
|
|
125
|
+
this._sharedWhiteboardDataSource = _sharedWhiteboardDataSource;
|
|
126
|
+
this._whiteboardProvider = _whiteboardProvider;
|
|
127
|
+
this._userControl = _userControl;
|
|
128
|
+
this._sharingControl.addObserver(this._observer);
|
|
129
|
+
this.screenSharingState = this._sharingControl.getScreenSharingState();
|
|
130
|
+
this.whiteboardState = this._sharingControl.getWhiteboardState();
|
|
131
|
+
if (this.screenSharingState !== _type.FcrScreenSharingState.END) {
|
|
132
|
+
var _this$_sharedScreenSh;
|
|
133
|
+
this.screenSharingOwnerId = ((_this$_sharedScreenSh = this._sharedScreenShareSharedDataSource.screenSharingOwner) === null || _this$_sharedScreenSh === void 0 ? void 0 : _this$_sharedScreenSh.userId) || '';
|
|
134
|
+
}
|
|
135
|
+
if (this.whiteboardState === _type.FcrWhiteboardState.START) {
|
|
136
|
+
this.whiteboardOwnerId = this._sharingControl.getBoardControl().getOwnerId();
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
// @ts-ignore
|
|
140
|
+
window._sharingProvider = this;
|
|
141
|
+
}
|
|
142
|
+
return (0, _createClass2["default"])(FcrUISharingProviderImpl, [{
|
|
143
|
+
key: "screenSharingOwnerId",
|
|
144
|
+
get: function get() {
|
|
145
|
+
return _classPrivateFieldGet(_A, this);
|
|
146
|
+
},
|
|
147
|
+
set: function set(v) {
|
|
148
|
+
_classPrivateFieldSet(_A, this, v);
|
|
149
|
+
}
|
|
150
|
+
}, {
|
|
151
|
+
key: "whiteboardOwnerId",
|
|
152
|
+
get: function get() {
|
|
153
|
+
return _classPrivateFieldGet(_B, this);
|
|
154
|
+
},
|
|
155
|
+
set: function set(v) {
|
|
156
|
+
_classPrivateFieldSet(_B, this, v);
|
|
157
|
+
}
|
|
158
|
+
}, {
|
|
159
|
+
key: "screenSharingState",
|
|
160
|
+
get: function get() {
|
|
161
|
+
return _classPrivateFieldGet(_C, this);
|
|
162
|
+
},
|
|
163
|
+
set: function set(v) {
|
|
164
|
+
_classPrivateFieldSet(_C, this, v);
|
|
165
|
+
}
|
|
166
|
+
}, {
|
|
167
|
+
key: "whiteboardState",
|
|
168
|
+
get: function get() {
|
|
169
|
+
return _classPrivateFieldGet(_D, this);
|
|
170
|
+
},
|
|
171
|
+
set: function set(v) {
|
|
172
|
+
_classPrivateFieldSet(_D, this, v);
|
|
173
|
+
}
|
|
174
|
+
}, {
|
|
175
|
+
key: "isSeizeStream",
|
|
176
|
+
get: function get() {
|
|
177
|
+
return this._sharedScreenShareSharedDataSource.isSeizeStream;
|
|
178
|
+
}
|
|
179
|
+
}, {
|
|
180
|
+
key: "startScreenSharing",
|
|
181
|
+
value: function startScreenSharing(config) {
|
|
182
|
+
this._sharingControl.startScreenSharing(config);
|
|
183
|
+
}
|
|
184
|
+
}, {
|
|
185
|
+
key: "startWhiteboard",
|
|
186
|
+
value: function startWhiteboard() {
|
|
187
|
+
this._sharingControl.startWhiteboard();
|
|
188
|
+
}
|
|
189
|
+
}, {
|
|
190
|
+
key: "updateScreenSharing",
|
|
191
|
+
value: function updateScreenSharing(enableAnnotation) {
|
|
192
|
+
this._sharingControl.updateScreenSharing(enableAnnotation);
|
|
193
|
+
}
|
|
194
|
+
}, {
|
|
195
|
+
key: "stop",
|
|
196
|
+
value: function stop() {
|
|
197
|
+
this._sharingControl.stop();
|
|
198
|
+
}
|
|
199
|
+
}, {
|
|
200
|
+
key: "getScreenSharingState",
|
|
201
|
+
value: function getScreenSharingState() {
|
|
202
|
+
return this._sharingControl.getScreenSharingState();
|
|
203
|
+
}
|
|
204
|
+
}, {
|
|
205
|
+
key: "getWhiteboardState",
|
|
206
|
+
value: function getWhiteboardState() {
|
|
207
|
+
return this._sharingControl.getWhiteboardState();
|
|
208
|
+
}
|
|
209
|
+
}, {
|
|
210
|
+
key: "getSharingControl",
|
|
211
|
+
value: function getSharingControl() {
|
|
212
|
+
return this._sharingControl;
|
|
213
|
+
}
|
|
214
|
+
}, {
|
|
215
|
+
key: "release",
|
|
216
|
+
value: function release() {
|
|
217
|
+
this._sharingControl.removeObserver(this._observer);
|
|
218
|
+
}
|
|
219
|
+
}]);
|
|
220
|
+
}();
|
|
221
|
+
_FcrUISharingProviderImpl = FcrUISharingProviderImpl;
|
|
222
|
+
var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_FcrUISharingProviderImpl, [[_mobx.observable, 1, "screenSharingOwnerId"], [_mobx.observable, 1, "whiteboardOwnerId"], [_mobx.observable, 1, "screenSharingState"], [_mobx.observable, 1, "whiteboardState"], [_decorator.bound, 2, "startScreenSharing"], [_decorator.bound, 2, "startWhiteboard"], [_decorator.bound, 2, "updateScreenSharing"], [_decorator.bound, 2, "stop"], [_decorator.bound, 2, "getScreenSharingState"], [_decorator.bound, 2, "getWhiteboardState"], [_decorator.bound, 2, "getSharingControl"], [_decorator.bound, 2, "release"]], []).e, 5);
|
|
223
|
+
_init_screenSharingOwnerId = _applyDecs$e[0];
|
|
224
|
+
_init_whiteboardOwnerId = _applyDecs$e[1];
|
|
225
|
+
_init_screenSharingState = _applyDecs$e[2];
|
|
226
|
+
_init_whiteboardState = _applyDecs$e[3];
|
|
227
|
+
_initProto = _applyDecs$e[4];
|
|
228
|
+
(0, _base.registerDependency)('sharingProvider');
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { FcrUISettingConfig } from '../type';
|
|
2
|
+
export declare const settingConfigStorageKey = "fcr-ui-setting-config";
|
|
3
|
+
export interface FcrUIUserSettingStorageProvider {
|
|
4
|
+
/**
|
|
5
|
+
* 写入本地存储
|
|
6
|
+
* @param key
|
|
7
|
+
* @param value
|
|
8
|
+
*/
|
|
9
|
+
write(value: Partial<FcrUISettingConfig>): number;
|
|
10
|
+
/**
|
|
11
|
+
* 从本地存储读取
|
|
12
|
+
* @param key
|
|
13
|
+
*/
|
|
14
|
+
read(): FcrUISettingConfig | null;
|
|
15
|
+
}
|
|
16
|
+
export declare class FcrUIUserSettingStorageProviderImpl implements FcrUIUserSettingStorageProvider {
|
|
17
|
+
private _isElectron;
|
|
18
|
+
constructor();
|
|
19
|
+
write(value: Partial<FcrUISettingConfig>): number;
|
|
20
|
+
read(): any;
|
|
21
|
+
}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.symbol.js");
|
|
4
|
+
require("core-js/modules/es.array.filter.js");
|
|
5
|
+
require("core-js/modules/es.array.for-each.js");
|
|
6
|
+
require("core-js/modules/es.array.push.js");
|
|
7
|
+
require("core-js/modules/es.object.define-properties.js");
|
|
8
|
+
require("core-js/modules/es.object.define-property.js");
|
|
9
|
+
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
10
|
+
require("core-js/modules/es.object.get-own-property-descriptors.js");
|
|
11
|
+
require("core-js/modules/es.object.to-string.js");
|
|
12
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
|
13
|
+
require("core-js/modules/esnext.iterator.filter.js");
|
|
14
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
|
15
|
+
require("core-js/modules/web.dom-collections.for-each.js");
|
|
16
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
17
|
+
Object.defineProperty(exports, "__esModule", {
|
|
18
|
+
value: true
|
|
19
|
+
});
|
|
20
|
+
exports.settingConfigStorageKey = exports.FcrUIUserSettingStorageProviderImpl = void 0;
|
|
21
|
+
require("core-js/modules/es.date.to-json.js");
|
|
22
|
+
require("core-js/modules/es.json.stringify.js");
|
|
23
|
+
require("core-js/modules/es.object.keys.js");
|
|
24
|
+
require("core-js/modules/esnext.json.parse.js");
|
|
25
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
26
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
27
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
28
|
+
var _base = require("../base");
|
|
29
|
+
var _env = require("agora-foundation/lib/utilities/env");
|
|
30
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
31
|
+
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; }
|
|
32
|
+
var settingConfigStorageKey = exports.settingConfigStorageKey = 'fcr-ui-setting-config';
|
|
33
|
+
var FcrUIUserSettingStorageProviderImpl = exports.FcrUIUserSettingStorageProviderImpl = /*#__PURE__*/function () {
|
|
34
|
+
function FcrUIUserSettingStorageProviderImpl() {
|
|
35
|
+
(0, _classCallCheck2["default"])(this, FcrUIUserSettingStorageProviderImpl);
|
|
36
|
+
(0, _defineProperty2["default"])(this, "_isElectron", false);
|
|
37
|
+
this._isElectron = (0, _env.isElectron)();
|
|
38
|
+
}
|
|
39
|
+
return (0, _createClass2["default"])(FcrUIUserSettingStorageProviderImpl, [{
|
|
40
|
+
key: "write",
|
|
41
|
+
value: function write(value) {
|
|
42
|
+
var userSetting = this.read();
|
|
43
|
+
if (userSetting) {
|
|
44
|
+
value = _objectSpread(_objectSpread({}, userSetting), value);
|
|
45
|
+
}
|
|
46
|
+
if (this._isElectron) {
|
|
47
|
+
window.runtime.setUserSettingData(value);
|
|
48
|
+
} else {
|
|
49
|
+
localStorage.setItem(settingConfigStorageKey, JSON.stringify(value));
|
|
50
|
+
}
|
|
51
|
+
return 1;
|
|
52
|
+
}
|
|
53
|
+
}, {
|
|
54
|
+
key: "read",
|
|
55
|
+
value: function read() {
|
|
56
|
+
if (this._isElectron) {
|
|
57
|
+
return window.runtime.getUserSettingData();
|
|
58
|
+
} else {
|
|
59
|
+
var getItem = localStorage.getItem(settingConfigStorageKey);
|
|
60
|
+
return getItem ? JSON.parse(getItem) : null;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}]);
|
|
64
|
+
}();
|
|
65
|
+
(0, _base.registerDependency)('userSettingStorageProvider');
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { FcrPrivilegedWhiteboardControl } from 'fcr-core/lib/room-control/whiteboard-control-v2/whiteboard-control/type';
|
|
2
2
|
import { FcrConnectionState, FcrUserControl, FcrUserInfo } from 'fcr-core/lib/type';
|
|
3
|
-
import { FcrUISharedWhiteboardDataSource } from '../shared-data/whiteboard-data';
|
|
4
|
-
import { FcrUIManagedObject } from '../object-manager';
|
|
3
|
+
import { FcrUISharedWhiteboardDataSource } from '../shared-data-source/whiteboard-data';
|
|
5
4
|
export interface FcrUIWhiteboardProvider {
|
|
6
5
|
get backgroundColor(): string;
|
|
7
6
|
get isActive(): boolean;
|
|
@@ -9,7 +8,7 @@ export interface FcrUIWhiteboardProvider {
|
|
|
9
8
|
get ownerUser(): FcrUserInfo | undefined;
|
|
10
9
|
setBackground: (color: string) => void;
|
|
11
10
|
}
|
|
12
|
-
export declare class FcrUIWhiteboardProviderImpl implements FcrUIWhiteboardProvider
|
|
11
|
+
export declare class FcrUIWhiteboardProviderImpl implements FcrUIWhiteboardProvider {
|
|
13
12
|
private _whiteboardControl;
|
|
14
13
|
private _sharedWhiteboardDataSource;
|
|
15
14
|
private _userControl;
|
|
@@ -21,6 +20,5 @@ export declare class FcrUIWhiteboardProviderImpl implements FcrUIWhiteboardProvi
|
|
|
21
20
|
get connectionState(): FcrConnectionState;
|
|
22
21
|
get ownerUser(): FcrUserInfo | undefined;
|
|
23
22
|
constructor(_whiteboardControl: FcrPrivilegedWhiteboardControl, _sharedWhiteboardDataSource: FcrUISharedWhiteboardDataSource, _userControl: FcrUserControl);
|
|
24
|
-
release(): void;
|
|
25
23
|
setBackground(color: string): void;
|
|
26
24
|
}
|
|
@@ -48,6 +48,7 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
|
|
|
48
48
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
49
49
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
50
50
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
51
|
+
var _base = require("../base");
|
|
51
52
|
var _logger = require("../utilities/logger");
|
|
52
53
|
var _decorator = require("agora-foundation/lib/decorator");
|
|
53
54
|
var _FcrUIWhiteboardProviderImpl;
|
|
@@ -113,9 +114,6 @@ var FcrUIWhiteboardProviderImpl = exports.FcrUIWhiteboardProviderImpl = /*#__PUR
|
|
|
113
114
|
get: function get() {
|
|
114
115
|
return this._ownerUser;
|
|
115
116
|
}
|
|
116
|
-
}, {
|
|
117
|
-
key: "release",
|
|
118
|
-
value: function release() {}
|
|
119
117
|
}, {
|
|
120
118
|
key: "setBackground",
|
|
121
119
|
value: function setBackground(color) {
|
|
@@ -125,7 +123,6 @@ var FcrUIWhiteboardProviderImpl = exports.FcrUIWhiteboardProviderImpl = /*#__PUR
|
|
|
125
123
|
}]);
|
|
126
124
|
}();
|
|
127
125
|
_FcrUIWhiteboardProviderImpl = FcrUIWhiteboardProviderImpl;
|
|
128
|
-
var _applyDecs$e = _applyDecs(_FcrUIWhiteboardProviderImpl, [[_decorator.bound, 2, "setBackground"]], []).e;
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
_applyDecs$e;
|
|
126
|
+
var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_FcrUIWhiteboardProviderImpl, [[_decorator.bound, 2, "setBackground"]], []).e, 1);
|
|
127
|
+
_initProto = _applyDecs$e[0];
|
|
128
|
+
(0, _base.registerDependency)('whiteboardProvider');
|
|
@@ -3,6 +3,7 @@ import { FcrRegisteredWidgetConfigs, FcrUIWebWidget, ID } from '../modules/widge
|
|
|
3
3
|
import { FcrUIWebWidgetConfig } from '../type';
|
|
4
4
|
import { FcrUIManagedObject } from '../object-manager';
|
|
5
5
|
import { FcrUIDialogProvider } from './dialog/type';
|
|
6
|
+
import { FcrUISharedWidgetDataSource } from '../shared-data/widget-data';
|
|
6
7
|
export interface FcrUIWidgetObserver {
|
|
7
8
|
onWidgetClicked(widgetId: string): void;
|
|
8
9
|
}
|
|
@@ -60,11 +61,12 @@ export declare class FcrUIWidgetProviderImpl implements FcrUIWidgetProvider, Fcr
|
|
|
60
61
|
private _dialogProvider;
|
|
61
62
|
private _dialogProviderObserver;
|
|
62
63
|
private _observable;
|
|
64
|
+
private _sharedWidgetDataSource;
|
|
63
65
|
accessor dialogIds: Map<ID, string>;
|
|
64
|
-
accessor registeredWidgetConfigs: FcrRegisteredWidgetConfigs;
|
|
65
66
|
accessor openedWidgets: Map<ID, FcrUIWebWidget>;
|
|
66
|
-
|
|
67
|
-
|
|
67
|
+
get registeredWidgetConfigs(): FcrRegisteredWidgetConfigs;
|
|
68
|
+
constructor({ sharedWidgetDataSource, roomProvider, dialogProvider, }: {
|
|
69
|
+
sharedWidgetDataSource: FcrUISharedWidgetDataSource;
|
|
68
70
|
roomProvider: FcrUIRoomProvider;
|
|
69
71
|
dialogProvider: FcrUIDialogProvider;
|
|
70
72
|
});
|
|
@@ -58,7 +58,7 @@ var _webWidget = require("../modules/widget/web-widget");
|
|
|
58
58
|
var _observable = require("agora-foundation/lib/utilities/observable");
|
|
59
59
|
var _logger = require("../utilities/logger");
|
|
60
60
|
var _FcrUIWidgetProviderImpl;
|
|
61
|
-
var _initProto, _init_dialogIds,
|
|
61
|
+
var _initProto, _init_dialogIds, _init_openedWidgets;
|
|
62
62
|
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
|
|
63
63
|
function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
|
|
64
64
|
function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
|
|
@@ -71,11 +71,10 @@ function _setFunctionName(e, t, n) { "symbol" == _typeof(t) && (t = (t = t.descr
|
|
|
71
71
|
function _checkInRHS(e) { if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (null !== e ? _typeof(e) : "null")); return e; }
|
|
72
72
|
var _A = /*#__PURE__*/new WeakMap();
|
|
73
73
|
var _B = /*#__PURE__*/new WeakMap();
|
|
74
|
-
var _C = /*#__PURE__*/new WeakMap();
|
|
75
74
|
var FcrUIWidgetProviderImpl = exports.FcrUIWidgetProviderImpl = /*#__PURE__*/function () {
|
|
76
75
|
function FcrUIWidgetProviderImpl(_ref) {
|
|
77
76
|
var _this = this;
|
|
78
|
-
var
|
|
77
|
+
var sharedWidgetDataSource = _ref.sharedWidgetDataSource,
|
|
79
78
|
roomProvider = _ref.roomProvider,
|
|
80
79
|
dialogProvider = _ref.dialogProvider;
|
|
81
80
|
(0, _classCallCheck2["default"])(this, FcrUIWidgetProviderImpl);
|
|
@@ -101,12 +100,11 @@ var FcrUIWidgetProviderImpl = exports.FcrUIWidgetProviderImpl = /*#__PURE__*/fun
|
|
|
101
100
|
});
|
|
102
101
|
(0, _defineProperty2["default"])(this, "_observable", new _observable.AgoraObservable());
|
|
103
102
|
_classPrivateFieldInitSpec(this, _A, _init_dialogIds(this, new Map()));
|
|
104
|
-
_classPrivateFieldInitSpec(this, _B,
|
|
105
|
-
_classPrivateFieldInitSpec(this, _C, _init_openedWidgets(this, new Map()));
|
|
103
|
+
_classPrivateFieldInitSpec(this, _B, _init_openedWidgets(this, new Map()));
|
|
106
104
|
this._roomProvider = roomProvider;
|
|
107
105
|
this._dialogProvider = dialogProvider;
|
|
108
106
|
this._dialogProvider.addObserver(this._dialogProviderObserver);
|
|
109
|
-
this.
|
|
107
|
+
this._sharedWidgetDataSource = sharedWidgetDataSource;
|
|
110
108
|
}
|
|
111
109
|
return (0, _createClass2["default"])(FcrUIWidgetProviderImpl, [{
|
|
112
110
|
key: "dialogIds",
|
|
@@ -117,7 +115,7 @@ var FcrUIWidgetProviderImpl = exports.FcrUIWidgetProviderImpl = /*#__PURE__*/fun
|
|
|
117
115
|
_classPrivateFieldSet(_A, this, v);
|
|
118
116
|
}
|
|
119
117
|
}, {
|
|
120
|
-
key: "
|
|
118
|
+
key: "openedWidgets",
|
|
121
119
|
get: function get() {
|
|
122
120
|
return _classPrivateFieldGet(_B, this);
|
|
123
121
|
},
|
|
@@ -125,17 +123,14 @@ var FcrUIWidgetProviderImpl = exports.FcrUIWidgetProviderImpl = /*#__PURE__*/fun
|
|
|
125
123
|
_classPrivateFieldSet(_B, this, v);
|
|
126
124
|
}
|
|
127
125
|
}, {
|
|
128
|
-
key: "
|
|
126
|
+
key: "registeredWidgetConfigs",
|
|
129
127
|
get: function get() {
|
|
130
|
-
return
|
|
131
|
-
},
|
|
132
|
-
set: function set(v) {
|
|
133
|
-
_classPrivateFieldSet(_C, this, v);
|
|
128
|
+
return this._sharedWidgetDataSource.registeredWidgetConfigs;
|
|
134
129
|
}
|
|
135
130
|
}, {
|
|
136
131
|
key: "openWidget",
|
|
137
132
|
value: function openWidget(widgetId) {
|
|
138
|
-
var widgetConfig = this.registeredWidgetConfigs.get(widgetId);
|
|
133
|
+
var widgetConfig = this._sharedWidgetDataSource.registeredWidgetConfigs.get(widgetId);
|
|
139
134
|
if (!widgetConfig) {
|
|
140
135
|
this.logger.error('widgetConfig not found', widgetId);
|
|
141
136
|
return;
|
|
@@ -189,10 +184,9 @@ var FcrUIWidgetProviderImpl = exports.FcrUIWidgetProviderImpl = /*#__PURE__*/fun
|
|
|
189
184
|
}]);
|
|
190
185
|
}();
|
|
191
186
|
_FcrUIWidgetProviderImpl = FcrUIWidgetProviderImpl;
|
|
192
|
-
var _applyDecs$e = _applyDecs(_FcrUIWidgetProviderImpl, [[_mobx.observable, 1, "dialogIds"], [_mobx.observable, 1, "
|
|
193
|
-
var _applyDecs$e2 = (0, _slicedToArray2["default"])(_applyDecs$e,
|
|
187
|
+
var _applyDecs$e = _applyDecs(_FcrUIWidgetProviderImpl, [[_mobx.observable, 1, "dialogIds"], [_mobx.observable, 1, "openedWidgets"]], []).e;
|
|
188
|
+
var _applyDecs$e2 = (0, _slicedToArray2["default"])(_applyDecs$e, 3);
|
|
194
189
|
_init_dialogIds = _applyDecs$e2[0];
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
_initProto = _applyDecs$e2[3];
|
|
190
|
+
_init_openedWidgets = _applyDecs$e2[1];
|
|
191
|
+
_initProto = _applyDecs$e2[2];
|
|
198
192
|
_applyDecs$e;
|
|
@@ -11,8 +11,6 @@ export declare class FcrUICurrentWindowImpl implements FcrUICurrentWindow, FcrUI
|
|
|
11
11
|
protected logger: import("agora-foundation/lib/logger").Logger;
|
|
12
12
|
private _observable;
|
|
13
13
|
private _browserWindowProxy;
|
|
14
|
-
private _hangDetectionTimer;
|
|
15
|
-
private readonly _HANG_DETECTION_TIMEOUT;
|
|
16
14
|
private _browserWindowListeners;
|
|
17
15
|
private _preventClose;
|
|
18
16
|
get browserWindow(): BrowserWindow;
|
|
@@ -45,7 +43,4 @@ export declare class FcrUICurrentWindowImpl implements FcrUICurrentWindow, FcrUI
|
|
|
45
43
|
release(): void;
|
|
46
44
|
private _setupEventListeners;
|
|
47
45
|
private _addLogObserver;
|
|
48
|
-
private _handleUnresponsive;
|
|
49
|
-
private _handleResponsive;
|
|
50
|
-
private _clearHangDetectionTimer;
|
|
51
46
|
}
|
|
@@ -41,7 +41,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
41
41
|
exports.FcrUICurrentWindowImpl = void 0;
|
|
42
42
|
require("core-js/modules/es.error.cause.js");
|
|
43
43
|
require("core-js/modules/es.error.to-string.js");
|
|
44
|
-
require("core-js/modules/web.timers.js");
|
|
45
44
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
46
45
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
47
46
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
@@ -68,9 +67,6 @@ var FcrUICurrentWindowImpl = exports.FcrUICurrentWindowImpl = /*#__PURE__*/funct
|
|
|
68
67
|
})));
|
|
69
68
|
(0, _defineProperty2["default"])(this, "_observable", new _observable.AgoraObservable());
|
|
70
69
|
(0, _defineProperty2["default"])(this, "_browserWindowProxy", null);
|
|
71
|
-
(0, _defineProperty2["default"])(this, "_hangDetectionTimer", null);
|
|
72
|
-
(0, _defineProperty2["default"])(this, "_HANG_DETECTION_TIMEOUT", 60 * 1000);
|
|
73
|
-
// 1分钟(毫s秒)
|
|
74
70
|
(0, _defineProperty2["default"])(this, "_browserWindowListeners", {
|
|
75
71
|
onShow: function onShow() {
|
|
76
72
|
_this._observable.notifyObservers('onVisibilityChanged', true);
|
|
@@ -86,12 +82,6 @@ var FcrUICurrentWindowImpl = exports.FcrUICurrentWindowImpl = /*#__PURE__*/funct
|
|
|
86
82
|
},
|
|
87
83
|
onClose: function onClose() {
|
|
88
84
|
_this._observable.notifyObservers('onClose');
|
|
89
|
-
},
|
|
90
|
-
onUnresponsive: function onUnresponsive() {
|
|
91
|
-
_this._handleUnresponsive();
|
|
92
|
-
},
|
|
93
|
-
onResponsive: function onResponsive() {
|
|
94
|
-
_this._handleResponsive();
|
|
95
85
|
}
|
|
96
86
|
});
|
|
97
87
|
(0, _defineProperty2["default"])(this, "_preventClose", false);
|
|
@@ -155,6 +145,9 @@ var FcrUICurrentWindowImpl = exports.FcrUICurrentWindowImpl = /*#__PURE__*/funct
|
|
|
155
145
|
}, {
|
|
156
146
|
key: "setAlwaysOnTop",
|
|
157
147
|
value: function setAlwaysOnTop(flag) {
|
|
148
|
+
// 这里目前没有地方调用,因为annotation调用了setAlwaysOnTop,并且设置了pop-up-menu
|
|
149
|
+
// 窗口在windows上设置的是pop-up-menu,看看是不是要成对出现
|
|
150
|
+
this.logger.info('windows_index setAlwaysOnTop in main-window');
|
|
158
151
|
this.browserWindow.setAlwaysOnTop(flag);
|
|
159
152
|
}
|
|
160
153
|
}, {
|
|
@@ -232,8 +225,6 @@ var FcrUICurrentWindowImpl = exports.FcrUICurrentWindowImpl = /*#__PURE__*/funct
|
|
|
232
225
|
}, {
|
|
233
226
|
key: "release",
|
|
234
227
|
value: function release() {
|
|
235
|
-
// 清理hang检测计时器
|
|
236
|
-
this._clearHangDetectionTimer();
|
|
237
228
|
if (this._browserWindowProxy && !this._browserWindowProxy.isDestroyed()) {
|
|
238
229
|
this._browserWindowProxy.removeAllListeners();
|
|
239
230
|
}
|
|
@@ -256,44 +247,12 @@ var FcrUICurrentWindowImpl = exports.FcrUICurrentWindowImpl = /*#__PURE__*/funct
|
|
|
256
247
|
this._browserWindowProxy.addListener('resized', this._browserWindowListeners.onResized);
|
|
257
248
|
this._browserWindowProxy.addListener('moved', this._browserWindowListeners.onMoved);
|
|
258
249
|
this._browserWindowProxy.addListener('close', this._browserWindowListeners.onClose);
|
|
259
|
-
this._browserWindowProxy.addListener('unresponsive', this._browserWindowListeners.onUnresponsive);
|
|
260
|
-
this._browserWindowProxy.addListener('responsive', this._browserWindowListeners.onResponsive);
|
|
261
250
|
}
|
|
262
251
|
}, {
|
|
263
252
|
key: "_addLogObserver",
|
|
264
253
|
value: function _addLogObserver() {
|
|
265
254
|
this._observable.addObserver((0, _logger.generateLogObserver)(this.logger, ['onFocused', 'onBlurred', 'onBoundsChanged', 'onVisibilityChanged', 'onReady', 'onClose']));
|
|
266
255
|
}
|
|
267
|
-
}, {
|
|
268
|
-
key: "_handleUnresponsive",
|
|
269
|
-
value: function _handleUnresponsive() {
|
|
270
|
-
var _this2 = this;
|
|
271
|
-
this.logger.warn('Window became unresponsive, starting hang detection timer');
|
|
272
|
-
this._clearHangDetectionTimer();
|
|
273
|
-
this._hangDetectionTimer = setTimeout(function () {
|
|
274
|
-
_this2.logger.error('Window has been unresponsive for 1 minute, forcing application exit');
|
|
275
|
-
try {
|
|
276
|
-
// app.quit();
|
|
277
|
-
} catch (error) {
|
|
278
|
-
_this2.logger.error('Failed to exit application gracefully:', error);
|
|
279
|
-
// process.exit(1);
|
|
280
|
-
}
|
|
281
|
-
}, this._HANG_DETECTION_TIMEOUT);
|
|
282
|
-
}
|
|
283
|
-
}, {
|
|
284
|
-
key: "_handleResponsive",
|
|
285
|
-
value: function _handleResponsive() {
|
|
286
|
-
this.logger.info('Window became responsive again, clearing hang detection timer');
|
|
287
|
-
this._clearHangDetectionTimer();
|
|
288
|
-
}
|
|
289
|
-
}, {
|
|
290
|
-
key: "_clearHangDetectionTimer",
|
|
291
|
-
value: function _clearHangDetectionTimer() {
|
|
292
|
-
if (this._hangDetectionTimer) {
|
|
293
|
-
clearTimeout(this._hangDetectionTimer);
|
|
294
|
-
this._hangDetectionTimer = null;
|
|
295
|
-
}
|
|
296
|
-
}
|
|
297
256
|
}]);
|
|
298
257
|
}();
|
|
299
258
|
_FcrUICurrentWindowImpl = FcrUICurrentWindowImpl;
|
|
@@ -15,6 +15,7 @@ export declare class FcrUIWindowImpl implements FcrUIWindow, FcrUIManagedObject
|
|
|
15
15
|
private _preventClose;
|
|
16
16
|
private _visible;
|
|
17
17
|
private _showInactive;
|
|
18
|
+
private _isClosed;
|
|
18
19
|
private _isBrowserWindowReady;
|
|
19
20
|
private _ignoreMouseEvents?;
|
|
20
21
|
private _ignoreMouseEventsOptions?;
|