The system can now boot in a "locked" state where only encryption
aware (EA) components can be safely started. When in this state,
PackageManager already filters away non-EA components, but system
services like AccountManager and SyncManager need to carefully handle
these temporarily "missing" components.
As a guiding principle, all known Accounts are still present when
the device is locked, but communication with underlying non-EA
authenticators is blocked.
To keep things simple for now, all SyncManager requests are kept
dormant until the user enters the unlocked state.
The core of this logic is that RegisteredServicesCache now works
with all components regardless of EA status, which prevents us from
accidentally thinking a service was removed when the user is locked.
Bug: 25945136
Change-Id: I8714121f6236b00821769023c4df7de1c8a99944
Ensuring visibility is triggered in unpredictable fashion, e.g. it can
be triggered by attachment of application. It can happen between an
activity stopping due to change of user, but before that operation is
finished and as a result the stopped activity will get marked as
visible even if we mark it as invisible in stop. Instead of trying the
activity as invisbile during stopping, we adjust the visibility ensuring
method to go through stack contents even if there is no top running
activity (because the top running activity is run by a different user)
and force the correct visibility.
Bug: 25958227
Change-Id: I4662667e8151fa25d947bacf33ba915389dd32e8
- add config to lock UI mode change: When this is enabled,
request to change car mode will be ignored. Apps can check
the config using UiModeManager.isUiModeLocked()
- add config to lock day / night mode: When this is enabled,
apps cannot change day / night mode without having
MODIFY_DAY_NIGHT_MODE permission.
Apps can check the config using UiModeManager.isNightModeLocked()
- add config to disable car dock intent launch for home key
and mode change
- All new configs have default values which keeps the current behavior.
Car products should override the configs to get desirable behavior.
bug: 22700993
Change-Id: Ic0e58f3428151e0b1c19a2e9a7d6ded32ff962a6
The work challenge should be locked whenever the device goes to sleep + admin
timeout or when the power button is pressed if the lock setting is on.
This change creates the infrastructure to lock a specific user instead of the
device and uses it in these cases. Then, the current code that brings up the
work challenge can check to only show it if the user is locked.
Change-Id: I89b4342b1458d97734d7afa66be52bf04ec3a3d4
Just assign mUri directly instead of calling setUri()
to avoid flipping mIsAppProvidedWebUri to true exactly
when it shouldn't be.
Also, make sure the boolean gets un/parceled.
Bug: 25952056
Change-Id: I973e585d04a73c2b7eab5975ea7f2b447b270c26
Previously, when a user was not the system user, an instrumentation context
was not properly initialized. Its ApplicationInfo should had been initialized for
the current user id .
Bug: 25981683
Change-Id: I7b934bb6de42be15a613ac26fd5377c9de1682cc
No longer throws when calling cancel() with a null PendingIntent if
the app targets SDK < NYC.
Bug 25798631
Change-Id: Ic91f42808811645b01802abcc785f4218aac0e8b
Windows in the pinned stack shouldn't receive input keys, so we prevent
they from gaining window focus so the focus/input keys goes to the stack
below the pinned stack.
Also, cleaned up some code.
Bug: 25580816
Change-Id: Iea1f944d167310233c3dbaea140a4ada568bb815
It forces the user to stop instead of going into the background. Also
changed behavior of stopUser method. Now it also attempts to stop related
users along with the specified userId.
Based on ag/807976, with the only difference that it's now a user restriction.
Bug: 24579258
Bug: 24708668
Change-Id: I357298908816fc58feeed83b7e9979fc33d25da6
The body of {@code} must not be HTML escaped. This is one of
several changes that fix the source in conjunction with a
doclava fix.
Bug: 25757239
Change-Id: Ib38a0fa2dd2a3d68e467f78a812071e763d7e881
Previously the notification header had a seperate implementation
in SystemUI from which the platform implementation was derived.
Now that everything is in the framework, we’re migrating the
implementation for notification groups.ß
Change-Id: Ia61a75bd6c85e1805d4364a9e7e4587a020c1271
If an image was present, the first line of the
Inbox style could run into the image. This Is fixed
now.
Change-Id: I60ee22166a2dc1d2de2f1fe311effc419a95748d
If there is an image instead of applying the same
margin everywhere, the text now floats around the
image.
Change-Id: I87f9ca9f51fb270b0732a99374544381bd1fc4e0
The padding was off in a few cases and the layout
was jumping when expanding when there were actions
Change-Id: Ia9a9ddbfd1c9a8104278a56ce6e1ef2a4ceafbe9