An activity's window is initially not visible. This means it is not
accounted for until it becomes visible, which means requested
orientations will not be honored until after onCreate.
This changelist removes the visibility check previously used determining
the orientation.
This changelist also addresses an issue where an ActivityRecord member
variable tracking the last configuration sent was not being initially
updated.
Fixes: 33844887
Fixes: 33814250
Fixes: 34165818
Fixes: 34177026
Fixes: 33809086
Fixes: 34111451
Fixes: 33844423
Test: Verified reported issues fixed in apps mentioned in bugs
Test: bit FrameworksServicesTests:com.android.server.wm.WindowContainerTests
Test: cts/hostsidetests/services/activityandwindowmanager/util/run-test android.server.cts.ActivityManagerAppConfigurationTests
Change-Id: If9243792b9f2d137dc5addbf6fb735a0048fa192
When changing stacks the finalCrop or crop may not be set
so relying on either one for the scaling factor is error prone.
Just scale to the stack size. I initially avoided this because I
thought some of the crop code may be relevant in computing the size
we wan't...but I'm now pretty sure it won't.
Test: Expand PiP back to fullscreen on phone, verify no crash.
Change-Id: I172daade74bec7374b5fd3310c1bf554e46d8832
- Also ensuring that when we request for a task to be locked
via the shell, we directly set the locked state instead of
relying on the SystemUI to show a prompt to lock (necessary
for the CTS test to run).
Test: android.server.cts.ActivityManagerPinnedStackTests
Test: #testDisallowEnterPipActivityLocked
Change-Id: Ice608e6d8e7f018dbd5e20ae457343bfdd0a8630
- Ensure that we clear the timeouts on the old stack and reschedule
them on the new stack when moving an activity to a new stack,
otherwise the pause timeout from the old stack will cause onStop()
to be called.
- When adding an activity to the stopping list for processing, prevent
scheduling an idle immediately in case an activity tries to enter
picture-in-picture when handling onUserLeaveHint(). In that case,
schedule an idle after the default idle delay instead.
- In addition, when resuming a resumeWhilePausing activity, prevent the
activity idle to trigger pausing activities to be immediately put into
a stopped state. This was a race between the handling of pause/resume
that would cause a pip activity to get onStop() even if it called enter
pip on pause. Instead, when processing an idle from the activity or
from an immediate idle scheduled by the system, we defer processing
pausing activities until a later idle (that it reschedules).
Test: android.server.cts.ActivityManagerPinnedStackTests
Test: #testEnterPipWithResumeWhilePausingActivityNoStop
Change-Id: I375369a800b7fadaa57d6e00e0564bc3ee338979
Signed-off-by: Winson Chung <winsonc@google.com>
This accounts for a special flag for gesture events generated by
InputFlinger. For these events we do not need a touch slop since we
can reliably tell that the intention is to scroll.
Bug: 31799135
Bug: 32944705
Test: None
Change-Id: Ibca8eaebca61bd4eb401708f5b19463c19c23309
(cherry picked from commit 8e07f0f91d8e6e8965faaaadc94b4bac18ba3310)
(cherry picked from commit 3e1b4218e6f0117e58a5452bcb725b105d32b528)
Currently, the onProvideAutoFillStructure() methods can be called
twice: to auto-fill an activity and to save the activity's data
in the service.
The problem with this approach is that when the save workflow is
called, the activity might have been gone. Hence, a proper approach
is to keep the initial AssistStructure data in the system_service
memory, watch for view changes, and then passed the new structure
back to the AutoFillService.
A side effect of this change is that we need another way to determine
if the view is sanitized or not. For "standard" views, that will be
defined based on whether the view content come from a resource or not,
but that logic is not implemented yet (for now, all views will be
considered sanitized, except for TextView passwords). For "custom"
views (such as WebView), this logic is responsibility of the view
implementation, through the newChild() method, which now takes a
flag (whose value could be AUTO_FILL_FLAG_SANITIZED for sanitized
views).
The SaveCallback.onSuccess() method was simplified: it does
not need a list of saved ids anymore the auto-fill UI will not use it
anymore.
Another side effect is that the Save notification is gone - until
it's attached again, it can be test by using:
adb shell cmd autofill save
Finally, hook AutoFillUI on ACTION_CLOSE_SYSTEM_DIALOGS events.
BUG: 33269702
BUG: 31001899
Test: manual verification
Test: CtsAutoFillServiceTestCases passes
Change-Id: I907a7e21d1b3cd1ab6dec3a08d144a52655da46f
The strip command takes an APK as argument and a --target-densities flag which
contains the list of screen densities for which to optimize the APK. All
the resources that would be unused for a device having the given
densities are stripped from the APK leaving only the ones actually being
used.
Test: Manual.
Change-Id: I68368b00876a18ccdbbfc0a8dd265bd361117933
Android Auto requires different styling for notifications. In
particular:
- Background of scrim to be a different color
- Notification shade should always be full width
- No quick settings
- User switcher always visible
- Card styling, such as rounded corners and more spacing between items.
- Notification shade to be triggered from a button on the navigation
bar.
Refactored different areas of the framework to allow for this. This
mostly means extending notification code and overriding methods where
appropriate.
Test: manually tested
Bug: 33487455
Change-Id: Ifcea70e121c1cbbeb057bb6ce8d351336ae41554
those response codes was introduced from N.
But only parts of the implementation was checked-in and has been
disabled since then. in O, we introduce the SimActivationTracker
inside telephonyFramework with a new set of activation status
which will replace those deprecated activation response code.
Bug: 31061369
Test: Manual
Change-Id: Idae5d7f6e76f36a60e602bf2ec48116b5748ca0f
In Change Icbfab2fa, a new justified alignment for text is implemented.
We make layoutlib compatible with those changes without implementing
the new alignment.
Test: layoutlib tests
Change-Id: Ic8254f0f4b2915d654124874fee72c90fd8aa6c6
Don't wait to check on the handler.
Test: runtest systemui-notification and
platform_testing/tests/functional/notificationtests
Change-Id: Ife1ad8bc5c40420cd6682329b8135744cfe38e4a