There was some old outdated logic about aborting draw if we have a
new surface. This isn't needed anymore and actually can cause up
to 5-10ms first draw delay for apps.
Test: AM/WM Presubmit CTS tests
Bug: 126612374
Bug: 123643797
Change-Id: I73d354efaee099e6a1ca1557e79440dc16e4976f
Also fixes an infinite recursion when invoking
TestableContext.(un)registerComponentCallbacks().
Test: atest WindowInsetsPolicyTest
Bug: 126511573
Change-Id: I5c9f40054493a83746bce6124d72412e8eb8a0d1
* changes:
More random optimzations to make things go faster
Don't compare configs during layout
Get rid of some ancient logic around layouting invisible windows
Window Manager spring cleaning
Our performance for wmLayout + prepareSurfaces regressed over
time, because we added a lot of functionality, but didn't have
fine grained perf tests enough to catch it.
This CL tries to attempt to undo that damage by optimizing various
things that regressed or didn't regress, but could still be
optimized.
Test: Presubmit tests + capture trace during wmRelayout
Bug: 129389526
Change-Id: I352a3213f074377bd10721d16535c1e27fb2e746
Also refactored how the SecurityException is thrown back to the caller app.
Bug: 122959591
Test: manual verification
Test: atest CtsContentCaptureServiceTestCases # sanity check (minus usual flakiness)
Change-Id: I4d2a68e61dc1c801d80734a30f4bbe6fdae8555d
This is an internal change that will save memory:
- ids themselves are smaller (one int vs ~20 chars string)
- can be mapped with SparseArrays
- parcel objects will be smaller
Test: atest CtsContentCaptureServiceTestCases \
FrameworksCoreTests:android.view.contentcapture.ContentCaptureEventTest \
FrameworksCoreTests:android.view.contentcapture.ContentCaptureSessionTest
Fixes: 121197119
Change-Id: I4b4367bd7238400ade385c2bcc4b0595ed0b1c7b
For letting touches directly go to the embedded display, we've opened a
tap exclude region for the ActivityView. However, if there is a view on
top of the region, the view cannot be touched within the region.
In this CL, we reduce the tap exclude region if there is a can-receive-
pointer-event view on top of the region.
Bug: 128517544
Test: atest CtsActivityManagerDeviceTestCases:ActivityViewTest
Test: atest FrameworksCoreTests:ViewGroupTest
Test: Menual test with ActivityViewTest and Bubbles
Change-Id: I68e2a9fe9d0891801b533ab8d25074f64bef5a79
If the service has boundsInScreen the boundsinparent can be computed.
Also for its whole existence, boundsInParent is the bounds within the
ViewParent's coordinates. But the ViewParent is quite often not the
AccessibilityParent (if it isn't important for accessibility), so the
service can't really do anything with that information because the
service doesn't have access to the ViewParent, only the
AccessibilityParent.
Test: It builds.
Bug: 1084662
Change-Id: If88dcaac6dcb824d72d7f483c05cbb544314423c
Updated various framework APIs to leverage the new BlendMode API
that parallels the corresponding porterduff mode equivalent.
Added new Drawable#onApplyBlendMode API that provides a backward
compatible solution for Drawable implementations that leverage
the new BlendMode API as well as fall back on the traditional
setTintMode(PorterDuff.Mode) API for instances where it is not
implemented
Bug:126726419
Test: Re-ran CTS graphics test cases
Change-Id: I119a7f57dce0a095c0a73cf83dc50b82beff5e32
Explicitly allocate windows and nodes instead of obtain/recycle in
AccessibilityCache.
Bug: 117999988
Test: build and boot
Test: a11y CTS & unit tests
Change-Id: I269c6b9d8bc67568fd90f8690a7bfb7a782e7fe7
Specifially restrict access to mPrivateFlags and mPrivateFlags2. We
were not able to find a legitimate use-case. Several flags have
corresponding public APIs. We are deliberately breaking the usage
of any flags that don't have alternative API already as it breaks
encapsulation of the View class that is supposed to manage these
flags on its own.
Some examples of existing public APIs for important flags:
PFLAG_FOCUSED
- hasFocus
PFLAG_SELECTED
- isSelected
- setSelected
PFLAG_HOVERED
- isHovered
- setHovered
PFLAG2_ACCESSIBILITY_FOCUSED
- isAccessibilityFocused
- requestAccessibilityFocus
Bug: b/123769414
Bug: b/123768943
Bug: b/129147060
Test: N/A
Change-Id: If8acd7e8b516e4ce6808dcd57485659b616e24ee