diff --git a/apps/common/mobile/lib/component/ThemeColorPalette.jsx b/apps/common/mobile/lib/component/ThemeColorPalette.jsx
index 7a7dd86ad8..b0637aa453 100644
--- a/apps/common/mobile/lib/component/ThemeColorPalette.jsx
+++ b/apps/common/mobile/lib/component/ThemeColorPalette.jsx
@@ -56,12 +56,15 @@ const CustomColors = ({ options, customColors, onColorClick, curColor }) => {
>)
}
}
+
+ let indexCurColor = colors.indexOf(curColor);
+
return (
{colors && colors.length > 0 && colors.map((color, index) => {
return(
{onColorClick(color)}}
>
diff --git a/apps/common/mobile/resources/less/common-material.less b/apps/common/mobile/resources/less/common-material.less
index daa240ba9b..b2b44f5a94 100644
--- a/apps/common/mobile/resources/less/common-material.less
+++ b/apps/common/mobile/resources/less/common-material.less
@@ -56,6 +56,20 @@
}
}
+ .add-popup {
+ .view{
+ .block-title{
+ margin-bottom: 0;
+ margin-top: 8px;
+ }
+ .inputs-list {
+ ul:after, :before{
+ display: none;
+ }
+ }
+ }
+ }
+
// Buttons
.segmented {
.decrement, .increment {
diff --git a/apps/documenteditor/mobile/locale/en.json b/apps/documenteditor/mobile/locale/en.json
index bfb1738323..0492ef13d5 100644
--- a/apps/documenteditor/mobile/locale/en.json
+++ b/apps/documenteditor/mobile/locale/en.json
@@ -330,6 +330,7 @@
"advDRMOptions": "Protected File",
"txtProtected": "Once you enter the password and open the file, the current password to the file will be reset",
"textOpenFile": "Enter a password to open the file",
+ "txtIncorrectPwd": "Password is incorrect",
"textNoTextFound": "Text not found",
"textReplace": "Replace",
"textReplaceAll": "Replace All",
diff --git a/apps/documenteditor/mobile/src/controller/Main.jsx b/apps/documenteditor/mobile/src/controller/Main.jsx
index b30a0f26bf..4bf67dcf4b 100644
--- a/apps/documenteditor/mobile/src/controller/Main.jsx
+++ b/apps/documenteditor/mobile/src/controller/Main.jsx
@@ -611,7 +611,8 @@ class MainController extends Component {
this.api.asc_registerCallback('asc_onAdvancedOptions', (type, advOptions, mode, formatOptions) => {
const {t} = this.props;
const _t = t("Settings", { returnObjects: true });
- onAdvancedOptions(type, advOptions, mode, formatOptions, _t, this._isDocReady, this.props.storeAppOptions.canRequestClose);
+ onAdvancedOptions(type, advOptions, mode, formatOptions, _t, this._isDocReady, this.props.storeAppOptions.canRequestClose, this.isDRM);
+ if(type == Asc.c_oAscAdvancedOptionsID.DRM) this.isDRM = true;
});
}
diff --git a/apps/documenteditor/mobile/src/controller/settings/Download.jsx b/apps/documenteditor/mobile/src/controller/settings/Download.jsx
index 7b3a3a7030..81cfa0dfe7 100644
--- a/apps/documenteditor/mobile/src/controller/settings/Download.jsx
+++ b/apps/documenteditor/mobile/src/controller/settings/Download.jsx
@@ -33,7 +33,7 @@ class DownloadController extends Component {
() => {
if (format == Asc.c_oAscFileType.TXT) {
const isDocReady = this.props.storeAppOptions.isDocReady;
- onAdvancedOptions(Asc.c_oAscAdvancedOptionsID.TXT, api.asc_getAdvancedOptions(), 2, new Asc.asc_CDownloadOptions(format), _t, isDocReady);
+ onAdvancedOptions(Asc.c_oAscAdvancedOptionsID.TXT, api.asc_getAdvancedOptions(), 2, new Asc.asc_CDownloadOptions(format), _t, isDocReady, isDRM);
}
else {
setTimeout(() => {
@@ -60,7 +60,7 @@ class DownloadController extends Component {
const DownloadWithTranslation = inject("storeAppOptions")(observer(withTranslation()(DownloadController)));
-const onAdvancedOptions = (type, advOptions, mode, formatOptions, _t, isDocReady, canRequestClose) => {
+const onAdvancedOptions = (type, advOptions, mode, formatOptions, _t, isDocReady, canRequestClose, isDRM) => {
if ($$('.dlg-adv-options.modal-in').length > 0) return;
const api = Common.EditorApi.get();
@@ -137,6 +137,17 @@ const onAdvancedOptions = (type, advOptions, mode, formatOptions, _t, isDocReady
}
}
}];
+
+ if(isDRM) {
+ f7.dialog.create({
+ text: _t.txtIncorrectPwd,
+ buttons : [{
+ text: 'OK',
+ bold: true,
+ }]
+ }).open();
+ }
+
if (canRequestClose)
buttons.push({
text: _t.closeButtonText,
diff --git a/apps/documenteditor/mobile/src/view/add/AddImage.jsx b/apps/documenteditor/mobile/src/view/add/AddImage.jsx
index 1fed2d95a5..aaaf9c31c3 100644
--- a/apps/documenteditor/mobile/src/view/add/AddImage.jsx
+++ b/apps/documenteditor/mobile/src/view/add/AddImage.jsx
@@ -11,7 +11,7 @@ const PageLinkSettings = props => {
{_t.textAddress}
-
+
{
{(isShape || isChart) ? null :
-
-
- }
- {(isShape || isChart) ? null :
- ,
+
+ {
initFootnoteStartAt: props.initFootnoteStartAt
}}>
- }
+ ]
+ }
)
};
diff --git a/apps/presentationeditor/mobile/locale/en.json b/apps/presentationeditor/mobile/locale/en.json
index 343ef9533d..381d210e97 100644
--- a/apps/presentationeditor/mobile/locale/en.json
+++ b/apps/presentationeditor/mobile/locale/en.json
@@ -29,6 +29,7 @@
"advDRMPassword": "Password",
"txtProtected": "Once you enter the password and open the file, the current password to the file will be reset",
"textOpenFile": "Enter a password to open the file",
+ "txtIncorrectPwd": "Password is incorrect",
"leavePageText": "You have unsaved changes in this document. Click 'Stay on this Page' to await the autosave of the document. Click 'Leave this Page' to discard all the unsaved changes.",
"titleLicenseExp": "License expired",
"warnLicenseExp": "Your license has expired. Please update your license and refresh the page.",
diff --git a/apps/presentationeditor/mobile/src/controller/ContextMenu.jsx b/apps/presentationeditor/mobile/src/controller/ContextMenu.jsx
index fde237e74f..99ed87b06b 100644
--- a/apps/presentationeditor/mobile/src/controller/ContextMenu.jsx
+++ b/apps/presentationeditor/mobile/src/controller/ContextMenu.jsx
@@ -111,7 +111,7 @@ class ContextMenu extends ContextMenuController {
text: 'OK',
onClick: () => {
const dontShow = $$('input[name="checkbox-show"]').prop('checked');
- if (dontShow) LocalStorage.setItem("de-hide-copy-cut-paste-warning", 1);
+ if (dontShow) LocalStorage.setItem("pe-hide-copy-cut-paste-warning", 1);
}
}]
}).open();
diff --git a/apps/presentationeditor/mobile/src/controller/Main.jsx b/apps/presentationeditor/mobile/src/controller/Main.jsx
index 6210b4bf67..720a355394 100644
--- a/apps/presentationeditor/mobile/src/controller/Main.jsx
+++ b/apps/presentationeditor/mobile/src/controller/Main.jsx
@@ -300,7 +300,6 @@ class MainController extends Component {
this.api.asc_registerCallback('asc_onDocumentContentReady', this.onDocumentContentReady.bind(this));
this.api.asc_registerCallback('asc_onDocumentUpdateVersion', this.onUpdateVersion.bind(this));
this.api.asc_registerCallback('asc_onServerVersion', this.onServerVersion.bind(this));
- this.api.asc_registerCallback('asc_onAdvancedOptions', this.onAdvancedOptions.bind(this));
this.api.asc_registerCallback('asc_onDocumentName', this.onDocumentName.bind(this));
this.api.asc_registerCallback('asc_onPrintUrl', this.onPrintUrl.bind(this));
this.api.asc_registerCallback('asc_onPrint', this.onPrint.bind(this));
@@ -310,6 +309,10 @@ class MainController extends Component {
const storePresentationSettings = this.props.storePresentationSettings;
+ this.api.asc_registerCallback('asc_onAdvancedOptions', (type, advOptions) => {
+ this.onAdvancedOptions(type, advOptions);
+ });
+
this.api.asc_registerCallback('asc_onPresentationSize', (width, height) => {
storePresentationSettings.changeSizeIndex(width, height);
});
@@ -604,6 +607,17 @@ class MainController extends Component {
}
}
}];
+
+ if(this.isDRM) {
+ f7.dialog.create({
+ text: _t.txtIncorrectPwd,
+ buttons : [{
+ text: 'OK',
+ bold: true,
+ }]
+ }).open();
+ }
+
if (this.props.storeAppOptions.canRequestClose)
buttons.push({
text: _t.closeButtonText,
@@ -620,6 +634,7 @@ class MainController extends Component {
buttons: buttons,
cssClass: 'dlg-adv-options'
}).open();
+ this.isDRM = true;
}
}
diff --git a/apps/presentationeditor/mobile/src/view/add/AddImage.jsx b/apps/presentationeditor/mobile/src/view/add/AddImage.jsx
index c34d4e6080..28991117eb 100644
--- a/apps/presentationeditor/mobile/src/view/add/AddImage.jsx
+++ b/apps/presentationeditor/mobile/src/view/add/AddImage.jsx
@@ -11,7 +11,7 @@ const PageLinkSettings = props => {
{_t.textAddress}
-
+
Use the CONCATENATE function or concatenation operator (&)",
"errorFrmlMaxLength": "You cannot add this formula as its length exceeded the allowed number of characters.
Please edit it and try again.",
"errorFrmlMaxReference": "You cannot enter this formula because it has too many values,
cell references, and/or names.",
- "errorDataValidate":"The value you entered is not valid.
A user has restricted values that can be entered into this cell.",
+ "errorDataValidate": "The value you entered is not valid.
A user has restricted values that can be entered into this cell.",
"errorLockedCellPivot": "You cannot change data inside a pivot table."
},
"ContextMenu": {
@@ -460,6 +460,7 @@
"closeButtonText": "Close File",
"txtProtected": "Once you enter the password and open the file, the current password to the file will be reset",
"textOpenFile": "Enter a password to open the file",
+ "txtIncorrectPwd": "Password is incorrect",
"textCancel": "Cancel",
"textUnitOfMeasurement": "Unit Of Measurement",
"textCentimeter": "Centimeter",
diff --git a/apps/spreadsheeteditor/mobile/src/controller/ContextMenu.jsx b/apps/spreadsheeteditor/mobile/src/controller/ContextMenu.jsx
index 7965086fb8..15462d90b0 100644
--- a/apps/spreadsheeteditor/mobile/src/controller/ContextMenu.jsx
+++ b/apps/spreadsheeteditor/mobile/src/controller/ContextMenu.jsx
@@ -142,7 +142,7 @@ class ContextMenu extends ContextMenuController {
text: 'OK',
onClick: () => {
const dontShow = $$('input[name="checkbox-show"]').prop('checked');
- if (dontShow) LocalStorage.setItem("de-hide-copy-cut-paste-warning", 1);
+ if (dontShow) LocalStorage.setItem("sse-hide-copy-cut-paste-warning", 1);
}
}]
}).open();
diff --git a/apps/spreadsheeteditor/mobile/src/controller/FilterOptions.jsx b/apps/spreadsheeteditor/mobile/src/controller/FilterOptions.jsx
index 61d7614189..6e8b153e88 100644
--- a/apps/spreadsheeteditor/mobile/src/controller/FilterOptions.jsx
+++ b/apps/spreadsheeteditor/mobile/src/controller/FilterOptions.jsx
@@ -52,6 +52,8 @@ const FilterOptionsController = () => {
const onSort = (type) => {
const api = Common.EditorApi.get();
api.asc_sortColFilter(type == 'sortdown' ? Asc.c_oAscSortOptions.Ascending : Asc.c_oAscSortOptions.Descending, configFilter.asc_getCellId(), configFilter.asc_getDisplayName());
+ f7.sheet.close('.picker__sheet');
+ f7.popover.close('#picker-popover');
};
const onClearFilter = () => {
diff --git a/apps/spreadsheeteditor/mobile/src/controller/Main.jsx b/apps/spreadsheeteditor/mobile/src/controller/Main.jsx
index f23dd952d5..a021ed9e24 100644
--- a/apps/spreadsheeteditor/mobile/src/controller/Main.jsx
+++ b/apps/spreadsheeteditor/mobile/src/controller/Main.jsx
@@ -323,7 +323,8 @@ class MainController extends Component {
this.api.asc_registerCallback('asc_onAdvancedOptions', (type, advOptions, mode, formatOptions) => {
const {t} = this.props;
const _t = t("View.Settings", { returnObjects: true });
- onAdvancedOptions(type, advOptions, mode, formatOptions, _t, this._isDocReady, this.props.storeAppOptions.canRequestClose);
+ onAdvancedOptions(type, advOptions, mode, formatOptions, _t, this._isDocReady, this.props.storeAppOptions.canRequestClose,this.isDRM);
+ if(type == Asc.c_oAscAdvancedOptionsID.DRM) this.isDRM = true;
});
}
diff --git a/apps/spreadsheeteditor/mobile/src/controller/settings/Download.jsx b/apps/spreadsheeteditor/mobile/src/controller/settings/Download.jsx
index af1fbf4c2e..6e1ed4b252 100644
--- a/apps/spreadsheeteditor/mobile/src/controller/settings/Download.jsx
+++ b/apps/spreadsheeteditor/mobile/src/controller/settings/Download.jsx
@@ -39,7 +39,7 @@ class DownloadController extends Component {
const DownloadWithTranslation = withTranslation()(DownloadController);
-const onAdvancedOptions = (type, advOptions, mode, formatOptions, _t, isDocReady, canRequestClose) => {
+const onAdvancedOptions = (type, advOptions, mode, formatOptions, _t, isDocReady, canRequestClose, isDRM) => {
const api = Common.EditorApi.get();
if (type == Asc.c_oAscAdvancedOptionsID.CSV) {
@@ -137,6 +137,16 @@ const onAdvancedOptions = (type, advOptions, mode, formatOptions, _t, isDocReady
}
}];
+ if(isDRM) {
+ f7.dialog.create({
+ text: _t.txtIncorrectPwd,
+ buttons : [{
+ text: 'OK',
+ bold: true,
+ }]
+ }).open();
+ }
+
if (canRequestClose)
buttons.push({
text: _t.closeButtonText,
diff --git a/apps/spreadsheeteditor/mobile/src/view/add/AddImage.jsx b/apps/spreadsheeteditor/mobile/src/view/add/AddImage.jsx
index a23ad9a3c2..a3311cb6c1 100644
--- a/apps/spreadsheeteditor/mobile/src/view/add/AddImage.jsx
+++ b/apps/spreadsheeteditor/mobile/src/view/add/AddImage.jsx
@@ -27,7 +27,7 @@ const PageLinkSettings = props => {
{_t.textAddress}
-
+