Repository navigation
Launcher: pick a theme on the TV, with device.json for keys kept across themes - #3516
thatRailsGuy wants to merge 1 commit into
Conversation
…ss themes tools/theme-catalog.sh (and its PowerShell twin) puts theme folders on the TV under themes/<name>/; Launcher settings then shows a Theme row that copies the picked one over the active theme, as theme.sh would, and clears the on-TV choices through theme_revision. A device.json is laid over every theme, so a TV's app_keys and live_tv_package survive a switch. Without a catalog the row is hidden and nothing new runs. Tried on a TCL 65QM6K (Google TV, Android 14) with all 28 themes. Prior art: the on-device theme picker in abhishek00235's fork (SHOWCASE.md).
|
maintainer-bot review · this one needs a maintainer decision · Leans: close (60%) Thank you for the careful device.json layer that keeps a TV's app_keys across theme switches, and for testing it with all 28 themes on a real QM6K. An on-TV theme picker is a bigger launcher feature than the small core takes, so we suggest it lives in your fork with a row in SHOWCASE.md, as the earlier on-TV theme reader did. Why it goes to a maintainer: confidence 0.60 is below 0.65. Checks
This is a suggestion; a maintainer makes the final call. A maintainer can comment Reviewed by maintainer-bot · runs on 0G Private Computer |
|
@thatRailsGuy thank you for the device.json layer that keeps a TV's app_keys across switches, and for checking all 28 themes with the real remote on your QM6K. At +1.9 KB the picker is bigger than the room the core launcher has left, so it fits best in your fork. A one-line SHOWCASE.md row with your screenshot is very welcome, next to the earlier on-TV picker. |

tools/theme-catalog.sh(andtheme-catalog.ps1) puts theme folders on the TV underthemes/<name>/without making any of them active. Launcher settings then shows a Theme row that copies the picked one over the active theme, astheme.shwould, and writestheme_revisionaspick:<name>so the existing sync clears the on-TV choices and the row can show the current name. Adevice.jsonis laid over every theme (pushed or picked), so a TV'sapp_keysandlive_tv_packagesurvive a switch. Without a catalog the row stays hidden and nothing new runs. Docs:themes/README.md#switching-themes-on-the-tv,docs/launcher.md, and a Tools row in the README.Prior art: the on-device picker in abhishek00235's fork (SHOWCASE.md), redone on current main, with folders found on the TV instead of a fixed list and the device layer added.
APK: 587,073 → 588,965 B (+1,892, 859 B under the gate).
Tested on: TCL 65QM6K (Google TV), Android 14, build UTT2.250416.001. All 28 themes pushed with the catalog script, switched between several on the TV, and the remote's
app_keysbuttons checked with the real remote after switching.If this touches the launcher
values/strings.xmland the othervalues-*folders: English and Hebrew only (test_hebrew_resourcesrequires it). Adding the 20 fuller locales cost ~940 B and left the APK 3 B under the gate, so I left them for the translation workflowconfig.xmlor a theme, not in codeChecks:
./gradlew testReleaseUnitTest lintRelease assembleReleaseclean (newThemeCatalogTest),python -m unittest discover -s tests: 3097 tests OK.