Simplify UserBackground code

This commit is contained in:
djmaze 2021-07-20 16:49:03 +02:00
parent e13337e247
commit 18cedbabad
4 changed files with 14 additions and 32 deletions

View file

@ -38,7 +38,6 @@ import {
} from 'Common/Cache';
import {
userBackground,
mailBox,
root,
openPgpWorkerJs,
@ -112,16 +111,6 @@ class AppUser extends AbstractApp {
lastTime = currentTime;
}, interval);
if (SettingsGet('UserBackgroundHash')) {
setTimeout(() => {
const img = userBackground(SettingsGet('UserBackgroundHash'));
if (img) {
$htmlCL.add('UserBackground');
doc.body.style.backgroundImage = "url("+img+")";
}
}, 1000);
}
const fn = (ev=>$htmlCL.toggle('rl-ctrl-key-pressed', ev.ctrlKey)).debounce(500);
['keydown','keyup'].forEach(t => doc.addEventListener(t, fn));

View file

@ -70,14 +70,6 @@ export function change(email) {
return serverRequest('Change') + encodeURIComponent(email) + '/';
}
/**
* @param {string} hash
* @returns {string}
*/
export function userBackground(hash) {
return serverRequestRaw('UserBackground', hash);
}
/**
* @param {string} lang
* @param {boolean} isAdmin

View file

@ -2,9 +2,9 @@ import ko from 'ko';
import { SaveSettingsStep, UploadErrorCode, Capa } from 'Common/Enums';
import { changeTheme, convertThemeName } from 'Common/Utils';
import { userBackground, themePreviewLink, serverRequest } from 'Common/Links';
import { themePreviewLink, serverRequest } from 'Common/Links';
import { i18n } from 'Common/Translator';
import { doc, $htmlCL, Settings } from 'Common/Globals';
import { Settings } from 'Common/Globals';
import { ThemeStore } from 'Stores/Theme';
@ -38,16 +38,6 @@ export class ThemesUserSettings {
Theme: value
});
});
this.background.hash.subscribe((value) => {
if (!value) {
$htmlCL.remove('UserBackground');
doc.body.removeAttribute('style');
} else {
$htmlCL.add('UserBackground');
doc.body.style.backgroundImage = "url("+userBackground(value)+")";
}
});
}
onBuild() {

View file

@ -1,6 +1,7 @@
import ko from 'ko';
import { $htmlCL, leftPanelDisabled, Settings, SettingsGet } from 'Common/Globals';
import { doc, $htmlCL, leftPanelDisabled, Settings, SettingsGet } from 'Common/Globals';
import { isArray } from 'Common/Utils';
import { serverRequestRaw } from 'Common/Links';
export const ThemeStore = {
themes: ko.observableArray(),
@ -25,3 +26,13 @@ export const ThemeStore = {
ThemeStore.theme = ko.observable('').extend({ limitedList: ThemeStore.themes });
ThemeStore.isMobile.subscribe(value => $htmlCL.toggle('rl-mobile', value));
ThemeStore.userBackgroundHash.subscribe(value => {
if (value) {
$htmlCL.add('UserBackground');
doc.body.style.backgroundImage = "url("+serverRequestRaw('UserBackground', value)+")";
} else {
$htmlCL.remove('UserBackground');
doc.body.removeAttribute('style');
}
});