UI/UX: Deliver background feedback through regular notifications - #6204
eliotcougar wants to merge 1 commit into
Conversation
|
@2dust: With this PR, the out-of-scope code extraction from the ongoing accessibility work is complete. |
|
Compatibility note for #6195: the two branches currently have a content conflict in Preferred reconciliation: merge/rebase #6195 first, then simplify this PR's transient-message channel setup to call #6195's |
Extract the non-accessibility delivery layer from the all-10 branch. Keep foreground snackbar presentation intact and replace its platform-toast fallback with one permission-aware notification that replaces previous feedback, opens the app on tap and expires after ten seconds on Android 8+. Send terminal service events through acknowledged, package-scoped broadcasts. A resumed snackbar host acknowledges the presentation handoff; repository, widget and tile state consumers do not suppress the notification fallback. Remove duplicate ViewModel messages, clear stale feedback after foreground delivery, report VPN setup failures and avoid successful-stop feedback during failed-start cleanup. Reuse all nine locale variants for the new Other notifications channel and terminal Service stopped wording. Existing-channel localization, live regions, TalkBack semantics, connection-test ownership and native lifecycle redesign remain outside this branch. Validation: 72 JVM tests, Kotlin compilation and x86_64 debug assembly passed. Final-APK emulator probes covered visible foreground acknowledgement, background replacement and expiry, channel preservation, denied notification permission, and stale-notification clearing. Real Lab VPN notification restart and stop produced the expected background feedback. Lint remains blocked by four unchanged upstream NewApi errors in root process waiting and navigation-bar themes; broader root/proxy-only and handover runtime matrices were not run.
db26c93 to
a903355
Compare
|
先不说这个 pr |
I was going to suggest that as well... The main problem is that toasts work only when the app is in foreground. Some actions can happen in the background and may benefit from showing a notification to the user. |
|
Superseded by #6227 |
Keep foreground snackbar presentation intact and replace its platform-toast fallback with one permission-aware notification that opens the app on tap and expires after ten seconds on Android 8+.
Send terminal service events through acknowledged, package-scoped broadcasts. A resumed snackbar host acknowledges the presentation handoff; repository, widget and tile state consumers do not suppress the notification fallback. Remove duplicate ViewModel messages, clear stale feedback after foreground delivery, report VPN setup failures and avoid successful-stop feedback during failed-start cleanup.