diff --git a/apps/common/main/lib/controller/ExternalDiagramEditor.js b/apps/common/main/lib/controller/ExternalDiagramEditor.js index ac1f0fc14..ad90550a1 100644 --- a/apps/common/main/lib/controller/ExternalDiagramEditor.js +++ b/apps/common/main/lib/controller/ExternalDiagramEditor.js @@ -142,7 +142,6 @@ define([ if (this.isHandlerCalled) return; this.isHandlerCalled = true; externalEditor && externalEditor.serviceCommand('queryClose',{mr:result}); - return true; }, setChartData: function() { @@ -210,6 +209,7 @@ define([ } this.diagramEditorView.hide(); } + this.isHandlerCalled = false; } else if (eventData.type == "processMouse") { if (eventData.data.event == 'mouse:up') { diff --git a/apps/common/main/lib/view/ExternalDiagramEditor.js b/apps/common/main/lib/view/ExternalDiagramEditor.js index cdc4d8936..511fe6585 100644 --- a/apps/common/main/lib/view/ExternalDiagramEditor.js +++ b/apps/common/main/lib/view/ExternalDiagramEditor.js @@ -111,15 +111,18 @@ define([ }, onDlgBtnClick: function(event) { - var state = event.currentTarget.attributes['result'].value; - if ( this.handler && this.handler.call(this, state) ) + if ( this.handler ) { + this.handler.call(this, event.currentTarget.attributes['result'].value); return; + } this.hide(); }, onToolClose: function() { - if ( this.handler && this.handler.call(this, 'cancel') ) + if ( this.handler ) { + this.handler.call(this, 'cancel'); return; + } this.hide(); }, diff --git a/apps/spreadsheeteditor/main/app/controller/Main.js b/apps/spreadsheeteditor/main/app/controller/Main.js index 6945654ce..fdf540b10 100644 --- a/apps/spreadsheeteditor/main/app/controller/Main.js +++ b/apps/spreadsheeteditor/main/app/controller/Main.js @@ -1734,7 +1734,8 @@ define([ this.api.asc_closeCellEditor(); Common.UI.Menu.Manager.hideAll(); Common.Gateway.internalMessage('canClose', {mr:data.data.mr, answer: true}); - } + } else + Common.Gateway.internalMessage('canClose', {answer: false}); break; case 'window:drag': this.isDiagramDrag = data.data;