Wifi: Allow configuration of the P2P ifname

ICS used the same wifi.interface as the regular wifi service.
Let's use wifi.p2pinterface here, since they _can_ be different

Change-Id: Iab68b245b33377271354c849bbe33725a26193f1
wifi: don't avoid poor connections if mobile isn't connected and avoid
NPE on wifi only devices.

Change-Id: I7dcbbe682ee69bc23b8d9fe8cbed49cab7cea04b
PackageInfo class incorrectly referenced as a struct.

Change-Id: Ie38b2b3ed82a6d5f99b6c574af53ae5bda7371d5
Fix button backlights that depend on ALS.

On a few devices, lighting the buttons when the screen turns on
depends on the lightsensor, regardless of the user preference.
So go back to enabling the sensor whenever the screen turns on, and
enforce the user preference after running through the light settings
once.

Port from CM9.

Original: http://r.cyanogenmod.com/#/c/12818/

Change-Id: Ibb9155b4f299637d553986c44b9cb548dc855489
input: fix recents opening when waking the device with the home button without lockscreen

Port from ics
http://review.cyanogenmod.com/#/c/18584/

Change-Id: I354ace2a3b37bd336d2806b941f779538bc96c74
Add Dock USB Audio Support for Samsung Car / Desk Docks 1 of 2

Samsung docks have a non-sensing USB adio port.
Samsung get around this by having a separate Setting to route the Audio
The Changes made will only add the extra Observer if the Kernel supports the endpoint

  /sys/class/switch/dock/state

A new BroadcastReciever (SettingsChangedReceiver) is used to watch out for users changing the Preference

The choice is made in the GalaxyS2Settings.apk (see 2 of 2)

  device/samsung/i9100/DeviceSettings/src/com/cyanogenmod/settings/device/DockFragmentActivity.java

After OnBootComplete and when the checkbox is changed, an Intent is triggered to this class.

When a Dock Event is caught if it is one the Samsung endpoint "dock" then if the users preference is checked,
then the event is allowed to go on and route the audio.  If it is not checked then it is ignored.

Change-Id: Id43af5a13d04e96645ccc49292518107aa4af98e
PowerManagerService: fix getAutoBrightnessValue for btn/kbd

getAutoBrightnessValue calculations are correct only for LCD
backlight brightness values increasing with higher light values.
Skip the calculation for the reversed button/keyboard backlight
arrays, where the backlight brightness decreases with increasing
light values.

Change-Id: Ib72b8325fe2b0f83780e91dc94eea2e38061224b
hnl_dk: size_t is long int and not unsigned int.

Change-Id: I6c1f33be09e83324894ac43e38829f3e39890f3e
resume: fix recents showing up when waking the device with the home button

The previous fix, resolved the problem most of the time, but the home
long press would still happen once in a while during resume from RAM.

This is probably still somewhat dependent on timing but the notifyKey
runs immediately first thing after resume, so this fix should solve the
problem completely and it should be enough.

Signed-off-by: Andrea Arcangeli <andrea@cpushare.com>
ProviderMap: remove hashmap when entire user specific entries are removed

User specific entries in  mProvidersByNamePerUser and mProvidersByClassPerUser
isn't cleared when entire user specific providers are removed. Fix is to remove
the user specific hashmap in such cases.

Change-Id: I6edf211ced873e59f3b89ffceb9eceec13ea8f3f
ContentProviderRecord: Remove external process reference when finalized

ContentProviderRecords is removed from provider map by activity manager service
when the process hosting the content providers terminates and this causes GC
to free the content provider records but the reference to external process
using the content provider isn't cleared. Fix is to clear the reference and
unlink for death notification.

Change-Id: I67fd10cee57b02257792d0c9b4569fe11dea7648
Added check of ActivityInfo launch mode when starting activity.

When starting a singleTop activity from a singleInstance activity,
the onNewIntent() callback was not called when expected. The
reason for this was that only the launchMode specified on the
intent was checked and not the launchMode specified in the manifest.

Fixes issue 17137.

Change-Id: I1a9bc1007d6f5145bf93a6161534732bf5214b7a
sensors: Add dummy light sensor

Some devices have a sysfs toggle for the lightsensor instead of
passing the LUX values for userspace processing; for those,
use BOARD_SYSFS_LIGHT_SENSOR:=<sysfs path>

This is necessary for the rest of userspace to recognize its existence
and toggle it for auto-brightness. It doesn't generate actual light
values, though; all backlight adjustments are made in-kernel.

Change-Id: I0e546b4740720bd34d1e1d85a96b295fcc697106
PowerWidget: Make widgets stationary like everything else in the tray

Before patch: widgets move up with the grab bar (and get smashed a bit)
https://dl.dropbox.com/u/1077120/Android/Screenshot_2012-09-13-18-19-39.png

After patch: widgets disappear behind the grab bar, like everything else
https://dl.dropbox.com/u/1077120/Android/Screenshot_2012-09-13-18-23-52.png