diff --git a/apps/common/main/lib/controller/ExternalDiagramEditor.js b/apps/common/main/lib/controller/ExternalDiagramEditor.js
index 62810e19e..8d8baf2ca 100644
--- a/apps/common/main/lib/controller/ExternalDiagramEditor.js
+++ b/apps/common/main/lib/controller/ExternalDiagramEditor.js
@@ -94,7 +94,7 @@ define([
'Common.Views.ExternalDiagramEditor': {
'setchartdata': _.bind(this.setChartData, this),
'drag': _.bind(function(o, state){
- externalEditor.serviceCommand('window:drag', state == 'start');
+ externalEditor && externalEditor.serviceCommand('window:drag', state == 'start');
},this),
'show': _.bind(function(cmp){
var h = this.diagramEditorView.getHeight(),
@@ -138,7 +138,7 @@ define([
},
handler: function(result, value) {
- externalEditor.serviceCommand('queryClose',{mr:result});
+ externalEditor && externalEditor.serviceCommand('queryClose',{mr:result});
return true;
},
diff --git a/apps/common/main/lib/controller/ExternalMergeEditor.js b/apps/common/main/lib/controller/ExternalMergeEditor.js
index 9180da098..1f523444b 100644
--- a/apps/common/main/lib/controller/ExternalMergeEditor.js
+++ b/apps/common/main/lib/controller/ExternalMergeEditor.js
@@ -94,7 +94,7 @@ define([
'Common.Views.ExternalMergeEditor': {
'setmergedata': _.bind(this.setMergeData, this),
'drag': _.bind(function(o, state){
- externalEditor.serviceCommand('window:drag', state == 'start');
+ externalEditor && externalEditor.serviceCommand('window:drag', state == 'start');
},this),
'show': _.bind(function(cmp){
var h = this.mergeEditorView.getHeight(),
@@ -138,7 +138,7 @@ define([
},
handler: function(result, value) {
- externalEditor.serviceCommand('queryClose',{mr:result});
+ externalEditor && externalEditor.serviceCommand('queryClose',{mr:result});
return true;
},
diff --git a/apps/common/main/lib/util/utils.js b/apps/common/main/lib/util/utils.js
index 87be71c2f..b2ea122c1 100644
--- a/apps/common/main/lib/util/utils.js
+++ b/apps/common/main/lib/util/utils.js
@@ -105,8 +105,25 @@ Common.Utils = _.extend(new(function() {
me = this,
checkSize = function() {
if (isChrome && !isOpera && document && document.firstElementChild && document.body) {
- document.firstElementChild.style.zoom = "reset";
- me.zoom = document.body.clientWidth / window.innerWidth;
+ //document.firstElementChild.style.zoom = "reset";
+ if (window.innerWidth > 300)
+ me.zoom = window.outerWidth / window.innerWidth;
+
+ if (Math.abs(me.zoom - 1) < 0.1)
+ me.zoom = 1;
+
+ me.zoom = window.outerWidth / window.innerWidth;
+
+ var _devicePixelRatio = window.devicePixelRatio / me.zoom;
+
+ // device pixel ratio: кратно 0.5
+ _devicePixelRatio = (5 * (((2.5 + 10 * _devicePixelRatio) / 5) >> 0)) / 10;
+
+ me.zoom = window.devicePixelRatio / _devicePixelRatio;
+
+ // chrome 54.x: zoom = "reset" - clear retina zoom (windows)
+ //document.firstElementChild.style.zoom = "reset";
+ document.firstElementChild.style.zoom = 1.0 / me.zoom;
}
me.innerWidth = window.innerWidth * me.zoom;
me.innerHeight = window.innerHeight * me.zoom;
diff --git a/apps/documenteditor/main/app/controller/Main.js b/apps/documenteditor/main/app/controller/Main.js
index b7a44bdcd..81b5e901e 100644
--- a/apps/documenteditor/main/app/controller/Main.js
+++ b/apps/documenteditor/main/app/controller/Main.js
@@ -1211,11 +1211,11 @@ define([
break;
case Asc.c_oAscError.ID.VKeyEncrypt:
- config.msg = this.errorKeyEncrypt;
+ config.msg = this.errorToken;
break;
case Asc.c_oAscError.ID.KeyExpire:
- config.msg = this.errorKeyExpire;
+ config.msg = this.errorTokenExpire;
break;
case Asc.c_oAscError.ID.UserCountExceed:
@@ -1263,6 +1263,22 @@ define([
config.msg = this.errorConnectToServer;
break;
+ case Asc.c_oAscError.ID.SessionAbsolute:
+ config.msg = this.errorSessionAbsolute;
+ break;
+
+ case Asc.c_oAscError.ID.SessionIdle:
+ config.msg = this.errorSessionIdle;
+ break;
+
+ case Asc.c_oAscError.ID.SessionToken:
+ config.msg = this.errorSessionToken;
+ break;
+
+ case Asc.c_oAscError.ID.AccessDeny:
+ config.msg = this.errorAccessDeny;
+ break;
+
default:
config.msg = this.errorDefaultMessage.replace('%1', id);
break;
@@ -2002,7 +2018,13 @@ define([
warnLicenseExp: 'Your license has expired.
Please update your license and refresh the page.',
titleLicenseExp: 'License expired',
openErrorText: 'An error has occurred while opening the file',
- saveErrorText: 'An error has occurred while saving the file'
+ saveErrorText: 'An error has occurred while saving the file',
+ errorToken: 'The document security token is not correctly formed.
Please contact your Document Server administrator.',
+ errorTokenExpire: 'The document security token has expired.
Please contact your Document Server administrator.',
+ errorSessionAbsolute: 'The document editing session has expired. Please reload the page.',
+ errorSessionIdle: 'The document has not been edited for quite a long time. Please reload the page.',
+ errorSessionToken: 'The connection to the server has been interrupted. Please reload the page.',
+ errorAccessDeny: 'You are trying to perform an action you do not have rights for.
Please contact your Document Server administrator.'
}
})(), DE.Controllers.Main || {}))
});
\ No newline at end of file
diff --git a/apps/documenteditor/main/locale/en.json b/apps/documenteditor/main/locale/en.json
index bb358b0a0..72563c3a0 100644
--- a/apps/documenteditor/main/locale/en.json
+++ b/apps/documenteditor/main/locale/en.json
@@ -221,6 +221,12 @@
"DE.Controllers.Main.errorUserDrop": "The file cannot be accessed right now.",
"DE.Controllers.Main.errorUsersExceed": "The number of users allowed by the pricing plan was exceeded",
"DE.Controllers.Main.errorViewerDisconnect": "Connection is lost. You can still view the document,
but will not be able to download or print until the connection is restored.",
+ "DE.Controllers.Main.errorToken": "The document security token is not correctly formed.
Please contact your Document Server administrator.",
+ "DE.Controllers.Main.errorTokenExpire": "The document security token has expired.
Please contact your Document Server administrator.",
+ "DE.Controllers.Main.errorSessionAbsolute": "The document editing session has expired. Please reload the page.",
+ "DE.Controllers.Main.errorSessionIdle": "The document has not been edited for quite a long time. Please reload the page.",
+ "DE.Controllers.Main.errorSessionToken": "The connection to the server has been interrupted. Please reload the page.",
+ "DE.Controllers.Main.errorAccessDeny": "You are trying to perform an action you do not have rights for.
Please contact your Document Server administrator.",
"DE.Controllers.Main.leavePageText": "You have unsaved changes in this document. Click \"Stay on This Page\", then \"Save\" to save them. Click \"Leave This Page\" to discard all the unsaved changes.",
"DE.Controllers.Main.loadFontsTextText": "Loading data...",
"DE.Controllers.Main.loadFontsTitleText": "Loading Data",
diff --git a/apps/presentationeditor/main/app/controller/Main.js b/apps/presentationeditor/main/app/controller/Main.js
index 3b0902b50..761ad2615 100644
--- a/apps/presentationeditor/main/app/controller/Main.js
+++ b/apps/presentationeditor/main/app/controller/Main.js
@@ -974,11 +974,11 @@ define([
break;
case Asc.c_oAscError.ID.VKeyEncrypt:
- config.msg = this.errorKeyEncrypt;
+ config.msg = this.errorToken;
break;
case Asc.c_oAscError.ID.KeyExpire:
- config.msg = this.errorKeyExpire;
+ config.msg = this.errorTokenExpire;
break;
case Asc.c_oAscError.ID.UserCountExceed:
@@ -1018,6 +1018,22 @@ define([
config.msg = this.errorConnectToServer;
break;
+ case Asc.c_oAscError.ID.SessionAbsolute:
+ config.msg = this.errorSessionAbsolute;
+ break;
+
+ case Asc.c_oAscError.ID.SessionIdle:
+ config.msg = this.errorSessionIdle;
+ break;
+
+ case Asc.c_oAscError.ID.SessionToken:
+ config.msg = this.errorSessionToken;
+ break;
+
+ case Asc.c_oAscError.ID.AccessDeny:
+ config.msg = this.errorAccessDeny;
+ break;
+
default:
config.msg = this.errorDefaultMessage.replace('%1', id);
break;
@@ -1809,7 +1825,13 @@ define([
warnLicenseExp: 'Your license has expired.
Please update your license and refresh the page.',
titleLicenseExp: 'License expired',
openErrorText: 'An error has occurred while opening the file',
- saveErrorText: 'An error has occurred while saving the file'
+ saveErrorText: 'An error has occurred while saving the file',
+ errorToken: 'The document security token is not correctly formed.
Please contact your Document Server administrator.',
+ errorTokenExpire: 'The document security token has expired.
Please contact your Document Server administrator.',
+ errorSessionAbsolute: 'The document editing session has expired. Please reload the page.',
+ errorSessionIdle: 'The document has not been edited for quite a long time. Please reload the page.',
+ errorSessionToken: 'The connection to the server has been interrupted. Please reload the page.',
+ errorAccessDeny: 'You are trying to perform an action you do not have rights for.
Please contact your Document Server administrator.'
}
})(), PE.Controllers.Main || {}))
});
diff --git a/apps/presentationeditor/main/app/view/DocumentHolder.js b/apps/presentationeditor/main/app/view/DocumentHolder.js
index 2cb7d9685..3fa985640 100644
--- a/apps/presentationeditor/main/app/view/DocumentHolder.js
+++ b/apps/presentationeditor/main/app/view/DocumentHolder.js
@@ -1323,11 +1323,10 @@ define([
};
var onApiCurrentPages = function(number) {
- if (me.currentMenu && me.currentMenu.isVisible()) {
- if (me._isFromSlideMenu !== true && me._isFromSlideMenu !== number)
- me.currentMenu.hide();
- me._isFromSlideMenu = number;
- }
+ if (me.currentMenu && me.currentMenu.isVisible() && me._isFromSlideMenu !== true && me._isFromSlideMenu !== number)
+ me.currentMenu.hide();
+
+ me._isFromSlideMenu = number;
};
this.setApi = function(o) {
diff --git a/apps/presentationeditor/main/app/view/ImageSettingsAdvanced.js b/apps/presentationeditor/main/app/view/ImageSettingsAdvanced.js
index 6891d330d..7a9d6bf2e 100644
--- a/apps/presentationeditor/main/app/view/ImageSettingsAdvanced.js
+++ b/apps/presentationeditor/main/app/view/ImageSettingsAdvanced.js
@@ -206,8 +206,8 @@ define([ 'text!presentationeditor/main/app/template/ImageSettingsAdvanced.tem
if (props.get_Position()) {
var Position = {X: props.get_Position().get_X(), Y: props.get_Position().get_Y()};
- if (Position.X !== null && Position.X !== undefined) this.spnX.setValue(Common.Utils.Metric.fnRecalcFromMM(Position.X), true);
- if (Position.Y !== null && Position.Y !== undefined) this.spnY.setValue(Common.Utils.Metric.fnRecalcFromMM(Position.Y), true);
+ this.spnX.setValue((Position.X !== null && Position.X !== undefined) ? Common.Utils.Metric.fnRecalcFromMM(Position.X) : '', true);
+ this.spnY.setValue((Position.Y !== null && Position.Y !== undefined) ? Common.Utils.Metric.fnRecalcFromMM(Position.Y) : '', true);
} else {
this.spnX.setValue('', true);
this.spnY.setValue('', true);
diff --git a/apps/presentationeditor/main/locale/en.json b/apps/presentationeditor/main/locale/en.json
index 75fb6d673..550f76e57 100644
--- a/apps/presentationeditor/main/locale/en.json
+++ b/apps/presentationeditor/main/locale/en.json
@@ -135,6 +135,12 @@
"PE.Controllers.Main.errorUserDrop": "The file cannot be accessed right now.",
"PE.Controllers.Main.errorUsersExceed": "The number of users allowed by the pricing plan was exceeded",
"PE.Controllers.Main.errorViewerDisconnect": "Connection is lost. You can still view the document,
but will not be able to download or print until the connection is restored.",
+ "PE.Controllers.Main.errorToken": "The document security token is not correctly formed.
Please contact your Document Server administrator.",
+ "PE.Controllers.Main.errorTokenExpire": "The document security token has expired.
Please contact your Document Server administrator.",
+ "PE.Controllers.Main.errorSessionAbsolute": "The document editing session has expired. Please reload the page.",
+ "PE.Controllers.Main.errorSessionIdle": "The document has not been edited for quite a long time. Please reload the page.",
+ "PE.Controllers.Main.errorSessionToken": "The connection to the server has been interrupted. Please reload the page.",
+ "PE.Controllers.Main.errorAccessDeny": "You are trying to perform an action you do not have rights for.
Please contact your Document Server administrator.",
"PE.Controllers.Main.leavePageText": "You have unsaved changes in this presentation. Click \"Stay on This Page\", then \"Save\" to save them. Click \"Leave This Page\" to discard all the unsaved changes.",
"PE.Controllers.Main.loadFontsTextText": "Loading data...",
"PE.Controllers.Main.loadFontsTitleText": "Loading Data",
diff --git a/apps/spreadsheeteditor/main/app/controller/DocumentHolder.js b/apps/spreadsheeteditor/main/app/controller/DocumentHolder.js
index f170bf418..aa304ee62 100644
--- a/apps/spreadsheeteditor/main/app/controller/DocumentHolder.js
+++ b/apps/spreadsheeteditor/main/app/controller/DocumentHolder.js
@@ -153,6 +153,7 @@ define([
view.pmiDeleteEntire.on('click', _.bind(me.onDeleteEntire, me));
view.pmiInsertCells.menu.on('item:click', _.bind(me.onInsertCells, me));
view.pmiDeleteCells.menu.on('item:click', _.bind(me.onDeleteCells, me));
+ view.pmiSparklines.menu.on('item:click', _.bind(me.onClear, me));
view.pmiSortCells.menu.on('item:click', _.bind(me.onSortCells, me));
view.pmiFilterCells.menu.on('item:click', _.bind(me.onFilterCells, me));
view.pmiReapply.on('click', _.bind(me.onReapply, me));
@@ -1265,6 +1266,7 @@ define([
var iscelledit = this.api.isCellEdited,
formatTableInfo = cellinfo.asc_getFormatTableInfo(),
+ isinsparkline = (cellinfo.asc_getSparklineInfo()!==null),
isintable = (formatTableInfo !== null),
ismultiselect = cellinfo.asc_getFlags().asc_getMultiselect();
documentHolder.ssMenu.formatTableName = (isintable) ? formatTableInfo.asc_getTableName() : null;
@@ -1279,10 +1281,11 @@ define([
documentHolder.pmiSelectTable.setVisible(iscellmenu && !iscelledit && isintable);
documentHolder.pmiInsertTable.setVisible(iscellmenu && !iscelledit && isintable);
documentHolder.pmiDeleteTable.setVisible(iscellmenu && !iscelledit && isintable);
+ documentHolder.pmiSparklines.setVisible(isinsparkline);
documentHolder.pmiSortCells.setVisible((iscellmenu||isallmenu||cansort) && !iscelledit);
documentHolder.pmiFilterCells.setVisible((iscellmenu||cansort) && !iscelledit);
documentHolder.pmiReapply.setVisible((iscellmenu||isallmenu||cansort) && !iscelledit);
- documentHolder.ssMenu.items[12].setVisible((iscellmenu||isallmenu||cansort) && !iscelledit);
+ documentHolder.ssMenu.items[12].setVisible((iscellmenu||isallmenu||cansort||isinsparkline) && !iscelledit);
documentHolder.pmiInsFunction.setVisible(iscellmenu||insfunc);
documentHolder.pmiAddNamedRange.setVisible(iscellmenu && !iscelledit);
@@ -1311,7 +1314,7 @@ define([
documentHolder.pmiEntriesList.setVisible(!iscelledit);
/** coauthoring begin **/
- documentHolder.ssMenu.items[16].setVisible(iscellmenu && !iscelledit && this.permissions.canCoAuthoring && this.permissions.canComments);
+ documentHolder.ssMenu.items[17].setVisible(iscellmenu && !iscelledit && this.permissions.canCoAuthoring && this.permissions.canComments);
documentHolder.pmiAddComment.setVisible(iscellmenu && !iscelledit && this.permissions.canCoAuthoring && this.permissions.canComments);
/** coauthoring end **/
documentHolder.pmiCellMenuSeparator.setVisible(iscellmenu || isrowmenu || iscolmenu || isallmenu || insfunc);
diff --git a/apps/spreadsheeteditor/main/app/controller/Main.js b/apps/spreadsheeteditor/main/app/controller/Main.js
index 90590058d..3a341caca 100644
--- a/apps/spreadsheeteditor/main/app/controller/Main.js
+++ b/apps/spreadsheeteditor/main/app/controller/Main.js
@@ -1087,11 +1087,11 @@ define([
break;
case Asc.c_oAscError.ID.VKeyEncrypt:
- config.msg = this.errorKeyEncrypt;
+ config.msg = this.errorToken;
break;
case Asc.c_oAscError.ID.KeyExpire:
- config.msg = this.errorKeyExpire;
+ config.msg = this.errorTokenExpire;
break;
case Asc.c_oAscError.ID.UserCountExceed:
@@ -1183,6 +1183,22 @@ define([
config.msg = this.errorPrintMaxPagesCount;
break;
+ case Asc.c_oAscError.ID.SessionAbsolute:
+ config.msg = this.errorSessionAbsolute;
+ break;
+
+ case Asc.c_oAscError.ID.SessionIdle:
+ config.msg = this.errorSessionIdle;
+ break;
+
+ case Asc.c_oAscError.ID.SessionToken:
+ config.msg = this.errorSessionToken;
+ break;
+
+ case Asc.c_oAscError.ID.AccessDeny:
+ config.msg = this.errorAccessDeny;
+ break;
+
default:
config.msg = this.errorDefaultMessage.replace('%1', id);
break;
@@ -2019,7 +2035,13 @@ define([
openErrorText: 'An error has occurred while opening the file',
saveErrorText: 'An error has occurred while saving the file',
errorCopyMultiselectArea: 'This command cannot be used with multiple selections.
Select a single range and try again.',
- errorPrintMaxPagesCount: 'Unfortunately, it’s not possible to print more than 1500 pages at once in the current version of the program.
This restriction will be eliminated in upcoming releases.'
+ errorPrintMaxPagesCount: 'Unfortunately, it’s not possible to print more than 1500 pages at once in the current version of the program.
This restriction will be eliminated in upcoming releases.',
+ errorToken: 'The document security token is not correctly formed.
Please contact your Document Server administrator.',
+ errorTokenExpire: 'The document security token has expired.
Please contact your Document Server administrator.',
+ errorSessionAbsolute: 'The document editing session has expired. Please reload the page.',
+ errorSessionIdle: 'The document has not been edited for quite a long time. Please reload the page.',
+ errorSessionToken: 'The connection to the server has been interrupted. Please reload the page.',
+ errorAccessDeny: 'You are trying to perform an action you do not have rights for.
Please contact your Document Server administrator.'
}
})(), SSE.Controllers.Main || {}))
});
diff --git a/apps/spreadsheeteditor/main/app/view/DocumentHolder.js b/apps/spreadsheeteditor/main/app/view/DocumentHolder.js
index da1e92db1..417ca9b15 100644
--- a/apps/spreadsheeteditor/main/app/view/DocumentHolder.js
+++ b/apps/spreadsheeteditor/main/app/view/DocumentHolder.js
@@ -349,6 +349,17 @@ define([
caption : me.textEntriesList
});
+ me.pmiSparklines = new Common.UI.MenuItem({
+ caption : me.txtSparklines,
+ menu : new Common.UI.Menu({
+ menuAlign: 'tl-tr',
+ items : [
+ { caption: me.txtClearSparklines, value: Asc.c_oAscCleanOptions.Sparklines },
+ { caption: me.txtClearSparklineGroups, value: Asc.c_oAscCleanOptions.SparklineGroups }
+ ]
+ })
+ });
+
me.ssMenu = new Common.UI.Menu({
id : 'id-context-menu-cell',
items : [
@@ -365,6 +376,7 @@ define([
me.pmiDeleteTable,
me.pmiClear,
{caption: '--'},
+ me.pmiSparklines,
me.pmiSortCells,
me.pmiFilterCells,
me.pmiReapply,
@@ -691,7 +703,10 @@ define([
txtAutoRowHeight: 'Auto Fit Row Height',
txtCustomColumnWidth: 'Custom Column Width',
txtCustomRowHeight: 'Custom Row Height',
- textEntriesList: 'Select from drop-down list'
+ textEntriesList: 'Select from drop-down list',
+ txtSparklines: 'Sparklines',
+ txtClearSparklines: 'Clear Selected Sparklines',
+ txtClearSparklineGroups: 'Clear Selected Sparkline Groups'
}, SSE.Views.DocumentHolder || {}));
});
\ No newline at end of file
diff --git a/apps/spreadsheeteditor/main/locale/en.json b/apps/spreadsheeteditor/main/locale/en.json
index a9806180c..863ccaaf9 100644
--- a/apps/spreadsheeteditor/main/locale/en.json
+++ b/apps/spreadsheeteditor/main/locale/en.json
@@ -260,6 +260,12 @@
"SSE.Controllers.Main.errorViewerDisconnect": "Connection is lost. You can still view the document,
but will not be able to download or print until the connection is restored.",
"SSE.Controllers.Main.errorWrongBracketsCount": "An error in the entered formula.
Wrong number of brackets is used.",
"SSE.Controllers.Main.errorWrongOperator": "An error in the entered formula. Wrong operator is used.
Please correct the error or use the Esc button to cancel the formula editing.",
+ "SSE.Controllers.Main.errorToken": "The document security token is not correctly formed.
Please contact your Document Server administrator.",
+ "SSE.Controllers.Main.errorTokenExpire": "The document security token has expired.
Please contact your Document Server administrator.",
+ "SSE.Controllers.Main.errorSessionAbsolute": "The document editing session has expired. Please reload the page.",
+ "SSE.Controllers.Main.errorSessionIdle": "The document has not been edited for quite a long time. Please reload the page.",
+ "SSE.Controllers.Main.errorSessionToken": "The connection to the server has been interrupted. Please reload the page.",
+ "SSE.Controllers.Main.errorAccessDeny": "You are trying to perform an action you do not have rights for.
Please contact your Document Server administrator.",
"SSE.Controllers.Main.leavePageText": "You have unsaved changes in this spreadsheet. Click 'Stay on this Page' then 'Save' to save them. Click 'Leave this Page' to discard all the unsaved changes.",
"SSE.Controllers.Main.loadFontsTextText": "Loading data...",
"SSE.Controllers.Main.loadFontsTitleText": "Loading Data",
@@ -940,6 +946,9 @@
"SSE.Views.DocumentHolder.txtUngroup": "Ungroup",
"SSE.Views.DocumentHolder.txtWidth": "Width",
"SSE.Views.DocumentHolder.vertAlignText": "Vertical Alignment",
+ "SSE.Views.DocumentHolder.txtSparklines": "Sparklines",
+ "SSE.Views.DocumentHolder.txtClearSparklines": "Clear Selected Sparklines",
+ "SSE.Views.DocumentHolder.txtClearSparklineGroups": "Clear Selected Sparkline Groups",
"SSE.Views.FileMenu.btnBackCaption": "Go to Documents",
"SSE.Views.FileMenu.btnCloseMenuCaption": "Close Menu",
"SSE.Views.FileMenu.btnCreateNewCaption": "Create New",
diff --git a/apps/spreadsheeteditor/main/locale/ru.json b/apps/spreadsheeteditor/main/locale/ru.json
index 2b59d4e2e..db4555366 100644
--- a/apps/spreadsheeteditor/main/locale/ru.json
+++ b/apps/spreadsheeteditor/main/locale/ru.json
@@ -938,6 +938,9 @@
"SSE.Views.DocumentHolder.txtUngroup": "Разгруппировать",
"SSE.Views.DocumentHolder.txtWidth": "Ширина",
"SSE.Views.DocumentHolder.vertAlignText": "Вертикальное выравнивание",
+ "SSE.Views.DocumentHolder.txtSparklines": "Спарклайны",
+ "SSE.Views.DocumentHolder.txtClearSparklines": "Очистить выбранные спарклайны",
+ "SSE.Views.DocumentHolder.txtClearSparklineGroups": "Очистить выбранные группы спарклайнов",
"SSE.Views.FileMenu.btnBackCaption": "Перейти к Документам",
"SSE.Views.FileMenu.btnCloseMenuCaption": "Закрыть меню",
"SSE.Views.FileMenu.btnCreateNewCaption": "Создать новую",
diff --git a/apps/spreadsheeteditor/main/resources/help/en/HelpfulHints/About.htm b/apps/spreadsheeteditor/main/resources/help/en/HelpfulHints/About.htm
index 9a20f509f..f480df1e8 100644
--- a/apps/spreadsheeteditor/main/resources/help/en/HelpfulHints/About.htm
+++ b/apps/spreadsheeteditor/main/resources/help/en/HelpfulHints/About.htm
@@ -9,7 +9,7 @@
About Spreadsheet Editor
-
Spreadsheet Editor is an online application that lets you edit your spreadsheets directly in your browser.
+
Spreadsheet Editor is an online application that lets you edit your spreadsheets directly in your browser.
Using Spreadsheet Editor, you can perform various editing operations like in any desktop editor, print the edited spreadsheets keeping all the formatting details or download them onto your computer hard disk drive as XLSX, ODS, CSV, or PDF file.
To view the current software version and licensor details, click the icon at the left sidebar.
diff --git a/apps/spreadsheeteditor/main/resources/help/en/HelpfulHints/AdvancedSettings.htm b/apps/spreadsheeteditor/main/resources/help/en/HelpfulHints/AdvancedSettings.htm
index 9b313a071..30f768153 100644
--- a/apps/spreadsheeteditor/main/resources/help/en/HelpfulHints/AdvancedSettings.htm
+++ b/apps/spreadsheeteditor/main/resources/help/en/HelpfulHints/AdvancedSettings.htm
@@ -12,9 +12,9 @@
Spreadsheet Editor lets you change its general advanced settings. To access them, click the File icon at the left sidebar and select the Advanced Settings... option. You can also use the icon in the right upper corner of the top toolbar.
The general advanced settings are:
- - Commenting Display* is used to turn on/off the live commenting option. If you disable this feature, the commented passages will be highlighted only if you click the Comments icon.
- - Autosave is used to turn on/off automatic saving of changes you make while editing.
- - Co-editing Mode is used to select the display of the changes made during the co-editing:
+
- Commenting Display* is used to turn on/off the live commenting option. If you disable this feature, the commented passages will be highlighted only if you click the Comments icon.
+ - Autosave is used to turn on/off automatic saving of changes you make while editing.
+ - Co-editing Mode is used to select the display of the changes made during the co-editing:
- By default the Fast mode is selected, the users who take part in the document co-editing will see the changes in realtime once they are made by other users.
- If you prefer not to see other user changes (so that they do not disturb you, or for some other reason), select the Strict mode and all the changes will be shown only after you click the Save icon notifying you that there are changes from other users.
@@ -33,7 +33,7 @@
- Regional Settings is used to select the default display format for currency and date and time.
To save the changes you made, click the Apply button.
- *available for paid versions only
+ *available for paid versions only