Assume an activity A is started in portrait and it starts another
landscape activity B immediately in the same task. If fixed rotation
applies for this case, the starting window will transfer across
different orientations that may look flickering. And because the
transformed activity is the B, the transition finished event of A
cannot match B that causes the display stays in old orientation.
This change makes the case use normal rotation animation to avoid the
flickering, and still handles the case that the transition is done
but the notified record is the first activity to avoid other similar
cases to miss the orientation update.
Fixes: 158112625
Test: DisplayContentTests#testFinishFixedRotationNoAppTransitioningTask
Change-Id: I559b0881463e379c17e35b7cfd96948feb36bf4b
This is for migrating keystore logging to use statsd.
Test: Adding tests for logging is yet to be decided.
Change-Id: I66fbc2b8ed98a34f243387f8550b6523b13cb9a2
Bug: 157664923
I accidentally omitted logging for the event of banning/unbanning
notifications for the entire app, when I added notification
channel ban logging in ag/10450892.
Change-Id: Ibf2be1367bf41ad2b431cfcd2fef820ff270fed9
Test: atest PreferencesHelperTest
Bug: 156398451
On Android different interfaces usually use different routing tables.
As a result, a change in interface should not be treated as route
update, but rather a remove and an add.
This change fixes a bug in VPN seamless handover where routes
failed to be updated when a new tunnel interface replaces the existing
one within the same network.
Bug: 158696878
Test: atest com.android.cts.net.HostsideVpnTests
Test: atest NetworkStackTests
Test: atest CtsNetTestCases
Test: atest FrameworksNetTests
Original-Change: https://android-review.googlesource.com/1331916
Merged-In: I57987233d42a0253eaee2e1ca5f28728c2354620
Change-Id: I57987233d42a0253eaee2e1ca5f28728c2354620
Bug: 158050954
Test: Manually tested that the issue is gone after following command
$ adb shell
$ settings secure put media_button_receiver ",10"
$ reboot
Change-Id: I0d7df2d349140c09282d029df80c2cf2060c5405
Before we would only check the active tab for available
targets and finish the activity if there are none.
However, with the work tab, there can be cases where
the active tab has no targets, but the inactive tab does.
Fixes: 159202588
Test: manual
Change-Id: Ie03ebd1b022362681df432ec29299df86dceb490
Otherwise rotating the device while showing a tab with RTL
shows blank tab content. This could be due to ViewPager
bugs when handling RTL.
Fixes: 158862939
Test: manually rotating the device with RTL layout
Test: manually rotating the device with LTR layout
Change-Id: Iba4c71cf88747d6fbbc36d19b5102460e8aa7cec
We've observed occasions where it can take a long time for the
system_server main thread to come around to handling the bind of the
service, for example because it's handling long-running jobs:
06-04 08:19:27.544 1000 1532 1532 W Looper : Slow dispatch took
2044ms main h=com.android.server.job.JobSchedulerService$JobHandler
c=null m=1
Delays like this can cause us to fail binding to the external storage
service for a user, and reset the whole storage stack, leading to
unexpected results, especially if we timed out for trying to mount user
10, while user 0 has already been successfully mounted.
Increase the timeout to 20 seconds; this gives us a lot more time to
complete the bind. At the same time, we want to avoid risking holding
the vold lock for too and/or any deadlocks.
Add a WTF for when we do hit the timeout, to get a better grasp on how
common this is.
Bug: 158452122
Test: Boot device
Change-Id: Ia8f6f121448f6b5e484fd3e8cca845fdd89afc23
There are two locks used by AppFuseBridge.
First is it's object lock, and the second is a mutex lock in app fuse library.
There are two oppsite routines to get those locks.
(Thread A) Got Java lock -> Try to get Native lock
(Thread B) Got Native lock -> Try to get Java lock
The order must be followed to obtain two locks.
If not, the dead lock will be caused.
Therefore we change the routine to get the mutex lock first, and the object lock later.
Signed-off-by: hyeeun.jun@samsung.com <hyeeun.jun@samsung.com>
Bug: https://issuetracker.google.com/issues/145707568
Bug: 157535024
Test: atest --test-mapping apex/blobstore
Change-Id: I1f05cc98953d8452147370dd04c223d54c0e5362
Modify source stamp verifier to account for APK signature schemes V1,
V2, and V3. The verifier would verify the signature schemes found in the
APK.
If the APK is signed using a signature scheme that does not have a
corresponding verified source stamp signed digest, the source stamp is
considered unverified.
Bug: 158196850
Test: atest FrameworksCoreTests:SourceStampVerifierTest
Change-Id: I07e3606a346b598d192771945335770ce964726e
When a route changes its features, the returned getRoutes() can be
changed.
Bug: 159142641
Test: run support v7 demos manually to check onRouteAdded callback is
invoked
Change-Id: Icea855d631a566fd9129f98306e3ea8af4920764
On Android different interfaces usually use different routing tables.
As a result, a change in interface should not be treated as route
update, but rather a remove and an add.
This change fixes a bug in VPN seamless handover where routes
failed to be updated when a new tunnel interface replaces the existing
one within the same network.
Bug: 158696878
Test: atest com.android.cts.net.HostsideVpnTests
Test: atest NetworkStackTests
Test: atest CtsNetTestCases
Test: atest FrameworksNetTests
Change-Id: I57987233d42a0253eaee2e1ca5f28728c2354620
MediaProvider needs the permission to register a StatsPullCallback in
statsd to pull the external storage metrics.
Test: build
Bug: 149669087
Change-Id: I4f7e09c2e514e2290d1cd5ac765bb115e7ade9ef
The internal ViewPager seems to not handle RTL well. This CL
disables side swiping in that case.
Fixes: 159110029
Test: manually confirmed side swiping does not happen on RTL
languages
Test: manually side swiped on non-RTL languages
Change-Id: I30272426d1d1ef4f17ec656630cee01505f66c59
AutofillInlineSuggestionsRequestSession controls the inline
communication with the IME, we can centralize the UI show and hide
notification here. Use a variable mPreviousHasNonPinSuggestionShow to
save the previous status, when the display status change, e.g. from
no suggestion to has suggestions we can notify inline ui shown event.
Bug: 157762527
Test: atest android.autofillservice.cts.inline
Test: atest CtsAutoFillServiceTestCases:DatasetFilteringDropdownTest
Test: atest CtsAutoFillServiceTestCases:InlineFilteringTest
Test: atest CtsAutoFillServiceTestCases:LoginActivityTest
Test: Manual. Write a test app and register AutofillCallback, make
sure the callback is called as expected.
Change-Id: I8ee38008874c4a6f110635e8e4107a4eef72ed14