Commit Graph

15746 Commits

Author SHA1 Message Date
Vishnu Nair
31ec9ecb8d Merge "Revert^3 Flip BLAST for SurfaceView"" 2020-12-11 23:15:26 +00:00
Vishnu Nair
379f1eb654 Revert^3 Flip BLAST for SurfaceView"
This reverts commit 2b5f28a558.

Reason for revert: breaks youtube presubmit tests.

Bug: 175396534
Change-Id: I0f79570bb9fbc4ba21068902285e6263491b506e
2020-12-11 19:47:32 +00:00
Jorim Jaggi
a285aff417 Merge "Provide vsync id for all animation transactions (except PIP)" 2020-12-11 18:28:23 +00:00
Wale Ogunwale
c27f0525b7 Merge "Add more OWNERS coverages" am: 32ff0144bf am: 60f676c7d6 am: 926aa8da2c
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1519794

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ib3dd38c02eb596d1223ecfae9b383931e985fe6d
2020-12-11 17:15:02 +00:00
Wale Ogunwale
926aa8da2c Merge "Add more OWNERS coverages" am: 32ff0144bf am: 60f676c7d6
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1519794

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I32e5f8566ba916c892898f3f521a5a4309646142
2020-12-11 16:58:45 +00:00
Linus Tufvesson
016f891c25 Merge "Allow 3p apps to hide non system overlay windows" 2020-12-11 14:37:32 +00:00
Charles Chen
09f4e85ac2 Add more OWNERS coverages
Test: manual
Bug: 174932174
Change-Id: Ia798bdbce8516a3d675c55028ab637ad7f0695cf
2020-12-11 19:16:38 +08:00
TreeHugger Robot
684aa6edc0 Merge "Revert^2 Flip BLAST for SurfaceView" 2020-12-10 23:36:26 +00:00
Chavi Weingarten
98434ff911 Merge changes I91762453,Ic1abc3c0
* changes:
  Clean up code in WSA and WS
  Send transaction when possible for WSA
2020-12-10 21:31:46 +00:00
Evan Rosky
cf45363705 Merge "Some cleanup/rearrangement of shell transitions things" 2020-12-10 20:37:51 +00:00
Evan Rosky
b6569a04c3 Merge "Handle keyguard occlude/unocclude in shell transitions" 2020-12-10 20:02:14 +00:00
Evan Rosky
c5b5c7611f Some cleanup/rearrangement of shell transitions things
Some stuff changed underneath, so we can do a little bit
of housekeeping

Bug: 169035082
Test: nothing changed
Change-Id: I70c668d5760cd6fb9ddfd56720e0b712bd7520fc
2020-12-10 10:36:45 -08:00
Jorim Jaggi
3f7ed056ed Merge "Add Shared timeline jank classification listener (2/2)" 2020-12-10 17:25:47 +00:00
Tiger Huang
a02ab70564 Merge "Bring insets fields back to AttachInfo" 2020-12-10 14:26:30 +00:00
Tiger Huang
cbfa72a4b6 Bring insets fields back to AttachInfo
Some apps still use these fields. Remove them can make the app's
behavior unexpected. Although they shouldn't use these hidden APIs, it
won't cause any trouble if we bring the fields back. The user experiance
can keep the same.

NoNonSdkCheck: Revert Non-SDK API change
Fix: 174657478
Test: Steps in the bug.
Change-Id: I8da15ba3f66d20b4ac599db32539acb76d279978
2020-12-10 14:23:32 +00:00
Linus Tufvesson
f57a88f03b Allow 3p apps to hide non system overlay windows
SAW permission is added to the shell to allow it to create
TYPE_APPLICATION_OVERLAY windows during testing.

Test: atest CtsWindowManagerDeviceTestCases:HideOverlayWindowsTest
Bug: 159616727
Change-Id: I503cd8da24ff4d2b928f930ac61090e6782c1546
2020-12-10 10:47:48 +00:00
arthurhung
2243b67122 Prevent accidentally click on RecyclerView
Currently, inputflinger would send an ACTION_POINTER_UP event with
AKEY_EVENT_FLAG_CANCELED when we have at least 2 pointers down and
one becomes the accidental touch.

In ViewGroup, if we have FLAG_SPLIT_MOTION_EVENTS, it may split a
multi touch event into some single touch events to the target childs,
so we should also check the cancel flag in order to prevent it trigger
the accidental click on the child view.

Bug: 161655782
Test: enable twoshay, test accidental touch on RecyclerView
Change-Id: Iba864361ca3361e4a720dbe0eb0b39d42a6dc5b2
2020-12-10 16:41:27 +08:00
Vishnu Nair
2b5f28a558 Revert^2 Flip BLAST for SurfaceView
Enable buffers to go through BLASTBufferQueue
in SurfaceView.

Bug: 168917217
Test: presubmit tests now include wm cts tests
Test: manual virtual display tests
Test: atest SurfaceViewBufferTests & manual tests
Change-Id: I2096da3d39fe5160629795fe648c5b63ebf4c620
2020-12-10 00:56:54 +00:00
chaviw
8bbdc770f5 Clean up code in WSA and WS
1. Use Transaction API instead of SurfaceControl
2. Removed recoverMemory flag from Tranaction request APIs
3. Deleted a lot of unused code

Test: Split Screen + PIP
Change-Id: I91762453afadd79626f6fb2d8ba162054a011584
2020-12-09 13:47:26 -08:00
chaviw
3c57702ea1 Send transaction when possible for WSA
In WSA, we are sometimes using the global transaction. This will make
things difficult when trying to handle synced transactions for blast
sync. We need to make sure all changes on WSA that can happen during a
sync are put on the sync transaction so they can all be applied by the
client at the same time.

Also cleaned up some unused functions in SurfaceControl.

Test: Split and PIP
Change-Id: Ic1abc3c009c38d00593f80a4e03f895c026364e2
2020-12-09 13:45:25 -08:00
Hongwei Wang
f9f8be934b Merge "Cleanup IPinnedStackController and IPinnedStackListener 2/N" 2020-12-09 17:40:33 +00:00
TreeHugger Robot
b1e041d5b5 Merge "Support multi-channel FF vibration effect for input device." 2020-12-08 23:33:24 +00:00
Jeff Sharkey
0ab7007631 resolve merge conflicts of 358f0d4fc8 to master
Bug: 174932174
Test: I solemnly swear I tested this conflict resolution.
Exempt-From-Owner-Approval: refactoring with team leads buy-in
Change-Id: I9262a08ffc1ccede8e519d0eed90ed2bfcf0232c
2020-12-08 11:01:05 -07:00
Hongwei Wang
f1de2b6e76 Cleanup IPinnedStackController and IPinnedStackListener 2/N
Deprecates the following
- IPinnedStackListener#onConfigurationChanged, switched to use
  onConfigurationChanged callback in WMShell
- IPinnedStackListener#onDisplayInfoChanged, switched to use
  DisplayChangeController

Bug: 174702196
Test: atest WMShellUnitTests
Change-Id: Id2161883bd520c99888a561ae058154da06ecb51
2020-12-08 09:44:53 -08:00
Jeff Sharkey
358f0d4fc8 Merge changes from topic "dec5" am: c2793cf12b am: 9af6ac78b0
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1519384

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I2776a545a24f007ccb4b9ee14705978571265ef3
2020-12-08 16:43:19 +00:00
Jeff Sharkey
24d251403b Improve OWNERS coverage across frameworks/base/. am: fab0ab3c9c am: c7c4a74a78
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1519383

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I5120a3701af3564f363900b20bca75f3ad2a854c
2020-12-08 16:43:17 +00:00
Jeff Sharkey
9af6ac78b0 Merge changes from topic "dec5" am: c2793cf12b
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1519384

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ifdc390f5ae046c515a30158f3f55b831be147547
2020-12-08 16:05:11 +00:00
Jeff Sharkey
c7c4a74a78 Improve OWNERS coverage across frameworks/base/. am: fab0ab3c9c
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1519383

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I0211462ecbcd9ad66f66af87e31cf12e1582fc65
2020-12-08 16:01:16 +00:00
Jeff Sharkey
52b9862f87 Improve OWNERS coverage across frameworks/base/.
As general background, OWNERS files expedite code reviews by helping
code authors quickly find relevant reviewers, and they also ensure
that stakeholders are involved in code changes in their areas.

Some teams under frameworks/base/ have been using OWNERS files
successfully for many years, and we're ready to expand them to cover
more areas.  Here's the historical coverage statistics for the last
two years of changes before these new OWNERS changes land:

-- 56% of changes are fully covered by OWNERS
-- 17% of changes are partially covered by OWNERS
-- 25% of changes have no OWNERS coverage

Working closely with team leads, we've now identified clear OWNERS on
a per-package basis, and we're using "include" directives whenever
possible to to simplify future maintenance.  With this extensive
effort, we've now improved our coverage as follows:

-- 98% of changes are fully covered by OWNERS
-- 1% of changes are partially covered by OWNERS
-- 1% of changes have no OWNERS coverage

This specific change is automatically generated by a script that
identifies relevant "include" directives.

Bug: 174932174
Test: manual
Exempt-From-Owner-Approval: refactoring with team leads buy-in
Merged-In: I3480ddf2fe7ba3dfb922b459d4da01fa17a2c813
Change-Id: I3480ddf2fe7ba3dfb922b459d4da01fa17a2c813
2020-12-08 08:36:28 -07:00
Jeff Sharkey
fab0ab3c9c Improve OWNERS coverage across frameworks/base/.
As general background, OWNERS files expedite code reviews by helping
code authors quickly find relevant reviewers, and they also ensure
that stakeholders are involved in code changes in their areas.

Some teams under frameworks/base/ have been using OWNERS files
successfully for many years, and we're ready to expand them to cover
more areas.  Here's the historical coverage statistics for the last
two years of changes before these new OWNERS changes land:

-- 56% of changes are fully covered by OWNERS
-- 17% of changes are partially covered by OWNERS
-- 25% of changes have no OWNERS coverage

Working closely with team leads, we've now identified clear OWNERS on
a per-package basis, and we're using "include" directives whenever
possible to to simplify future maintenance.  With this extensive
effort, we've now improved our coverage as follows:

-- 98% of changes are fully covered by OWNERS
-- 1% of changes are partially covered by OWNERS
-- 1% of changes have no OWNERS coverage

This specific change is automatically generated by a script from
detailed ownership information confirmed by team leads.

Bug: 174932174
Test: manual
Exempt-From-Owner-Approval: refactoring with team leads buy-in
Merged-In: I9789c97c1de8e5d962b48c29c57d82fe83729eba
Change-Id: I9789c97c1de8e5d962b48c29c57d82fe83729eba
2020-12-08 08:36:27 -07:00
Evan Rosky
58d6cd504d Handle keyguard occlude/unocclude in shell transitions
Turns out this can just be checked when the transition starts.
However, added a flag so that shell knows.

Bug: 162500279
Test: enable shell transitions, lock screen, then open camera and
      close camera.
Change-Id: I57703ed8040172496f7091cdae11489df8724c53
2020-12-07 18:33:22 -08:00
Jorim Jaggi
7fd56a8c77 Provide vsync id for all animation transactions (except PIP)
Test: Builds?
Bug: 166302754
Change-Id: Iaa72ca48df09855f3828ef106cec27376cf852b9
2020-12-07 23:10:16 +00:00
Jorim Jaggi
e418a013e3 Add Shared timeline jank classification listener (2/2)
Adds the ability to register a listener that gets informed about
SF' jank classifications via the TransactionCompleted interface

Bug: 174755489
Test: FrameTimelineTest
Test: Register listener, ensure data flows back
Change-Id: I3021cd75856b62e579e30f7bb3e5b2c3a61038c5
2020-12-05 01:00:14 +01:00
Ming-Shin Lu
d02e422473 Merge "Revert "Revert "Let IME#onFinishInput called without dup onStart..."" 2020-12-04 09:45:23 +00:00
Riddle Hsu
6f60cb3d0d RESTRICT AUTOMERGE Only update native InputApplicationHandle once am: 5e4b075554 am: d2548cf0e6
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1513148

Change-Id: Id334939d8d90b5d50dd76c80f9aff84cd03f76e7
2020-12-04 07:36:28 +00:00
Charles Chen
722f67c6d5 Merge "Introduce WindowContextListenerController" 2020-12-04 07:25:38 +00:00
Riddle Hsu
d2548cf0e6 RESTRICT AUTOMERGE Only update native InputApplicationHandle once am: 5e4b075554
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1513148

Change-Id: Ia7113107cbdac69a4744af738025e23d8cb28952
2020-12-04 07:02:35 +00:00
Ming-Shin Lu
4ba8484ffb Revert "Revert "Let IME#onFinishInput called without dup onStart..."
Revert^2 "Verify lifecycle test when screen on/off"

c2769e41ea17d7f0d261396d28ddde3563422701

Reason: Fix forward Bug 174512702 and Bug 174445559
        with CL[1].

CL[1]: Icf1504d40b25fc5f53eae65d4bab48a3070db1d6

Change-Id: Id4e71a822bfde5fe6a263bbe094c0d238017efe1
2020-12-04 11:40:20 +08:00
Charles Chen
4efa68ae7b Introduce WindowContextListenerController
1. Change the signature of mSelectRootForWindowFunc
2. Introduce WindowContainerListener mechanism
3. Add DisplayContent#getAreaForType to povide the DA to listen

Bug: 159767464
Bug: 153369119
Test: atest WindowContainerTests#testRegisterWindowContainerListener
Test: atest WindowContextListenerControllerTests

Change-Id: Ia4893ea153c51183a9ede280f67f19b7e65d2799
2020-12-04 11:26:57 +08:00
Jacky Kao
9e73bfc2f3 Allow A11yService to customize accessibility focus
1. Define and implement new APIs to set and get the stroke width
and color of the A11y focus rectangle.
2. New an AccessibilityFocusApperanceData variable with the default
value in the A11yUserState class, and it would be used in the A11y
framework.
3. When A11y services sets the stroke width and color of the focus
rectangle, A11yUserState will apply the same value through
A11yServiceConnection and notify this change to A11yManager.
4. When A11y services customized the data is disabled, reseting the
data in the A11yUserState and notifying this change to A11yManager.
5. When the ViewRootImpl gets the A11yFocusDrawable, it changes the
strokewidth and the color of this drawable based on the value from
A11yManager.

Bug: 141144573
Test: a11y CTS & unit tests

Change-Id: I1493f17f7cc25744e1435c9070218c6f7efa8bcf
2020-12-04 09:55:11 +08:00
TreeHugger Robot
7dd5daa18d Merge "Cleanup IPinnedStackController and IPinnedStackListener 1/N" 2020-12-04 01:18:28 +00:00
Jeff DeCew
13fa153e25 Merge "Revert "Let IME#onFinishInput called without dup onStartInput wh..."" 2020-12-04 01:02:15 +00:00
Tony Mak
e902a646ce Merge changes from topic "s-suggestselection"
* changes:
  Integrate the SuggestSelection API in TextView
  Introduce TextSelection.Builder.setIncludeTextClassification and TextSelection.getTextClassification()
2020-12-03 22:43:02 +00:00
Hongwei Wang
05c04d4189 Cleanup IPinnedStackController and IPinnedStackListener 1/N
Remove the IPinnedStackController aidl interface. The only method was
left in IPinnedStackController is the getDisplayRotation and used only
by PipTouchHandler. Switched that over to Context.getDisplay#getRotation

Video: http://rcll/aaaaaabFQoRHlzixHdtY/bO1xoqLNemseqmk603y9us
Bug: 174702196
Test: verify the original bug (b/36879891) is still fixed, see video
Test: atest PinnedStackTests \
            WMShellUnitTests
Change-Id: I65814b25ed9a1fb28dad4d6eae88b949efc15e3c
2020-12-03 14:33:28 -08:00
Nikita Dubrovsky
25080800a6 Merge "Update ContentInfo.partition to return a Pair instead of a Map" 2020-12-03 20:13:06 +00:00
Jeff DeCew
3d62f739a8 Revert "Let IME#onFinishInput called without dup onStartInput wh..."
Revert "Verify lifecycle test when screen on/off"

Revert submission 12716106-ims_screenstate_lifecycle

Reason for revert: b/174512702
Reverted Changes:
Iba0332ed3:Verify lifecycle test when screen on/off
I8a657e75e:Let IME#onFinishInput called without dup onStartIn...

Change-Id: I16f4a34360a2f64b69978724648a9be741f140b5
2020-12-03 19:13:34 +00:00
Ioana Stefan
0e70080bb6 Add extra methods to trigger IME tracing dumps
This change adds extra methods for triggering IME dumps, based on the
places decided on go/ime-tracing-opt.

Bug: 154348613
Test: record an IME trace through ADB Connect in Winscope and visualize
dumps at the new places added

Change-Id: Ic4be002d80c5e201a34860306bd7ab8b20560fd6
2020-12-03 13:03:45 +00:00
Riddle Hsu
5e4b075554 RESTRICT AUTOMERGE Only update native InputApplicationHandle once
This makes sure the write operation (NativeInputApplicationHandle
::updateInfo) is always called from window manager side once when
calling SurfaceControl.Transaction#setInputWindowInfo or
InputManagerService#setFocusedApplication. If the info of input
application handle is changed, a new instance will be created.
That avoids the race condition of reading the fields of the same
InputApplicationInfo instance from input dispatcher.

Bug: 171857140
Bug: 161334769
Test: WindowInputTests

Change-Id: I70de9835c7699fe6f56fc3655b0fee5c317ecc3a
2020-12-03 11:57:42 +00:00
Adrian Roos
7c889905b1 Merge "Revert "Add extra methods to trigger IME tracing dumps"" 2020-12-03 10:45:16 +00:00
Ioana Stefan
36b0f5ee22 Revert "Add extra methods to trigger IME tracing dumps"
This reverts commit 09bd8a6e38.

Reason for revert: Broke the build on git_master

Change-Id: I8e77fbc5d6f6b0c51f1b7432d5ed014c871428b4
2020-12-03 10:39:53 +00:00