mirror of
https://github.com/niels-emmer/wall-cast.git
synced 2026-09-13 23:53:36 +02:00
[PR #5] [MERGED] feat(rotator): configurable fade speed #5
Labels
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
github-mirrors/wall-cast#5
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/niels-emmer/wall-cast/pull/5
Author: @niels-emmer
Created: 3/23/2026
Status: ✅ Merged
Merged: 3/23/2026
Merged by: @niels-emmer
Base:
main← Head:feature/rotator-fade-speed📝 Commits (1)
7c7a9c6feat(rotator): add configurable fade speed setting📊 Changes
7 files changed (+73 additions, -1 deletions)
View changed files
📝
backend/app/wall_config.py(+2 -0)📝
config/wall-cast.example.yaml(+5 -0)📝
docs/config-reference.md(+2 -0)📝
frontend/src/App.tsx(+2 -0)📝
frontend/src/admin/AdminPanel.tsx(+59 -0)📝
frontend/src/types/config.ts(+2 -0)📝
frontend/src/widgets/rotate/RotatorWidget.tsx(+1 -1)📄 Description
Summary
shared.fade_speedconfig key (float, seconds) that controls the cross-fade animation duration for all rotator widgets across all screens0.8s) becomes the default ("Normal")How it works
fade_speedin the merged config response and seeds the default config with0.8App.tsxsets a CSS variable--rotator-fade-durationon the grid root elementRotatorWidgetreadsvar(--rotator-fade-duration, 0.8s)— the hardcoded fallback means it still works on old configs without the keyshared.fade_speedin the YAML; SSE hot-reload propagates it to all screens instantlyTest plan
shared.fade_speedappears in the YAML after savingfade_speedstill work (defaults to 0.8 s)🤖 Generated with Claude Code
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.