FrameTracker has some ViewRootImpl invocations that it would be better
to make FrameTracker accesses run on either main or ui thread.
Bug: 200938639
Test: atest InteractionJankMonitorTest FrameTrackerTest
Change-Id: I91e9536293a694f3d110bda583a32b5918c96c55
In NotificationStackScrollLayout
- Begin instrument in clearNotifications()
- End in onClearAllAnimationsEnd()
Note: due to all child views run clear anim concurrently,
we just monitor parent(NSSL).
Bug: 238863970
Test: atest SystemUITests
Test: make and get perfetto trace
Change-Id: I705d03357a5a458a7f9eae5ecc5c4cfd7811cf7c
AIDL can't accept subclasses, see more info in the bug
Bug: 238277108
Fixes: 238277108
Test: follow steps in the bug, click on share
Change-Id: Ie691df4566e6b622c868bbed4377afc1ee82807d
Add a scene animation - image thumbnail in Chooser to full-size image in
the editor - when the thumbnail is visible.
Finishing Chooser activity while the transition animation is running
produces an effect of "flashing" background (as the activity disappears
before the animation completed). Thus the call to finish the activity is
delayed until the activity is stopped (i.e. becomes fully invisible).
Fix: 231448720
Test: Use 'Files' app to share an image, select Edit in the Chooser,
observe animation (optionally slow down the animation in the developer
settings)
Test: The same as the previous test but in the split-screen mode.
Test: Slow-down animation, select "edit" in the chooser and cancel the
animation mid-flight. The ChooserActivity pauses and resumes and
remains overall functional (had to slow down the fade-out animation in
the code). The animation in this case is broken but
addressing this case is beyond the scope of this change.
Test: Use a mock app with the dialog-themed activity instead of the
system image editor; check that Chooser fades out and finishes in
background.
Test: Accessibility with talk-back on.
Change-Id: I982b9b2a8a049b5986dce521ee1abcd9ad83ba38
Client insets controller can request to hide system bars to enter
immersive mode. However, there're cases force-show system bars like in
split screen or freeform mode. This makes sure the background view of
system bars are always visible while force-showing.
Fix: 234196894
Test: put an immersive app in split, verified system bars background
won't be invisible
Change-Id: Ia167bce9e64cd81a2ade499f8c6528384d957209
Adds an activity that inherits ChooserActivity
to select an app in the partial screen sharing
flow under a feature flag.
It doesn't have a proper visual design, analytics,
enterprise policies handling.
Bug: 218314434
Test: start partial screen sharing
Change-Id: Ia7d9ae07e2ef35d33f85530f26cab4e6cdc1f94a
+ Creates a new LetterboxDetails parcelable class
+ Adds LetterboxDetails as a parameter to IStatusBar#onSystemBarAttributesChanged
Test: Manually by checking that the device works without crashing
Fixes: 236829652
Change-Id: Ib4e615f6e4eb44d0fc4fb753b27a04b908e7bd24
The list of fields that directly or undirectly and/or condtionally
influence view's layout:
onMeasure:
mMaxWidth
onLayout:
mTopOffset
<- mCollapseOffset
mCollapseOffset
<- mCollapsibleHeight
<- mShowAtTop
<- mMaxCollapsedHeightSmall
<- mCollapsibleHeightReserved
<- mSmallCollapsed
<- mAlwaysShowHeight
<- mOpenOnLayout
<- mShowAtTop
All their assigments is revied and discovered issues is addressed in
this CL (plus small adjustements suggested by the static code inspector).
Fix: 237718103
Test: Unit tests + manual.
Change-Id: I405b7a48dac18e090a055f3187004b3a8565586c
When the enableOnBackInvokedCallback is set to false (or not set),
registering an OnBackInvokedCallback should be a no-op to avoid
overriding the default compat callback.
Test: Manual testing registering a callback on an app with the flag
disabled and doing a back gesture. Currently we don't have test
executing a back gesture so automated tests are not possible
Bug: 235206960
Change-Id: I54d843f11130a78ed5a68cbe4722e601a2086ee1
Merged-In: I54d843f11130a78ed5a68cbe4722e601a2086ee1
(cherry picked from commit aa48dc3c2d)
mMaxTargetsPerRow wasn't updated in the chooser
multi profile pager adapter, this adapter sets
the number of columns in the grid layout manager.
This led to incorrect number of columns when display
size changes in runtime.
Bug: 235572712
Test: open share sheet, fold the device =>
check that the number of columns is updated
Change-Id: I1f3f3bff8a4d23909ccd4c00b74091183c28821b
[ag/8009931 is to fix the missing event problem and it get reverted in ag/15961577.
Now revert the change that causes the problem.]
Make a copy of mHistoryCur and add the copy to history buffer after
starting a new history file.
Bug: 230799882
Test: ag/8009931 reproduce steps.
Change-Id: If9339ed5182b65b9c59c119894e4f317b2e5751c
If IME doesn't have FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS, DecorView won't
show the color views for providing background color of system bars.
DecorView will call Window#onDrawLegacyNavigationBarBackgroundChanged
when the flag is changed. This gives NavigationBarController a chance
to decide whether to draw the legacy navigation bar background for the
IME or not.
Bug: 201375975
Test: Show IME in combinations of
a. floating mode or non-floating mode
b. gesture navigation or 3-button navigation
c. taskbar or navigation bar
d. light theme or dark theme
And see if there is anything unexpected
Change-Id: If7ac32e2b874c04a260d542cb6a7595288aae182
Bug: 235440512
Test: Trigger mini resolver, press each button and press back and verify
the resolver is gone.
Change-Id: Ib22f7f38b4c5f7143b5898dbc3c74e3c7a0450f3
Fixes: 216297617
Test: adb shell am start -n android/com.android.internal.app.PlatLogoActivity
adjust clock to 13:00
for a bonus, long press on the bubbles
Change-Id: I3d32d452c6dd7a7e69aad86a033aba09ae8625d5
In cases when a parsed APK is built with a pre-release platform
(e.g. Tiramisu for 33) our generic parsing code may not fail, as
it is called for user packages as well, and a single bad package
may disable the whole device.
Bug: 233398506
Test: presubmits
Change-Id: I7f93176efceac94b0768d0e4d5be1c28ccce23e3
This fixes an incorrect use of List.toArray() leading to a crash
When passed no arguments, toArray returns an Object[] and not T[],
hence the unchecked cast will throw ClassCastException when this is run.
This change cleans up the parcelable implementation by replacing
writeParcelableArray with writeTypedList, which is more efficient and
avoids the conversion to/from an array entirely.
Bug: 200347466
Test: Take screenshot, tap share, long press an app, short press power
Change-Id: I225664c8709502c7e45ac06c2858c0c5ac0b7506
Toast doesn't work correctly for multi-display. When default display's
screen off, the toast wouldn't be able to show on secondary display.
Without this change, default display screen state will cause text toasts
doesn't correctly show up.
Bug: 233717651
Test: atest ToastUITest
Change-Id: I1705bc71062fa28c378bf7cc02d104c0f53ce865