From 23d3d7fb8a043be8eaa04bd3fbdec7d9d693e496 Mon Sep 17 00:00:00 2001 From: Julia Radzhabova Date: Wed, 25 Mar 2020 18:03:35 +0300 Subject: [PATCH] [SSE] Fix Bug 44904 --- .../main/app/controller/DocumentHolder.js | 39 ++++++++++--------- 1 file changed, 21 insertions(+), 18 deletions(-) diff --git a/apps/spreadsheeteditor/main/app/controller/DocumentHolder.js b/apps/spreadsheeteditor/main/app/controller/DocumentHolder.js index b955561019..a523962a06 100644 --- a/apps/spreadsheeteditor/main/app/controller/DocumentHolder.js +++ b/apps/spreadsheeteditor/main/app/controller/DocumentHolder.js @@ -1295,8 +1295,9 @@ define([ me.tooltips.filter.text = ''; me.tooltips.filter.isHidden = true; } - if (me.permissions.isEdit && !me.dlgFilter) { - me.dlgFilter = new SSE.Views.AutoFilterDialog({api: this.api}).on({ + if (me.permissions.isEdit) { + if (!me.dlgFilter) { + me.dlgFilter = new SSE.Views.AutoFilterDialog({api: this.api}).on({ 'close': function () { if (me.api) { me.api.asc_enableKeyEvents(true); @@ -1305,23 +1306,25 @@ define([ } }); - if (me.api) { - me.api.asc_enableKeyEvents(false); - } + if (me.api) { + me.api.asc_enableKeyEvents(false); + } - Common.UI.Menu.Manager.hideAll(); - me.dlgFilter.setSettings(config); - var offset = me.documentHolder.cmpEl.offset(), - rect = config.asc_getCellCoord(), - x = rect.asc_getX() + rect.asc_getWidth() +offset.left, - y = rect.asc_getY() + rect.asc_getHeight() + offset.top; - var docwidth = Common.Utils.innerWidth(), - docheight = Common.Utils.innerHeight(); - if (x+me.dlgFilter.options.width > docwidth) - x = docwidth - me.dlgFilter.options.width - 5; - if (y+me.dlgFilter.options.height > docheight) - y = docheight - me.dlgFilter.options.height - 5; - me.dlgFilter.show(x, y); + Common.UI.Menu.Manager.hideAll(); + me.dlgFilter.setSettings(config); + var offset = me.documentHolder.cmpEl.offset(), + rect = config.asc_getCellCoord(), + x = rect.asc_getX() + rect.asc_getWidth() +offset.left, + y = rect.asc_getY() + rect.asc_getHeight() + offset.top; + var docwidth = Common.Utils.innerWidth(), + docheight = Common.Utils.innerHeight(); + if (x+me.dlgFilter.options.width > docwidth) + x = docwidth - me.dlgFilter.options.width - 5; + if (y+me.dlgFilter.options.height > docheight) + y = docheight - me.dlgFilter.options.height - 5; + me.dlgFilter.show(x, y); + } else + me.dlgFilter.close(); } },