From be57b1fae72db250181ab38152dd29afb3c017f6 Mon Sep 17 00:00:00 2001 From: Julia Radzhabova Date: Mon, 28 Jun 2021 21:10:28 +0300 Subject: [PATCH 1/2] Disable language button on disconnect --- apps/documenteditor/main/app/view/Statusbar.js | 1 + apps/presentationeditor/main/app/view/Statusbar.js | 1 + 2 files changed, 2 insertions(+) diff --git a/apps/documenteditor/main/app/view/Statusbar.js b/apps/documenteditor/main/app/view/Statusbar.js index 1d9ded350d..55b69d8c3e 100644 --- a/apps/documenteditor/main/app/view/Statusbar.js +++ b/apps/documenteditor/main/app/view/Statusbar.js @@ -322,6 +322,7 @@ define([ if (this.api) { this.api.asc_registerCallback('asc_onCountPages', _.bind(_onCountPages, this)); this.api.asc_registerCallback('asc_onCurrentPage', _.bind(_onCurrentPage, this)); + this.api.asc_registerCallback('asc_onCoAuthoringDisconnect',_.bind(this.onApiCoAuthoringDisconnect, this)); Common.NotificationCenter.on('api:disconnect', _.bind(this.onApiCoAuthoringDisconnect, this)); } diff --git a/apps/presentationeditor/main/app/view/Statusbar.js b/apps/presentationeditor/main/app/view/Statusbar.js index e6b427b7f2..676d3f347e 100644 --- a/apps/presentationeditor/main/app/view/Statusbar.js +++ b/apps/presentationeditor/main/app/view/Statusbar.js @@ -301,6 +301,7 @@ define([ this.api.asc_registerCallback('asc_onCountPages', _.bind(_onCountPages, this)); this.api.asc_registerCallback('asc_onCurrentPage', _.bind(_onCurrentPage, this)); this.api.asc_registerCallback('asc_onFocusObject', _.bind(this.onApiFocusObject, this)); + this.api.asc_registerCallback('asc_onCoAuthoringDisconnect',_.bind(this.onApiCoAuthoringDisconnect, this)); Common.NotificationCenter.on('api:disconnect', _.bind(this.onApiCoAuthoringDisconnect, this)); } From 97c7708d0dabb81adb2e1c969896db722cdabed0 Mon Sep 17 00:00:00 2001 From: Julia Radzhabova Date: Mon, 28 Jun 2021 22:17:56 +0300 Subject: [PATCH 2/2] Disable save, undo/redo on disconnect --- apps/documenteditor/main/app/view/Toolbar.js | 4 ++++ apps/presentationeditor/main/app/view/Toolbar.js | 3 +++ apps/spreadsheeteditor/main/app/view/Toolbar.js | 5 ++++- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/apps/documenteditor/main/app/view/Toolbar.js b/apps/documenteditor/main/app/view/Toolbar.js index 76b0d9fe5a..aaa31a73cf 100644 --- a/apps/documenteditor/main/app/view/Toolbar.js +++ b/apps/documenteditor/main/app/view/Toolbar.js @@ -2082,6 +2082,10 @@ define([ setMode: function (mode) { if (mode.isDisconnected) { this.btnSave.setDisabled(true); + this.btnUndo.setDisabled(true); + this.btnRedo.setDisabled(true); + if ( this.synchTooltip ) + this.synchTooltip.hide(); if (!mode.enableDownload) this.btnPrint.setDisabled(true); } diff --git a/apps/presentationeditor/main/app/view/Toolbar.js b/apps/presentationeditor/main/app/view/Toolbar.js index 2cfc5e3534..155d277bed 100644 --- a/apps/presentationeditor/main/app/view/Toolbar.js +++ b/apps/presentationeditor/main/app/view/Toolbar.js @@ -1398,6 +1398,9 @@ define([ setMode: function (mode) { if (mode.isDisconnected) { this.lockToolbar(PE.enumLock.lostConnect, true); + this.lockToolbar( PE.enumLock.lostConnect, true, {array:[this.btnUndo,this.btnRedo,this.btnSave]} ); + if ( this.synchTooltip ) + this.synchTooltip.hide(); if (!mode.enableDownload) this.lockToolbar(PE.enumLock.cantPrint, true, {array: [this.btnPrint]}); } else diff --git a/apps/spreadsheeteditor/main/app/view/Toolbar.js b/apps/spreadsheeteditor/main/app/view/Toolbar.js index 54e6b0f389..fb482ea8d7 100644 --- a/apps/spreadsheeteditor/main/app/view/Toolbar.js +++ b/apps/spreadsheeteditor/main/app/view/Toolbar.js @@ -396,6 +396,7 @@ define([ id : 'id-toolbar-btn-save', cls : 'btn-toolbar', iconCls : 'toolbar__icon no-mask ' + me.btnSaveCls, + lock : [_set.lostConnect], signals : ['disabled'] }); me.btnCollabChanges = me.btnSave; @@ -2213,7 +2214,9 @@ define([ if (mode.isDisconnected) { this.lockToolbar( SSE.enumLock.lostConnect, true ); this.lockToolbar( SSE.enumLock.lostConnect, true, - {array:[this.btnEditChart, this.btnEditChartData, this.btnEditChartType, this.btnUndo,this.btnRedo]} ); + {array:[this.btnEditChart, this.btnEditChartData, this.btnEditChartType, this.btnUndo,this.btnRedo,this.btnSave]} ); + if ( this.synchTooltip ) + this.synchTooltip.hide(); if (!mode.enableDownload) this.lockToolbar(SSE.enumLock.cantPrint, true, {array: [this.btnPrint]}); } else {