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

Add option to control how long the screensaver takes to start (#6165)

* Added option to control how long the screensaver takes to start

* ESLint fixes

* Requested pull request fixes

* Alphabetized the translation string placement

* Simplified getter
This commit is contained in:
Ethan Messinger-Arns 2024-10-09 14:45:19 +00:00 committed by GitHub
parent 40d9f43049
commit 0cc2b0698a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 28 additions and 2 deletions

View file

@ -11,7 +11,7 @@ import './screensavermanager.scss';
function getMinIdleTime() {
// Returns the minimum amount of idle time required before the screen saver can be displayed
//time units used Millisecond
return 180000;
return userSettings.screensaverTime() * 1000;
}
let lastFunctionalEvent = 0;
@ -129,7 +129,7 @@ function ScreenSaverManager() {
this.show();
};
setInterval(onInterval, 10000);
setInterval(onInterval, 5000);
}
export default new ScreenSaverManager;

View file

@ -431,6 +431,19 @@ export class UserSettings {
return parseInt(this.get('backdropScreensaverInterval', false), 10) || 5;
}
/**
* Get or set the amount of time it takes to activate the screensaver in seconds. Default 3 minutes.
* @param {number|undefined} [val] - The amount of time it takes to activate the screensaver in seconds.
* @return {number} The amount of time it takes to activate the screensaver in seconds.
*/
screensaverTime(val) {
if (val !== undefined) {
return this.set('screensaverTime', val.toString(), false);
}
return parseInt(this.get('screensaverTime', false), 10) || 180;
}
/**
* Get or set library page size.
* @param {number|undefined} [val] - Library page size.
@ -650,6 +663,7 @@ export const skin = currentSettings.skin.bind(currentSettings);
export const theme = currentSettings.theme.bind(currentSettings);
export const screensaver = currentSettings.screensaver.bind(currentSettings);
export const backdropScreensaverInterval = currentSettings.backdropScreensaverInterval.bind(currentSettings);
export const screensaverTime = currentSettings.screensaverTime.bind(currentSettings);
export const libraryPageSize = currentSettings.libraryPageSize.bind(currentSettings);
export const maxDaysForNextUp = currentSettings.maxDaysForNextUp.bind(currentSettings);
export const enableRewatchingInNextUp = currentSettings.enableRewatchingInNextUp.bind(currentSettings);