From 8902dcbcc48b6a76168882a856111237f13e60ea Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Sat, 21 Nov 2015 18:05:26 +0100 Subject: [PATCH] WEBUI: do not allow to open multiple dialog windows, fixes #3184 --- src/webui/static/app/extensions.js | 5 +++++ src/webui/static/app/tvheadend.js | 1 + 2 files changed, 6 insertions(+) diff --git a/src/webui/static/app/extensions.js b/src/webui/static/app/extensions.js index 1a58dbd34..ef4f5b4ca 100644 --- a/src/webui/static/app/extensions.js +++ b/src/webui/static/app/extensions.js @@ -1757,11 +1757,16 @@ Ext.ux.Window = Ext.extend(Ext.Window, { Ext.EventManager.onWindowResize(this.keepItVisible, this, [true]); this.originalWidth = 0; this.originalHeight = 0; + /* exclusive window */ + if (tvheadend.dialog) + tvheadend.dialog.close(); + tvheadend.dialog = this; }, beforeDestroy : function() { Ext.EventManager.removeResizeListener(this.keepItVisible, this); Ext.Window.superclass.beforeDestroy.call(this); + tvheadend.dialog = null; }, keepItVisible : function(resize) { diff --git a/src/webui/static/app/tvheadend.js b/src/webui/static/app/tvheadend.js index f36d058ea..304455b8f 100644 --- a/src/webui/static/app/tvheadend.js +++ b/src/webui/static/app/tvheadend.js @@ -2,6 +2,7 @@ tvheadend.dynamic = true; tvheadend.accessupdate = null; tvheadend.capabilities = null; tvheadend.admin = false; +tvheadend.dialog = null; tvheadend.cookieProvider = new Ext.state.CookieProvider({ // 7 days from now -- 2.47.3