Break apart queries to getInstalled* API

To avoid blowing past the Binder IPC limit, change the
PackageManagerService to have a DB-like interaction where the client
tells the service the last "row" that it read.

The fact that we use a HashMap instead of a TreeMap makes this
problematic. For now we're just making a new ArrayList for the keys and
then sorting them for each call. This can make the API slower for callers
of this, but it's probably greatly overshadowed by the cost of the data
transfer itself.

Bug: 4064282
Change-Id: Ic370fd148d4c3813ae4f2daffa1a7c28d63d5a09
Changed notification power widget sound+vib -> vib to set vibrate always

Change-Id: Ic9ff7da0ffe1fc1c54366155d56239262799c6c6
Move Wifi Ap configuration to flat file

Secure settings are accessible by applications without
permissions. Move to a system-only accessible file

Bug: 4391796
Change-Id: I5448943d26cccce39dd4f32423c68dad4bbf50ad
Merge "Move Wifi Ap configuration to flat file" into gingerbread
Revert "Revert "modify the device to enable to get the state as slide-open/slide-close.""

This reverts commit 7cc414c564c8365f2d3190dc6d9456aa4e5a6ba3.
Merge "Break apart queries to getInstalled* API" into gingerbread
Merge 2fae858d from Honeycomb-mr1. do not merge.

Change-Id: I648f9ffa9745331ce4104dc4772f78ed933a4909
LayoutLib: implement data binding for most AdapterView
Merge 05b7b69c from honeycomb-mr1. do not merge.

Change-Id: I1aca5774dec2e18ab5f9e860f6fd90b481b2857c
LayoutLib: support the new baseline/margin query API.
Merge "Merge 2fae858d from Honeycomb-mr1. do not merge." into gingerbread
Merge "Merge 05b7b69c from honeycomb-mr1. do not merge." into gingerbread
Merge e57aa434 from honeycomb-mr1. do not merge.

LayoutLib: Fix issue where <include> with no layout params wouldn't display.

The issue is that the layout params from the root element of the included
layout should be used but this failed because loading the layout params
from the <include> tag didn't throw a RuntimeException in our modified
code (BridgeTypedArray).

Because we don't want to throw exception in general we only throw it
when reading the layout params of an include node which is pretty crappy,
but works for now.

Change-Id: I83ccf956e8b476f34dfc9a70aebae2288d53746e
DO NOT MERGE SystemUI: update signal level when broadcast is received

- Signal level updates should be updated whenever a signal change
broadcast is received but it is failing to do so.
- Only when state change broadcast is received, signal level was
updated. (Ex: State: Idle -> State: Connected)

Change-Id: I71d86782143b3440a042164a87af64c7bee97ae2
Signed-off-by: TK MUN <tk.mun@samsung.com>
SmsMessage: convert + to international dialing prefix

When sending an SMS to an international number in the format
+401234567890, the "+" should be converted to the International
Dialing Prefix (in the US, 011). However, the device drops this
"+" altogether in the outbound data burst message causing the message
to fail or be sent to the wrong address.

Change-Id: If25c092d283f1703b49cf52d0379efa54639f093
Signed-off-by: Soojung Shin <sj46.shin@samsung.com>
Fix a race-condtion in SurfaceFlinger that could lead to a crash.

Client::mLayers could be accessed from different threads.
On one side from Client::attachLayer() which is currently
called from a binder thread; on the other side from
Client::detachLayer() which is always called from the main
thread.

This could lead to a corruption of Client::mLayers.

We fix this issue by adding an internal lock to Client.

Bug: 4483046

Change-Id: I5262bf1124d9a65ec6f8ffd8e367356fc33a7536
Fix a race in SurfaceFlinger that could cause layers to be leaked forever.

The transaction flags were atomically read-and-cleared to determine if
a transaction was needed, in the later case, mStateLock was taken to
keep the current state still during the transaction. This left a small
window open, where a layer could be removed after the transaction flags
were checked but before the transaction was started holding the lock.
In that situation eTraversalNeeded would be set but only seen during the
next transaction cycle; however, because we're handling this transaction
(because of another flag) it will be commited, "loosing" the information
about the layer being removed -- so when the next transaction cycle due
to eTraversalNeeded starts, it won't notice that layers have been removed
and won't populated the ditchedLayers array.

Bug: 4483049

Change-Id: Ibb5989312f871339928ee1aa3f9567770d72969b
RefBase subclasses can now decide how they want to be destroyed.

This adds a destroy() virtual on RefBase which
sublasses can implement. destroy() is called
in lieu of the destructor whenthe last strong
ref goes away.

Bug: 4483050
Change-Id: I8cbf6044a6fd3f01043a45592b5a60fa1e5fade2
Fix a race that could cause GL commands to be executed from the wrong thread.

Bug: 4483050
Change-Id: I37f0f3156059c208c6168ee6131d0e267d823188
Merge 2402ad60 from honeycomb-mr1. do not merge.

LayoutLib: Fix Canvas_Delegate.native_concat().

Change-Id: I863c43d65a929816ac7c9e69addcc647dac1878b
Merge 6103e22c from honeycomb-mr1. do not merge.

LayoutLib: custom styles override the default style instead of replacing it.

Intead of reading either the custom or the default style for a widget, we
read both and use the values from the custom style if it exists, or
from the default style otherwise.

Change-Id: Ibcec2e9b1e8a95295ab26ede145c287ff2f30be4
Do not unlock when running in background

It allows to run any application (e.g Toggle WiFi or Bluetooth OnOff) in
the background without the need to unlock the lockscreen. It also
vibrates when correct gesture was drawn.

Change-Id: Ia041a08108c2f1ced9b577fe2423eef0a9b59beb