From 19c72eea5c8fe30a86f44de5d509b6747558d9dc Mon Sep 17 00:00:00 2001 From: Julia Radzhabova Date: Fri, 11 Mar 2022 21:40:53 +0300 Subject: [PATCH] [PE][SSE] Don't show disconnect message on window close/reload --- apps/presentationeditor/main/app/controller/Main.js | 10 ++++++++-- apps/spreadsheeteditor/main/app/controller/Main.js | 10 ++++++++-- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/apps/presentationeditor/main/app/controller/Main.js b/apps/presentationeditor/main/app/controller/Main.js index c5e6085a0..e40ffc06e 100644 --- a/apps/presentationeditor/main/app/controller/Main.js +++ b/apps/presentationeditor/main/app/controller/Main.js @@ -629,6 +629,7 @@ define([ this.synchronizeChanges(); if ( id == Asc.c_oAscAsyncAction['Disconnect']) { + this._state.timerDisconnect && clearTimeout(this._state.timerDisconnect); this.disableEditing(false, true); this.getApplication().getController('Statusbar').hideDisconnectTip(); this.getApplication().getController('Statusbar').setStatusCaption(this.textReconnect); @@ -726,7 +727,9 @@ define([ this.disableEditing(true, true); var me = this; statusCallback = function() { - me.getApplication().getController('Statusbar').showDisconnectTip(); + me._state.timerDisconnect = setTimeout(function(){ + me.getApplication().getController('Statusbar').showDisconnectTip(); + }, me._state.unloadTimer || 0); }; break; @@ -1698,12 +1701,15 @@ define([ if (this.api.isDocumentModified()) { var me = this; this.api.asc_stopSaving(); + this._state.unloadTimer = 1000; this.continueSavingTimer = window.setTimeout(function() { me.api.asc_continueSaving(); + me._state.unloadTimer = 0; }, 500); return this.leavePageText; - } + } else + this._state.unloadTimer = 10000; }, onUnload: function() { diff --git a/apps/spreadsheeteditor/main/app/controller/Main.js b/apps/spreadsheeteditor/main/app/controller/Main.js index 6a093031b..3d0ebd2dc 100644 --- a/apps/spreadsheeteditor/main/app/controller/Main.js +++ b/apps/spreadsheeteditor/main/app/controller/Main.js @@ -714,6 +714,7 @@ define([ this.onEditComplete(this.loadMask, {restorefocus:true}); } if ( id == Asc.c_oAscAsyncAction['Disconnect']) { + this._state.timerDisconnect && clearTimeout(this._state.timerDisconnect); this.disableEditing(false, true); this.getApplication().getController('Statusbar').hideDisconnectTip(); this.getApplication().getController('Statusbar').setStatusCaption(this.textReconnect); @@ -800,7 +801,9 @@ define([ this.disableEditing(true, true); var me = this; statusCallback = function() { - me.getApplication().getController('Statusbar').showDisconnectTip(); + me._state.timerDisconnect = setTimeout(function(){ + me.getApplication().getController('Statusbar').showDisconnectTip(); + }, me._state.unloadTimer || 0); }; break; @@ -2067,12 +2070,15 @@ define([ if (isEdit && this.api.asc_isDocumentModified()) { var me = this; this.api.asc_stopSaving(); + this._state.unloadTimer = 1000; this.continueSavingTimer = window.setTimeout(function() { me.api.asc_continueSaving(); + me._state.unloadTimer = 0; }, 500); return this.leavePageText; - } + } else + this._state.unloadTimer = 10000; }, onUnload: function() {