Repository navigation
Conversation
… dashboard answers it Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
maintainer-bot review · this one needs a maintainer decision · Leans: merge (72%) Thank you for the careful work on why the hold has to be timed inside the service, and for testing it on a real sabrina. This looks ready to merge as an off-by-default switch, much like home_long_press_home. Why it goes to a maintainer: changes the Home/launch path (HomeKeyService.java), which usually needs a run on a real TV (confidence 0.72 < 0.85). Checks
This is a suggestion; a maintainer makes the final call. A maintainer can comment Reviewed by maintainer-bot · runs on 0G Private Computer |
|
@Belseck thank you, this is careful work: timing the hold inside HomeKeyService because the filter never sees the repeats is a neat find, and the sabrina test is clear. With about 1.7 KB of launcher room left and nothing freeing more, the core only takes fixes most owners need, so this one fits best in your fork. A one-line SHOWCASE.md row pointing at it is very welcome. |
On Google TV, Android sends a held Home to
android.app.action.TOGGLE_NOTIFICATION_HANDLER_PANEL, and only the stock launcher's dashboard (launcherx/.dashboard.DashboardHandleron a Chromecast with Google TV 4K) answers it. Oncedebloat.txtdisables launcherx, a held Home does nothing.home_hold_panel(off by default,config.xmlor a theme) makesHomeKeyServiceopen the existingQuickSettingsActivityon a held Home, only where nothing answers that action, so a TV that still has its dashboard keeps it.The hold is timed in the service (
getLongPressTimeout() + 50 ms) because the accessibility filter only sees the first DOWN and the UP: Android makes the repeats after it, sogetRepeatCount()never reaches 1 there. The press is not consumed: a short one still opens Home through Android, and Android consumes the long one. With the switch off nothing new runs; the manifest gains a<queries>entry for the action, no permission.Tested on: Chromecast with Google TV 4K (
sabrina), Google TV 14,UTTC.250917.004, launcherx disabled,HOME_KEY_SERVICE=1, a build with the switch on. Home held on the real remote opened the panel:APK 588,429 B against 588,129 B without the change (+300 B), under the 589,824 B gate; still 574 KB, so
STATSand the README sizes stay. Launcher unit tests (withHomeHoldPanelTest), lint (0 errors),test_switches,test_helper_tableandtest_home_long_press_homepass; the suites that need a POSIX shell are skipped or fail on Windows the same way without this change.If this touches the launcher
values/strings.xmland the othervalues-*folders — none addedconfig.xmlor a theme, not in codeIf this adds a theme key (a switch)
docs/switches.mdRelated
One of five pull requests that came out of a Chromecast with Google TV 4K and the ideas discussion #3246:
quick_panel_sheet, the quick panel as a sheet (closed: the core keeps its panel's look, so it stays in the fork)#3284 (the panel as a full-height sheet) is closed, so this one no longer needs a rebase over it.
🤖 Generated with Claude Code