PackageManager: allow build-time disabling of components

Allow components to be specified as disabled at build time
(applied on boot).

This allows stock OTA components to be marked as disabled in
Slim builds.

Change-Id: I6e4499cc40a779792a5ea97a10137399dad7d69f
Privacy Guard Slim version (1/2)

Re-implements slims ehanced privacy guard from 4.3
and addapt it to 4.4 changes

Change-Id: If57de2b541fa6b0a590fd65e8664bf173e259035
fb: volume rocker control (wake up)

Change-Id: I60f5f88e32a129afda80f5b0f4f41cb0a322b691
privacy guard: allow as well image resources for light background

allow to fetch icons which fit on light background if needed. (Settings eg and
later other security features)

Change-Id: I6445bf0fc1a05718af01d83e29fc6d01b8f11c6c
fix resource naming derp

sorry

Change-Id: Ib9c120c1400840881c6122fbe99eea619cb6b7fb
FB: fix missing hides

Change-Id: Ic0b17f4a87d793cd1c58887ea796a5f31d28578e
FB: PGM correctly set permission map

although the pgm permission map follows the main map not all ops do have in real a manifest permission behind it.
This leads in wrong showing of this permissions.

Simply fix it with maping same way like the manifest permissions

Change-Id: Ib62917c78365abd21a718cd90f1ae097ca8901a0
Recover apps with malformed certificates.

There was a window of time in Lollipop where we persisted certificates
after they had passed through a decode/encode cycle.  The well-written
OpenSSL library was liberal when decoding (allowing slightly malformed
certs to be parsed), but then strict when encoding, giving us
different bytes for effectively the same certificate.

A related libcore change (0c990ab4a90b8a5492a67b2b728ac9a4a1ccfa1b)
now returns the original bytes verbatim, fixing both pre-Lollipop
installs and installs after that change.

This change recovers any apps that had been installed during the
window of time described above by doing a one-time check to see if
the certs are effectively equal.

Bug: 18228011
Change-Id: Ib82bd6db718d0490d7a26c9c1014b7c8457a7f2d
Reintroduce button-backlight (and respective inactivity timeout)

The power manager rewrite from Change I1d7a52e98f0449f76d70bf421f6a7f245957d1d7
completely removed support for control of the button backlights, which makes
all capacitive buttons out there stay dark. The commit message in that change
mentions it hasn't been implemented _yet_, so this fix should be temporary
until upstream does their own implementation

[RC: Updated to 5.0]

Change-Id: I6094c446e0b8c23f57d30652a3cbd35dee5e821a
Camera: Don't throw exceptions when value pairs have spaces in them

"(1,2)" worked, "(1, 2)" crapped out. Fix it.

Change-Id: I71262909280f88d930898a2bcf37d379add4fdea
SettingsProvider: Update icon.

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

Added APIs and keys for all QC features. This
will enable application to get/set paramters.
(cherrypicked from commit d0c5a0ee7e9af41320fed00ff324c6d0f22eb697)

Change-Id: I68c23aaf7267645efeb4d4743b390a048292b7fd
Telephony: Set the value of min match according to one property

CTA requires to match 11 phone numbers, so use the value of the property
"persist.env.c.phone.matchnum" to set it 11 in case of CTA tests, but by
default it is 7 without change.

Change-Id: I8cd4105c06c71af1ad242858d8de474459d96ee1
Telephony: Check the length of phone numbers before use

If the phone number string is null or empty, just return
to avoid null exception.

CRs-Fixed: 399293

Change-Id: I78db37d70e38cd2782c13621f98dc25d8624bfb7
frameworks/base: media: add support for DIVX files

Change-Id: I6e922c5d6e17ee590606268af97b7894f35d19ae
Telephony: Add new apn.sim.operator_numeric property

Use new property to filter apns. We need this new property
because icc.operator_numeric property is also used in cdma
and ApnSetting UI might display wrong set of apns if the
peroperty value used was set by RuimRecords
CRs-Fixed: 362846

Change-Id: I3831a703a2fdc69df8552af57e0bb981d0c7e46f
Camera: QCFace camera framework added

Add framework support for extended face detect

CRs-Fixed: 587195
Change-Id: I2a1c477ee6d11f2b9764966abbb85ede9100fe91
Conflicts:
Android.mk
Camera: Extended face features added

- QCFace renamed to ExtendedFace

CRs-Fixed: 587195
Change-Id: I7c7e2073f283522c2f0bd0fa5e7b96a74ae18011
camera: Fix Camcoder quality levels based on video profiles

Fixed the enum map between the framework and native layer
for extended camcorder profiles

Change-Id: I38ce375841bf83ac01c4ac8f42c22a72e8ed2c19
Camera: Add support for manual 3A

Add API for manual 3A (awb/af/aec).

Change-Id: Ia5240207ce7a6628e8fdfef79f56db01add14aef