mirror of
https://github.com/cheeaun/phanpy.git
synced 2025-01-22 16:46:28 +01:00
New feature: cloak mode
This commit is contained in:
parent
472e1c8e22
commit
4281a91e48
4 changed files with 25 additions and 1 deletions
|
@ -208,6 +208,12 @@ function App() {
|
||||||
}
|
}
|
||||||
}, [snapStates.settings.shortcutsViewMode]);
|
}, [snapStates.settings.shortcutsViewMode]);
|
||||||
|
|
||||||
|
// Add/Remove cloak class to body
|
||||||
|
useEffect(() => {
|
||||||
|
const $body = document.body;
|
||||||
|
$body.classList.toggle('cloak', snapStates.settings.cloakMode);
|
||||||
|
}, [snapStates.settings.cloakMode]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<Routes location={nonRootLocation || location}>
|
<Routes location={nonRootLocation || location}>
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
body.cloak .name-text,
|
body.cloak .name-text,
|
||||||
body.cloak .status .content-container,
|
body.cloak .status .content-container,
|
||||||
body.cloak .account-container :is(header, main > *:not(.actions)) {
|
body.cloak .account-container :is(header, main > *:not(.actions)),
|
||||||
|
body.cloak .header-account,
|
||||||
|
body.cloak .account-block {
|
||||||
text-decoration-thickness: 1.1em;
|
text-decoration-thickness: 1.1em;
|
||||||
text-decoration-line: line-through;
|
text-decoration-line: line-through;
|
||||||
text-rendering: optimizeSpeed;
|
text-rendering: optimizeSpeed;
|
||||||
|
|
|
@ -259,6 +259,18 @@ function Settings({ onClose }) {
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<label>
|
||||||
|
<input
|
||||||
|
type="checkbox"
|
||||||
|
checked={snapStates.settings.cloakMode}
|
||||||
|
onChange={(e) => {
|
||||||
|
states.settings.cloakMode = e.target.checked;
|
||||||
|
}}
|
||||||
|
/>{' '}
|
||||||
|
Cloak mode
|
||||||
|
</label>
|
||||||
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
|
|
|
@ -51,6 +51,7 @@ const states = proxy({
|
||||||
store.account.get('settings-contentTranslationTargetLanguage') || null,
|
store.account.get('settings-contentTranslationTargetLanguage') || null,
|
||||||
contentTranslationHideLanguages:
|
contentTranslationHideLanguages:
|
||||||
store.account.get('settings-contentTranslationHideLanguages') || [],
|
store.account.get('settings-contentTranslationHideLanguages') || [],
|
||||||
|
cloakMode: store.account.get('settings-cloakMode') ?? false,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -88,6 +89,9 @@ subscribe(states, (changes) => {
|
||||||
if (path?.[0] === 'shortcuts') {
|
if (path?.[0] === 'shortcuts') {
|
||||||
store.account.set('shortcuts', states.shortcuts);
|
store.account.set('shortcuts', states.shortcuts);
|
||||||
}
|
}
|
||||||
|
if (path.join('.') === 'settings.cloakMode') {
|
||||||
|
store.account.set('settings-cloakMode', !!value);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue