From 8b42f1919e2f9ca641c3b5281ee325a860c27bee Mon Sep 17 00:00:00 2001 From: Patrice Haltaya Date: Mon, 9 Nov 2026 22:56:12 +0100 Subject: [PATCH] fix(tile): open the drop on a locked Android 14+ phone; bind the tile only when tapped MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two defects of the quick drop tile, found testing 3.4.0 before publication: - On a locked phone, Android 16: the code was asked, the phone unlocked onto the home screen, and the drop never opened — `unlockAndRun`'s callback did not come back. Same with the tile as merged. From Android 14, `startActivityAndCollapse(PendingIntent)` waits for the unlocking itself: used alone there. `unlockAndRun` stays below 14, where it works (Android 11 emulator). - M6 of the 3-axes audit, now measured: with the tile added and the process dead, pulling down the notifications alone restarted the app (S9) — and a start purges cache/exports, where a shared sealed note or export may still wait for the receiving app. The tile is now an ACTIVE tile: bound when tapped only; its resting state is set when added and whenever bound. Measured: S9 (Android 10, no screen lock), emulators Android 11 and 16 with a PIN — the panel no longer starts the process; the tile shows as before; tapped unlocked, it opens the drop; tapped locked, the code is asked and the drop opens after it, and nothing opens without it. docs/15: these two, and the full instrumented suite on the S24 (585/589; the one failure is a search test typing while Samsung's keyboard starts, 3/3 on an Android 16 emulator, to confirm by hand). Co-Authored-By: Claude Opus 5.5 --- app/src/main/AndroidManifest.xml | 4 ++ .../notes_tech/ui/depot/TuileDeDepot.kt | 34 +++++++++++-- docs/15-VERSION-3.4.md | 48 ++++++++++++++----- 3 files changed, 70 insertions(+), 16 deletions(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 719859e..b02eb82 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -102,6 +102,7 @@ 3.4.0 (D-042) — the quick settings tile of the blind drop. Exported for the system only: `BIND_QUICK_SETTINGS_TILE` is held by the system UI, no app can bind it. A permission REQUIRED of the caller, not one the app asks for: the app's own permissions do not change. + ACTIVE: bound when tapped, not whenever the panel shows it — see `TuileDeDepot`. --> +