We don't allow apps to add multiple toast windows to
prevent an attacker to keep adding the same toast as
a workaround for our measure to ensure toast windows
are removed after a timeout. The may cause backwards
compatibility issue for apps that add multiple toasts.
While we need to fix the security vulnerability it is
desirable to make the fix as backwards compatible as
possible. This change allows the focused app to add
as many toast windows as it wants since they will be
removed after the timeout and once the app is not the
one the user uses it will lose the multiple toast add
capability.
bug:30150688
Change-Id: I2d9295926cb49b5bb80c7af2546872ff8ca22c64
(cherry picked from commit 296a60acc3d67cea23bae167dbcb51c0d0d60b23)
Also don't throw when can't verify listener.
And update mocking in tests to clean state between tests.
Bug: 36783632
Fixes: 37263567
Test: runtest-systemui-notification, create a secondary user
Change-Id: I5ec95539c9859b67b8fbc7e6a85334e08e6b5a98
in UsageStatsService, to fix a flaky test.
Bug: 35763877
Test: manually ran the flaky tests for 50 times, to verify that it is
stable.
Change-Id: I56d355bb283275f33bf7a24d0cc5b6454b99a35e
(cherry picked from commit 434f76a8d739060b5c8e96b4824687c19b94ee79)
See skbug.com/6481
With pixelrefs now always (logically) locked, we no longer override
onNewLockPixels/onUnlockPixels. We also must now pass our
address/rowBytes to the base constructor.
These changes allow us to remove duplicate fields in the hwui Bitmap
subclass -- mRowBytes and mColorTable, since these fields are now always
available from the base-class.
However, since this subclass still wants to overwrite const fields in
the base-class (its reconfigure api), change the impl to use the newly
added private method (android_only_reset) to encapsulate this.
Test: hwui_unit_tests and CtsGraphicsTestCases pass
Change-Id: I57a3af1135580513b708f35549a6defb7ac6c04e
- Limit removing the task immediately to when there is a single task
overlay activity. Certain activities may not work when force-removed
before the clean up work in removeTask() completes especially if the
finishing activity is a part of a launch process (ie. trampoline
activity). This behaviour is only needed for finishing activities that
have actual task overlays.
Bug: 36761629
Test: Launch SiriusXM, and check that it loads
Change-Id: I34c812ab111819e858fe36b6359f82da717ba459
We were previously using exit(1) when code servicing an IPC threw
any subclass of Error. That made it much harder to diagnose cases
where that happened because :
- exit runs global destructors, which might prove problematic (see
linked bug).
- such exits are often due to bugs in application code (things like
AssertionErrors being thrown) but aren't flagged as such by our
infrastructure, or by humans for that matter.
To address both issues, use FatalError() so that the runtime can dump
more useful information to the logs before it aborts.
Test: manual
Bug: 36813403
Change-Id: I5826090229109dc7cb19f0c3571c609f990cd36a
A single TTC font or variation font can be used for multiple entry
of FontResult. To share the file contents, assign same URI for those.
Bug: 36494487
Test: android.provider.FontsContractTest passes
Change-Id: Ibf24f216179a6481dee1801cd2dfb68c4bb38fac
Renames the instant apps setting to reflect what it is for.
Adds the SystemApi annotation to make this field visible
to the resolver and installer.
Test: existing tests
Change-Id: I1651bb101d69bdfdaa63c004435025c68a33cd8e
Test: Run a instrumentation test
cts-tradefed run cts-dev --module DevicePolicyManager --test com.android.cts.devicepolicy.ManagedProfileTest#testPhoneAccountVisibility
Change-Id: I29b1dc307e9e127b919aebe4d83ab6311ce36f2d
Fix: 34320197