').html(param).text() );
- } catch (e) { /*delete opts;*/ }
+ appSettings = JSON.parse( $('
').html(param).text() );
+ } catch (e) { appSettings = undefined; }
- if ( opts ) {
- if ( opts.langs === 0 ) {
+
+ if ( appSettings ) {
+ if ( appSettings.langs === 0 ) {
$panel.find('.settings-field-lang').hide();
} else
- if ( opts.locale ) {
+ if ( appSettings.locale ) {
$panel.find('.settings-field-lang').show();
let $combo = $panel.find('.settings-field-lang select');
let def_lang;
- for (let lang in opts.locale.langs) {
+ for (let lang in appSettings.locale.langs) {
/^en/.test(lang) && (def_lang = lang);
- $combo.append(``);
+ $combo.append(``);
}
- if ( !opts.locale.langs[opts.locale.current] ) {
- opts.locale.current = opts.locale.current.substring(0,2);
- if ( !opts.locale.langs[opts.locale.current] && !!def_lang ) {
- opts.locale.current = def_lang;
+ if ( !appSettings.locale.langs[appSettings.locale.current] ) {
+ appSettings.locale.current = appSettings.locale.current.substring(0,2);
+ if ( !appSettings.locale.langs[appSettings.locale.current] && !!def_lang ) {
+ appSettings.locale.current = def_lang;
}
}
- $combo.val(opts.locale.current);
+ $combo.val(appSettings.locale.current);
$combo.selectpicker();
- if ( opts.locale.restart ) {
- $panel.find('.settings-field-lang label[l10n]').after(``);
+ if ( appSettings.locale.restart ) {
+ if ( !$panel.find('.settings-field-lang label[l10n] + .sett__caption-restart').length )
+ $panel.find('.settings-field-lang label[l10n]').after(``);
+
$('#caption-restart', $panel).show();
}
- $(document.body).toggleClass('rtl-font', _is_lang_rtl(opts.locale.current));
+ $(document.body).toggleClass('rtl-font', _is_lang_rtl(appSettings.locale.current));
}
- if ( opts.uiscaling != undefined && !$optsUIScaling ) {
+ if ( appSettings.uiscaling != undefined && !$optsUIScaling ) {
($optsUIScaling = ($('#opts-ui-scaling', $panel).show().find('select')))
- .val(opts.uiscaling)
+ .val(appSettings.uiscaling)
.selectpicker().on('change', e => {
$btnApply.isdisabled() && $btnApply.disable(false);
});
@@ -535,8 +580,8 @@
$('#caption-restart', $panel).show();
}
- if ( !!opts.uitheme ) {
- opts.uitheme == 'canuse' && (opts.uitheme = 'theme-light');
+ if ( !!appSettings.uitheme ) {
+ appSettings.uitheme == 'canuse' && (appSettings.uitheme = 'theme-light');
const _themes = [{'theme-system': utils.Lang.settOptThemeSystem},
{'theme-light': utils.Lang.settOptThemeLight},
@@ -564,7 +609,7 @@
if ( !$optsUITheme ) {
($optsUITheme = _combo)
- .val(opts.uitheme)
+ .val(appSettings.uitheme)
.selectpicker().on('changed.bs.select', (e, index, selected, previous) => {
if ( selected && e.target.value == 'add' ) {
sdk.command("uitheme:add", "local");
@@ -577,7 +622,7 @@
})
.parents('.settings-field').show();
} else {
- $optsUITheme.val(opts.uitheme)
+ $optsUITheme.val(appSettings.uitheme)
.selectpicker('refresh');
}
@@ -591,65 +636,74 @@
}
}
}
- _apply_theme(!!opts.uitheme ? opts.uitheme : 'theme-classic-light');
+ _apply_theme(!!appSettings.uitheme ? appSettings.uitheme : 'theme-classic-light');
- if ( opts.editorwindowmode !== undefined ) {
+ if ( appSettings.editorwindowmode !== undefined ) {
($optsLaunchMode = ($('#opts-launch-mode', $panel).show().find('select')))
- .val(opts.editorwindowmode ? 'inwindow' : 'intab')
+ .val(appSettings.editorwindowmode ? 'inwindow' : 'intab')
.selectpicker().on('change', e => {
$btnApply.isdisabled() && $btnApply.disable(false);
});
}
- if ( opts.spellcheckdetect !== undefined ) {
+ if ( appSettings.spellcheckdetect !== undefined ) {
($optsSpellcheckMode = ($('#opts-spellcheck-mode', $panel).show().find('select')))
- .val(opts.spellcheckdetect)
+ .val(appSettings.spellcheckdetect)
.selectpicker().on('change', e => {
$btnApply.isdisabled() && $btnApply.disable(false);
});
}
- if ( !!opts.updates ) {
- if ( opts.updates.mode !== undefined ) {
- // if ( !['ask', 'disabled'].includes(opts.updates.mode) )
- // opts.updates.mode = 'ask'; // for 7.3. to workaround 'silent' mode
-
+ if ( !!appSettings.updates ) {
+ if ( appSettings.updates.mode !== undefined ) {
($optsAutoupdateMode = ($('#opts-autoupdate-mode', $panel).show().find('select')))
// ($optsAutoupdateMode = ($('#opts-autoupdate', $panel).show().find('select')))
- .val(opts.updates.mode)
+ .val(appSettings.updates.mode)
.selectpicker().on('change', e => {
$btnApply.isdisabled() && $btnApply.disable(false);
});
}
- if ( opts.updates.interval !== undefined ) {
+ if ( appSettings.updates.interval !== undefined ) {
let $settnode = $('#opts-checkupdate', $panel);
if ( !$settnode.is(':visible') ) {
$settnode.show();
$('select', $settnode)
- .val(opts.updates.interval)
+ .val(appSettings.updates.interval)
.selectpicker().on('change', e => {
$btnApply.isdisabled() && $btnApply.disable(false);
});
}
}
}
+
+ if ( appSettings.usegpu !== undefined ) {
+ $chGpu = $('#sett-box-gpu-mode', $panel).parent().show().find('#sett-gpu-mode');
+ $chGpu.prop('checked', !!appSettings.usegpu)
+ .on('change', e => {
+ $btnApply.isdisabled() && $btnApply.disable(false);
+ });
+ }
}
- if ( opts.rtl !== undefined ) {
- if ( !$chRtl || $chRtl.prop('checked') != opts.rtl ) {
+ if ( appSettings.rtl !== undefined ) {
+ if ( !$chRtl || $chRtl.prop('checked') != appSettings.rtl ) {
$chRtl = $('#sett-box-rtl-mode', $panel).parent().show().find('#sett-rtl-mode');
- $chRtl.prop('checked', !!opts.rtl)
+ $chRtl.prop('checked', !!appSettings.rtl)
.on('change', e => {
$btnApply.prop('disabled') && $btnApply.prop('disabled', false);
});
- if ( opts.rtl ) {
+ if ( appSettings.rtl ) {
document.body.setAttribute('dir', 'rtl');
document.body.classList.add('rtl');
$userName.css('direction', 'rtl');
+ } else {
+ if ( !_is_lang_rtl(appSettings.locale.current) )
+ $chRtl.attr('disabled', 'disabled')
+ .next().attr('disabled', 'disabled');
}
}
@@ -810,7 +864,7 @@
});
window.sdk.on('on_native_message', _on_app_message.bind(this));
- window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', on_system_theme_dark.bind(this));
+ // window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', on_system_theme_dark.bind(this));
// on_system_theme_dark({target: window.matchMedia('(prefers-color-scheme: dark)')});
$(window).on('resize', on_window_resize.bind(this));
diff --git a/common/loginpage/src/sprite.png b/common/loginpage/src/sprite.png
deleted file mode 100644
index 109b8954a..000000000
Binary files a/common/loginpage/src/sprite.png and /dev/null differ
diff --git a/common/loginpage/src/sprite@1.25x.png b/common/loginpage/src/sprite@1.25x.png
index 52fb11deb..50cebb2dc 100644
Binary files a/common/loginpage/src/sprite@1.25x.png and b/common/loginpage/src/sprite@1.25x.png differ
diff --git a/common/loginpage/src/sprite@1.5x.png b/common/loginpage/src/sprite@1.5x.png
index 4e587b713..70f1cf863 100644
Binary files a/common/loginpage/src/sprite@1.5x.png and b/common/loginpage/src/sprite@1.5x.png differ
diff --git a/common/loginpage/src/sprite@1.75x.png b/common/loginpage/src/sprite@1.75x.png
index 953ffaaca..023c91876 100644
Binary files a/common/loginpage/src/sprite@1.75x.png and b/common/loginpage/src/sprite@1.75x.png differ
diff --git a/common/loginpage/src/sprite@2x.png b/common/loginpage/src/sprite@2x.png
deleted file mode 100644
index 220471006..000000000
Binary files a/common/loginpage/src/sprite@2x.png and /dev/null differ
diff --git a/common/loginpage/src/styles.less b/common/loginpage/src/styles.less
index e08ede1ee..ee57dec3e 100644
--- a/common/loginpage/src/styles.less
+++ b/common/loginpage/src/styles.less
@@ -60,7 +60,7 @@ button {
}
.rtl-font {
- #placeholder, input, button {
+ #placeholder, input, button:not(.rtl-font--skip) {
font-family: system-ui, -apple-system, "Geeza Pro", "Segoe UI", "Traditional Arabic", "Noto Sans";
}
}
@@ -241,8 +241,8 @@ h4 {
.img-el, .img-before-el:before,
.crypted .icon:before
{
- background: -webkit-image-set(data-uri('sprite.png') 1x, data-uri('sprite@1.25x.png') 1.25x,
- data-uri('sprite@1.5x.png') 1.5x, data-uri('sprite@1.75x.png') 1.75x, data-uri('sprite@2x.png') 2x) no-repeat;
+ background: -webkit-image-set(data-uri('sprite@1.25x.png') 1.25x,
+ data-uri('sprite@1.5x.png') 1.5x, data-uri('sprite@1.75x.png') 1.75x) no-repeat;
background-size: 144px auto;
}
@@ -253,8 +253,8 @@ h4 {
}
.img-format {
- background: -webkit-image-set(data-uri('formats.png') 1x, data-uri('formats@1.25x.png') 1.25x,
- data-uri('formats@1.5x.png') 1.5x, data-uri('formats@1.75x.png') 1.75x, data-uri('formats@2x.png') 2x) no-repeat;
+ background: -webkit-image-set( data-uri('formats@1.25x.png') 1.25x,
+ data-uri('formats@1.5x.png') 1.5x, data-uri('formats@1.75x.png') 1.75x) no-repeat;
background-size: 1056px auto;
}
@@ -352,7 +352,7 @@ li.menu-item {
}
&.templates {
- padding: 20px 0;
+ padding: 20px;
}
}
@@ -1348,8 +1348,8 @@ li.menu-item {
}
#idx-about-appname {
-/* font-weight: bold;*/
- text-shadow: 1px 0 0 @text-normal;
+ font-family: sans-serif;
+ font-weight: bold;
font-size: 18px;
margin: -8px 0 0 0;
}
diff --git a/common/loginpage/src/utils.js b/common/loginpage/src/utils.js
index 11dbb1916..7916ba4cc 100644
--- a/common/loginpage/src/utils.js
+++ b/common/loginpage/src/utils.js
@@ -301,6 +301,9 @@ utils.fn.parseRecent = function(arr, out = 'files') {
const _is_win = /Win/.test(navigator.platform);
const _re_name = !_is_win ? /([^/]+\.[a-zA-Z0-9]{1,})$/ : /([^\\/]+\.[a-zA-Z0-9]{1,})$/;
for (let _f_ of arr) {
+ if ( _is_win && /^\w:[\\\/]/.test(_f_.path) && /(?:\\{2,})+/.test(_f_.path) )
+ _f_.path = _f_.path.replace(/(?:\\{2,})+/g,"\\");
+
let fn = _f_.path;
if ( _re_name.test(fn) ) {
let name = _re_name.exec(_f_.path)[1],
@@ -312,8 +315,9 @@ utils.fn.parseRecent = function(arr, out = 'files') {
format: utils.parseFileFormat(_f_.type),
name: name,
descr: path,
- date: _f_.modifyed
- , path: fn
+ date: _f_.modifyed,
+ path: fn,
+ cloud: _f_.cloud,
});
_dirs_arr.indexOf(path) < 0 && _dirs_arr.push(path);
diff --git a/macos/Localization/ar_SA.xliff b/macos/Localization/ar_SA.xliff
index 751cef7db..946884598 100644
--- a/macos/Localization/ar_SA.xliff
+++ b/macos/Localization/ar_SA.xliff
@@ -147,9 +147,9 @@
مستند %ld.docx
No comment provided by engineer.
-
-
- مستند %ld.docxf
+
+
+ مستند %ld.pdf
No comment provided by engineer.
@@ -249,12 +249,12 @@
- أونلي أوفيس غير قادر على فتح ملف التوقيع الرقمي. جرّب ملفًّا آخر.
+ ONLYOFFICE غير قادر على فتح ملف التوقيع الرقمي. جرّب ملفًّا آخر.
No comment provided by engineer.
- أونلي أوفيس غير قادر على فتح مفتاح التشفير الخاص. جرّب ملفًّا آخر.
+ ONLYOFFICE غير قادر على فتح المفتاح الخاص، حاول فتح ملف آخر.
No comment provided by engineer.
@@ -501,6 +501,11 @@ We have a special offer for you.
جدول بياني جديد
No comment provided by engineer.
+
+
+ نموذج PDF جديد
+ No comment provided by engineer.
+