fcr-ui-scene 3.6.2 → 3.6.3

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 (197) hide show
  1. package/lib/creator.d.ts +1 -0
  2. package/lib/creator.js +38 -26
  3. package/lib/electron/app.js +5 -4
  4. package/lib/electron/bootstrap-dev.js +3 -0
  5. package/lib/electron/injections.d.ts +3 -2
  6. package/lib/electron/injections.js +5 -6
  7. package/lib/electron/main.js +15 -11
  8. package/lib/electron/window.js +0 -3
  9. package/lib/fragments/annotation/index.d.ts +1 -0
  10. package/lib/fragments/annotation/index.js +55 -40
  11. package/lib/fragments/annotation/store.d.ts +7 -2
  12. package/lib/fragments/annotation/store.js +170 -90
  13. package/lib/fragments/annotation/view.d.ts +1 -0
  14. package/lib/fragments/annotation/view.js +10 -2
  15. package/lib/modules/action-bar/index.css +4 -0
  16. package/lib/modules/action-bar/store.d.ts +1 -7
  17. package/lib/modules/action-bar/store.js +35 -82
  18. package/lib/modules/annotation/board-cursor.css +76 -0
  19. package/lib/modules/annotation/components/control-bar/index.js +42 -2
  20. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/index.js +3 -1
  21. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/libs.d.ts +1 -0
  22. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/libs.js +11 -5
  23. package/lib/modules/annotation/components/toolbar/components/item/item.d.ts +1 -0
  24. package/lib/modules/annotation/components/toolbar/components/item/item.js +3 -2
  25. package/lib/modules/annotation/index.d.ts +2 -0
  26. package/lib/modules/annotation/index.js +2 -1
  27. package/lib/modules/annotation/store.d.ts +11 -3
  28. package/lib/modules/annotation/store.js +209 -184
  29. package/lib/modules/annotation/style.css +3 -3
  30. package/lib/modules/annotation/view.d.ts +1 -0
  31. package/lib/modules/annotation/view.js +26 -9
  32. package/lib/modules/components/member-window/components/member-actions/components/audio-control.d.ts +0 -1
  33. package/lib/modules/components/member-window/components/member-actions/components/audio-control.js +10 -4
  34. package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.d.ts +2 -2
  35. package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.js +4 -4
  36. package/lib/modules/components/member-window/components/member-actions/components/icon-status.d.ts +0 -2
  37. package/lib/modules/components/member-window/components/member-actions/components/icon-status.js +3 -4
  38. package/lib/modules/components/member-window/components/member-actions/components/more-actions.d.ts +0 -3
  39. package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +6 -32
  40. package/lib/modules/components/member-window/components/member-actions/components/share-status.js +11 -3
  41. package/lib/modules/components/member-window/components/member-actions/components/user-info.d.ts +0 -1
  42. package/lib/modules/components/member-window/components/member-actions/components/user-info.js +7 -10
  43. package/lib/modules/components/member-window/components/member-actions/components/user-tag.d.ts +0 -1
  44. package/lib/modules/components/member-window/components/member-actions/components/user-tag.js +0 -2
  45. package/lib/modules/components/member-window/components/member-actions/index.js +1 -32
  46. package/lib/modules/components/member-window/components/member-actions/store.d.ts +38 -1
  47. package/lib/modules/components/member-window/components/member-actions/store.js +130 -23
  48. package/lib/modules/components/member-window/index.css +37 -0
  49. package/lib/modules/control-bar/index.d.ts +0 -4
  50. package/lib/modules/control-bar/index.js +0 -32
  51. package/lib/modules/control-bar/store.d.ts +4 -6
  52. package/lib/modules/control-bar/store.js +63 -103
  53. package/lib/modules/control-bar/view.js +45 -3
  54. package/lib/modules/dialog/components/control-bar/index.d.ts +0 -2
  55. package/lib/modules/dialog/components/control-bar/index.js +1 -3
  56. package/lib/modules/dialog/hooks/useElectron.js +3 -2
  57. package/lib/modules/dialog/index.d.ts +0 -3
  58. package/lib/modules/dialog/index.js +1 -25
  59. package/lib/modules/dialog/store.d.ts +6 -8
  60. package/lib/modules/dialog/store.js +21 -55
  61. package/lib/modules/layout/components/CommonVideoRenderer.js +5 -2
  62. package/lib/modules/layout/type.d.ts +7 -0
  63. package/lib/modules/participant/store.js +59 -28
  64. package/lib/modules/setting/index.d.ts +2 -0
  65. package/lib/modules/setting/index.js +3 -3
  66. package/lib/modules/setting/store.d.ts +8 -10
  67. package/lib/modules/setting/store.js +22 -20
  68. package/lib/modules/share-screen/store.d.ts +3 -0
  69. package/lib/modules/share-screen/store.js +63 -54
  70. package/lib/modules/state-bar/index.css +8 -6
  71. package/lib/modules/state-bar/index.d.ts +2 -0
  72. package/lib/modules/state-bar/index.js +2 -1
  73. package/lib/modules/state-bar/layout-config.d.ts +1 -0
  74. package/lib/modules/state-bar/layout-config.js +15 -5
  75. package/lib/modules/state-bar/store.d.ts +5 -1
  76. package/lib/modules/state-bar/store.js +8 -1
  77. package/lib/modules/state-bar/view.js +9 -5
  78. package/lib/modules/whiteboard/components/control-bar/store.js +2 -0
  79. package/lib/modules/whiteboard/components/toolbar/store.d.ts +7 -3
  80. package/lib/modules/whiteboard/components/toolbar/store.js +61 -35
  81. package/lib/modules/whiteboard/index.js +3 -2
  82. package/lib/modules/whiteboard/style.css +0 -4
  83. package/lib/modules/whiteboard/view.js +8 -2
  84. package/lib/providers/annotation-provider.d.ts +63 -12
  85. package/lib/providers/annotation-provider.js +51 -41
  86. package/lib/providers/device-provider.d.ts +3 -3
  87. package/lib/providers/device-provider.js +8 -6
  88. package/lib/providers/event-provider.d.ts +3 -3
  89. package/lib/providers/screen-share-provider.js +53 -60
  90. package/lib/providers/sharing-provider.d.ts +5 -1
  91. package/lib/providers/sharing-provider.js +16 -1
  92. package/lib/providers/user-setting-storage-provider.d.ts +20 -0
  93. package/lib/providers/user-setting-storage-provider.js +74 -0
  94. package/lib/scenes/main-scene.js +2 -3
  95. package/lib/scenes/waiting-scene.js +1 -1
  96. package/lib/shared-data-source/config.d.ts +1 -5
  97. package/lib/shared-data-source/config.js +11 -81
  98. package/lib/shared-data-source/screen-share-data.d.ts +4 -0
  99. package/lib/shared-data-source/screen-share-data.js +1 -0
  100. package/lib/shared-data-source/setting.d.ts +13 -13
  101. package/lib/shared-data-source/setting.js +10 -6
  102. package/lib/shared-data-source/video-window.d.ts +2 -1
  103. package/lib/shared-data-source/video-window.js +56 -36
  104. package/lib/translations/enUS.d.ts +8 -0
  105. package/lib/translations/enUS.js +9 -1
  106. package/lib/translations/zhCN.d.ts +8 -0
  107. package/lib/translations/zhCN.js +11 -3
  108. package/lib/type.d.ts +2 -1
  109. package/lib/ui-scene.js +11 -6
  110. package/lib/utilities/constant.d.ts +2 -1
  111. package/lib/utilities/constant.js +1 -0
  112. package/lib/utilities/setting-config-storage.d.ts +5 -6
  113. package/lib/utilities/setting-config-storage.js +33 -39
  114. package/lib/utilities/tools.d.ts +1 -0
  115. package/lib/utilities/tools.js +3 -2
  116. package/package.json +8 -6
  117. package/dist/132.js +0 -2
  118. package/dist/132.js.LICENSE.txt +0 -311
  119. package/dist/317.js +0 -2
  120. package/dist/317.js.LICENSE.txt +0 -20
  121. package/dist/651.js +0 -2
  122. package/dist/651.js.LICENSE.txt +0 -1
  123. package/dist/689343b64b60bfb7ffff.png +0 -0
  124. package/dist/73.js +0 -1
  125. package/dist/885f9369ea05a8ac0e56.png +0 -0
  126. package/dist/90f383876a6e93e7c7ca.png +0 -0
  127. package/dist/9b37584780995fc5df8c.gif +0 -0
  128. package/dist/annotation.e5cbd3a70b6d42361872.css +0 -1274
  129. package/dist/annotation.html +0 -1
  130. package/dist/annotation.js +0 -2
  131. package/dist/annotation.js.LICENSE.txt +0 -252
  132. package/dist/assets/browser/images/default1.jpg +0 -0
  133. package/dist/assets/browser/images/default2.jpg +0 -0
  134. package/dist/assets/browser/images/default3.jpg +0 -0
  135. package/dist/assets/browser/images/default4.jpg +0 -0
  136. package/dist/assets/browser/images/default5.jpg +0 -0
  137. package/dist/assets/browser/images/default6.jpg +0 -0
  138. package/dist/assets/browser/images/default7.jpg +0 -0
  139. package/dist/assets/browser/sound_effects/pretest.mp3 +0 -0
  140. package/dist/assets/browser/sound_effects/recording_started.mp3 +0 -0
  141. package/dist/assets/browser/sound_effects/remote_user_joined.mp3 +0 -0
  142. package/dist/assets/browser/sound_effects/speaker_test.mp3 +0 -0
  143. package/dist/assets/browser/videos/default8.mp4 +0 -0
  144. package/dist/assets/browser/videos/default9.mp4 +0 -0
  145. package/dist/assets/cursors/fcr_whiteboard_input.ico +0 -0
  146. package/dist/assets/cursors/fcr_whiteboard_pen.ico +0 -0
  147. package/dist/assets/cursors/fcr_whiteboard_shape_-straightline.ico +0 -0
  148. package/dist/assets/cursors/fcr_whiteboard_shape_arrow.ico +0 -0
  149. package/dist/assets/cursors/fcr_whiteboard_shape_circle.ico +0 -0
  150. package/dist/assets/cursors/fcr_whiteboard_shape_rectangle.ico +0 -0
  151. package/dist/assets/cursors/fcr_whiteboard_shape_triangle.ico +0 -0
  152. package/dist/assets/electron/images/default1.jpg +0 -0
  153. package/dist/assets/electron/images/default2.jpg +0 -0
  154. package/dist/assets/electron/sound_effects/pretest.mp3 +0 -0
  155. package/dist/assets/electron/videos/default8.mp4 +0 -0
  156. package/dist/assets/fcr_chat_reddot.svg +0 -5
  157. package/dist/assets/fcr_defaultpage.png +0 -0
  158. package/dist/assets/fcr_grid_big.svg +0 -3
  159. package/dist/assets/fcr_leave2.svg +0 -58
  160. package/dist/assets/fcr_listontop_big.svg +0 -3
  161. package/dist/assets/full-screen-error-boundary-img.png +0 -0
  162. package/dist/assets/leave-meeting.png +0 -0
  163. package/dist/assets/loading.gif +0 -0
  164. package/dist/assets/login_confirm.png +0 -0
  165. package/dist/assets/pretest.mp3 +0 -0
  166. package/dist/assets/state-bar-logo.png +0 -0
  167. package/dist/assets/step-gradient.svg +0 -10
  168. package/dist/b74b002687a3a3346bec.png +0 -0
  169. package/dist/b94869094481702f949b.png +0 -0
  170. package/dist/ebeace75fd46b90d890e.png +0 -0
  171. package/dist/electron/app.js +0 -194
  172. package/dist/electron/bootstrap-dev.js +0 -46
  173. package/dist/electron/bootstrap-sdk.js +0 -211
  174. package/dist/electron/default-options.js +0 -25
  175. package/dist/electron/env.js +0 -13
  176. package/dist/electron/index.js +0 -20
  177. package/dist/electron/injections.js +0 -903
  178. package/dist/electron/ipc/ipc.js +0 -141
  179. package/dist/electron/ipc/type.js +0 -19
  180. package/dist/electron/logger.js +0 -65
  181. package/dist/electron/main.js +0 -94
  182. package/dist/electron/plugins/devtool-shortcut.js +0 -33
  183. package/dist/electron/plugins/meeting-state.js +0 -39
  184. package/dist/electron/plugins/screenshot.js +0 -54
  185. package/dist/electron/preload.js +0 -108
  186. package/dist/electron/tools.js +0 -66
  187. package/dist/electron/window.js +0 -123
  188. package/dist/extensions/agora-extension-virtual-background/agora-wasm.wasm +0 -0
  189. package/dist/extensions/ai-denoiser/denoiser-wasm-simd.wasm +0 -0
  190. package/dist/extensions/ai-denoiser/denoiser-wasm.js +0 -1
  191. package/dist/extensions/ai-denoiser/denoiser-wasm.wasm +0 -0
  192. package/dist/fad688b9135b15d6c405.png +0 -0
  193. package/dist/index.html +0 -224
  194. package/dist/main.393a2a91ab7fc05ffce6.css +0 -15403
  195. package/dist/main.js +0 -2
  196. package/dist/main.js.LICENSE.txt +0 -272
  197. package/dist/worker-entry.worker.js.LICENSE.txt +0 -13
@@ -5,7 +5,6 @@ require("core-js/modules/es.symbol.description.js");
5
5
  require("core-js/modules/es.symbol.to-primitive.js");
6
6
  require("core-js/modules/es.array.is-array.js");
7
7
  require("core-js/modules/es.date.to-primitive.js");
8
- require("core-js/modules/es.function.bind.js");
9
8
  require("core-js/modules/es.function.name.js");
10
9
  require("core-js/modules/es.map.js");
11
10
  require("core-js/modules/es.number.constructor.js");
@@ -40,6 +39,7 @@ require("core-js/modules/es.error.to-string.js");
40
39
  require("core-js/modules/es.array.concat.js");
41
40
  require("core-js/modules/es.array.iterator.js");
42
41
  require("core-js/modules/es.array.push.js");
42
+ require("core-js/modules/es.function.bind.js");
43
43
  require("core-js/modules/es.object.to-string.js");
44
44
  require("core-js/modules/es.string.iterator.js");
45
45
  require("core-js/modules/es.weak-map.js");
@@ -62,8 +62,9 @@ var _decorator = require("agora-foundation/lib/decorator");
62
62
  var _imports = require("fcr-core/lib/imports");
63
63
  var _utils = require("../../utils");
64
64
  var _dayjs = _interopRequireDefault(require("dayjs"));
65
+ var _constant = require("../../../../utilities/constant");
65
66
  var _ToolbarStore;
66
- var _initProto, _init_observables, _disableToolbarDecs, _resumeToolbarDecs, _redoDecs, _undoDecs, _cleanDecs, _setToolDecs, _setPenDecs, _setShapeDecs, _setStrokeColorDecs, _setStrokeWidthDecs, _clickExpansionToolDecs, _setToolbarPositionDecs, _dragToolbarDecs, _releaseToolbarDecs, _captureScreenDecs, _saveDraftDecs, _setThemeDecs, _setCommonColorDecs, _repositionToolbarDecs, _getSnapshotImageDecs, _ref;
67
+ var _initProto, _init_observables, _resetToolbarVarsDecs, _redoDecs, _undoDecs, _cleanDecs, _setToolDecs, _setPenDecs, _setShapeDecs, _setStrokeColorDecs, _setStrokeWidthDecs, _clickExpansionToolDecs, _setToolbarPositionDecs, _dragToolbarDecs, _releaseToolbarDecs, _captureScreenDecs, _saveDraftDecs, _setThemeDecs, _setCommonColorDecs, _repositionToolbarDecs, _getSnapshotImageDecs, _ref;
67
68
  function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
68
69
  function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
69
70
  function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
@@ -76,9 +77,9 @@ function _setFunctionName(e, t, n) { "symbol" == _typeof(t) && (t = (t = t.descr
76
77
  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; }
77
78
  var colors = ['#EFEFEF', '#FFEC42', '#FFB545', '#E44A19', '#4A4C5F', '#A1C573', '#51BD69', '#EB47A2', '#0E0E0E', '#50E3C2', '#547AFF', '#79479F'];
78
79
  var _A = /*#__PURE__*/new WeakMap();
79
- _ref = (_disableToolbarDecs = [_mobx.action, _mobx.action.bound], _resumeToolbarDecs = [_mobx.action, _mobx.action.bound], _redoDecs = [_mobx.action, _mobx.action.bound], _undoDecs = [_mobx.action, _mobx.action.bound], _cleanDecs = [_mobx.action, _mobx.action.bound], _setToolDecs = [_mobx.action, _mobx.action.bound], _setPenDecs = [_mobx.action, _mobx.action.bound], _setShapeDecs = [_mobx.action, _mobx.action.bound], _setStrokeColorDecs = [_mobx.action, _mobx.action.bound], _setStrokeWidthDecs = [_mobx.action, _mobx.action.bound], _clickExpansionToolDecs = [_mobx.action, _mobx.action.bound], _setToolbarPositionDecs = [_mobx.action, _mobx.action.bound], _dragToolbarDecs = [_mobx.action, _mobx.action.bound], _releaseToolbarDecs = [_mobx.action, _mobx.action.bound], _captureScreenDecs = [_mobx.action, _mobx.action.bound], _saveDraftDecs = [_mobx.action, _mobx.action.bound], _setThemeDecs = [_mobx.action, _mobx.action.bound], _setCommonColorDecs = [_mobx.action, _mobx.action.bound], _repositionToolbarDecs = [_mobx.action, _mobx.action.bound], _getSnapshotImageDecs = [_mobx.action, _mobx.action.bound], "_boardMainWindow");
80
+ _ref = (_resetToolbarVarsDecs = [_mobx.action, _mobx.action.bound], _redoDecs = [_mobx.action, _mobx.action.bound], _undoDecs = [_mobx.action, _mobx.action.bound], _cleanDecs = [_mobx.action, _mobx.action.bound], _setToolDecs = [_mobx.action, _mobx.action.bound], _setPenDecs = [_mobx.action, _mobx.action.bound], _setShapeDecs = [_mobx.action, _mobx.action.bound], _setStrokeColorDecs = [_mobx.action, _mobx.action.bound], _setStrokeWidthDecs = [_mobx.action, _mobx.action.bound], _clickExpansionToolDecs = [_mobx.action, _mobx.action.bound], _setToolbarPositionDecs = [_mobx.action, _mobx.action.bound], _dragToolbarDecs = [_mobx.action, _mobx.action.bound], _releaseToolbarDecs = [_mobx.action, _mobx.action.bound], _captureScreenDecs = [_mobx.action, _mobx.action.bound], _saveDraftDecs = [_mobx.action, _mobx.action.bound], _setThemeDecs = [_mobx.action, _mobx.action.bound], _setCommonColorDecs = [_mobx.action, _mobx.action.bound], _repositionToolbarDecs = [_mobx.action, _mobx.action.bound], _getSnapshotImageDecs = [_mobx.action, _mobx.action.bound], "_boardMainWindow");
80
81
  var ToolbarStore = exports.ToolbarStore = /*#__PURE__*/function () {
81
- function ToolbarStore(_whiteboardControl, _roomControl, _annotationProvider) {
82
+ function ToolbarStore(_whiteboardControl, _roomControl, _annotationProvider, _eventProvider) {
82
83
  var _this = this;
83
84
  (0, _classCallCheck2["default"])(this, ToolbarStore);
84
85
  (0, _defineProperty2["default"])(this, _ref, (_initProto(this), undefined));
@@ -91,8 +92,20 @@ var ToolbarStore = exports.ToolbarStore = /*#__PURE__*/function () {
91
92
  _this.observables.undoSteps = enable;
92
93
  }
93
94
  });
95
+ (0, _defineProperty2["default"])(this, "_whiteboardObserver", {
96
+ onConnectionStateUpdated: function onConnectionStateUpdated(state) {
97
+ if (state === _imports.AgoraRteConnectionState.CONNECTED && _this._whiteboardControl) {
98
+ _this._boardMainWindow = _this._whiteboardControl.getMainWindow();
99
+ _this._lastStrokeWidth = 0;
100
+ _this.boardMainWindow.addObserver(_this._boardObserver);
101
+ }
102
+ }
103
+ });
104
+ (0, _defineProperty2["default"])(this, "_uiEventObserver", {
105
+ onEvent: this._onUiEvent.bind(this)
106
+ });
94
107
  _classPrivateFieldInitSpec(this, _A, _init_observables(this, {
95
- currentTool: undefined,
108
+ currentTool: _enums.FcrBoardToolType.CURVE,
96
109
  currentShape: undefined,
97
110
  currentColor: colors[2],
98
111
  currentStrokeWidth: 2,
@@ -122,15 +135,9 @@ var ToolbarStore = exports.ToolbarStore = /*#__PURE__*/function () {
122
135
  this._whiteboardControl = _whiteboardControl;
123
136
  this._roomControl = _roomControl;
124
137
  this._annotationProvider = _annotationProvider;
125
- this._whiteboardControl.addObserver({
126
- onConnectionStateUpdated: function onConnectionStateUpdated(state) {
127
- if (state === _imports.AgoraRteConnectionState.CONNECTED) {
128
- _this._boardMainWindow = _this._whiteboardControl.getMainWindow();
129
- _this._lastStrokeWidth = 0;
130
- _this._boardMainWindow.addObserver(_this._boardObserver);
131
- }
132
- }
133
- });
138
+ this._eventProvider = _eventProvider;
139
+ this._whiteboardControl.addObserver(this._whiteboardObserver);
140
+ this._eventProvider.addObserver(this._uiEventObserver);
134
141
  }
135
142
  return (0, _createClass2["default"])(ToolbarStore, [{
136
143
  key: "observables",
@@ -155,19 +162,36 @@ var ToolbarStore = exports.ToolbarStore = /*#__PURE__*/function () {
155
162
  }
156
163
  }
157
164
  }, {
158
- key: "disableToolbar",
159
- value: function disableToolbar() {
160
- this._lastStrokeWidth = this.observables.currentStrokeWidth;
161
- this.boardMainWindow.setStrokeWidth(0);
162
- this.setTool(_enums.FcrBoardToolType.NONE);
163
- }
165
+ key: "_onUiEvent",
166
+ value: function () {
167
+ var _onUiEvent2 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(event, params) {
168
+ return _regenerator["default"].wrap(function _callee$(_context) {
169
+ while (1) switch (_context.prev = _context.next) {
170
+ case 0:
171
+ _context.t0 = event;
172
+ _context.next = _context.t0 === _constant.FcrUIAction.RESET_WHITEBOARD_TOOLBAR_VARS ? 3 : 5;
173
+ break;
174
+ case 3:
175
+ this.resetToolbarVars();
176
+ return _context.abrupt("break", 5);
177
+ case 5:
178
+ case "end":
179
+ return _context.stop();
180
+ }
181
+ }, _callee, this);
182
+ }));
183
+ function _onUiEvent(_x, _x2) {
184
+ return _onUiEvent2.apply(this, arguments);
185
+ }
186
+ return _onUiEvent;
187
+ }()
164
188
  }, {
165
- key: "resumeToolbar",
166
- value: function resumeToolbar() {
167
- if (this._lastStrokeWidth > 0) {
168
- this.observables.currentStrokeWidth = this._lastStrokeWidth;
169
- this.boardMainWindow.setStrokeWidth(this._lastStrokeWidth);
170
- this._lastStrokeWidth = 0;
189
+ key: "resetToolbarVars",
190
+ value: function resetToolbarVars() {
191
+ if (this._boardMainWindow) {
192
+ this.setStrokeColor(colors[2]);
193
+ this.setStrokeWidth(2);
194
+ this.setPen(_type.FcrBoardShape.Curve);
171
195
  }
172
196
  }
173
197
  }, {
@@ -292,7 +316,9 @@ var ToolbarStore = exports.ToolbarStore = /*#__PURE__*/function () {
292
316
  key: "release",
293
317
  value: function release() {
294
318
  var _this$_boardMainWindo;
319
+ this._eventProvider.removeObserver(this._uiEventObserver);
295
320
  (_this$_boardMainWindo = this._boardMainWindow) === null || _this$_boardMainWindo === void 0 || _this$_boardMainWindo.removeObserver(this._boardObserver);
321
+ this._whiteboardControl.removeObserver(this._whiteboardObserver);
296
322
  }
297
323
  }, {
298
324
  key: "_updateDockPlacement",
@@ -381,16 +407,16 @@ var ToolbarStore = exports.ToolbarStore = /*#__PURE__*/function () {
381
407
  }, {
382
408
  key: "_getSnapshotImage",
383
409
  value: function () {
384
- var _getSnapshotImage2 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
410
+ var _getSnapshotImage2 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2() {
385
411
  var _this5 = this;
386
412
  var mainWindow, progress, imageData;
387
- return _regenerator["default"].wrap(function _callee$(_context) {
388
- while (1) switch (_context.prev = _context.next) {
413
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
414
+ while (1) switch (_context2.prev = _context2.next) {
389
415
  case 0:
390
416
  this.observables.progress = 0;
391
417
  mainWindow = this.boardMainWindow;
392
418
  if (!mainWindow) {
393
- _context.next = 8;
419
+ _context2.next = 8;
394
420
  break;
395
421
  }
396
422
  progress = setInterval(function () {
@@ -400,10 +426,10 @@ var ToolbarStore = exports.ToolbarStore = /*#__PURE__*/function () {
400
426
  clearInterval(progress);
401
427
  }
402
428
  }, 4);
403
- _context.next = 6;
429
+ _context2.next = 6;
404
430
  return mainWindow.getSnapshotImage();
405
431
  case 6:
406
- imageData = _context.sent;
432
+ imageData = _context2.sent;
407
433
  (0, _mobx.runInAction)(function () {
408
434
  setTimeout(function () {
409
435
  var _this5$roomInfo;
@@ -420,9 +446,9 @@ var ToolbarStore = exports.ToolbarStore = /*#__PURE__*/function () {
420
446
  });
421
447
  case 8:
422
448
  case "end":
423
- return _context.stop();
449
+ return _context2.stop();
424
450
  }
425
- }, _callee, this);
451
+ }, _callee2, this);
426
452
  }));
427
453
  function _getSnapshotImage() {
428
454
  return _getSnapshotImage2.apply(this, arguments);
@@ -456,7 +482,7 @@ var ToolbarStore = exports.ToolbarStore = /*#__PURE__*/function () {
456
482
  }]);
457
483
  }();
458
484
  _ToolbarStore = ToolbarStore;
459
- var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_ToolbarStore, [[_mobx.observable, 1, "observables"], [_disableToolbarDecs, 18, "disableToolbar"], [_resumeToolbarDecs, 18, "resumeToolbar"], [_redoDecs, 18, "redo"], [_undoDecs, 18, "undo"], [_cleanDecs, 18, "clean"], [_setToolDecs, 18, "setTool"], [_setPenDecs, 18, "setPen"], [_setShapeDecs, 18, "setShape"], [_setStrokeColorDecs, 18, "setStrokeColor"], [_setStrokeWidthDecs, 18, "setStrokeWidth"], [_clickExpansionToolDecs, 18, "clickExpansionTool"], [_setToolbarPositionDecs, 18, "setToolbarPosition"], [_dragToolbarDecs, 18, "dragToolbar"], [_releaseToolbarDecs, 18, "releaseToolbar"], [_captureScreenDecs, 18, "captureScreen"], [_saveDraftDecs, 18, "saveDraft"], [_setThemeDecs, 18, "setTheme"], [_setCommonColorDecs, 18, "setCommonColor"], [_repositionToolbarDecs, 18, "repositionToolbar"], [_decorator.bound, 2, "release"], [_decorator.bound, 2, "_updateDockPlacement"], [_decorator.bound, 2, "_updateDockPosition"], [_decorator.bound, 2, "_updateMaxVisibleTools"], [_decorator.bound, 2, "_setBackgroundColor"], [_getSnapshotImageDecs, 18, "_getSnapshotImage"]], []).e, 2);
485
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_ToolbarStore, [[_mobx.observable, 1, "observables"], [_decorator.bound, 2, "_onUiEvent"], [_resetToolbarVarsDecs, 18, "resetToolbarVars"], [_redoDecs, 18, "redo"], [_undoDecs, 18, "undo"], [_cleanDecs, 18, "clean"], [_setToolDecs, 18, "setTool"], [_setPenDecs, 18, "setPen"], [_setShapeDecs, 18, "setShape"], [_setStrokeColorDecs, 18, "setStrokeColor"], [_setStrokeWidthDecs, 18, "setStrokeWidth"], [_clickExpansionToolDecs, 18, "clickExpansionTool"], [_setToolbarPositionDecs, 18, "setToolbarPosition"], [_dragToolbarDecs, 18, "dragToolbar"], [_releaseToolbarDecs, 18, "releaseToolbar"], [_captureScreenDecs, 18, "captureScreen"], [_saveDraftDecs, 18, "saveDraft"], [_setThemeDecs, 18, "setTheme"], [_setCommonColorDecs, 18, "setCommonColor"], [_repositionToolbarDecs, 18, "repositionToolbar"], [_decorator.bound, 2, "release"], [_decorator.bound, 2, "_updateDockPlacement"], [_decorator.bound, 2, "_updateDockPosition"], [_decorator.bound, 2, "_updateMaxVisibleTools"], [_decorator.bound, 2, "_setBackgroundColor"], [_getSnapshotImageDecs, 18, "_getSnapshotImage"]], []).e, 2);
460
486
  _init_observables = _applyDecs$e[0];
461
487
  _initProto = _applyDecs$e[1];
462
488
  var ToolbarContext = exports.ToolbarContext = /*#__PURE__*/(0, _react.createContext)({});
@@ -314,7 +314,7 @@ var FcrWhiteboardUIModule = exports.FcrWhiteboardUIModule = /*#__PURE__*/functio
314
314
  this._roomControl = (_this$currentRoomCont = this.currentRoomControlProvider) === null || _this$currentRoomCont === void 0 ? void 0 : _this$currentRoomCont.currentRoomControl;
315
315
  this._securityStore = this.privilegeProvider;
316
316
  this._whiteboardControl = this._roomControl.getSharingControl().getBoardControl();
317
- this._toolbarStore = new _store.ToolbarStore(this._whiteboardControl, this._roomControl, this.annotationProvider);
317
+ this._toolbarStore = new _store.ToolbarStore(this._whiteboardControl, this._roomControl, this.annotationProvider, this.eventProvider);
318
318
  var streamControl = this._roomControl.getStreamControl();
319
319
  var userControl = this._roomControl.getUserControl();
320
320
  this._userControl = userControl;
@@ -508,7 +508,7 @@ var FcrWhiteboardUIModule = exports.FcrWhiteboardUIModule = /*#__PURE__*/functio
508
508
 
509
509
  var isActive = (_this$_whiteboardCont6 = this._whiteboardControl) === null || _this$_whiteboardCont6 === void 0 ? void 0 : _this$_whiteboardCont6.getActivity();
510
510
  if (isActive && this._whiteboardControl) {
511
- var _this$_userControl2, _this$_ownerUser3, _this$_localUser3, _this$_boardStore2, _this$_boardStore3, _this$_uiEventStore3;
511
+ var _this$_userControl2, _this$_ownerUser3, _this$_localUser3, _this$_boardStore2, _this$_boardStore3, _this$_uiEventStore3, _this$_toolbarStore;
512
512
  var ownerUserId = this._whiteboardControl.getOwnerId();
513
513
  this._ownerUser = (_this$_userControl2 = this._userControl) === null || _this$_userControl2 === void 0 ? void 0 : _this$_userControl2.getUser(ownerUserId);
514
514
  this._isMyBoard = ((_this$_ownerUser3 = this._ownerUser) === null || _this$_ownerUser3 === void 0 ? void 0 : _this$_ownerUser3.userId) === ((_this$_localUser3 = this._localUser) === null || _this$_localUser3 === void 0 ? void 0 : _this$_localUser3.userId);
@@ -518,6 +518,7 @@ var FcrWhiteboardUIModule = exports.FcrWhiteboardUIModule = /*#__PURE__*/functio
518
518
  action: _type.WhiteboardBaseEvents.SET_OWNER_USER_ID,
519
519
  payload: ownerUserId
520
520
  });
521
+ (_this$_toolbarStore = this._toolbarStore) === null || _this$_toolbarStore === void 0 || _this$_toolbarStore.resetToolbarVars();
521
522
  } else {
522
523
  this.logger.warn('whiteboard mount, getBoardActiveInfo activeInfo isActive is false , ownerUserId is null');
523
524
  }
@@ -7,10 +7,6 @@
7
7
  pointer-events: all;
8
8
  }
9
9
 
10
- .board-widget-app {
11
- height: 100%;
12
- }
13
-
14
10
  .fcr-board-pagination {
15
11
  position: absolute;
16
12
  left: 10px;
@@ -17,12 +17,16 @@ var _boardContext = _interopRequireDefault(require("../../utilities/board-contex
17
17
  var _i18n = require("agora-ui-foundation/lib/i18n");
18
18
  var _fcrCore = require("fcr-core");
19
19
  var _store = require("./components/toolbar/store");
20
+ var _classnames = _interopRequireDefault(require("classnames"));
21
+ var _enums = require("fcr-core/lib/room-control/whiteboard-control/enums");
20
22
  var _jsxRuntime = require("react/jsx-runtime");
21
23
  var Whiteboard = exports.Whiteboard = (0, _mobxReact.observer)(function () {
22
24
  var _useContext = (0, _react.useContext)(_boardContext["default"]),
23
25
  showToolbar = _useContext.showToolbar;
24
26
  var _useContext2 = (0, _react.useContext)(_store.ToolbarContext),
25
- progress = _useContext2.observables.progress;
27
+ _useContext2$observab = _useContext2.observables,
28
+ progress = _useContext2$observab.progress,
29
+ currentTool = _useContext2$observab.currentTool;
26
30
  var transI18n = (0, _i18n.useI18n)();
27
31
  var _useContext3 = (0, _react.useContext)(_context.BoardUIContext),
28
32
  _useContext3$observab = _useContext3.observables,
@@ -34,9 +38,11 @@ var Whiteboard = exports.Whiteboard = (0, _mobxReact.observer)(function () {
34
38
  handleClose = _useContext3.handleClose,
35
39
  handleOpen = _useContext3.handleOpen;
36
40
  var loading = connectionState === _fcrCore.FcrConnectionState.CONNECTING || connectionState === _fcrCore.FcrConnectionState.RECONNECTING;
41
+ var cursorClassname = "board-widget-cursor-".concat([_enums.FcrBoardToolType[currentTool || _enums.FcrBoardToolType.NONE]]);
42
+ var boardWidgetAppCls = (0, _classnames["default"])('board-widget-app', cursorClassname.toLowerCase());
37
43
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
38
44
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
39
- className: "board-widget-app",
45
+ className: boardWidgetAppCls,
40
46
  ref: handleBoardDomLoad
41
47
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
42
48
  className: "window-manager-collector",
@@ -9,23 +9,74 @@ import { FcrUIVideoWindowData } from '../type';
9
9
  import { FcrUIScreenShareProvider } from './screen-share-provider';
10
10
  import { FcrUIDeviceProvider } from './device-provider';
11
11
  export interface FcrUIAnnotationProvider {
12
+ /**
13
+ * 接收端属性,用于获取当前标注窗口的缩放比例
14
+ */
15
+ get scalcValue(): number;
16
+ /**
17
+ * 接收端方法,用于获取标注功能的 Control 对象
18
+ */
19
+ get annotationControl(): FcrAnnotationControl | undefined;
20
+ /**
21
+ * 接收端方法,用于获取标注窗口的 MainWindow 对象
22
+ */
23
+ get boardMainWindow(): FcrBoardMainWindow | undefined;
24
+ /**
25
+ * 接收端属性,用于获取当前共享窗口数据
26
+ */
27
+ get screenShareWindowData(): FcrUIVideoWindowData | undefined;
28
+ /**
29
+ * 接收端属性,用于获取当前标注启动状态
30
+ */
31
+ get annotationHasStart(): boolean;
32
+ /**
33
+ * 接收端属性,用于获取当前标注状态
34
+ */
35
+ get annotationState(): FcrAnnotationState;
36
+ /**
37
+ * 发起端状态,用于获取当前是否正在标注
38
+ */
12
39
  get annotating(): boolean;
40
+ /**
41
+ * 发起端数据,当前共享屏幕信息
42
+ */
13
43
  get currentShareInfo(): CurrentShareScreenTypes;
44
+ /**
45
+ * 发起端方法,用于打开关闭标注,由用户触发,此操切换标注工具栏打开状态合窗口的鼠标穿透模式
46
+ */
14
47
  toggleAnnotation(): void;
48
+ /**
49
+ * 发起端方法,启动标注窗口,在主窗口启动时调用
50
+ */
15
51
  openAnnotationWindow(): void;
52
+ /**
53
+ * 发起端方法,用于隐藏标注窗口,不是关闭
54
+ */
16
55
  hideAnnotationWindow(): void;
56
+ /**
57
+ * 发起端方法,用于设置当前共享屏幕信息
58
+ */
17
59
  setCurrentShareInfo(info: CurrentShareScreenTypes): void;
60
+ /**
61
+ * 发起端方法,用通知标注窗口更新当前共享屏幕信息
62
+ */
18
63
  setBoundsToAnnotationWindow(info?: CurrentShareScreenTypes): void;
19
- get annotationControl(): FcrAnnotationControl | undefined;
20
- get boardMainWindow(): FcrBoardMainWindow | undefined;
21
- get screenShareWindowData(): FcrUIVideoWindowData | undefined;
22
- get annotationState(): FcrAnnotationState;
23
- get annotationHasStart(): boolean;
64
+ /**
65
+ * 接收端方法,用于放大标注窗口
66
+ */
24
67
  zoomIn(): void;
68
+ /**
69
+ * 接收端方法,用于缩小标注窗口
70
+ */
25
71
  zoomOut(): void;
72
+ /**
73
+ * 接收端方法,用于设置标注窗口的缩放比例
74
+ */
26
75
  fullContainer(scalc: number): void;
76
+ /**
77
+ * 接收端方法,用于设置标注窗口的缩放比例
78
+ */
27
79
  setOriginScalc(): void;
28
- get scalcValue(): number;
29
80
  }
30
81
  export declare enum FcrAnnotationState {
31
82
  START = "start",
@@ -47,20 +98,19 @@ export declare class FcrUIAnnotationProviderImpl implements FcrUIAnnotationProvi
47
98
  private _shareScreenOwnerId;
48
99
  private _maxScalcValue;
49
100
  private _minScalcValue;
101
+ private _annotationObserver;
102
+ private _currentScreenShareOwnerCanStartAnnotation;
103
+ private _observer;
104
+ private get _localUser();
50
105
  accessor scalcValue: number;
51
106
  accessor annotationState: FcrAnnotationState;
52
107
  accessor annotating: boolean;
53
108
  accessor currentShareInfo: CurrentShareScreenTypes;
54
- private _annotationObserver;
55
- private _currentScreenShareOwnerCanStartAnnotation;
56
- private _observer;
57
- private _initAnnotationTransaction;
58
- constructor(_dialogProvider: FcrUIDialogProvider, _sharingProvider: FcrUISharingProvider, _memberDataSource: FcrUIMemberSharedDataSource, _videoWindowDataSource: FcrUIVideoWindowDataSource, _screenShareProvider: FcrUIScreenShareProvider, _deviceProvider: FcrUIDeviceProvider);
59
109
  get screenShareWindowData(): import("../shared-data-source/video-window").FcrUIVideoWindowDataImpl | undefined;
60
110
  get boardMainWindow(): FcrBoardMainWindow | undefined;
61
111
  get annotationControl(): FcrAnnotationControl | undefined;
62
112
  get annotationHasStart(): boolean;
63
- private get _localUser();
113
+ constructor(_dialogProvider: FcrUIDialogProvider, _sharingProvider: FcrUISharingProvider, _memberDataSource: FcrUIMemberSharedDataSource, _videoWindowDataSource: FcrUIVideoWindowDataSource, _screenShareProvider: FcrUIScreenShareProvider, _deviceProvider: FcrUIDeviceProvider);
64
114
  zoomIn(): void;
65
115
  zoomOut(): void;
66
116
  fullContainer(scalc: number): void;
@@ -74,4 +124,5 @@ export declare class FcrUIAnnotationProviderImpl implements FcrUIAnnotationProvi
74
124
  release(): void;
75
125
  private _openToolbar;
76
126
  private _closeToolbar;
127
+ private _initAnnotationTransaction;
77
128
  }
@@ -40,6 +40,8 @@ exports.FcrUIAnnotationProviderImpl = exports.FcrAnnotationState = void 0;
40
40
  require("core-js/modules/es.array.find.js");
41
41
  require("core-js/modules/es.array.for-each.js");
42
42
  require("core-js/modules/es.array.iterator.js");
43
+ require("core-js/modules/es.date.to-json.js");
44
+ require("core-js/modules/es.json.stringify.js");
43
45
  require("core-js/modules/es.object.to-string.js");
44
46
  require("core-js/modules/es.string.iterator.js");
45
47
  require("core-js/modules/es.weak-map.js");
@@ -106,19 +108,6 @@ var FcrUIAnnotationProviderImpl = exports.FcrUIAnnotationProviderImpl = /*#__PUR
106
108
  (0, _defineProperty2["default"])(this, "_shareScreenOwnerId", '');
107
109
  (0, _defineProperty2["default"])(this, "_maxScalcValue", 4);
108
110
  (0, _defineProperty2["default"])(this, "_minScalcValue", 1);
109
- _classPrivateFieldInitSpec(this, _A, _init_scalcValue(this, 1));
110
- _classPrivateFieldInitSpec(this, _B, _init_annotationState(this, FcrAnnotationState.END));
111
- _classPrivateFieldInitSpec(this, _C, _init_annotating(this, false));
112
- _classPrivateFieldInitSpec(this, _D, _init_currentShareInfo(this, {
113
- id: '',
114
- type: _type.AgoraRtcScreenCaptureType.SCREEN,
115
- bounds: {
116
- x: 0,
117
- y: 0,
118
- width: 0,
119
- height: 0
120
- }
121
- }));
122
111
  (0, _defineProperty2["default"])(this, "_annotationObserver", {
123
112
  onConnectionStateUpdated: function () {
124
113
  var _onConnectionStateUpdated = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(state) {
@@ -155,12 +144,27 @@ var FcrUIAnnotationProviderImpl = exports.FcrUIAnnotationProviderImpl = /*#__PUR
155
144
  }
156
145
  }
157
146
  });
147
+ _classPrivateFieldInitSpec(this, _A, _init_scalcValue(this, 1));
148
+ _classPrivateFieldInitSpec(this, _B, _init_annotationState(this, FcrAnnotationState.END));
149
+ _classPrivateFieldInitSpec(this, _C, _init_annotating(this, false));
150
+ _classPrivateFieldInitSpec(this, _D, _init_currentShareInfo(this, {
151
+ id: '',
152
+ type: _type.AgoraRtcScreenCaptureType.SCREEN,
153
+ bounds: {
154
+ x: 0,
155
+ y: 0,
156
+ width: 0,
157
+ height: 0
158
+ }
159
+ }));
158
160
  this._dialogProvider = _dialogProvider;
159
161
  this._sharingProvider = _sharingProvider;
160
162
  this._memberDataSource = _memberDataSource;
161
163
  this._videoWindowDataSource = _videoWindowDataSource;
162
164
  this._screenShareProvider = _screenShareProvider;
163
165
  this._deviceProvider = _deviceProvider;
166
+ //@ts-ignore
167
+ window._annotationProvider = this;
164
168
  this._sharingProvider.getSharingControl().addObserver(this._observer);
165
169
  setTimeout(function () {
166
170
  return _this.openAnnotationWindow();
@@ -171,6 +175,17 @@ var FcrUIAnnotationProviderImpl = exports.FcrUIAnnotationProviderImpl = /*#__PUR
171
175
  }
172
176
  }
173
177
  return (0, _createClass2["default"])(FcrUIAnnotationProviderImpl, [{
178
+ key: "_currentScreenShareOwnerCanStartAnnotation",
179
+ value: function _currentScreenShareOwnerCanStartAnnotation() {
180
+ var owner = this._screenShareProvider.getCurrentScreenSharingOwner();
181
+ return owner && owner.platform !== _type4.FcrPlatform.IOS;
182
+ }
183
+ }, {
184
+ key: "_localUser",
185
+ get: function get() {
186
+ return this._memberDataSource.localUser;
187
+ }
188
+ }, {
174
189
  key: "scalcValue",
175
190
  get: function get() {
176
191
  return _classPrivateFieldGet(_A, this);
@@ -202,23 +217,6 @@ var FcrUIAnnotationProviderImpl = exports.FcrUIAnnotationProviderImpl = /*#__PUR
202
217
  set: function set(v) {
203
218
  _classPrivateFieldSet(_D, this, v);
204
219
  }
205
- }, {
206
- key: "_currentScreenShareOwnerCanStartAnnotation",
207
- value: function _currentScreenShareOwnerCanStartAnnotation() {
208
- var owner = this._screenShareProvider.getCurrentScreenSharingOwner();
209
- return owner && owner.platform !== _type4.FcrPlatform.IOS;
210
- }
211
- }, {
212
- key: "_initAnnotationTransaction",
213
- value: function _initAnnotationTransaction(screenShareOwnerId) {
214
- this._annotationControl = this.getAnnotationControl();
215
- if (this._localUser.userId !== screenShareOwnerId) {
216
- if (this._annotationControl) {
217
- this._annotationControl.addObserver(this._annotationObserver);
218
- this._annotationControl.open();
219
- }
220
- }
221
- }
222
220
  }, {
223
221
  key: "screenShareWindowData",
224
222
  get: function get() {
@@ -239,13 +237,7 @@ var FcrUIAnnotationProviderImpl = exports.FcrUIAnnotationProviderImpl = /*#__PUR
239
237
  }, {
240
238
  key: "annotationHasStart",
241
239
  get: function get() {
242
- //return this.annotationState === FcrAnnotationState.START;
243
- return false;
244
- }
245
- }, {
246
- key: "_localUser",
247
- get: function get() {
248
- return this._memberDataSource.localUser;
240
+ return this.annotationState === FcrAnnotationState.START;
249
241
  }
250
242
  }, {
251
243
  key: "zoomIn",
@@ -285,6 +277,7 @@ var FcrUIAnnotationProviderImpl = exports.FcrUIAnnotationProviderImpl = /*#__PUR
285
277
  payload: true
286
278
  });
287
279
  this._closeToolbar();
280
+ this.logger.info('[Annotation] toggleAnnotation close toolbar, ignore mouse event true');
288
281
  } else {
289
282
  this.annotating = true;
290
283
  (0, _rendererEvent.sendEvent)({
@@ -292,6 +285,7 @@ var FcrUIAnnotationProviderImpl = exports.FcrUIAnnotationProviderImpl = /*#__PUR
292
285
  payload: false
293
286
  });
294
287
  this._openToolbar();
288
+ this.logger.info('[Annotation] toggleAnnotation open toolbar, ignore mouse event false');
295
289
  }
296
290
  case 1:
297
291
  case "end":
@@ -313,12 +307,12 @@ var FcrUIAnnotationProviderImpl = exports.FcrUIAnnotationProviderImpl = /*#__PUR
313
307
  key: "openAnnotationWindow",
314
308
  value: function openAnnotationWindow() {
315
309
  this._annotationDialogId = this._dialogProvider.openDialog(_constant.FcrUIDialogKey.ANNOTATION);
316
- this.logger.info('openedAnnotationWindow');
310
+ this.logger.info('[Annotation] openedAnnotationWindow');
317
311
  }
318
312
  }, {
319
313
  key: "hideAnnotationWindow",
320
314
  value: function hideAnnotationWindow() {
321
- this.logger.info('hideAnnotationWindow');
315
+ this.logger.info('[Annotation] hideAnnotationWindow');
322
316
  this.annotating = false;
323
317
  (0, _rendererEvent.sendEvent)({
324
318
  action: _type3.ToolbarEvents.CLEAN,
@@ -364,12 +358,17 @@ var FcrUIAnnotationProviderImpl = exports.FcrUIAnnotationProviderImpl = /*#__PUR
364
358
  if (win) {
365
359
  targetBounds = win.getBounds();
366
360
  }
361
+ // 当 mac 是分享的全屏应用的时候,通过 id 无法获取到正确的 bounds,因为本身全屏幕应用的尺寸就是屏幕的尺寸,所以可以直接取 info 的 bounds
362
+ if (!targetBounds) {
363
+ targetBounds = (info === null || info === void 0 ? void 0 : info.bounds) || this.currentShareInfo.bounds || null;
364
+ }
367
365
  }
366
+ this.logger.info("[Annotation][setBoundsToAnnotationWindow]: targetBounds: ".concat(JSON.stringify(targetBounds)));
368
367
  (0, _rendererEvent.sendEvent)({
369
368
  action: _constant.FcrUIRendererEventAction.SET_CURRENT_SHARE_SCREEN_BOUNDS,
370
369
  payload: targetBounds
371
370
  });
372
- case 3:
371
+ case 4:
373
372
  case "end":
374
373
  return _context3.stop();
375
374
  }
@@ -399,10 +398,21 @@ var FcrUIAnnotationProviderImpl = exports.FcrUIAnnotationProviderImpl = /*#__PUR
399
398
  this._dialogProvider.closeDialog(this._annotationToolDialogId);
400
399
  this._annotationToolDialogId = '';
401
400
  }
401
+ }, {
402
+ key: "_initAnnotationTransaction",
403
+ value: function _initAnnotationTransaction(screenShareOwnerId) {
404
+ this._annotationControl = this.getAnnotationControl();
405
+ if (this._localUser.userId !== screenShareOwnerId) {
406
+ if (this._annotationControl) {
407
+ this._annotationControl.addObserver(this._annotationObserver);
408
+ this._annotationControl.open();
409
+ }
410
+ }
411
+ }
402
412
  }]);
403
413
  }();
404
414
  _FcrUIAnnotationProviderImpl = FcrUIAnnotationProviderImpl;
405
- var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_FcrUIAnnotationProviderImpl, [[_mobx.observable, 1, "scalcValue"], [_mobx.observable, 1, "annotationState"], [_mobx.observable, 1, "annotating"], [_mobx.observable, 1, "currentShareInfo"], [_mobx.computed, 3, "screenShareWindowData"], [_zoomInDecs, 18, "zoomIn"], [_zoomOutDecs, 18, "zoomOut"], [_fullContainerDecs, 18, "fullContainer"], [_setOriginScalcDecs, 18, "setOriginScalc"], [_toggleAnnotationDecs, 18, "toggleAnnotation"], [_imports.bound, 2, "getAnnotationControl"], [_openAnnotationWindowDecs, 18, "openAnnotationWindow"], [_hideAnnotationWindowDecs, 18, "hideAnnotationWindow"], [_setCurrentShareInfoDecs, 18, "setCurrentShareInfo"], [_imports.bound, 2, "setBoundsToAnnotationWindow"], [_imports.bound, 2, "release"], [_openToolbarDecs, 18, "_openToolbar"], [_closeToolbarDecs, 18, "_closeToolbar"]], []).e, 5);
415
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_FcrUIAnnotationProviderImpl, [[_mobx.observable, 1, "scalcValue"], [_mobx.observable, 1, "annotationState"], [_mobx.observable, 1, "annotating"], [_mobx.observable, 1, "currentShareInfo"], [_mobx.computed, 3, "screenShareWindowData"], [_zoomInDecs, 18, "zoomIn"], [_zoomOutDecs, 18, "zoomOut"], [_fullContainerDecs, 18, "fullContainer"], [_setOriginScalcDecs, 18, "setOriginScalc"], [_toggleAnnotationDecs, 18, "toggleAnnotation"], [_imports.bound, 2, "getAnnotationControl"], [_openAnnotationWindowDecs, 18, "openAnnotationWindow"], [_hideAnnotationWindowDecs, 18, "hideAnnotationWindow"], [_setCurrentShareInfoDecs, 18, "setCurrentShareInfo"], [_imports.bound, 2, "setBoundsToAnnotationWindow"], [_imports.bound, 2, "release"], [_openToolbarDecs, 18, "_openToolbar"], [_closeToolbarDecs, 18, "_closeToolbar"], [_imports.bound, 2, "_initAnnotationTransaction"]], []).e, 5);
406
416
  _init_scalcValue = _applyDecs$e[0];
407
417
  _init_annotationState = _applyDecs$e[1];
408
418
  _init_annotating = _applyDecs$e[2];
@@ -6,7 +6,7 @@ import { VirtualBackground } from '../modules/device-pretest/assets/virtual-back
6
6
  import { FcrUIVideoEffectType, FcrUIBeautyKey, FcrUIConnectType, FcrUIResource, FcrUIDeviceObserver, FcrUIMediaConfig, FcrUIAiDenoiseLevel, FcrUiResourceType } from '../type';
7
7
  import { FcrUIEventProvider } from './event-provider';
8
8
  import { BeautyKey } from '../modules/setting/store';
9
- import { FcrUILocalStorageProviderImpl } from './local-storage-provider';
9
+ import { FcrUIUserSettingStorageProviderImpl } from './user-setting-storage-provider';
10
10
  export declare const DEFAULT_DEVICE_ID = "default";
11
11
  export interface FcrUIDeviceProvider {
12
12
  /**
@@ -273,7 +273,7 @@ export declare class FcrUIDeviceProviderImpl implements FcrUIDeviceProvider {
273
273
  private _eventProvider;
274
274
  private _mediaControl;
275
275
  private _mediaConfig;
276
- private _localStorageProvider;
276
+ private _userSettingStorageProvider;
277
277
  protected logger: import("agora-foundation/lib/logger").Logger;
278
278
  private _observable;
279
279
  private _listeners;
@@ -339,7 +339,7 @@ export declare class FcrUIDeviceProviderImpl implements FcrUIDeviceProvider {
339
339
  };
340
340
  get isAudioConnected(): boolean;
341
341
  get shouldEnableMicBeforeSession(): boolean;
342
- constructor(_eventProvider: FcrUIEventProvider, _mediaControl: FcrDesktopMediaControl, _mediaConfig: FcrUIMediaConfig, _localStorageProvider: FcrUILocalStorageProviderImpl);
342
+ constructor(_eventProvider: FcrUIEventProvider, _mediaControl: FcrDesktopMediaControl, _mediaConfig: FcrUIMediaConfig, _userSettingStorageProvider: FcrUIUserSettingStorageProviderImpl);
343
343
  getScreenTrack(id: string): FcrScreenTrack;
344
344
  getLoopbackTrack(id: string): FcrLoopbackTrack;
345
345
  checkLoopbackDevice(): Promise<number>;