When entering split-screen mode by long pressing the recents button, the
top task in the fullscreen stack is moved to the docked stack and the new
top task is the fullscreen stack is considered visible for a short amount
of time until sys-ui launches the recents activity. This causes the new
top activity in the fullscreen stack to be relaunched due to configuration
change.
To fix this sys-ui now sends an hint to activity manager to move the home
stack forward so that it can be on-top of the fullscreen stack and makes
it invisible before recent is launched and animated in.
Bug: 28470261
Change-Id: Icfd85e932fe913dfb498752b5878cc7c690fd559
Previous assumption was ActivityInfo was completely initialized in
PackageParser, but that isn't the case with the ResolverActivity
whose ActivityInfo in populated in PackageManagerService.
This was causing the device to exist multi-window mode since
the default ActivityInfo.resizeMode was 0 (RESIZE_MODE_UNRESIZEABLE).
Bug: 28378995
Change-Id: I46e58d434f2a0274c461a8ff00b59ed3d2a1dd52
GmsCore will use different filenames to distinguish a security update
from a normal update. (update.zip for normal update and update_s.zip for
security update.) So, if framework observes the filename as
"update_s.zip", write command "--security" to BCB. This cmd ask the
recovery image to choose the right background string for update.
Bug: 27837319
Change-Id: I2ef12267a6be57d8a81f7f9f34c09aea54530c1f
By declaring a <restrict-update> tag in its manifest, a system package
can restrict its update to be the singular package that has the same
given hash. An update's hash is the SHA-512 across all its APKs [i.e.
for splits, the SHA-512 is calculated over the concatenation of the
base plus all splits].
The restriction only applies to system packages.
Bug: 28398205
Change-Id: Iec493fc8ef27edee53f1d437cb0caaa78782f329
When a job will eventually run in the foreground, the internal
scheduling needs to ignore any background network restrictions when
satisfying constraints. This also means the job should ignore the
current device doze state, since the requesting app could get the
same behavior by starting their own foreground service.
Always dispatch network policy changes to ConnectivityService first
to ensure that it has up-to-date information. Fix bugs around data
saver that were causing networks to not be marked as BLOCKED for
background apps; before this fix apps would have been spinning in
internal connectivity loops, thinking that the network was actually
connected when the kernel was actually blocking their traffic.
Offer new ConnectivityService method overloads to ignore the blocked
state for a specific UID.
Print unsatisfied job constraints to aid debugging.
Bug: 26571724
Change-Id: Iaaa17933e6dc1bf6d3dff26d0bfc12222e51e241
If the insets change, "mWidth/mHeight" won't change
as it's based on the window frame (not the surface size),
we need to track when the insets change and call
HardwareRenderer.setup with the new values.
Bug: 28257246
Bug: 28368990
Change-Id: Ida304b57c4671d010d1cf7b370674c9453841c97
Update to javadoc comments saying that for apps targeting N and up
the geolocation api is only supported on secure origins.
On non-secure origins requests to geolocation api are automatically
denied without calling the corresponding
WebChromeClient#onGeolocationPermissionsShowPrompt method.
BUG: 28080869
Change-Id: I57726f7f3b3d38db0535f742b1f74c40c1f1ce8b
Use a holder for an uncommon Pattern instance in FileUtils.
Allows to compile-time initialize:
* android.os.FileUtils
Bug: 28174137
Change-Id: I4a7a388795a96678b4b26e4f2c02b1117d6a67f6
- Ensure that app to host events are not filtered out
- Populates the app handle appropriately for clients to reference the
nano app sending the event
Bug: 28273520
Bug: 28272149
Change-Id: I7373fc84abcadc2ab17109484f2d04b02a474593
Hour was not updated correctly when a new hour was selected using the
radial picker or when AM/PM was changed, which prevented programmatic
calls from working.
Bug: 28398738
Change-Id: I0c1ffd9f9e569d980e72e74dc62568a56930afc4
There is a narrow window of time during user unlock where we're
reconciling user storage and dispatching the "unlock" status to
various internal system services. While in this "unlocking" state,
apps need to be told that the user still isn't actually "unlocked"
so they don't try making calls to AccountManager, etc.
The majority of internal services are interested in merging together
both the "unlocking" and "unlocked" state, so update them.
Clarify naming in AccountManagerService to make it clear that a local
list is being used, which mirrors the naming in MountService.
To match UX/PM requested behavior, move PRE_BOOT_COMPLETED dispatch
after the user is unlocked, but block BOOT_COMPLETED dispatch until
after all PRE_BOOT receivers are finished to avoid ANRs.
Bug: 28040947, 28164677
Change-Id: I57af2351633d9159f4483f19657ce0b62118d1ce
Pinned stack doesn't have focus, so there's no need for setting extra
elevation to show shadow for focused case.
This removes extra eleavtion for pinned stack, and improves the PIP
animation quality by preventing extra surface size change
at the end of animation.
Bug: 27364161
Change-Id: Id099a78de48b2e038a69600c94454b5cbfe0628f
Since activity manager only issues a configuration change when
we are not relaunching the activity, the optimization to suppress
that on the client side is not needed anymore and only leads to
issues where there is a change in smallest_width but we are not
relaunching the activity because the change doesn't cross a size
threshold.
Bug: 28050773
Change-Id: I303c190bd7390363d1030edcdb2913b7c64c666d
If we start the forced resizable activity with an existing task,
avoid moving that task to the front. This can cause that a previous
task that was moved to the back gets moved to the front again just
because we started that activity. That's not good.
Bug: 28223489
Change-Id: If8acf31b8be98b82665de1015d5621331c37fb64