Add option for switching between UMS and MTP/PTP mode. (2/2)

This adds support for switching between UMS and MTP/PTP.
Settings part (this part) adds option in USB settings (statusbar/notification drawer) for enabling UMS,
and adds setting in Storage menu to enable / disable UMS, this since the USB settings page disappears when enabling UMS.

Forward port from cm-10.2, adjusted for 4.4

Change-Id: I6cf50a41a9a82e40e702f5231ce663636c149613
Settings: Security: implement a pin keypad shuffler [2/2]

this is to further prevent people using the tablet guessing your pin based on fingerprints left on the screen
example of the expected outcome - https://www.dropbox.com/sh/r3xb2q53ksaqni9/Oz1Eu8Dm7O

PatchSet:
- fix checkbox was wrong assigned
- enable only for PIN Password lock
- small cleanup of old code

PatchSet:
- cleanup

PatchSet:
- add modes.....disabled/always/on request

Change-Id: I225af5654c440aa16964df3257130febec6ef275
Settings: MediaScanner behavior on boot (3/3)

credits to corcoran, Slimroms

Change-Id: Ie380c12eace6bc743bebb3058d5248f06521a485
Use java.util.Objects instead of internal API

Change-Id: Ib0d797b3e7f2e4f831f52832776b64c0973880b3
Settings: follow kitkat's ui

- manage apps; tab selector and ram usage
- battery data usage bar
- app widget toggle

Change-Id: I804b4b47563545d7ab124f4cc4800ef4034bf754
settings: enable/disable lockscreenwidgets preferences

it is just nicer if the user can see which preferences are active
or not

Change-Id: Ia5f8c3884c747c0f17c50075842e861ab4de1020
settings: google please cleanup your translations....Settings cleanup

it is really at the moment a nightmare to see compile errors when
getting 100000 of warnings. Whatever we removed already on some
packages the warnings....but still a lot are there

Change-Id: Icd6c667a1e055e1ab41420bef575d250ac829219
Settings: add development animation transition mode 0.75

Change-Id: Iaaeb3757ef9b3b97d66d929629e9035ab511f72a
Revert "Settings: add development animation transition mode 0.75"

This reverts commit e33a1c8283a26c223024096053c15633d49d4358.

the next commit (.25) has some conflicts derps so lazy fix:
revert & apply the new commit from slim's kk, that has both .25 & .75

Change-Id: I15e67e1e49f5d8208389d5226eea7ed0a8f51cc7
Settings: add development animation transition mode 0.75 and 0.25

Change-Id: Iaaeb3757ef9b3b97d66d929629e9035ab511f72a
WiFi: Add forget all networks

Change-Id: Id4e0bf76743dadf62a23e070e6421dd1549df29c
Wrong referring to the resource - id/android:id

We were referring to the resource defined as
@+android:id with R.id. which is wrong. This
fix changes the @+android:id/ to @+id/

Change-Id: Ifdca7347bff31311c9c07aecdb110946e4a239ed
Bluetooth: Fix to show internet access as marked when pan is connected

isPrefered is always true for PAN. So internet access menu checkbox
is always marked on. Marking internet access menu checkbox based on
pan connection status should solve this issue.

Change-Id: I4343cc6f1b46377caa54aa3d39c08489ff14adac
CRs-Fixed: 550731
Bluetooth: Set alias name only through Rename option

Set the alias name only when user is trying to change the
name using the Rename option of paired device.

CRs-Fixed: 539420
Change-Id: I415b6a962d8e7884b67d37b94c04df19e2c23012
Bluetooth: Not allow Blank BT device name.

Add empty string check for BT device name
and not enable ok button until entered
device name is not empty.

Change-Id: Ib7c460bee5c8d86d13acd66d228279dd1a240c25
CRs-fixed: 471158
Bluetooth: Remove remote device from trust list on BOND change

A special case where remote device is paired & authorized by
DUT. Remote device is unpaired by itself & try to connect again.
In this scenario Link key is deleted from remote device. So
SSP is performed again. & remote device bond state is changed
to BOND_BONDING from BOND_BONDED on DUT while SSP, As it was
in DUT BONDED list. So permission/trust info for all profile
need to be false when it's moved to BOND_BONDING to solve the
issue.

Change-Id: I37e8d92feef3c2d4d18c014a5d9092a9469335cb
CRs-Fixed: 578523
Bluetooth: GAP: Cancel the previous visibilty alarms if already set

Cancel the previous visibility alarms set for 2 mins/5 mins/
1 hour if visibility change happens from the limited discoverable
to unlimited discoverable.

Change-Id: I01797b771c271498372f15b545233a73baf60ca9
CRs-fixed: 582492
Bluetooth: GAP: Cancel the pairing notification on bond state change

Cancel the pairing notification on bond state change happens from
BOND_BONDING to BOND_NONE.  Otherwise it will present in the
notification area until it gets cancelled by opening it and press
cancel on pairing dialog.

Change-Id: I96f673e29e612cd748165a1323a5b4a4276a843c
CRs-Fixed: 569534
Bluetooth: GAP: don't update autoconnect on bonding state

This patch fixes regression caused by commit
I37e8d92feef3c2d4d18c014a5d9092a9469335cb where it was not possible
to autoconnect supported profiles of remote device from DUT after
pairing is completed.

Change-Id: Ied8e0dcfd1f6b9c98a89929f05257957c13a95fe
CRs-Fixed: 584889
Bluetooth: Destroy BT Dialog on BT power off.

Check for Bluetooth off Broadcast to destroy disconnect
dialog when Bluetooth is turned off from power widget.

Change-Id: Ie556a17c7d574f77da5181c08705648ebf5733cc
CRs-Fixed: 579028