feat: loop slideshows (#25462)

* Add Repeat to the slideshow in the web UI.

* Fix typo in SlideshowSettingsModal description prop

Fixed spelling

---------

Co-authored-by: generalzero <generalzero@generalzero.org>
This commit is contained in:
Avalanche Ridings
2026-01-23 23:09:29 -05:00
committed by GitHub
parent d0d269677e
commit 497003ec57
4 changed files with 18 additions and 0 deletions
@@ -20,6 +20,7 @@
slideshowLook,
slideshowTransition,
slideshowAutoplay,
slideshowRepeat,
slideshowState,
} = slideshowStore;
@@ -36,6 +37,7 @@
let tempSlideshowLook = $state($slideshowLook);
let tempSlideshowTransition = $state($slideshowTransition);
let tempSlideshowAutoplay = $state($slideshowAutoplay);
let tempSlideshowRepeat = $state($slideshowRepeat);
const navigationOptions: Record<SlideshowNavigation, RenderedOption> = {
[SlideshowNavigation.Shuffle]: { icon: mdiShuffle, title: $t('shuffle') },
@@ -67,6 +69,7 @@
$slideshowLook = tempSlideshowLook;
$slideshowTransition = tempSlideshowTransition;
$slideshowAutoplay = tempSlideshowAutoplay;
$slideshowRepeat = tempSlideshowRepeat;
$slideshowState = SlideshowState.PlaySlideshow;
onClose();
};
@@ -104,6 +107,10 @@
<Switch bind:checked={tempSlideshowTransition} />
</Field>
<Field label={$t('slideshow_repeat')} description={$t('slideshow_repeat_description')}>
<Switch bind:checked={tempSlideshowRepeat} />
</Field>
<Field label={$t('duration')}>
<NumberInput min={1} bind:value={tempSlideshowDelay} />
<HelperText>{$t('admin.slideshow_duration_description')}</HelperText>