Rebrand the Android TV app as Wolfskin #16
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fm/wolfskin-2-rebrand"
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?
Outcome
Rebrand the specified Android TV surfaces as Wolfskin while retaining Wholphin attribution and the existing Kotlin package/namespace.
Closes justinzeus/wolfskin#2
Changes
#07070a. Use a rectangular bitmap on API 26+ instead of an adaptive-icon mask, so the wordmark is not cropped.WOLFSKIN = 8to the stored theme enum and the matching preference array. Make it the fresh-install/default selection; retain all upstream themes and existing saved selections. Integrate the new theme into watched badges, sliders, switches and navigation colours. Watched checks use dark text on the lilac badge for readability..github/workflows, Kotlin package and namespace unchanged.Verification on final head
c98a9756Both required referee targets ran once on this final head, inside Docker with the shared-cache lock; no host SDK and no release signing:
flock /tmp/wolfskin-gradle.lock make apk-debugBUILD SUCCESSFUL in 1m 13s; 73 actionable tasks: 12 executed, 61 up-to-dateflock /tmp/wolfskin-gradle.lock make testBUILD SUCCESSFUL in 3m 1s; 383 tests across 49 suites, 0 failures, 0 errors, 0 skippedaapt2 dump badging: labelWolfskin (Debug), adaptive launcher resource and leanback banner resource present; packagecom.github.damontecres.wholphin.debugretained.make apk.Attached raster proof
Raster provenance
Source:
/root/fm-home/data/wolf-logo-gen/master-1024.png.SHA-256:
eabb6eb19ceb1088c1eb61ab8e8c079804d7bd02139a1308f70eb5f8b394f2e5.Pillow/Lanczos resizing and circular masks only; banner wordmark uses DejaVu Sans Bold. Launcher/round PNG sizes: 48, 72, 96, 144 and 192 px. Adaptive foreground PNG sizes: 108, 162, 216, 324 and 432 px, with the wolf placed in the central 60 dp of the 108 dp layer.
Complete string inventory
77 changed or new string values below. The
app_theme_colorsarray also gains@string/wolfskin_themeat index 8; existing indices remain unchanged. Placeholders and translated wording are otherwise preserved.app/src/debug/res/values/strings.xmlapp_nameapp/src/main/res/values/strings.xmlapp_nameapp/src/main/res/values/strings.xmlapp_name_longapp/src/main/res/values/strings.xmldisplay_preset_defaultapp/src/main/res/values/strings.xmldisplay_preset_compactapp/src/main/res/values/strings.xmlupdated_toastapp/src/main/res/values-cs/strings.xmldisplay_preset_defaultapp/src/main/res/values-cs/strings.xmldisplay_preset_compactapp/src/main/res/values-da/strings.xmldisplay_preset_defaultapp/src/main/res/values-da/strings.xmldisplay_preset_compactapp/src/main/res/values-da/strings.xmlupdated_toastapp/src/main/res/values-de/strings.xmldisplay_preset_defaultapp/src/main/res/values-de/strings.xmldisplay_preset_compactapp/src/main/res/values-de/strings.xmlupdated_toastapp/src/main/res/values-es/strings.xmlupdated_toastapp/src/main/res/values-et/strings.xmldisplay_preset_defaultapp/src/main/res/values-et/strings.xmldisplay_preset_compactapp/src/main/res/values-et/strings.xmlupdated_toastapp/src/main/res/values-fr/strings.xmldisplay_preset_defaultapp/src/main/res/values-fr/strings.xmldisplay_preset_compactapp/src/main/res/values-fr/strings.xmlupdated_toastapp/src/main/res/values-hr/strings.xmldisplay_preset_defaultapp/src/main/res/values-hr/strings.xmldisplay_preset_compactapp/src/main/res/values-hr/strings.xmlupdated_toastapp/src/main/res/values-in/strings.xmldisplay_preset_defaultapp/src/main/res/values-in/strings.xmldisplay_preset_compactapp/src/main/res/values-in/strings.xmlupdated_toastapp/src/main/res/values-it/strings.xmldisplay_preset_defaultapp/src/main/res/values-it/strings.xmldisplay_preset_compactapp/src/main/res/values-it/strings.xmlupdated_toastapp/src/main/res/values-iw/strings.xmldisplay_preset_defaultapp/src/main/res/values-iw/strings.xmldisplay_preset_compactapp/src/main/res/values-iw/strings.xmlupdated_toastapp/src/main/res/values-nb-rNO/strings.xmldisplay_preset_defaultapp/src/main/res/values-nb-rNO/strings.xmldisplay_preset_compactapp/src/main/res/values-nb-rNO/strings.xmlupdated_toastapp/src/main/res/values-nl/strings.xmldisplay_preset_defaultapp/src/main/res/values-nl/strings.xmldisplay_preset_compactapp/src/main/res/values-nl/strings.xmlupdated_toastapp/src/main/res/values-nn/strings.xmldisplay_preset_defaultapp/src/main/res/values-nn/strings.xmldisplay_preset_compactapp/src/main/res/values-pl/strings.xmldisplay_preset_defaultapp/src/main/res/values-pl/strings.xmldisplay_preset_compactapp/src/main/res/values-pl/strings.xmlupdated_toastapp/src/main/res/values-pt/strings.xmldisplay_preset_defaultapp/src/main/res/values-pt/strings.xmldisplay_preset_compactapp/src/main/res/values-pt/strings.xmlupdated_toastapp/src/main/res/values-pt-rBR/strings.xmldisplay_preset_defaultapp/src/main/res/values-pt-rBR/strings.xmldisplay_preset_compactapp/src/main/res/values-pt-rBR/strings.xmlupdated_toastapp/src/main/res/values-ru/strings.xmldisplay_preset_defaultapp/src/main/res/values-ru/strings.xmldisplay_preset_compactapp/src/main/res/values-ru/strings.xmlupdated_toastapp/src/main/res/values-sk/strings.xmldisplay_preset_defaultapp/src/main/res/values-sk/strings.xmldisplay_preset_compactapp/src/main/res/values-sk/strings.xmlupdated_toastapp/src/main/res/values-sl/strings.xmlupdated_toastapp/src/main/res/values-sv/strings.xmldisplay_preset_compactapp/src/main/res/values-sv/strings.xmldisplay_preset_defaultapp/src/main/res/values-sv/strings.xmlupdated_toastapp/src/main/res/values-th/strings.xmldisplay_preset_defaultapp/src/main/res/values-th/strings.xmldisplay_preset_compactapp/src/main/res/values-tr/strings.xmldisplay_preset_defaultapp/src/main/res/values-tr/strings.xmldisplay_preset_compactapp/src/main/res/values-tr/strings.xmlupdated_toastapp/src/main/res/values-uk/strings.xmldisplay_preset_defaultapp/src/main/res/values-uk/strings.xmlupdated_toastapp/src/main/res/values-uk/strings.xmldisplay_preset_compactapp/src/main/res/values-zh-rCN/strings.xmldisplay_preset_defaultapp/src/main/res/values-zh-rCN/strings.xmldisplay_preset_compactapp/src/main/res/values-zh-rCN/strings.xmlupdated_toastapp/src/main/res/values-zh-rTW/strings.xmldisplay_preset_defaultapp/src/main/res/values-zh-rTW/strings.xmldisplay_preset_compactapp/src/main/res/values-zh-rTW/strings.xmlupdated_toastapp/src/main/res/values/wolfskin.xml (new)wolfskin_themeapp/src/main/res/values/wolfskin.xml (new)wolfskin_upstream_creditapp/src/main/res/values/wolfskin.xml (new)wolfskin_upstream_urlAssistance disclosure
AI-assisted implementation, verification and PR description.
Review verdict at
c98a9756acba41eb033465874de10acd72345c89: APPROVE (design and code). No blockers.master-1024.png(MAE 0.00; round icon is the same art at about 81%). No redraw. The banner wordmark is legible and nothing is cropped.WOLFSKIN = 8is appended to the proto, so stored values 0-7 are unchanged. The new default only applies when the datastore is created fresh, so existing saved themes are untouched. Lilac#D2BCFFon#07070Ahas contrast 11.9:1.make test: BUILD SUCCESSFUL, 383 tests, 0 failures.Notes, none blocking: the Polish
aboutstring still says "O Wholphin"; the About link can crash on a TV with no browser (openUriis unguarded); the Kotlin crash dialog and the Jellyfin client name still say Wholphin; masked icons cut the wolf's shoulder, which is inherent to the master.Full report:
/root/fm-home/data/review-wolfskin-16/report.md