1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

Merge pull request #3560 from thornbill/refactor-transparency

Move backdrop transparency method to component
This commit is contained in:
Bill Thornton 2022-04-19 23:26:12 -04:00 committed by GitHub
commit 4b7f615001
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 66 additions and 49 deletions

View file

@ -295,9 +295,37 @@ import './backdrop.scss';
/* eslint-enable indent */
export default {
setBackdrops: setBackdrops,
setBackdrop: setBackdrop,
clearBackdrop: clearBackdrop,
externalBackdrop: externalBackdrop
/**
* @enum TransparencyLevel
*/
export const TRANSPARENCY_LEVEL = {
Full: 'full',
Backdrop: 'backdrop',
None: 'none'
};
/**
* Sets the backdrop, background, and document transparency
* @param {TransparencyLevel} level The level of transparency
*/
export function setBackdropTransparency(level) {
const backdropElem = getBackdropContainer();
const backgroundElem = getBackgroundContainer();
if (level === TRANSPARENCY_LEVEL.Full || level === 2) {
clearBackdrop(true);
document.documentElement.classList.add('transparentDocument');
backgroundElem.classList.add('backgroundContainer-transparent');
backdropElem.classList.add('hide');
} else if (level === TRANSPARENCY_LEVEL.Backdrop || level === 1) {
externalBackdrop(true);
document.documentElement.classList.add('transparentDocument');
backgroundElem.classList.add('backgroundContainer-transparent');
backdropElem.classList.add('hide');
} else {
externalBackdrop(false);
document.documentElement.classList.remove('transparentDocument');
backgroundElem.classList.remove('backgroundContainer-transparent');
backdropElem.classList.remove('hide');
}
}