From 6700bb1d7b15ca0d8c52254cbbef2487f36275f8 Mon Sep 17 00:00:00 2001 From: "Julia.Svinareva" Date: Sat, 1 Jun 2024 21:22:21 +0300 Subject: [PATCH] [PE] Slide master mode: lock comments --- apps/common/main/lib/controller/ReviewChanges.js | 7 +++++++ apps/common/main/lib/view/ReviewChanges.js | 4 ++-- .../main/app/controller/LeftMenu.js | 12 +++++++++++- .../main/app/controller/Toolbar.js | 4 +++- apps/presentationeditor/main/app/view/Toolbar.js | 2 ++ 5 files changed, 25 insertions(+), 4 deletions(-) diff --git a/apps/common/main/lib/controller/ReviewChanges.js b/apps/common/main/lib/controller/ReviewChanges.js index 56aa21ec21..feb001e52e 100644 --- a/apps/common/main/lib/controller/ReviewChanges.js +++ b/apps/common/main/lib/controller/ReviewChanges.js @@ -95,6 +95,9 @@ define([ 'reviewchange:reject': _.bind(this.onRejectClick, this), 'reviewchange:delete': _.bind(this.onDeleteClick, this), 'reviewchange:goto': _.bind(this.onGotoClick, this) + }, + 'ViewTab': { + 'viewmode:change': _.bind(this.onChangeViewMode, this) } }); }, @@ -1172,6 +1175,10 @@ define([ this.view && this.view.btnMailRecepients && Common.Utils.lockControls(Common.enumLock.mmergeLock, true, {array: [this.view.btnMailRecepients]}); }, + onChangeViewMode: function (mode) { + this.lockToolbar(Common.enumLock.slideMasterMode, mode==='master'); + }, + textInserted: 'Inserted:', textDeleted: 'Deleted:', textParaInserted: 'Paragraph Inserted ', diff --git a/apps/common/main/lib/view/ReviewChanges.js b/apps/common/main/lib/view/ReviewChanges.js index 0eec9069dc..06df7d7d22 100644 --- a/apps/common/main/lib/view/ReviewChanges.js +++ b/apps/common/main/lib/view/ReviewChanges.js @@ -486,7 +486,7 @@ define([ caption: this.txtCommentRemove, split: true, iconCls: 'toolbar__icon btn-rem-comment', - lock: [_set.previewReviewMode, _set.viewFormMode, _set.hideComments, _set['Objects'], _set.lostConnect, _set.docLockView, _set.docLockForms, _set.viewMode], + lock: [_set.previewReviewMode, _set.viewFormMode, _set.hideComments, _set['Objects'], _set.lostConnect, _set.docLockView, _set.docLockForms, _set.viewMode, _set.slideMasterMode], dataHint: '1', dataHintDirection: 'bottom', dataHintOffset: 'small' @@ -497,7 +497,7 @@ define([ caption: this.txtCommentResolve, split: true, iconCls: 'toolbar__icon btn-resolve-all', - lock: [_set.previewReviewMode, _set.viewFormMode, _set.hideComments, _set['Objects'], _set.lostConnect, _set.docLockView, _set.docLockForms, _set.viewMode], + lock: [_set.previewReviewMode, _set.viewFormMode, _set.hideComments, _set['Objects'], _set.lostConnect, _set.docLockView, _set.docLockForms, _set.viewMode, _set.slideMasterMode], dataHint: '1', dataHintDirection: 'bottom', dataHintOffset: 'small' diff --git a/apps/presentationeditor/main/app/controller/LeftMenu.js b/apps/presentationeditor/main/app/controller/LeftMenu.js index 1be43fb805..8e40f1e077 100644 --- a/apps/presentationeditor/main/app/controller/LeftMenu.js +++ b/apps/presentationeditor/main/app/controller/LeftMenu.js @@ -109,7 +109,8 @@ define([ 'search:show': _.bind(this.onShowHideSearch, this) }, 'ViewTab': { - 'leftmenu:hide': _.bind(this.onLeftMenuHide, this) + 'leftmenu:hide': _.bind(this.onLeftMenuHide, this), + 'viewmode:change': _.bind(this.onChangeViewMode, this) } }); Common.NotificationCenter.on('leftmenu:change', _.bind(this.onMenuChange, this)); @@ -830,6 +831,15 @@ define([ this.clickMenuFileItem(null, 'print'); }, + onChangeViewMode: function (mode) { + if (mode === 'master') { + if (this.leftMenu.btnComments && this.leftMenu.btnComments.pressed) { + this.leftMenu.close(); + } + } + this.leftMenu.btnComments.setDisabled(mode === 'master'); + }, + textNoTextFound : 'Text not found', newDocumentTitle : 'Unnamed document', requestEditRightsText : 'Requesting editing rights...', diff --git a/apps/presentationeditor/main/app/controller/Toolbar.js b/apps/presentationeditor/main/app/controller/Toolbar.js index 36403e9fbb..3ecdef82ee 100644 --- a/apps/presentationeditor/main/app/controller/Toolbar.js +++ b/apps/presentationeditor/main/app/controller/Toolbar.js @@ -2820,7 +2820,7 @@ define([ this.btnsComment = []; if ( config.canCoAuthoring && config.canComments ) { var _set = Common.enumLock; - this.btnsComment = Common.Utils.injectButtons(this.toolbar.$el.find('.slot-comment'), 'tlbtn-addcomment-', 'toolbar__icon btn-add-comment', me.toolbar.capBtnComment, [_set.lostConnect, _set.noSlides], undefined, undefined, undefined, '1', 'bottom', 'small'); + this.btnsComment = Common.Utils.injectButtons(this.toolbar.$el.find('.slot-comment'), 'tlbtn-addcomment-', 'toolbar__icon btn-add-comment', me.toolbar.capBtnComment, [_set.lostConnect, _set.noSlides, _set.slideMasterMode], undefined, undefined, undefined, '1', 'bottom', 'small'); if ( this.btnsComment.length ) { var _comments = PE.getController('Common.Controllers.Comments').getView(); @@ -2966,6 +2966,8 @@ define([ onChangeViewMode: function (mode) { // master or normal this.toolbar.$el.find('.master-slide-mode')[mode==='master'?'show':'hide'](); this.toolbar.$el.find('.normal-mode')[mode==='normal'?'show':'hide'](); + this.toolbar.lockToolbar(Common.enumLock.slideMasterMode, mode==='master', { array: this.btnsComment }); + mode==='master' && this.toolbar.setTab('ins'); }, diff --git a/apps/presentationeditor/main/app/view/Toolbar.js b/apps/presentationeditor/main/app/view/Toolbar.js index 6a3535c6ab..169b451e3e 100644 --- a/apps/presentationeditor/main/app/view/Toolbar.js +++ b/apps/presentationeditor/main/app/view/Toolbar.js @@ -103,6 +103,8 @@ define([ copyLock: 'can-copy', fileMenuOpened: 'file-menu-opened', noParagraphObject: 'no-paragraph-obj', + inSlideMaster: 'in-slide-master', + slideMasterMode: 'slide-master-mode' }; for (var key in enumLock) { if (enumLock.hasOwnProperty(key)) {