fcr-ui-scene 3.7.2 → 3.7.4

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.
Files changed (301) hide show
  1. package/lib/creator.d.ts +2 -0
  2. package/lib/creator.js +37 -44
  3. package/lib/electron/app.js +7 -0
  4. package/lib/electron/injections.d.ts +1 -1
  5. package/lib/electron/injections.js +5 -3
  6. package/lib/electron/main.js +3 -1
  7. package/lib/fragments/annotation/index.d.ts +1 -0
  8. package/lib/fragments/annotation/index.js +13 -7
  9. package/lib/fragments/annotation/libs.d.ts +7 -6
  10. package/lib/fragments/annotation/libs.js +9 -8
  11. package/lib/fragments/annotation/store.d.ts +8 -4
  12. package/lib/fragments/annotation/store.js +351 -267
  13. package/lib/fragments/annotation/toolbar/components/color-tool/index.js +4 -0
  14. package/lib/fragments/annotation/toolbar/components/graphic-tool/index.js +4 -0
  15. package/lib/fragments/annotation/toolbar/components/item/item.d.ts +2 -0
  16. package/lib/fragments/annotation/toolbar/components/item/item.js +2 -4
  17. package/lib/fragments/annotation/toolbar/components/item/style.css +4 -2
  18. package/lib/fragments/annotation/toolbar/components/pen-tool/index.js +4 -0
  19. package/lib/fragments/annotation/utils.d.ts +1 -0
  20. package/lib/fragments/annotation/utils.js +27 -0
  21. package/lib/fragments/annotation/view.js +1 -6
  22. package/lib/fragments/base.js +5 -3
  23. package/lib/fragments/whiteboard/cursor.css +77 -0
  24. package/lib/fragments/whiteboard/index.d.ts +11 -0
  25. package/lib/fragments/whiteboard/index.js +91 -0
  26. package/lib/fragments/whiteboard/store.d.ts +31 -0
  27. package/lib/fragments/whiteboard/store.js +480 -0
  28. package/lib/fragments/whiteboard/style.css +4 -0
  29. package/lib/fragments/whiteboard/view.d.ts +4 -0
  30. package/lib/fragments/whiteboard/view.js +31 -0
  31. package/lib/global.css +6 -0
  32. package/lib/index.d.ts +1 -0
  33. package/lib/index.js +1 -0
  34. package/lib/modules/action-bar/components/apps/index.js +15 -5
  35. package/lib/modules/action-bar/components/leave/index.js +4 -11
  36. package/lib/modules/action-bar/components/screen-share/submenu.js +2 -2
  37. package/lib/modules/action-bar/index.d.ts +2 -0
  38. package/lib/modules/action-bar/index.js +2 -1
  39. package/lib/modules/action-bar/store.d.ts +6 -2
  40. package/lib/modules/action-bar/store.js +56 -93
  41. package/lib/modules/action-bar/view.d.ts +1 -0
  42. package/lib/modules/action-bar/view.js +3 -2
  43. package/lib/modules/annotation/annotation-toolbar-store.d.ts +4 -11
  44. package/lib/modules/annotation/annotation-toolbar-store.js +48 -90
  45. package/lib/modules/annotation/index.d.ts +2 -0
  46. package/lib/modules/annotation/index.js +2 -2
  47. package/lib/modules/annotation/store.d.ts +11 -49
  48. package/lib/modules/annotation/store.js +144 -429
  49. package/lib/modules/annotation/view.js +3 -6
  50. package/lib/modules/audio-stream/index.js +1 -2
  51. package/lib/modules/chat/components/chat-select/index.js +3 -0
  52. package/lib/modules/components/control-bar/components/loading/index.css +76 -0
  53. package/lib/modules/components/control-bar/components/loading/index.d.ts +8 -0
  54. package/lib/modules/components/control-bar/components/loading/index.js +64 -0
  55. package/lib/modules/components/control-bar/components/loading/loading.png +0 -0
  56. package/lib/modules/components/control-bar/components/progress/index.d.ts +5 -0
  57. package/lib/modules/components/control-bar/components/progress/index.js +43 -0
  58. package/lib/modules/components/control-bar/components/progress/style.css +51 -0
  59. package/lib/modules/components/control-bar/components/switch-theme/index.css +99 -0
  60. package/lib/modules/components/control-bar/components/switch-theme/index.d.ts +9 -0
  61. package/lib/modules/components/control-bar/components/switch-theme/index.js +94 -0
  62. package/lib/modules/components/control-bar/components/switch-theme/item.d.ts +9 -0
  63. package/lib/modules/components/control-bar/components/switch-theme/item.js +54 -0
  64. package/lib/modules/components/control-bar/components/switch-theme/libs.d.ts +4 -0
  65. package/lib/modules/components/control-bar/components/switch-theme/libs.js +31 -0
  66. package/lib/modules/components/control-bar/index.css +87 -0
  67. package/lib/modules/components/control-bar/index.d.ts +20 -0
  68. package/lib/modules/components/control-bar/index.js +276 -0
  69. package/lib/modules/components/device-control/store.js +2 -2
  70. package/lib/modules/components/leave-meeting/components/index.css +0 -9
  71. package/lib/modules/components/leave-meeting/index.d.ts +2 -1
  72. package/lib/modules/components/leave-meeting/index.js +19 -8
  73. package/lib/modules/components/leave-meeting/portal.d.ts +6 -0
  74. package/lib/modules/components/leave-meeting/portal.js +29 -0
  75. package/lib/modules/components/leave-meeting/style.css +9 -0
  76. package/lib/modules/components/member-window/components/member-actions/components/more-actions.d.ts +5 -2
  77. package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +19 -9
  78. package/lib/modules/components/member-window/components/member-actions/components/share-status.js +4 -4
  79. package/lib/modules/components/member-window/components/member-actions/index.js +13 -6
  80. package/lib/modules/components/member-window/components/member-actions/provider.d.ts +1 -0
  81. package/lib/modules/components/member-window/components/member-actions/provider.js +4 -3
  82. package/lib/modules/components/member-window/components/member-actions/store.d.ts +2 -1
  83. package/lib/modules/components/member-window/components/member-actions/store.js +5 -1
  84. package/lib/modules/components/member-window/components/video-player/components/local-video-player-with-zoom.d.ts +6 -4
  85. package/lib/modules/components/member-window/components/video-player/components/local-video-player-with-zoom.js +77 -41
  86. package/lib/modules/components/member-window/components/video-player/components/remote-video-player-with-zoom.d.ts +3 -3
  87. package/lib/modules/components/member-window/components/video-player/index.d.ts +3 -3
  88. package/lib/modules/components/member-window/index.css +4 -0
  89. package/lib/modules/components/member-window/types.d.ts +9 -5
  90. package/lib/modules/components/toolbar/components/capture-tool/index.d.ts +9 -0
  91. package/lib/modules/components/toolbar/components/capture-tool/index.js +68 -0
  92. package/lib/modules/components/toolbar/components/clean-tool/index.d.ts +11 -0
  93. package/lib/modules/components/toolbar/components/clean-tool/index.js +71 -0
  94. package/lib/modules/components/toolbar/components/color-tool/color-panel/index.d.ts +11 -0
  95. package/lib/modules/components/toolbar/components/color-tool/color-panel/index.js +77 -0
  96. package/lib/modules/components/toolbar/components/color-tool/index.d.ts +14 -0
  97. package/lib/modules/components/toolbar/components/color-tool/index.js +66 -0
  98. package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/index.d.ts +11 -0
  99. package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/index.js +64 -0
  100. package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/libs.d.ts +12 -0
  101. package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/libs.js +65 -0
  102. package/lib/modules/components/toolbar/components/graphic-tool/index.d.ts +15 -0
  103. package/lib/modules/components/toolbar/components/graphic-tool/index.js +82 -0
  104. package/lib/modules/components/toolbar/components/group-tool/index.d.ts +5 -0
  105. package/lib/modules/components/toolbar/components/group-tool/index.js +43 -0
  106. package/lib/modules/components/toolbar/components/icons/fold-icon.d.ts +2 -0
  107. package/lib/modules/components/toolbar/components/icons/fold-icon.js +41 -0
  108. package/lib/modules/components/toolbar/components/icons/move-icon.d.ts +1 -0
  109. package/lib/modules/components/toolbar/components/icons/move-icon.js +66 -0
  110. package/lib/modules/components/toolbar/components/item/index.d.ts +25 -0
  111. package/lib/modules/components/toolbar/components/item/index.js +165 -0
  112. package/lib/modules/components/toolbar/components/item/style.css +94 -0
  113. package/lib/modules/components/toolbar/components/multiple-color-tool/index.d.ts +12 -0
  114. package/lib/modules/components/toolbar/components/multiple-color-tool/index.js +75 -0
  115. package/lib/modules/components/toolbar/components/panel/index.d.ts +9 -0
  116. package/lib/modules/components/toolbar/components/panel/index.js +28 -0
  117. package/lib/modules/components/toolbar/components/panel/style.css +86 -0
  118. package/lib/modules/components/toolbar/components/pen-tool/index.d.ts +13 -0
  119. package/lib/modules/components/toolbar/components/pen-tool/index.js +62 -0
  120. package/lib/modules/components/toolbar/components/pen-tool/pen-panel/index.d.ts +8 -0
  121. package/lib/modules/components/toolbar/components/pen-tool/pen-panel/index.js +39 -0
  122. package/lib/modules/components/toolbar/components/save-draft/index.d.ts +7 -0
  123. package/lib/modules/components/toolbar/components/save-draft/index.js +59 -0
  124. package/lib/modules/components/toolbar/components/vertical-frame/index.d.ts +8 -0
  125. package/lib/modules/components/toolbar/components/vertical-frame/index.js +179 -0
  126. package/lib/modules/components/toolbar/hooks/use-resize-visible.d.ts +4 -0
  127. package/lib/modules/components/toolbar/hooks/use-resize-visible.js +59 -0
  128. package/lib/modules/components/toolbar/index.d.ts +29 -0
  129. package/lib/modules/components/toolbar/index.js +258 -0
  130. package/lib/modules/components/toolbar/style.css +85 -0
  131. package/lib/modules/components/toolbar/types.d.ts +13 -0
  132. package/lib/modules/components/toolbar/types.js +6 -0
  133. package/lib/modules/control-bar/components/more-actions/index.js +0 -6
  134. package/lib/modules/control-bar/components/share-state-nav/index.js +3 -2
  135. package/lib/modules/control-bar/index.js +2 -1
  136. package/lib/modules/control-bar/store.d.ts +15 -12
  137. package/lib/modules/control-bar/store.js +68 -29
  138. package/lib/modules/control-bar/view.js +33 -67
  139. package/lib/modules/device-pretest/store.js +4 -2
  140. package/lib/modules/dialog/components/dialog-container/component/body.js +3 -24
  141. package/lib/modules/dialog/components/dialog-container/index.d.ts +4 -0
  142. package/lib/modules/dialog/components/dialog-container/index.js +67 -44
  143. package/lib/modules/dialog/components/normal-window/index.js +4 -0
  144. package/lib/modules/dialog/dialogs/control-bar/index.d.ts +1 -0
  145. package/lib/modules/dialog/dialogs/control-bar/index.js +26 -35
  146. package/lib/modules/dialog/dialogs/participant/components/title.js +1 -1
  147. package/lib/modules/dialog/dialogs/sub-window/index.d.ts +2 -0
  148. package/lib/modules/dialog/dialogs/sub-window/index.js +102 -0
  149. package/lib/modules/dialog/dialogs/video-window/index.d.ts +1 -0
  150. package/lib/modules/dialog/dialogs/video-window/index.js +31 -25
  151. package/lib/modules/dialog/dialogs/whiteboard/index.js +0 -1
  152. package/lib/modules/dialog/hooks/use-popover-watcher.js +1 -2
  153. package/lib/modules/dialog/hooks/useElectron.d.ts +13 -0
  154. package/lib/modules/dialog/hooks/useElectron.js +66 -13
  155. package/lib/modules/dialog/index.d.ts +6 -3
  156. package/lib/modules/dialog/index.js +5 -3
  157. package/lib/modules/dialog/level-config.js +1 -1
  158. package/lib/modules/dialog/store.d.ts +23 -9
  159. package/lib/modules/dialog/store.js +84 -12
  160. package/lib/modules/dialog/type.d.ts +8 -0
  161. package/lib/modules/event-confirm/components/window/index.d.ts +5 -2
  162. package/lib/modules/event-confirm/components/window/index.js +38 -14
  163. package/lib/modules/event-confirm/index.css +3 -2
  164. package/lib/modules/event-confirm/store.d.ts +10 -5
  165. package/lib/modules/event-confirm/store.js +68 -20
  166. package/lib/modules/event-confirm/view.js +10 -8
  167. package/lib/modules/event-sound/index.d.ts +1 -0
  168. package/lib/modules/event-sound/index.js +11 -24
  169. package/lib/modules/interpreter/interpreter-list/interpreter-item/components/pick-user/index.js +1 -2
  170. package/lib/modules/interpreter/store.js +11 -13
  171. package/lib/modules/invite/components/pstn-invite.js +0 -1
  172. package/lib/modules/layout/components/CommonVideoRenderer.js +26 -26
  173. package/lib/modules/layout/components/who-is-speaking.js +3 -6
  174. package/lib/modules/layout/index.d.ts +3 -1
  175. package/lib/modules/layout/index.js +2 -1
  176. package/lib/modules/layout/store.d.ts +7 -59
  177. package/lib/modules/layout/store.js +133 -45
  178. package/lib/modules/layout/type.d.ts +55 -0
  179. package/lib/modules/participant/components/can-moveable/index.js +0 -1
  180. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.js +4 -2
  181. package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.js +14 -2
  182. package/lib/modules/participant/components/participants/components/participants/components/user-row/index.d.ts +1 -1
  183. package/lib/modules/participant/components/participants/components/participants/components/user-row/index.js +3 -2
  184. package/lib/modules/participant/components/participants/components/participants/index.js +3 -2
  185. package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-actions-popover/index.d.ts +1 -0
  186. package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-actions-popover/index.js +3 -1
  187. package/lib/modules/participant/components/participants/components/render-user/components/user-action/index.js +4 -2
  188. package/lib/modules/participant/components/participants/components/render-user/index.d.ts +4 -2
  189. package/lib/modules/participant/components/participants/components/render-user/index.js +5 -3
  190. package/lib/modules/participant/components/participants/index.js +5 -2
  191. package/lib/modules/participant/components/participants/types.d.ts +3 -0
  192. package/lib/modules/participant/index.d.ts +2 -0
  193. package/lib/modules/participant/index.js +2 -1
  194. package/lib/modules/participant/member-list-data-source.js +3 -5
  195. package/lib/modules/participant/store.d.ts +5 -1
  196. package/lib/modules/participant/store.js +51 -44
  197. package/lib/modules/secondary-window/index.d.ts +50 -0
  198. package/lib/modules/secondary-window/index.js +113 -0
  199. package/lib/modules/secondary-window/store.d.ts +76 -0
  200. package/lib/modules/secondary-window/store.js +407 -0
  201. package/lib/modules/secondary-window/type.d.ts +110 -0
  202. package/lib/modules/secondary-window/type.js +35 -0
  203. package/lib/modules/secondary-window/view.d.ts +6 -0
  204. package/lib/modules/secondary-window/view.js +257 -0
  205. package/lib/modules/setting/audio-settings/audio-settings.js +4 -2
  206. package/lib/modules/setting/config.d.ts +4 -0
  207. package/lib/modules/setting/config.js +6 -3
  208. package/lib/modules/setting/general-settings/general-settings.js +9 -0
  209. package/lib/modules/setting/state/index.js +0 -10
  210. package/lib/modules/setting/store.d.ts +9 -3
  211. package/lib/modules/setting/store.js +110 -77
  212. package/lib/modules/setting/view.js +3 -2
  213. package/lib/modules/share-screen/components/control-bar/index.d.ts +14 -1
  214. package/lib/modules/share-screen/components/control-bar/index.js +17 -12
  215. package/lib/modules/share-screen/components/selection/index.js +16 -23
  216. package/lib/modules/share-screen/index.d.ts +4 -1
  217. package/lib/modules/share-screen/index.js +6 -3
  218. package/lib/modules/share-screen/store.d.ts +18 -19
  219. package/lib/modules/share-screen/store.js +101 -151
  220. package/lib/modules/share-screen/types.d.ts +7 -8
  221. package/lib/modules/state-bar/index.d.ts +2 -0
  222. package/lib/modules/state-bar/index.js +2 -1
  223. package/lib/modules/state-bar/live-streaming-state.js +0 -1
  224. package/lib/modules/state-bar/store.d.ts +5 -2
  225. package/lib/modules/state-bar/store.js +14 -7
  226. package/lib/modules/state-bar/view.js +3 -3
  227. package/lib/modules/video-window/components/members/index.js +10 -15
  228. package/lib/modules/video-window/store.d.ts +1 -0
  229. package/lib/modules/video-window/store.js +8 -3
  230. package/lib/modules/whiteboard/components/control-bar/store.d.ts +3 -0
  231. package/lib/modules/whiteboard/components/control-bar/store.js +20 -11
  232. package/lib/modules/whiteboard/components/toolbar/store.d.ts +2 -2
  233. package/lib/modules/whiteboard/components/toolbar/store.js +2 -2
  234. package/lib/modules/whiteboard/index.d.ts +20 -17
  235. package/lib/modules/whiteboard/index.js +167 -132
  236. package/lib/plugins/module-dev-plugin.js +4 -0
  237. package/lib/providers/ability-provider.js +2 -0
  238. package/lib/providers/annotation-provider.js +3 -3
  239. package/lib/providers/device-privilege-provider.js +13 -12
  240. package/lib/providers/device-provider.d.ts +40 -31
  241. package/lib/providers/device-provider.js +657 -713
  242. package/lib/providers/device-stream-provider.js +4 -4
  243. package/lib/providers/interpreter-provider.js +7 -9
  244. package/lib/providers/multi-display-provider.d.ts +90 -0
  245. package/lib/providers/multi-display-provider.js +593 -0
  246. package/lib/providers/privilege-provider.d.ts +3 -11
  247. package/lib/providers/privilege-provider.js +3 -12
  248. package/lib/providers/renderer-provider.d.ts +3 -3
  249. package/lib/providers/renderer-provider.js +20 -32
  250. package/lib/providers/room-provider.js +21 -16
  251. package/lib/providers/screen-share-provider.d.ts +15 -11
  252. package/lib/providers/screen-share-provider.js +118 -99
  253. package/lib/providers/sharing-provider.d.ts +7 -1
  254. package/lib/providers/sharing-provider.js +39 -3
  255. package/lib/providers/whiteboard-provider.d.ts +24 -0
  256. package/lib/providers/whiteboard-provider.js +128 -0
  257. package/lib/runtime.d.ts +1 -0
  258. package/lib/scenes/main-scene.d.ts +6 -0
  259. package/lib/scenes/main-scene.js +44 -2
  260. package/lib/scenes/waiting-scene.d.ts +0 -2
  261. package/lib/scenes/waiting-scene.js +0 -6
  262. package/lib/schema.d.ts +3 -3
  263. package/lib/schema.js +1 -1
  264. package/lib/shared-data-source/confirm-data.d.ts +19 -0
  265. package/lib/shared-data-source/confirm-data.js +119 -15
  266. package/lib/shared-data-source/member-data.d.ts +2 -2
  267. package/lib/shared-data-source/screen-share-data.d.ts +35 -28
  268. package/lib/shared-data-source/screen-share-data.js +19 -8
  269. package/lib/shared-data-source/setting.js +4 -3
  270. package/lib/shared-data-source/video-window.js +1 -2
  271. package/lib/shared-data-source/whiteboard-data.d.ts +70 -0
  272. package/lib/shared-data-source/whiteboard-data.js +348 -0
  273. package/lib/translations/enUS.d.ts +1 -0
  274. package/lib/translations/enUS.js +2 -1
  275. package/lib/translations/zhCN.d.ts +1 -0
  276. package/lib/translations/zhCN.js +2 -1
  277. package/lib/ui-scene.d.ts +1 -0
  278. package/lib/ui-scene.js +77 -24
  279. package/lib/utilities/constant.d.ts +9 -2
  280. package/lib/utilities/constant.js +10 -3
  281. package/lib/utilities/debug.d.ts +4 -0
  282. package/lib/utilities/debug.js +40 -0
  283. package/lib/utilities/default-config.d.ts +4 -0
  284. package/lib/utilities/default-config.js +8 -4
  285. package/lib/utilities/dialog-utils.d.ts +3 -2
  286. package/lib/utilities/dialog-utils.js +56 -15
  287. package/lib/utilities/meeting-detail.js +4 -1
  288. package/lib/utilities/package-info.d.ts +3 -0
  289. package/lib/utilities/package-info.js +15 -0
  290. package/lib/utilities/renderer-event.d.ts +4 -6
  291. package/lib/utilities/renderer-event.js +23 -43
  292. package/lib/utilities/renderer.d.ts +1 -1
  293. package/lib/utilities/renderer.js +44 -10
  294. package/lib/utilities/shared-storage.d.ts +18 -0
  295. package/lib/utilities/shared-storage.js +63 -0
  296. package/lib/utilities/tools.js +2 -1
  297. package/lib/waiting-room-control-manager.js +6 -6
  298. package/package.json +6 -7
  299. package/public/index.html +5 -0
  300. package/lib/electron/tools.d.ts +0 -5
  301. package/lib/electron/tools.js +0 -62
@@ -26,14 +26,15 @@ Object.defineProperty(exports, "__esModule", {
26
26
  value: true
27
27
  });
28
28
  exports["default"] = exports.DialogContainerStore = void 0;
29
+ require("core-js/modules/es.parse-int.js");
29
30
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
30
31
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
31
32
  var _react = _interopRequireWildcard(require("react"));
32
33
  var _mobxReact = require("mobx-react");
33
- var _react2 = require("@use-gesture/react");
34
34
  var _env = require("agora-foundation/lib/utilities/env");
35
35
  var _store = require("../../store");
36
36
  var _body = require("./component/body");
37
+ var _reactRnd = require("react-rnd");
37
38
  var _jsxRuntime = require("react/jsx-runtime");
38
39
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
39
40
  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; }
@@ -41,6 +42,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
41
42
  var DialogContainerStore = exports.DialogContainerStore = /*#__PURE__*/(0, _react.createContext)({});
42
43
  var DialogContainer = (0, _mobxReact.observer)(function (props) {
43
44
  var width = props.width,
45
+ height = props.height,
44
46
  title = props.title,
45
47
  onClose = props.onClose,
46
48
  children = props.children,
@@ -50,7 +52,11 @@ var DialogContainer = (0, _mobxReact.observer)(function (props) {
50
52
  dialogId = props.dialogId,
51
53
  autoHeight = props.autoHeight,
52
54
  closable = props.closable,
53
- style = props.style;
55
+ style = props.style,
56
+ maxWidth = props.maxWidth,
57
+ maxHeight = props.maxHeight,
58
+ minWidth = props.minWidth,
59
+ minHeight = props.minHeight;
54
60
  var _ref = (0, _react.useContext)(_store.StoreContext) || {
55
61
  closeDialogByKey: onClose
56
62
  },
@@ -76,61 +82,78 @@ var DialogContainer = (0, _mobxReact.observer)(function (props) {
76
82
  });
77
83
  if ((0, _env.isElectron)()) return container;
78
84
  var rndRef = (0, _react.useRef)(null);
79
- var size = (0, _react.useMemo)(function () {
80
- var _rndRef$current;
85
+ var windowWidth = window.innerWidth;
86
+ var windowHeight = window.innerHeight;
87
+
88
+ // 应用尺寸限制的辅助函数
89
+ var constrainSize = function constrainSize(newSize) {
90
+ var constrainedWidth = newSize.width;
91
+ var constrainedHeight = newSize.height;
92
+
93
+ // 应用最小尺寸限制
94
+ if (minWidth && constrainedWidth < minWidth) {
95
+ constrainedWidth = minWidth;
96
+ }
97
+ if (minHeight && constrainedHeight < minHeight) {
98
+ constrainedHeight = minHeight;
99
+ }
100
+
101
+ // 应用最大尺寸限制
102
+ if (maxWidth && constrainedWidth > maxWidth) {
103
+ constrainedWidth = maxWidth;
104
+ }
105
+ if (maxHeight && constrainedHeight > maxHeight) {
106
+ constrainedHeight = maxHeight;
107
+ }
81
108
  return {
82
- width: width || 400,
83
- height: props.height ? props.height : ((_rndRef$current = rndRef.current) === null || _rndRef$current === void 0 ? void 0 : _rndRef$current.getBoundingClientRect().height) || 160
109
+ width: constrainedWidth,
110
+ height: constrainedHeight
84
111
  };
85
- }, [props.height]);
86
- var windowWidth = window.innerWidth;
87
- var height = window.innerHeight;
88
- var x = windowWidth / 2 - size.width / 2;
89
- var y = height / 2 - size.height / 2;
90
- var windowBounds = {
91
- x: x,
92
- y: y,
93
- width: window.innerWidth,
94
- height: window.innerHeight
95
112
  };
96
113
  var _useState = (0, _react.useState)({
114
+ width: width || 400,
115
+ height: height || 160
116
+ }),
117
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
118
+ size = _useState2[0],
119
+ updateSize = _useState2[1];
120
+ var x = windowWidth / 2 - size.width / 2;
121
+ var y = windowHeight / 2 - size.height / 2;
122
+ var _useState3 = (0, _react.useState)({
97
123
  x: x,
98
124
  y: y
99
125
  }),
100
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
101
- bounds = _useState2[0],
102
- setBounds = _useState2[1];
103
- var bind = (0, _react2.useDrag)(function (_ref2) {
104
- var _ref2$delta = (0, _slicedToArray2["default"])(_ref2.delta, 2),
105
- dx = _ref2$delta[0],
106
- dy = _ref2$delta[1];
107
- var x = bounds.x + dx;
108
- var y = bounds.y + dy;
109
- var maxX = windowBounds.width - size.width;
110
- var maxY = windowBounds.height - size.height;
111
- var coord = {
112
- x: Math.max(0, Math.min(maxX, x)),
113
- y: Math.max(0, Math.min(maxY, y))
114
- };
115
- setBounds(coord);
116
- });
117
- return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
126
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
127
+ position = _useState4[0],
128
+ updatePosition = _useState4[1];
129
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactRnd.Rnd, {
118
130
  style: _objectSpread({
119
- width: size.width,
120
- height: size.height,
121
- left: "".concat(bounds.x, "px"),
122
- top: "".concat(bounds.y, "px"),
123
131
  position: 'absolute',
124
132
  touchAction: 'none',
125
133
  display: 'flex',
126
134
  flexDirection: 'column'
127
135
  }, style),
128
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(DialogContainerStore.Provider, {
129
- value: {
130
- bind: bind
131
- },
132
- children: container
133
- })
136
+ size: size,
137
+ position: position,
138
+ minWidth: minWidth,
139
+ minHeight: minHeight,
140
+ maxWidth: maxWidth,
141
+ maxHeight: maxHeight,
142
+ onDragStop: function onDragStop(e, d) {
143
+ updatePosition({
144
+ x: d.x,
145
+ y: d.y
146
+ });
147
+ },
148
+ onResizeStop: function onResizeStop(e, direction, ref, delta, position) {
149
+ var newSize = constrainSize({
150
+ width: parseInt(ref.style.width),
151
+ height: parseInt(ref.style.height)
152
+ });
153
+ updateSize(newSize);
154
+ updatePosition(position);
155
+ },
156
+ children: container
134
157
  });
135
158
  });
136
159
  var _default = exports["default"] = DialogContainer;
@@ -46,6 +46,10 @@ function NormalWindow(props) {
46
46
  title: title === false || title ? title : config.title,
47
47
  width: width || config.width,
48
48
  height: height || config.height,
49
+ maxWidth: config.maxWidth,
50
+ maxHeight: config.maxHeight,
51
+ minWidth: config.minWidth,
52
+ minHeight: config.minHeight,
49
53
  dialogKey: dialogKey,
50
54
  actions: actions,
51
55
  style: style,
@@ -1,6 +1,7 @@
1
1
  import { ControlBarUIModule } from '../../../control-bar';
2
2
  import { PropsWithChildren } from 'react';
3
3
  import { CurrentShareBounds } from '../../../control-bar/types';
4
+ export declare const title = "Control Bar";
4
5
  export declare const config: Electron.BrowserWindowConstructorOptions;
5
6
  export declare const ControlBarDialog: (props: PropsWithChildren<{
6
7
  module: ControlBarUIModule;
@@ -5,8 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.setBounds = exports.config = exports.ControlBarDialog = void 0;
9
- require("core-js/modules/web.timers.js");
8
+ exports.title = exports.setBounds = exports.config = exports.ControlBarDialog = void 0;
10
9
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
10
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
12
11
  var _constant = require("../../../../utilities/constant");
@@ -17,6 +16,7 @@ var _store = require("../../store");
17
16
  var _platform = require("../../../../utilities/platform");
18
17
  var _mobxReact = require("mobx-react");
19
18
  var _env = require("agora-foundation/lib/utilities/env");
19
+ var title = exports.title = 'Control Bar';
20
20
  var config = exports.config = {
21
21
  y: 0,
22
22
  x: 0,
@@ -27,7 +27,7 @@ var config = exports.config = {
27
27
  useContentSize: true,
28
28
  minimizable: false,
29
29
  resizable: false,
30
- title: 'Control Bar',
30
+ title: title,
31
31
  type: 'panel',
32
32
  skipTaskbar: true
33
33
  };
@@ -36,7 +36,9 @@ var ControlBarDialog = exports.ControlBarDialog = (0, _mobxReact.observer)(funct
36
36
  var eventProvider = module.eventProvider;
37
37
  var _useContext = (0, _react.useContext)(_store.StoreContext),
38
38
  currentShareId = _useContext.currentShareId,
39
- currentShareBounds = _useContext.currentShareBounds;
39
+ currentShareBounds = _useContext.currentShareBounds,
40
+ isMultiDisplayActive = _useContext.isMultiDisplayActive,
41
+ moveMainWindowToIndexLeastDisplay = _useContext.moveMainWindowToIndexLeastDisplay;
40
42
  var children = function children(browserWindow) {
41
43
  return module.getComponent({
42
44
  browserWindow: browserWindow
@@ -70,6 +72,11 @@ var ControlBarDialog = exports.ControlBarDialog = (0, _mobxReact.observer)(funct
70
72
  var browserWindow = _ref2.browserWindow;
71
73
  setBoundsWithNewAppWindows(browserWindow);
72
74
  if ((0, _env.isElectron)()) {
75
+ // 开启多屏模式时,不需要隐藏主窗口及显示悬浮视窗
76
+ if (isMultiDisplayActive) {
77
+ return;
78
+ }
79
+ window.runtime.browserWindow.hide();
73
80
  eventProvider === null || eventProvider === void 0 || eventProvider.sendEvent(_constant.FcrUIAction.OPEN_TOP_VIDEO_WINDOW);
74
81
  }
75
82
  }
@@ -77,57 +84,41 @@ var ControlBarDialog = exports.ControlBarDialog = (0, _mobxReact.observer)(funct
77
84
  browserWindow = _useElectronDialog.browserWindow;
78
85
  (0, _react.useEffect)(function () {
79
86
  setBoundsWithNewAppWindows(browserWindow);
87
+
88
+ // 多屏模式下, 如果屏幕共享和主窗口在同一个显示器,需要将主窗口移动到排序最小的显示器上
89
+ // 第一次发起共享和发起新的共享时,都需要判断是否需要移动主窗口
90
+ if (isMultiDisplayActive) {
91
+ moveMainWindowToIndexLeastDisplay();
92
+ }
80
93
  }, [currentShareId]);
81
94
  return null;
82
95
  });
83
96
  var setBounds = exports.setBounds = /*#__PURE__*/function () {
84
97
  var _ref3 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2(currentShareBounds, browserWindow) {
85
- var _getCurrentSharingWor, originWidth, originHeight, x, y, WINDOWS_SCREEN_BOUNDARY_WIDTH, width, height, firstBounds;
98
+ var _getCurrentSharingWor, originWidth, originHeight, x, y;
86
99
  return _regenerator["default"].wrap(function (_context2) {
87
100
  while (1) switch (_context2.prev = _context2.next) {
88
101
  case 0:
89
102
  _getCurrentSharingWor = (0, _dialogUtils.getCurrentSharingWorkArea)({
90
103
  currentShareBounds: currentShareBounds
91
- }), originWidth = _getCurrentSharingWor.width, originHeight = _getCurrentSharingWor.height, x = _getCurrentSharingWor.x, y = _getCurrentSharingWor.y;
92
- /* 使用window.screen.availWidth在windows上会黑屏,详见jira:APAAS-5732
93
- 怀疑是在windows上BrowserWindow有一个边框,所以需要减去一定的宽度。
94
- 实验结果最低是4。这里减去10留一点buffer,防止其他操作系统的边框不一致。
95
- */
96
- WINDOWS_SCREEN_BOUNDARY_WIDTH = 10;
97
- width = (0, _platform.isWindows)() ? originWidth - WINDOWS_SCREEN_BOUNDARY_WIDTH : originWidth;
98
- height = originHeight; // 重新设置窗口大小
104
+ }), originWidth = _getCurrentSharingWor.width, originHeight = _getCurrentSharingWor.height, x = _getCurrentSharingWor.x, y = _getCurrentSharingWor.y; // // 重新设置窗口大小
99
105
  if ((0, _platform.isWindows)()) {
100
- // 修复 windows 分辨率差别大的多显示器场景下的窗口缩放问题
101
- browserWindow === null || browserWindow === void 0 || browserWindow.setBounds({
106
+ browserWindow.isMaximized() && browserWindow.unmaximize();
107
+ browserWindow.setBounds({
102
108
  x: x,
103
109
  y: y,
104
- width: width,
105
- height: height
110
+ width: 800,
111
+ height: 600
106
112
  });
107
- firstBounds = browserWindow.getBounds();
113
+ browserWindow.maximize();
114
+ } else {
108
115
  browserWindow.setBounds({
109
- x: firstBounds.x === 0 ? 0 : -firstBounds.x,
110
- y: firstBounds.y === 0 ? 0 : -firstBounds.y,
111
- width: width,
112
- height: height
113
- });
114
- }
115
- setTimeout(function () {
116
- browserWindow === null || browserWindow === void 0 || browserWindow.setBounds({
117
116
  x: x,
118
117
  y: y,
119
118
  width: originWidth,
120
119
  height: originHeight
121
120
  });
122
- browserWindow === null || browserWindow === void 0 || browserWindow.setMaximumSize(originWidth, originHeight);
123
- browserWindow.focus();
124
- }, 100);
125
- setTimeout(function () {
126
- browserWindow === null || browserWindow === void 0 || browserWindow.setBounds({
127
- width: originWidth,
128
- height: originHeight
129
- });
130
- }, 100);
121
+ }
131
122
  case 1:
132
123
  case "end":
133
124
  return _context2.stop();
@@ -13,7 +13,7 @@ var _jsxRuntime = require("react/jsx-runtime");
13
13
  var ParticipantTitle = exports.ParticipantTitle = (0, _mobxReact.observer)(function () {
14
14
  var store = (0, _react.useContext)(_store.StoreContext);
15
15
  var transI18n = (0, _i18n.useI18n)();
16
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
16
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
17
17
  children: [transI18n('fmt_participants_label_participants'), "(", store.participantCount, ")"]
18
18
  });
19
19
  });
@@ -0,0 +1,2 @@
1
+ import { PropsWithChildren } from 'react';
2
+ export declare const SubWindowDialog: (props: PropsWithChildren<{}>) => null;
@@ -0,0 +1,102 @@
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.keys.js");
12
+ require("core-js/modules/esnext.iterator.filter.js");
13
+ require("core-js/modules/esnext.iterator.for-each.js");
14
+ require("core-js/modules/web.dom-collections.for-each.js");
15
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
16
+ Object.defineProperty(exports, "__esModule", {
17
+ value: true
18
+ });
19
+ exports.SubWindowDialog = void 0;
20
+ require("core-js/modules/es.array.find.js");
21
+ require("core-js/modules/es.object.to-string.js");
22
+ require("core-js/modules/esnext.iterator.constructor.js");
23
+ require("core-js/modules/esnext.iterator.find.js");
24
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
+ var _constant = require("../../../../utilities/constant");
26
+ var _useElectron = require("../../hooks/useElectron");
27
+ var _react = require("react");
28
+ var _env = require("agora-foundation/lib/utilities/env");
29
+ var _videoTrackRenderContext = require("../../../../utilities/video-track-render-context");
30
+ var _store = require("../../store");
31
+ var _jsxRuntime = require("react/jsx-runtime");
32
+ 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; }
33
+ 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; }
34
+ var defaultWindowOptions = {
35
+ height: 850,
36
+ width: 1360,
37
+ minWidth: 825,
38
+ minHeight: 600
39
+ };
40
+ var SubWindowDialog = exports.SubWindowDialog = function SubWindowDialog(props) {
41
+ var store = (0, _react.useContext)(_store.StoreContext);
42
+ var children = props.children;
43
+ (0, _env.isElectron)() && (0, _useElectron.useElectronDialog)({
44
+ dialogKey: _constant.FcrUIDialogKey.SUB_WINDOW,
45
+ config: _objectSpread(_objectSpread({}, defaultWindowOptions), {}, {
46
+ title: window.runtime.browserWindow.getTitle(),
47
+ closable: true,
48
+ frame: true,
49
+ transparent: false,
50
+ backgroundColor: '#ffffff',
51
+ trafficLightPosition: {
52
+ x: 10,
53
+ y: 10
54
+ },
55
+ show: false,
56
+ hasShadow: true
57
+ }),
58
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_videoTrackRenderContext.FcrVideoTrackRenderContext.Provider, {
59
+ value: {
60
+ localVideoRenderProvider: store.localVideoRenderProvider,
61
+ remoteVideoRenderProvider: store.remoteVideoRenderManager
62
+ },
63
+ children: children
64
+ }),
65
+ hasCustomShadow: false,
66
+ onOpened: function onOpened(_ref) {
67
+ var browserWindow = _ref.browserWindow,
68
+ newRendererWindow = _ref.newRendererWindow;
69
+ // @ts-ignore
70
+ newRendererWindow.FcrUIMainWindowRenderer = window.FcrUIMainWindowRenderer;
71
+ // @ts-ignore
72
+ newRendererWindow.runtime = window.runtime;
73
+ var mainWindowBounds = window.runtime.browserWindow.getBounds();
74
+ var nearWindow = window.runtime.screen.getDisplayMatching(mainWindowBounds);
75
+ var subWindow = window.runtime.screen.getAllDisplays().find(function (display) {
76
+ return display.id !== nearWindow.id;
77
+ });
78
+ if (subWindow) {
79
+ var _subWindow$bounds = subWindow.bounds,
80
+ x = _subWindow$bounds.x,
81
+ y = _subWindow$bounds.y,
82
+ width = _subWindow$bounds.width,
83
+ height = _subWindow$bounds.height;
84
+ browserWindow.setBounds({
85
+ x: Math.floor(width / 2 - defaultWindowOptions.width / 2) + x,
86
+ y: Math.floor(height / 2 - defaultWindowOptions.height / 2) + y
87
+ });
88
+ browserWindow.maximize();
89
+ browserWindow.setTitle(window.runtime.browserWindow.getTitle());
90
+ }
91
+ // 退出房间后,被关闭窗口是隐藏而不是退出,所以在重新显示时需要重置状态
92
+ browserWindow.on('show', function () {
93
+ store.interceptClose = true;
94
+ });
95
+ },
96
+ beforeClose: function beforeClose() {
97
+ var interception = store.interceptClose;
98
+ return interception;
99
+ }
100
+ });
101
+ return null;
102
+ };
@@ -1,2 +1,3 @@
1
1
  import { PropsWithChildren } from 'react';
2
+ export declare const title = "Video Window";
2
3
  export declare const VideoWindowDialog: ({ children }: PropsWithChildren<{}>) => null;
@@ -13,7 +13,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
13
13
  Object.defineProperty(exports, "__esModule", {
14
14
  value: true
15
15
  });
16
- exports.VideoWindowDialog = void 0;
16
+ exports.title = exports.VideoWindowDialog = void 0;
17
17
  require("core-js/modules/es.array.concat.js");
18
18
  require("core-js/modules/es.array.for-each.js");
19
19
  require("core-js/modules/es.object.to-string.js");
@@ -40,6 +40,7 @@ function changeVideoWindowConfig(browserWindow) {
40
40
  browserWindow.setMinimumSize(resizeble ? _type.DefaultVideoWindowWidth : 0, resizeble ? _type.DefaultVideoWindowSmallTypeHeight : 0);
41
41
  browserWindow.setMaximumSize(resizeble ? _type.VideoWindowZoomMaxWidth : 0, resizeble ? _type.VideoWindowZoomMaxHeight : 0);
42
42
  }
43
+ var title = exports.title = 'Video Window';
43
44
  var VideoWindowDialog = exports.VideoWindowDialog = (0, _mobxReact.observer)(function (_ref) {
44
45
  var children = _ref.children;
45
46
  var store = (0, _react.useContext)(_store.StoreContext);
@@ -54,21 +55,32 @@ var VideoWindowDialog = exports.VideoWindowDialog = (0, _mobxReact.observer)(fun
54
55
  }, [videoWindowBounds]),
55
56
  height = _useMemo.videoWindowHeight,
56
57
  type = _useMemo.videoWindowPreviewType;
57
- var setCalcBounds = function setCalcBounds(x, y, width) {
58
+ var getBoundsPosition = function getBoundsPosition(x, y, width) {
58
59
  return {
59
60
  x: x + width - _type.DefaultVideoWindowWidth - 144,
60
- y: y + 80,
61
- width: _type.DefaultVideoWindowWidth,
62
- height: _type.DefaultVideoWindowSmallTypeHeight
61
+ y: y + 80
63
62
  };
64
63
  };
65
- var _window$runtime$scree = window.runtime.screen.getDisplayNearestPoint(currentShareBounds).bounds,
66
- x = _window$runtime$scree.x,
67
- y = _window$runtime$scree.y,
68
- width = _window$runtime$scree.width;
69
- var initalBounds = setCalcBounds(x, y, width);
64
+ var _useMemo2 = (0, _react.useMemo)(function () {
65
+ var _window$runtime$scree = window.runtime.screen.getDisplayNearestPoint(currentShareBounds).bounds,
66
+ x = _window$runtime$scree.x,
67
+ y = _window$runtime$scree.y,
68
+ width = _window$runtime$scree.width;
69
+ var initalBounds = _objectSpread(_objectSpread({}, getBoundsPosition(x, y, width)), {}, {
70
+ width: _type.DefaultVideoWindowWidth,
71
+ height: _type.DefaultVideoWindowSmallTypeHeight
72
+ });
73
+ return {
74
+ x: x,
75
+ y: y,
76
+ initalBounds: initalBounds
77
+ };
78
+ }, [currentShareBounds.height, currentShareBounds.width, currentShareBounds.x, currentShareBounds.y]),
79
+ x = _useMemo2.x,
80
+ y = _useMemo2.y,
81
+ initalBounds = _useMemo2.initalBounds;
70
82
  var config = _objectSpread(_objectSpread({
71
- title: 'Video Window',
83
+ title: title,
72
84
  type: 'panel',
73
85
  frame: false,
74
86
  fullscreen: false,
@@ -121,24 +133,16 @@ var VideoWindowDialog = exports.VideoWindowDialog = (0, _mobxReact.observer)(fun
121
133
  var _window$runtime$scree2 = window.runtime.screen.getDisplayNearestPoint(shareBounds).bounds,
122
134
  _x = _window$runtime$scree2.x,
123
135
  _y = _window$runtime$scree2.y,
124
- _width = _window$runtime$scree2.width;
125
- browserWindow.setBounds(setCalcBounds(_x, _y, _width));
126
- store.log("[VideoWindowDialog]: [onOpened], x: ".concat(_x, ", y: ").concat(_y, ", width: ").concat(_width));
136
+ width = _window$runtime$scree2.width;
137
+ browserWindow.setBounds(getBoundsPosition(_x, _y, width));
138
+ store.log("[VideoWindowDialog]: [onOpened], x: ".concat(_x, ", y: ").concat(_y, ", width: ").concat(width));
127
139
  }
128
140
  }
129
141
  reCalculate();
130
142
  calculateRef.current = reCalculate;
131
-
132
- // @ts-ignore
133
- window.runtime.screen.addListener('display-metrics-changed', calculateRef.current);
143
+ window.runtime.screen.addListener('display-metrics-changed', reCalculate);
134
144
  window.runtime.screen.addListener('display-removed', reCalculate);
135
145
  window.runtime.screen.addListener('display-added', reCalculate);
136
- // browserWindow.on(
137
- // 'move',
138
- // debounce(() => {
139
- // popoverWatcher(browserWindow, newRendererWindow);
140
- // }, 100),
141
- // );
142
146
  debounceRef.current = (0, _debounce["default"])(function (event, bounds) {
143
147
  setNewBounds(bounds);
144
148
  popoverWatcher(browserWindow, newRendererWindow);
@@ -154,8 +158,10 @@ var VideoWindowDialog = exports.VideoWindowDialog = (0, _mobxReact.observer)(fun
154
158
  if (!(browserWindow !== null && browserWindow !== void 0 && browserWindow.isDestroyed())) {
155
159
  // @ts-ignore
156
160
  browserWindow.removeListener('custom-resize', debounceRef.current);
157
- // @ts-ignore
158
- window.runtime.screen.removeListener('display-metrics-changed', calculateRef.current);
161
+ var listener = calculateRef.current;
162
+ window.runtime.screen.removeListener('display-metrics-changed', listener);
163
+ window.runtime.screen.removeListener('display-removed', listener);
164
+ window.runtime.screen.removeListener('display-added', listener);
159
165
  changeVideoWindowConfig(browserWindow);
160
166
  browserWindow.setResizable(false);
161
167
  browserWindow.setBounds(initalBounds);
@@ -19,7 +19,6 @@ var WhiteboardElectronDialog = exports.WhiteboardElectronDialog = (0, _mobxReact
19
19
  node = dom;
20
20
  if (browserWindow) {
21
21
  browserWindow.focus();
22
- console.log('browserWindow', browserWindow);
23
22
  // if (newWindow) {
24
23
  // const proxyHandler = {
25
24
  // get(target: Window, prop: any) {
@@ -27,7 +27,7 @@ function usePopoverWatcher(_ref) {
27
27
  var browserWindow = _ref2.browserWindow,
28
28
  newRendererWindow = _ref2.newRendererWindow;
29
29
  if (!newRendererWindow || !browserWindow) {
30
- return console.log('newRendererWindow and browserWindow is not inital');
30
+ return;
31
31
  }
32
32
  if (observerRef.current) observerRef.current.disconnect();
33
33
  var body = newRendererWindow.document.body;
@@ -101,7 +101,6 @@ function calculateThreshold(browserWindow, body) {
101
101
  var nearDisplayBounds = nearDisplay.bounds;
102
102
  var middleThreshold = nearDisplayBounds.height / 2;
103
103
  var placement = bounds.y > middleThreshold ? 'top' : 'bottom';
104
- console.log('custom moving', placement, bounds.y);
105
104
  (_body$querySelector = body.querySelector('#root')) === null || _body$querySelector === void 0 || _body$querySelector.setAttribute('style', "display: flex;align-items: ".concat(placement === 'top' ? 'flex-end' : 'flex-start'));
106
105
  return {
107
106
  placement: placement,
@@ -3,7 +3,20 @@ export declare const DialogInstanceContext: import("react").Context<{
3
3
  browserWindow: Electron.BrowserWindow;
4
4
  newRendererWindow: Window;
5
5
  resizable: boolean;
6
+ baseUrl: string;
6
7
  closeDialog: () => void;
8
+ /**
9
+ * @param continueClose - 继续关闭窗口的回调函数
10
+ */
11
+ continueClose: () => void;
12
+ /**
13
+ * 窗口关闭时是否已被拦截,此值只反应状态,不会影响继续关闭的逻辑
14
+ */
15
+ interceptedClose: boolean;
16
+ /**
17
+ * 重置被拦截状态
18
+ */
19
+ setInterceptedClose: (interceptedClose: boolean) => void;
7
20
  }>;
8
21
  export declare const shadowOffset: number;
9
22
  export declare const enterFullScreenHandler: () => void;