- Ensure that we reapply the minimized offset after applying the snap
fraction to the rotated bounds
- Fixing small issue where we weren't bottom aligning the PIP when the
visible IME changes size (but is not made invisible)
- Also fixing an issue where the touch gesture continually allowed
swiping offscreen even after dragging the PIP a distance. Now, if no
gesture handles the drag, then the default gesture will disallow
offscreen dragging once it handles the move.
- Shrinking PIP slightly to fit proportions of screen.
Test: Enable minimization in SysUI tuner, put PIP into minimized state,
rotate the screen. This is not final UX and the CTS tests will
be updated to reflect this behavior once it is final.
Change-Id: I15c851a0bcf5f867289bc5ad50d298f82a103308
So far AutoFillService only received the assist data from framework; in
this CL, it also offers a method where the auto-fill provider can send
the auto-fill data back to framework.
The workflow is:
- AFMSI calls a new AM method (requestAutoFillData(), instead
of requestAssistContextExtras()).
- The assist receiver is located in the app, not on system service.
- AM uses a new request type (ASSIST_CONTEXT_AUTOFILL) to request the
assist data to the activity.
- ViewStructure has a new setAutoFillId() method which is used to set an
unique id for the view.
- View uses the accessibility id to implement the auto-fill id.
- When the activity fullfills the request, it creates an IAutoFillCallback
remote object - that will be used to set the auto-fill fields - and
returns it in the assist bundle (using the
VoiceInteractionSession.KEY_AUTO_FILL_CALLBACK key).
- The app-visible AutoFillService class offers an onFillRequest() method,
which contains the assist data and a FillCallback used to handle it.
BUG: 31001899
Test: manually built and ran it
Change-Id: I3d208c14e81022dc96dd03f38bbe25a778b24a67
Simplify tracking registered BLE Apps and clear the state when we
try to recover bluetooth from starting to ON.
Test: enable and disable bluetooth an LE-only app running
Bug: 32609235
Change-Id: I3233bf8402a3c8fc4886ef21b1e9411bc78d4e2c
- When a fullscreen activity enters PIP, we were previously always
bringing the home stack forward due to the return type being set
to HOME_ACTIVITY_TYPE, causing the home screen to be visible if
expanding PIP over a fullscreen activity and going back into PIP
immediately. This CL instead updates the return-to type to
reflect the stack that was currently open before the pinned task
was made fullscreen again to ensure that it is consistent when
entering PIP again.
Test: android.server.cts.ActivityManagerPinnedStackTests
Test: #testPipUnPipOverHome
Test: #testPipUnPipOverApp
Change-Id: Id5dd7db1f5a8040ff21190cc347eb6aae5893006
Allows option in tuner to switch between system theme overlays
if multiple exist. Requires a restart to take effect.
Test: Settings -> Tuner -> Other -> Theme
Change-Id: Iea43b9cbb67fd91c6008be594ad4cfd19c3f57ec
With this CL, one can specify a content URI with an embedded user ID to
InputContentInfo, like such a URI is supported in
Context#grantUriPermission().
Note that such a scenario is actually possible when 1) an application
running as User X sets a content URI to the system clipboard then 2) the
IME runing as User Y who share the clipboard with User X obtains the
content URI from the system and tries to create a new instance of
InputContentInfo.
Bug: 32427307
Bug: 32778718
Test: 'adb shell dumpsys activity permissions' with a custom IME that
instantiates InputContentInfo from the content URI obtained from
the clipboard.
Change-Id: I7918c0a379b8f3e7e64b106447b42447876f9057
- Also refactoring the PIP touch handling to be independent gestures
Test: Enable the setting in SystemUI tuner, then drag the PIP slightly
offscreen. This is only experimental behaviour, and
android.server.cts.ActivityManagerPinnedStackTests will be updated
accordingly if we keep this behavior.
Change-Id: I5834971fcbbb127526339e764e7d76b5d22d4707
This implements the additional intended path for checking
allowed background operations, APP_START_MODE_DISABLED, which
doesn't allow an app to launch in the background at all.
Also change the semantics of delivering broadcasts to manifest
receivers to always restrict those, not changing based on
whether the app is currently idle. This is the desired intended
behavior for apps as they explicitly update to work with
bg check.
And now that we have ephemerality associated with the uid state
in the activity manager, we can propagate this through the
relevant callbacks in IUidObserver so things watching these
changes can immediately determine whether they should do their
more aggressive shut down work for the uid rather than having
to walk through all their state looking for package associated
with that uid and whether they should be shut down.
Also remove the "lenient" bg check mode, since that was
just an early experiment that we won't actually use.
Add a new "make-idle" activity manager command to immediately
put a uid into the idle state (if possible) to make it easier
to test.
Test: manually against an eph app
Change-Id: I43a138ff281f69a9251d3f29ab6e13f48cff8ad6
Changed the call points to use DisplayContent.forAllWindows() to
get windows on the display.
Test: Existing tests pass.
Change-Id: I6f8bf15ba246fac69c4a496ebb1d9e0b9b6a95a2
We allow a single toast window per UID. It is possible that
the UID had another toast window that is going away and this
CL adds a catch all check as there was a case missing.
Change-Id: I4c68e7212a05ce349e6e5b1cffe6e36d429aaca0
Added support for to get all windows in the hierarchy without needing
to use WindowList concept which is a very complicated implementation
in the code base.
This implementation walks the hierarchy node by node returns windows
in order to the caller using a callback.
Test: bit FrameworksServicesTests:com.android.server.wm.DisplayContentTests
Change-Id: I2719f7c96f26dad23f91c1c589be88712bd224b8
Don't force mKeyguardGoingAway, as this never recovers. Make sure
to only show the dismissing Keyguard activtiy and recover the
state when trusted state changes.
Test: Make sure Keyguard is in a trusted state, start an activity
with FLAG_DISMISS_KEYGUARD from FLAG_SHOW_WHEN_LOCKED activity
and make sure there is no flicker.
Bug: 32057734
Change-Id: I5d212f6f9d5430250b22c8370f45dc95756432d2
Event log sticks around longer, and will help debug timing issues.
Test: builds and boots
Bug: 32719353
Change-Id: Ie19f76a341c58a8efee0eb1edbf183c22e9c5270
When calling out to dump services hosted by external apps, use
dumpAsync() to avoid hanging if the remote process is wedged.
Test: builds, boots, runs with minimal logs triggered
Bug: 32715088
Change-Id: I70aa2666ae21dae8f09ded2063bed359c0b210c5
Rename ranker to assistant and make some of the methods public.
Delete the ext services ranker and restore the listener-type
lifecycle to the assistant.
Test: manual. add a notification assistant and verify it gets
assistant and listener callbacks.
Change-Id: Ia3406c8c14d923426c1b8a6d8b5187efe64c31c3