Topics are tags that developers can add to group notifications
by theme. Users will be able to block notifications by topic.
Bug: 22451710
Change-Id: I5b4677da66b21933f479f5e56c18ca563810b43b
Both window manager and activity manager could decide what the bounds
of other stacks should be when the docked stack exist which can get
out of sync. Now window manager does the bounds calculation and
activity manager asks window manager what the bounds should be when
it needs to resize the stack.
Bug: 24738105
Change-Id: I97356f008b676d2f58a8b54fdb08735ab51394af
To reduce the number of times that we load resources based on
configuration changes ActivityThread employs an optimization
strategy that merges relaunch operations. If it receives a
relaunch request why one is already queued, it will just update
the queued request instead of creating a new one. Unfortunately
this breaks the guarantee of executing lifecycle events in the
order they were received.
Consider following scenario of requestes from Activity Manager:
1) relaunch the activity in not resumed state;
2) resume the activity;
3) relaunch the activity in resumed state.
The Activity Thread can process these commands in following order:
1) receive the request to relaunch in not resumed state;
2) receive the request to resume the activity;
3) receive the request to resumed state, update the exisiting
request;
4) execute the request to relaunch in resume state;
5) execute the request to resume.
This causes the activity to perform resume twice.
Since we need the merging of relaunch operations for performance
reasons, we need to introduce a secondary mechanism for ordering
of lifecycle requests. Relaunching, pausing, stopping and resuming
receive a sequence number based on when the request was received. If
the last executed sequence number is higher then the operations
sequence number then the operation will be dropped.
In the above scenario the sequence number would be:
1) request to relaunch not resumed receives seq + 0;
2) request to resume receives seq + 1;
3) request to relaunch resumed receives seq + 2;
4) execution of of request to relaunch resumed set current sequence
number to seq + 2;
5) since seq + 1 < seq + 2, then the execution of request to resume
is prevented.
Bug: 24806374
Change-Id: Ia520dd1aa215827d4172a9891a7cc01db2ce627e
When an app doesn't define installLocation, the default behavior
should be to treat it as internal only. This matches all the
published developer documentation.
Without this, apps could be unwittingly be moved to adopted storage
devices.
Bug: 24771264
Change-Id: Iaf38ab45329aad6cb5d6deac81fb1781f680189b
When the user clicks X in non client decor of a freeform task, we
don't want it to be removed from recents. The task gets finished,
but it will remain in recents.
Bug: 24718309
Change-Id: I8f47e310903ee7f839ec92f5c8ff3a9f1e09118c
Whether acitvity window should be preserved during the relaunch is
controlled by the activity manager and the existence of
non-client-decor should not affect it. For example, docked activities
will not have non-client-decor, but we would like to preserve them
anyway.
Bug: 24573657
Change-Id: I5d4852c3b7c26ac3ec1bbc105639f75b67d1d3ad
This fixes a crash during orientation changes, where window manager
requests a resize for a docked task, but activity manager throws an
exception since dock tasks can only be resized when their stack is
being resized.
Bug: 24575031
Change-Id: I954c4e6ae60931b30200b10c8a4834b0a5757606
Move the task to the right stack before calling resizeTaskLocked
and let resizeTaskLocked only handle the resize.
Bug: 24462900
Change-Id: I3401c92f1893eaefde2909a9b20b00b5ea6cdf01
Fixes#24301208 No recent apps shows when switching
between users.
Instead of cleaning up when stopping a user, we
should remove tasks when removing a user, since
recents tasks should be persisted across reboots.
Reboots are similar to stopping and starting users.
Change-Id: I9a250792077cca5f18ae1a10bc36f7b97e8ea867
isUserSwitcherEnabled now returns false if multi-user is disabled(
supportsMultipleUsers() returns false).
Removed GUEST_USER_ENABLED setting and replaced with DPM.getGuestUserDisabled
check. It currently always returns false, but will be replaced with an actual
policy check.
Bug: 17571233
Change-Id: I41853e8b321b2537952cac5d92e88bfdb8cbd9a8
This is achieved by not having the decor view hold onto the activity
context. Instead, we are wrapping application context, so that we can
have theme support and also have a special instance of window manager
that is aware of the phone window (the same way as activity do).
This reverts commit a5ffea3b7d.
Change-Id: I924f4c7ef8f0d20e9174bd7b3e00ec00b44443b9
ApplicationPackageManager instances can (and sometimes are) created as another
user from the one they run in. Example use: fetching the application icon for
an app installed as another user.
The occurrences that weren't doing this aren't ever called on a cross-user
instance so it should be safe enough to fix all of them.
Change-Id: Ia63f22942f35450e36a7b8da2bbf8eda360ef21a
This command is useful for testing during development, but at some
point we will decide if allowing configuration changes during resizing
is okay or merge in http://ag/759766 to suppress configuration changes
during resizing and deliver the new config. to the app.
This functionality will be reverted once we decide.
Bug: 24380097
Change-Id: I223c08bc939e564a78e70994b599770be9d4730d