fix(phone): restore Blackview launcher for recents gesture

com.blackview.launcher hosts com.android.quickstep.RecentsActivity —
removing it with pm uninstall breaks swipe-up-for-recent-apps system-wide.

- Remove com.blackview.launcher from batch3_bloatware_uninstall.sh target list
- Remove it from LAUNCHER_COMPETITORS (launcher enforcer no longer disables it)
- Add it to WHITELIST so focus daemon never disables it

The Blackview launcher is still not the default HOME app; Minimalist Phone
remains pinned via launcher_enforcer.sh.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Krzysztof kuhy Rudnicki 2026-05-31 16:27:08 +02:00
parent dcbfbc3ca4
commit 4558a2ac4a
3 changed files with 45 additions and 4 deletions

View File

@ -0,0 +1,31 @@
{
"intent": "Restore swipe-up-for-recent-apps gesture broken by removing com.blackview.launcher.",
"scope": [
"phone_focus_mode/batch3_bloatware_uninstall.sh",
"phone_focus_mode/config.sh"
],
"changes": [
"Discovered com.blackview.launcher hosts com.android.quickstep.RecentsActivity (mRecentsComponent in dumpsys activity recents)",
"Removed com.blackview.launcher and overlay from batch3_bloatware_uninstall.sh target list with explanatory comment",
"Removed com.blackview.launcher from LAUNCHER_COMPETITORS so launcher_enforcer does not disable it",
"Added com.blackview.launcher and overlay to WHITELIST so focus daemon never disables them"
],
"verification": [
{
"command": "adb shell dumpsys activity recents | grep mRecentsComponent",
"result": "pass",
"evidence": "mRecentsComponent=ComponentInfo{com.blackview.launcher/com.android.quickstep.RecentsActivity}"
},
{
"command": "adb shell su -c 'sh /data/local/tmp/focus_mode/focus_ctl.sh status'",
"result": "pass",
"evidence": "Daemon RUNNING, No apps currently disabled by focus mode"
}
],
"risks": [
"com.blackview.launcher remains installed and enabled; it may appear in launcher picker dialogs, but launcher_enforcer still pins Minimalist Phone as default HOME"
],
"rollback": [
"pm uninstall --user 0 com.blackview.launcher (restores broken state — do not do this)"
]
}

View File

@ -72,8 +72,12 @@ BV_BLOATWARE=(
com.blackview.gamemode # Game mode panel
com.blackview.health # BV health tracker
com.blackview.helper # BV AI assistant / helper
com.blackview.launcher # BV launcher (competitor to Minimalist Phone)
com.blackview.launcher.overlay.framework
# NOTE: com.blackview.launcher is intentionally NOT removed here.
# Blackview embeds com.android.quickstep.RecentsActivity inside this APK —
# removing it kills the "swipe up for recent apps" gesture system-wide.
# Focus mode already disables it as a HOME competitor via LAUNCHER_COMPETITORS.
# com.blackview.launcher
# com.blackview.launcher.overlay.framework
com.blackview.leftscreen # Left swipe panel
com.blackview.notebook # BV notes app
com.blackview.qrcode # QR scanner (camera does it natively)

View File

@ -197,9 +197,10 @@ export LAUNCHER_ACTIVITY_FILE="/data/adb/focus_mode/minimalist_launcher.activity
# Competing launchers to disable so the "pick a launcher" dialog has
# nothing else to offer. Matched exactly; add more with `focus_ctl.sh
# launcher-disable-other <pkg>`.
# com.blackview.launcher is intentionally excluded from LAUNCHER_COMPETITORS:
# Blackview embeds com.android.quickstep.RecentsActivity inside this APK,
# so disabling it kills the system-wide "swipe up for recent apps" gesture.
export LAUNCHER_COMPETITORS="
com.blackview.launcher
com.blackview.launcher.overlay.framework
com.android.launcher
com.android.launcher3
com.google.android.apps.nexuslauncher
@ -220,6 +221,11 @@ export WHITELIST="
# becomes blank. Keep this in sync with LAUNCHER_PACKAGE above.
com.qqlabs.minimalistlauncher
# --- Blackview Recents (MUST be whitelisted, do NOT remove) ---
# RecentsActivity lives in this APK; removing it breaks swipe-up-for-recents.
com.blackview.launcher
com.blackview.launcher.overlay.framework
# --- Companion status-notification app (MUST be whitelisted) ---
# Provides the persistent focus-mode notification + Re-check-now button.
# If disabled, the status notification vanishes and the recheck action