Brand logo: one locked image layer per scene above the background, image from App Settings
- Source.IsBrandLogo persisted (additive migration); layer healed on load, removal blocked - Image stored as an asset; settings keep the asset id and file name - App Settings: Brand Logo file field with Browse - Default placement top-left; per-scene eye uses the existing element visibility Test: BrandLogoTests; layout/background tests pass (34). Not pushed.
This commit is contained in:
@@ -1296,3 +1296,12 @@ persisted chat or reward payloads."
|
||||
Guard: `ytLive.Tests/TransitionFadeTests.cs`.
|
||||
- **Planned next (see TASKS.md):** transition picker in App Settings, Wipe, Move (persistent layers),
|
||||
brand logo layer, GPU cube (capability-gated).
|
||||
|
||||
## Brand logo (2026-10-27)
|
||||
|
||||
- One locked image layer per scene, `Source.IsBrandLogo` (persisted column, additive migration), named
|
||||
"Brand logo", directly above the background. Healed on load by `EnsureBrandLogos`, which also copies the
|
||||
App Settings image into every scene's layer. Removal is blocked like the background.
|
||||
- The image lives in the asset table; the settings table keeps its asset id and file name
|
||||
(`BrandLogoAssetId` / `BrandLogoFileName`). Eye visibility is the layer's ordinary per-scene `IsVisible`.
|
||||
- Default placement: top-left (32,32), 240x120 master px.
|
||||
|
||||
Reference in New Issue
Block a user