- Fix back button behavior with two stacks. Stopping activities were
held in that state indefinitely. This change causes IDLE_NOW_MSG to
be sent immediately for the last activity in a stack.
- Touch in non-focused stack was being ignored because of focus tests
in AbsListView.
- Change the focused stack when the activity focus changes. Renamed
mMainStack to mFocusedStack to reflect this.
- Resume all top stack activities when resuming.
- Assign intent task to ActivityRecord if it doesn't have a task.
Fixes bug 8433463.
Change-Id: I8d3c806234511697bc209ab99890730ffa514d20
- Add taskId parameter to createStack() so stacks are pre-populated
with a task.
- Keep track of stack access order in DisplayContent so getTasks
returns in MRU order.
- Set touchableRegion in InputMonitor so modal touching does not
extend beyond stack boundary.
- Fix stack merging so that deleting a stack results in a new
stack the size of the two children.
Change-Id: I62a6ba0a34f34dd7ec866b440bf04595379e19e8
Split stacks and move tasks between them. Layout the windows
according to the new stack split.
After layout content rectangles are known split the available area
between all stack boxes. Then use those values for future layout.
Provide stack contents to ActivityManager.
Change-Id: I9746e6185445633810d506be514d0b7b540a7f99
When granting a Uri permission with new PERSIST_GRANT_URI_PERMISSION
flag, persist that grant across device reboots until explicitly
revoked. Adds new persistedModeFlags dimension to UriPermission,
and moves all flag mutation into UriPermission for clarity. Adds
flag documentation. Only inflate HashSet as needed.
Write persisted grants into XML file, saving based on source and
target package name and user handle. Sanity check grants when
parsing.
Wipe all grants from/to a package when uninstalled, and wipe any
transient grants when a package or user is force stopped.
Persistable grants are always considered "needed."
Change-Id: I3f001571b498fd607456a1257a6383f904d19497
One for home activity(s), one for other activities. Coordination
between the stacks is handled by the ActivityStackSupervisor.
Change-Id: I11395edea501d2f84a18a6a8bced1ce3d0797dad
1. This allows UiAutomation type tests to run as if an
android monkey test is running. This allows applications
that recognize that they are drive by a test framework and
avoid performing certain actions such as calling 911.
2. Fixed a bug where the UiAutomation#disconnect() was not
called when the instrumentation is shutdown.
bug: 8588857
Change-Id: I9e3624dfbe2b8f81f27805711de1098ea2edd03d
Some permissions are associated with gids, so we need to
kill any running processes if their permission is revoked.
We will do this for any permission being revoked, since
the association between gids and permissions can change
over time.
Change-Id: Ieb7408e032539c4f21eb089d65a7a7e6c289f010
Old: [ IC ] %s running
[ ON ] %s is running
New: [ IC ] %s is running
[ ON ] Touch for more information or to stop the app.
Additionally, disallow these misbehaving services from
supplying their own content views; if you attempt to run a
foreground service with icon == 0, this is the notification
you will get, period.
Bug: 8525548
Change-Id: I2bfd7340396ef925885e8c2160a720f9eff07a35
Refactor of ActivityManagerService.activityIdle left
activityIdleInternalLocked called only if stopProfiling was true.
Calling it in all situations is the correct behavior.
Fixes bug 8532130.
Change-Id: Ibd7f112bab104094ff1b1f3a2fb8c03b527ec453
This has the full filter functionality, but is currently only
able to block Activity intents. Logging intents, or blocking
service/broadcast intents is not yet implemented.
Change-Id: Ied3d8dedf982e17bcbdff3e328eeb87477954df7
This method can potentially act on different stacks so bringing
it to the supervisor from a single ActivityStack makes sense.
Change-Id: Ia2df3539dce39e8f050a9ffcef4371c0f172aaee
- Do not schedule GC until all stacks are idle.
- Call sendPendingThumbnail outside of synchronized lock.
- Remove redundant synchronized locks.
Change-Id: I56581ca12a534765132bed405fa4b340c418436f
- Remove redundant synchronize in ActivityStack.activityIdleInternal().
- Move startSpecificActivityLocked from ActivityStack to Supervisor.
- Move handleAppDiedLocked from Supervisor to ActivityStack.
Change-Id: Id746ab3bdff861b61182282bea1deb8fcf284084
- Move showAskCompatModeDialogLocked from ActivityStack to
ActivityManagerService.
- Keep track of userId in ActivityStackSupervisor and initialize
new ActivityStacks with it.
- Move realStartActivityLocked to ActivityStackSupervisor except
for the part that actually updates the ActivityStack.
Change-Id: I7467302f1249fee2ea3cf027a49e0894c9a2213d
Use ActivityStackSupervisor.mMainStack in its place. Or, in cases
where multiple stacks must replace mFocusedStack, create new
methods in ActivityStackSupervisor that will replace it.
Change-Id: Ib0dda51e1043a6d5110e5a2914d695ef16bf9371