Camera: add ISO mode support

Change-Id: Ied2075f950269990d836fc768b2c6c36088d494f
camera: add power mode support

Based on commit 7036d66bec7697160ba1b2e255f1e7fae0c8c435 from CAF,
branch ics_chocolate.

Change-Id: I8a60668b18980fd5e6f9dd341db5a8a63deb99d0
Camera: add additional ISO modes (2/2)

Change-Id: I3460c3de4cbef467430673146a9ddb2fdc8f5032
Fix Photosphere/Camera FCs

Photosphere is setting a few parameters "blindly"
while the API says it should check the device capabilities first.

On TF101 (and probably other devices) the camera HAL doesn't handle
FLASH_MODE & SCENE_MODE and so it sends the required RuntimeException
for these, which makes Photosphere FC the Camera app.

=> Fix: check device capabilities & ignore these 2 parameters if the device doesn't support them.

Fix based on following Team EOS patch: https://review.teameos.org/#/c/1598/

Change-Id: Idd80299802e9213a3c40414ace3d516d39f47783
camera: Add support for sending raw commands

 * Certain camera drivers need magic commands to select special modes
   such as ZSL or HDR. Add support for sending raw commands from
   applications.

Change-Id: I512a765c7a67ffd2877e465cf6493ffc2b3b54ac
Camera: Add support for QC camera features.

Added APIs and keys for all QC features. This
will enable application to get/set paramters.

Change-Id: I58a53c7b9133a3acddc34b268dac086c9562d533
Camera: Video HDR Feature Integration.

Added framework support for camera applications to query supported
video HDR modes and set the required mode.

Change-Id: Ie318e586838a2f035e59e30fa51af35b52f7c886
Camera: Adds support for meta data callbacks

- This change adds a new type of callback
  that will be called when there are pending
  meta data notifications.

Change-Id: I84f5cbafe4f023c7b0efa9ec8620756b0eaa428d
Telephony: Introduce config item for Hot Swap support

When a Uicc Card is inserted or removed, Android pops up a prompt
to the user to reboot the device. This prompt is unnecessary if the
modem supports Hot Swapping of cards.

Introduce a new config item to indicate if the modem supports
hotswapping. Frameworks can then check this before propmting the
user.

Change-Id: I0f2c3134525aa2301fd667d0a1819f4419eecae0
gps: Add support for Qualcomm GPS hardware

 * This ABI is changed, but we aren't using the new features in MR1.
 * Add a little translation for the changed fields and methods.

Change-Id: Ieecc2235b42f64fc69d4651855f4e9edfe7d738d
Add support for Samsung extended AGPS

The AGPS implementation in the GPS chipset used in some Samsung devices
(i9100, i9300) can make use of the Psc field. Adapt the relevant
functions hiding the changes incompatible with other devices under the
AGPS_USE_PSC #define.

Credit to Qaweck from xda-developers forum for finding the meaning
of the field.

Change-Id: Ie4691c79ca379a1f5c0a87500c1b06b56ae7ac0d
Telephony: Add getLteOnGsmMode() method (1/2)

Same functionality as the existing getLteOnCdmaMode, but for GSM
LTE devices.
Enable with the telephony.lteOnGsmDevice system property

From CM 10.0: Ibfb47ca608e51393b99d3308e0a6c66050b3f32e
- Moved getLteOnGsmModeStatic() to TelephonyManager.
Frameworks: fix notification cancel on privacy guard

new activity stack from google to handle the shiny new launcher
stuff is running on several instances. That said mPrivacyGuardPackageName
currently does not survive when going from an app into launcher. Make
it static to solve it.

Change-Id: Ic9374d2cc58cb716b086365ab8aa96ffaef44879
fb: volume rocker controll (wake up and volume) thanks to

CM and omni for the proxy sensor idea

Change-Id: I60f5f88e32a129afda80f5b0f4f41cb0a322b691
fb: fix google observer derp

the way it was it does not detect any observer change on the
immsersive value. Fixed it by settings it to Secure completly

Change-Id: If8cf887650668e2399367e09614e91cc30b7f70b
Framework: safe headset volume option (1 of 2)

thanks DvTonder

Change-Id: I5355820a24d48c1d8f54ea17a7022d891ad07857
Frameworks: Slims ElectronBeam get some love (1/2)

Features:
- You can select different crt off animation modes if device overlay does not disable it at all
- disabled
- always horizontal (stock behaviour)
- always vertical (screen collapse from left and right to the middle)
- orientation dependent (means portrait = horizontal animation, landscape = vertical animation)
- some minor fixes/code style improvements to 4.3 implementation

Change-Id: I02543a242f8f570438f2ab97a19b6ffe1b4dba1c
[1/2] base: volume panel styles and tweaks

From CM - Support different styles of the volume dialog
allows expanding the dialog to show all adjustable volumes

New setting MODE_VOLUME_OVERLAY defines the style
0 = unchanged - single slider
1 = expandable - button beside to slider to expand - this is the default
2 = expanded - open already expanded

This also adds using setting VOLUME_LINK_NOTIFICATION
to allow adjusting the separation of notification and ringer volumes
default=1

This also already adds the new setting
VOLUME_ADJUST_SOUNDS_ENABLED default=1
to allow disabling the volume adjust sound

fixed some minor code style issues

- add all values multi user configurable

Change-Id: I94e0f944f76ee9751663de8ac40d99a342884259
fb: add back all keyboard IME features back (1/2)

this commit adds:

- ime switcher notification - thanks cm
- slims fullscreen disable on landscape
- slims force autorotation on IME
- volume button control for navigate in the message - thanks cm
- slims force to show always enter key

some fixes to the 4.2/4.3 implementations + added full multiuser
support for all this features

cheers

Change-Id: I71e93c39620cc171e658b2d7e26491bac97c651d
Status bar brightness control

+ added some fixes to original implementation (thanks mostly cm for that)
+ add multiuser support

Change-Id: Ibc5cc15a9b43eade73670d308d5cc788c93b6210