This could happen when another Network changes its capabilities and
updateCapabilities() calls rematchAllNetworksAndRequests() which
calls rematchNetworkAndRequests() on all Networks, even those that
are uncreated.
Allowing uncreated Networks to satisfy requests can lead to bugs
where ConnectivityService instructs netd to perform actions
(e.g. set default Network) on uncreated Networks which netd doesn't
know about yet.
bug:18446301
Change-Id: I857262ac66d1d3af4c264ce128f0a4bee95655de
Although the audio policy makes a distinction between voice capable
and not when determining the default active stream, have the panel
recognize this condition and behave the same way (enable the slider)
on all devices.
Bug: 17405530
Change-Id: If3e1af3078f47bc1205545e919ccc6206020e7b2
Background: because the hole-punching code lives only in SurfaceView,
the overlay view can be covered by the application if the TV input
changes the position of SurfaceView via Session.layoutSurface().
This change punches a hole as large as TvView so that the underlying
overlayview can be shown properly.
Bug: 18420642
Change-Id: If9a829367083ce2002a4c4a4e4a4bbb623f7ad96
This CL improves the method by which excess space is distributed in GridLayout.
Previously, GridLayout would assume weights were arranged in a 'line' and
sum the weights in the assumed line to figure out the proportional allocation
to each view. The system involved running GridLayout's internal constraint
solver twice.
Behavior was unspecified (and surprising) when weights appeared in views
that were not linked together linearly, typically leaving the last view
in each axis with more space than expected (in GridLayout's Bellman-Ford
constraint solver, remaining space goes to the last span of the axis).
This CL changes the weight distribution mechanism to effectively integrate it
with the Bellman-Ford constraint resolution algorithm. It does this
by returning a boolean value from the constraint solver saying whether or
not the constraints could be solved and then using a binary chop to find
a maximum amount of space that can be distributed without violating the
constraints.
This implementation runs the solver log(<axis size> * <number of Views>)
times until finding the maximum amount of space that can be distributed according
to the weights without causing a contradiction. We expect the cost of this
variation to be around a factor of 10 worse than the previous implementation
but to provide a simple and general definition of space distribution via
weights that will be open to many future optimizations.
As a side effect, this CL also fixes a bug in GridLayout where remaining space
was distributed only along the major axis.
Bug: 17485996
Change-Id: I120f39e95e90b5b35072ef8a6c348ec541aae42a
This is a temporary capability to recognize CDMA conference calls
so we can show the right strings in the InCallUi. This should be
moved to CallProperties when possible. b/18434985
Bug: 18284408
Change-Id: Ia3e2ff91c8f8a91ff0123df4d3e6a581bdf85895
- hasCarrierPrivileges - renamed to getCarrierPrivilegeStatus
- setLine1NumberForDisplay should not be usable by apps that have MODIFY_PHONE_STATE
- setVoiceMailNumber should not be usable by apps that have MODIFY_PHONE_STATE
- setOperatorBrandOverride should not be usable by apps that have MODIFY_PHONE_STATE
Not addressed:
- setGlobalPreferredNetworkType() should not be usable by apps that have MODIFY_PHONE_STATE
The underlying call is needed by system apps (OMADM) too.
Bug: 18356155
Change-Id: Idc6468a0bd0b0c52b9de1d8446f98c90ac0b3238
getSystemAudioMode() should have used the thread-safe method
to get the information of the connected AVR.
Bug: 18426137
Change-Id: Ib3edff97337b5960160dd39d551fbfbbfdfce93b