[DE] Changes for fast co-editing mode when count of users>2: always send ' onDocumentStateChange' event , draw '*' in the document caption while user is editing document.
This commit is contained in:
parent
ea9c74f08f
commit
65b7e8722b
|
@ -275,6 +275,7 @@ define([
|
||||||
this.documentCaption = this.options.documentCaption;
|
this.documentCaption = this.options.documentCaption;
|
||||||
this.canBack = this.options.canBack;
|
this.canBack = this.options.canBack;
|
||||||
this.branding = this.options.customization;
|
this.branding = this.options.customization;
|
||||||
|
this.isModified = false;
|
||||||
|
|
||||||
me.btnGoBack = new Common.UI.Button({
|
me.btnGoBack = new Common.UI.Button({
|
||||||
id: 'btn-goback',
|
id: 'btn-goback',
|
||||||
|
@ -332,7 +333,7 @@ define([
|
||||||
Common.Utils.String.htmlEncode(this.documentCaption) );
|
Common.Utils.String.htmlEncode(this.documentCaption) );
|
||||||
}
|
}
|
||||||
|
|
||||||
this.labelDocName = $html.find('#doc-name');
|
this.labelDocName = $html.find('#rib-doc-name');
|
||||||
$userList = $html.find('.cousers-list');
|
$userList = $html.find('.cousers-list');
|
||||||
$panelUsers = $html.find('.box-cousers');
|
$panelUsers = $html.find('.box-cousers');
|
||||||
$btnUsers = $html.find('.btn-users');
|
$btnUsers = $html.find('.btn-users');
|
||||||
|
@ -375,10 +376,11 @@ define([
|
||||||
return this.headerCaption;
|
return this.headerCaption;
|
||||||
},
|
},
|
||||||
|
|
||||||
setDocumentCaption: function (value, applyOnly) {
|
setDocumentCaption: function(value) {
|
||||||
!value && (value = '');
|
!value && (value = '');
|
||||||
|
|
||||||
this.documentCaption = value;
|
this.documentCaption = value;
|
||||||
|
this.isModified && (value += '*');
|
||||||
if ( this.labelDocName )
|
if ( this.labelDocName )
|
||||||
this.labelDocName.html(Common.Utils.String.htmlEncode(value));
|
this.labelDocName.html(Common.Utils.String.htmlEncode(value));
|
||||||
|
|
||||||
|
@ -390,6 +392,8 @@ define([
|
||||||
},
|
},
|
||||||
|
|
||||||
setDocumentChanged: function (changed) {
|
setDocumentChanged: function (changed) {
|
||||||
|
this.isModified = changed;
|
||||||
|
|
||||||
var _name = Common.Utils.String.htmlEncode(this.documentCaption);
|
var _name = Common.Utils.String.htmlEncode(this.documentCaption);
|
||||||
changed && (_name += '*');
|
changed && (_name += '*');
|
||||||
|
|
||||||
|
|
|
@ -104,7 +104,7 @@ define([
|
||||||
weakCompare : function(obj1, obj2){return obj1.type === obj2.type;}
|
weakCompare : function(obj1, obj2){return obj1.type === obj2.type;}
|
||||||
});
|
});
|
||||||
|
|
||||||
this._state = {isDisconnected: false, usersCount: 1, fastCoauth: true, startModifyDocument: true, lostEditingRights: false, licenseWarning: false};
|
this._state = {isDisconnected: false, usersCount: 1, fastCoauth: true, lostEditingRights: false, licenseWarning: false};
|
||||||
|
|
||||||
// Initialize viewport
|
// Initialize viewport
|
||||||
|
|
||||||
|
@ -1364,33 +1364,32 @@ define([
|
||||||
title = headerView.getDocumentCaption() + ' - ' + title;
|
title = headerView.getDocumentCaption() + ' - ' + title;
|
||||||
|
|
||||||
if (isModified) {
|
if (isModified) {
|
||||||
if (!_.isUndefined(title) && (!this._state.fastCoauth || this._state.usersCount<2 )) {
|
clearTimeout(this._state.timerCaption);
|
||||||
|
if (!_.isUndefined(title)) {
|
||||||
title = '* ' + title;
|
title = '* ' + title;
|
||||||
headerView.setDocumentChanged(true);
|
headerView.setDocumentChanged(true);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
if (this._state.fastCoauth && this._state.usersCount>1) {
|
||||||
|
this._state.timerCaption = setTimeout(function () {
|
||||||
|
headerView.setDocumentChanged(false);
|
||||||
|
}, 500);
|
||||||
|
} else
|
||||||
headerView.setDocumentChanged(false);
|
headerView.setDocumentChanged(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (window.document.title != title)
|
if (window.document.title != title)
|
||||||
window.document.title = title;
|
window.document.title = title;
|
||||||
|
|
||||||
if (!this._state.fastCoauth || this._state.usersCount<2 ) {
|
|
||||||
Common.Gateway.setDocumentModified(isModified);
|
Common.Gateway.setDocumentModified(isModified);
|
||||||
if (isModified)
|
if (isModified && (!this._state.fastCoauth || this._state.usersCount<2))
|
||||||
this.getApplication().getController('Statusbar').setStatusCaption('', true);
|
this.getApplication().getController('Statusbar').setStatusCaption('', true);
|
||||||
} else if ( this._state.startModifyDocument!==undefined && this._state.startModifyDocument === isModified){
|
|
||||||
Common.Gateway.setDocumentModified(isModified);
|
|
||||||
this._state.startModifyDocument = (this._state.startModifyDocument) ? !this._state.startModifyDocument : undefined;
|
|
||||||
}
|
|
||||||
|
|
||||||
this._state.isDocModified = isModified;
|
this._state.isDocModified = isModified;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
onDocumentModifiedChanged: function() {
|
onDocumentModifiedChanged: function() {
|
||||||
if (this._state.fastCoauth && this._state.usersCount>1 && this._state.startModifyDocument===undefined ) return;
|
|
||||||
|
|
||||||
var isModified = this.api.asc_isDocumentCanSave();
|
var isModified = this.api.asc_isDocumentCanSave();
|
||||||
if (this._state.isDocModified !== isModified) {
|
if (this._state.isDocModified !== isModified) {
|
||||||
Common.Gateway.setDocumentModified(this.api.isDocumentModified());
|
Common.Gateway.setDocumentModified(this.api.isDocumentModified());
|
||||||
|
|
Loading…
Reference in a new issue