Use ParceledListSlice to send the list of active notifications
from NoMan to NotificationListeners.
This allows us to simplify the API to what it was before
introducing the "String[] key" workaround for dealing with large
numbers of StatusBarNotifications.
While we're at it, rename Ranking.getIndexOfKey to something that
makes more sense.
Bug: 15126927
Change-Id: I02c2087978c6c4ec1198be496c6250a66143ecb3
Uncomment lines in ActivityManagerService. Before start lock task,
ActivityMangerService calls DevicePolicyManager to see if the
app can go into lock task.
Change-Id: I9ad784d7cc637d45884dcb2623b4c59ff802f93d
User visible behavior is supposed to be identical with and
without this CL.
Previously, there is some corner cases where
InputMethodSubtypeSwitchingController#resetCircularListLocked is
not called but the list of enabled input method is updated.
Fortunately, this corner cases are not observable for a user
because we have not updated the the rotation order dynamically.
However we should fix this before implementing smarter rotation
algorithm that changes the rotation order dynamically.
BUG: 7043015
Change-Id: I145a514dc4cde369ba50431c408c916046ab0c6e
ARC channel is established by both TV and AV Reciever.
From TV, it sends <Request ARC Initiation> and AVR
responds with <Initiate ARC>.
From AVR, it can be initiated by sending <Initiate ARC> directly
to TV.
Once TV receives <Initiate ARC> it sets up ARC internally
and replies <Report ARC Initiated> to AVR.
Termination steps are almost same except for message name
(use Terminate instread of Initiation).
In order to implement the above steps, this change introduces
following classes.
RequestArcInitiation(Termination)Action:
handles <Request ARC Initiation> (<Request ARC Termination>)
RequestArcAction handles common logic of them.
SetArcTransmissionStateAction:
handles ARC set up, enabling/disabling ARC and
reports results to AVR.
<Initiate ARC> and <Terminate ARC> handles directly in
HdmiControlService
Along with this, this change has implmentation for
add&removeAction. To avoid synchronization issue
they are isolated to main thread.
Change-Id: I3c5cf7c777e6c1de50d63ce4643b191dfe15fe1f
The key improvement is that we need to keep track of
the package that's currently being scanned (this includes
new installs and upgrades of existing packages) and treat
it specially. If we didn't do that, In the case of upgrades
we would perform the shared UID calculation based on the ABI
of the old package, and not the current package.
This change also allows us to perform the CPU ABI calculation
before dexopt, which saves us from having to do it twice and
fixes a bug where we were using the wrong package path to
dexopt a package.
This also has the side effect of fixing 15081286.
bug: 15081286
(cherry-picked from commit b851c89d2252cf3d1dc504558ce1553527885316)
Change-Id: I20f8ad36941fc3df29007f0e83ce82f38f3585c8
Allow power button to be used to either go to sleep as usual,
which may doze, or skip that completely and really go to sleep.
May also really go to sleep and go home all at once.
Bug: 14406056
Change-Id: Ia19e2551b9c2a72271bb2eddd5c0d1749761e019
When the device enters a non-interactive state, we normally
cancel all active vibrations as a safety precaution. However if
the system is performing haptic feedback then we want to allow
it to run to completion.
Bug: 14319563
Change-Id: I673781bbf32562e45c1595689e6b423bd178ea73
Allow profile owners or administrators of restricted profiles
to restrict access to telephony features such as calling and
texting for a user.
Change-Id: I89f97608c07c647ad8a7b43fef9d1e6bc4a84e95
This launches voice search when headsethook is long pressed unless
you're in a call. The handling is done in MediaSessionService. This
CL also adds a switch to the new APIs to the fallback event handler
which was missed previously.
Change-Id: I1cbdff1d6e9f5293885dd8aaed8ba13cb15b36d4
When the screen is off, there are no guarantees about when
non-wakeup alarms will be dispatched. Historically they are
dispatched any time the device wakes up. With this change,
we will delay the dispatch until sometime later.
The amount of delay is determined by how long the screen has
been off. Currently there are three possible delays: up to
2 minutes if the screen has been off for less than 5 minutes;
up to 15 minutes if it has been off for less than 30 minutes;
and otherwise up to an hour.
When the screen is turned on or a wakeup alarm is dispatched,
all delayed alarms will also be dispatched.
Note that one of the things this delays is TIME_TICK, which
means the in many cases we won't deliver TIME_TICK until the
screen is in the process of waking up. The current
implementation causes this to be delayed until the SCREEN_ON
broadcast is sent; we probably want to improve this to have
the power manager tell the alarm manager about the screen
turning on before it sends that broadcast, to help make sure
things like the lock screen can update their current time
before the screen is actually turned on.
In addition, switch all of the alarm stats to use the new
PendingIntent "tag" identifier for its operations, instead
of the old code to try to construct a pseudo-identifier
by retrieving the raw Intent.
Also add a new package manager command to immediately write
packages.xml.
Change-Id: Id4b14757cccff9cb2c6b36de994de38163abf615
Some Factories come and go (Telephony) and so they need to be able to unregister.
Also, debugging is tough when the factories are anonymous, so add names for logging.
Lastly, only send single set of NetworkRequests to a newly registered NetworkFactory
and only send the requests.
Change-Id: I717d63363f25c446f8ecf38d933b1a35d744af6e
TrustManagerService now keeps track of all events that
influence its state and reports them when it is dumped or
a bugreport is collected.
Bug: 15079129
Change-Id: Iac13de8a848d2b12c8d06168a6969f55b264144a
When at the user limit, removing and adding a user causes a race
condition where the deleted user is still being removed and adding
another one fails.
This change excludes deleted users from the counting to compare
against the limit.
Also fix an ArrayIndexOutOfBounds recently introduced in AppOpsService.
Bug: 13282768
Change-Id: Ib79659e7604396583a280dbbc560b288a6d9051c