浏览代码

Avoids multiple dialog when showing lock attempt errors.

j8
damencho 8 年前
父节点
当前提交
7aa47647f0
共有 1 个文件被更改,包括 14 次插入4 次删除
  1. 14
    4
      modules/UI/authentication/RoomLocker.js

+ 14
- 4
modules/UI/authentication/RoomLocker.js 查看文件

@@ -116,6 +116,7 @@ const ConferenceErrors = JitsiMeetJS.errors.conference;
116 116
  */
117 117
 export default function createRoomLocker (room) {
118 118
     let password;
119
+    let dialog = null;
119 120
 
120 121
     function lock (newPass) {
121 122
         return room.lock(newPass).then(function () {
@@ -196,12 +197,21 @@ export default function createRoomLocker (room) {
196 197
          * Show notification that to set/remove password user must be moderator.
197 198
          */
198 199
         notifyModeratorRequired () {
200
+            if (dialog)
201
+                return;
202
+
203
+            let closeCallback = function () {
204
+                dialog = null;
205
+            };
206
+
199 207
             if (password) {
200
-                APP.UI.messageHandler
201
-                    .openMessageDialog(null, "dialog.passwordError");
208
+                dialog = APP.UI.messageHandler
209
+                    .openMessageDialog(null, "dialog.passwordError",
210
+                        null, null, closeCallback);
202 211
             } else {
203
-                APP.UI.messageHandler
204
-                    .openMessageDialog(null, "dialog.passwordError2");
212
+                dialog = APP.UI.messageHandler
213
+                    .openMessageDialog(null, "dialog.passwordError2",
214
+                        null, null, closeCallback);
205 215
             }
206 216
         }
207 217
     };

正在加载...
取消
保存