[Roll Forward] Block background custom toasts
Previous CL (ag/9699132) broke CTS ToastTest and was reverted (ag/9754500). This was because the test was posting a background toast and verifying it wasn't clickable. Test has been updated to use a foreground toast in ag/9754274 and I will also look into having it be executed in presubmit.(b/144810971). -- Previous CL description (updated "Test:" lines) To assess app compatibility problems early on, this CL blocks background custom toasts in a non-secure way. We create a new method in the AIDL called enqueueTextToast() that now contain the same parameters as enqueueToast(), receiving the view created inside the app's process. But this method will, in the future, contain a CharSequence instead of ITransientNotification, for window creation inside the system. We use PlatformCompat infrastructure to check if the change is enabled. I learned with this change that if user blocks notifications for an app, it won't be able to show background toasts, allowing me to re-use the foreground check that was already in place. This change will display a text toast (from the system) in case the app's custom toast gets blocked, this is temporary to get feedback from dogfood. Test: With sample app, verify that: 1. Posting text toast in bg works 2. Posting custom toast in fg works 3. Posting custom toast in bg does NOT work Test: atest CtsToastTestCases CtsWindowManagerDeviceTestCases:ToastTest CtsWidgetTestCases:ToastTest CtsToastLegacyTestCases Test: Working on CTS Bug: 128611929 Change-Id: I25c6339c6adeb907878596332f57e2fa229bfda9
Loading
Please register or sign in to comment