This change fixes a bug where native daemons may try to communicate
with the power manager before it was fully initialized due to a race
between publishing the binder service and completing init().
The solution was to simplify the dependencies related to the power
manager. It turns out that most services that were passed in
init are not actually needed until systemReady. What remained
was a dependency on the activity manager to check permissions for
incoming calls. So now we start activity manager first.
However, the activity manager also depends on power manager for
wakelocks. To break the cycle, we now defer initializing the activity
manager's wakelocks until after the power manager has been started.
Cleaned up a bunch of boot-time service dependencies so that we
can have better confidence that they are correctly maintained.
Bug: 13884219
Change-Id: If08e2d7ccd44e7026a72441bb6bd5afd7bb9fffe
The existing code for notification manager/listeners uses a oneway
binder api to deliver messages. One problem with this is that
notification objects can sometimes get fairly large, and can bump
into the oneway binder transaction buffer if many happen at once.
To reduce this issue, flip the service into a oneway delivery of
a status bar notification holder, whose wrapped content is then
immediately fetched upon receipt of the one-way message. This moves
the meat of the fetch to be over a two-way interface without changing
the properties of which object is actually sent (a tickle solution
with lookup key would have changed this)
Further research: attempt to chunk notification objects themselves.
They can sometimes transfer hundreds of KB over a binder transaction.
Bug: 15426276
Change-Id: Ib1a1f4ff848c16f80bcf2ae4dfd2b87a9091f0b2
We make sure in Keyguard that we only hide ourselves in
startKeyguardExitAnimation ourselves when we requested a hide.
In addition, this change also fixes a bug in WindowAnimator that
it should only call startKeyguardExitAnimation when Keyguard actually
requested a hide.
Bug: 15676717
Change-Id: I2279cccb9916985b7e9a2f41137878be5782cb9c
Introduces new ApplicationInfo fields to surface zero or more split
APKs for an application. Splice these APKs into both the class
loader and resource system. Cleaner building of these paths.
Run dexopt() on all split APKs found after a parse, and populate
into ApplicationInfo.
Change-Id: I4a376bf4492d84ea95aafa866e106ea43a43e492
We need the transport to tell the system not only what package it's going
to deliver data for next, but also what format that data is in.
Change-Id: I989cf78febf923a4208acb33ed80ccc7869356f5
Bug: 15682142
Defer early return of alpha <= 0 for damage accumulation until
popTransform() so that layer updates will be performed regardless
of alpha
Change-Id: Ifb94dd3ed2d96d610e6f2f3071933903016273a5
Bug: 15116722
- Select intermediate GL texture size based on available
preview dimensions.
- Fixes for configure deadlock.
- Fixes for jpeg capture.
Change-Id: I3f665230defdad718de40494dd67fda5ea432bfb
As part of the effort to permit third-party suppliers of telephone
connectivity, we permit clients of TelephonyManager to obtain the
currently valid Subscription objects describing these suppliers. The
Subscriptions are intended to be self-describing such that an end-user
can choose from among them based on the information they contain. One
of these objects may then be attached to an ACTION_DIAL or ACTION_CALL
Intent to represent the end-user's choice of how to make a call.
Change-Id: I2ad1930079042d7bfe762b47c22f0538f7403bff
Conflicts:
telephony/java/com/android/internal/telephony/ITelephony.aidl
Conflicts:
telecomm/java/com/android/internal/telecomm/ITelecommService.aidl
When computing which windows to report for accessibility we were not
reporting windows behind non touchable ones. However, if a window is
not-touchable the touch events go to the window behind it. Hence, a
not-touchable window should not affect the reproted windows for
accessibility.
Change-Id: I213a32b33b0986a73d8bbdf0a3e40e6ca6e4261b
Reasons
1) Now that QC is no longer a modal dialog, it doesn't make sense for
to use FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET. We want QC to stick around
inside the back stack.
2) FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET is deprecated. It now behaves
completely differently than it used to. It now acts the same as
FLAG_ACTIVITY_NEW_DOCUMENT.
Bug: 15693551
Change-Id: Ia22fe04d7a91876061498bf1f098755b54199704