Merge in a lot of VANIR fixes and improvements

Thank you guys a lot you're awesome!

eb605813aae3058ef8d111722c5584a867de1df3 improve rotation handling
ed2e8f9ff28a329d4cdb56d49437db3495aa22a2 Forward compatibility fixes
6eb657f2882478f1f327f4ec8ebc945022d4f924 Forward compatibility fix
9ce50c5d886c3d012002699ded8f85380b02d3a6 Missing break in switch statement
5f48acfdd1b3dd0ba9ae41b3a10ac60de267f98c Prevent nullPointerException by updateBondedBluetoothDevices
d9d59b2e1c82f8683e559539501059850ba65f4c Fix to NullPointerException when activity is relaunched
dcd7f57582c39d1eab60408d54a80e1636711ede make WidgetView observer private
0f48310bdb6c8e8d4801c7cc7bdae27a63d6c223 Fix for NullPointerException in HTML5VideoViewProxy
98871cb5a3a1863bacf221589799e0d699265fc2 Selectively restore non-stupid parts of stuff we had before a patented nuclear decrapificating
1cdfaee436b9e38039e8c6a4e92fa6f026886029 build core/jni with fstrict
a7ea71d7b05432ecbcb2b50ba39796d6dabbdb4d services: make sure to recycle set args
6384e8636d55b59e7e6e3e3e6e55eaeeeb5c703a potential GraphRunner leak in camera effects
c2e8755decaf0f9b6b3e5ad4e499388385a2b873 Fix unresponsive home key after waking device with a long press
bed41b9bf1864b8c7e2c3e48dce3cf1cda46e198 Hide traffic on lights out
eb605813aae3058ef8d111722c5584a867de1df3 improve rotation handling
ed2e8f9ff28a329d4cdb56d49437db3495aa22a2 Forward compatibility fixes
6eb657f2882478f1f327f4ec8ebc945022d4f924 Forward compatibility fix
9ce50c5d886c3d012002699ded8f85380b02d3a6 Missing break in switch statement
5f48acfdd1b3dd0ba9ae41b3a10ac60de267f98c Prevent nullPointerException by updateBondedBluetoothDevices
d9d59b2e1c82f8683e559539501059850ba65f4c Fix to NullPointerException when activity is relaunched
dcd7f57582c39d1eab60408d54a80e1636711ede make WidgetView observer private
0f48310bdb6c8e8d4801c7cc7bdae27a63d6c223 Fix for NullPointerException in HTML5VideoViewProxy
98871cb5a3a1863bacf221589799e0d699265fc2 Selectively restore non-stupid parts of stuff we had before a patented nuclear decrapificating
1cdfaee436b9e38039e8c6a4e92fa6f026886029 build core/jni with fstrict
a7ea71d7b05432ecbcb2b50ba39796d6dabbdb4d services: make sure to recycle set args
6384e8636d55b59e7e6e3e3e6e55eaeeeb5c703a potential GraphRunner leak in camera effects
68dfb6b493863aba26074c862e44f3af10f2f61f DeviceKeyHandler squash
c2e8755decaf0f9b6b3e5ad4e499388385a2b873 Fix unresponsive home key after waking device with a long press
35bc0f31e5967b59c7c83a33238a22e611c077a0 PhoneWindowManager: Hardware key handling fixes and cleanup
838f7ebfabc91f4ab2065af46a40cc6c9167a5a5 Fix hardware home key behavior on wake-up
a73132ad1635267886d4969e410723ab18dbb846 Fix ordering of home keypress handling
f84f26bb91c387762cf3048dc2a85dbd59703027 statusbar: performance and fixups
cc104e3cccf3901da2b2040f77fe0f08706c2ed5 interrupter: Use LOCAL_LDLIBS rather than LOCAL_LDFLAGS
44dfffa26e14aee1a9d12c1edc211d40467a4124 Don't unnecessarily recycle things.
d24d56509fcbf88a3bba0177c3721ad253ccad34 Correcting NULL pointer when callerApp is not set
05a382390cde82461d8f53f63d0cb12ce7c55dbd l'oops: fix inputservice ANRs
fa7bd7f869cef7534ed8b6616c5874afbd4b72a5 don't register a content observer if the device is already provisioned
bf0b5c820243ffa101e9f43fa319570fd72d8d03 Privatize PhoneWindowManager
f53da810731f654fa712487f2f468c5b81b816a5 Reduce EntropyMixer seed size from 4096 to 512 bytes.
661b956d0f7ecc4347acbeb86fc585a9ae107110 Detach engines before destroying WallpaperService
1f734ecc9714c2e5ee56b6f17c9a35598dab5c0d frameworks: squash of leak & race fixes
97d08382cd97756c4497389baaed89575810a78e Make ActivityManagerService.systemReady thread safe
c5f90b9bd64a99ffc49fc96b1a066a675069899b Don't ANR when no windows are touchable.
95552ef44afb48052c97dd3b76eb020ff8319700 Avoid IndexOutOfBounds Exception in ActivityManagerService
13b6f23037905ad6cb8538490fcdd47e7bcc26cf Scroll: modified velocitytracker
3ea66792ae162eeafeecc50c858cbe4162248297 recycle TypedArray calls in F_B
4ae81b789e309bf14ae8b8851e5e2df51d12a98d privatize keybuttonview
148ec969b96ea67de9fa2d27b4f5c0298cd74d8c If frameworks wants ASCII casing, it should explicity ask for it.
0ccacb22858eb47946a8f4cda0f50d0dcb17bb65 onSavePassword dialog can leak when WebViewClassic is destroyed.
ac7d546dc6ff67d325a205599edb12bb9cd23bd8 Fix issue #10226007: Reset apps restores most of the changed settings...
63aa94ff65d5ce93c23502136e154fa10db516e2 base: App crash when select suggestion's length more than specified.
560ab7cb9c53739df53c1869350bf78312ffe9c2 Remove useless import statement
3851a0951ea20c64164f5fa9c08ab7476c7d7a45 aapt: set interlace handling for png_read_update_info
ea15b65b7eadd1f769a90f517244f7f45d0f1068 Memory leak: parseObbFile.footer
0d32d6d57709b329eeae965c4badd3df44d60946 GlobalAction dialog ref not set to null
60293f9c8fa23ea8d42ac4b9d74b78ca9a386c5a Follow convention for localizing DB and NET strings
6df4d75495677f8e8e86d8b17877d6d2acf7a8fa Restore previous ViewConfiguration constants

also fixed the traffic meter on lights out

and updated the phone windows manager to match cm their custom keys system

Change-Id: I205a2add9f226913b16d6e8f04335819dda05e29
FW: Option to hide Camera widget from lockscreen (1/2)

PS2: Update SettingsString Typo

Change-Id: I531e16ffe2c789b8d9987ca89673d96fd8927f32
AppOps improvements

f51639beb86c9b6c3ecb77512ad6256d481bcc66 [2/2] AppOps: Add per Op allowed and ignored counters
2ba02cf19c4a2b23e1ae8879ebe4e7b348b27093 [2/2] AppOps: Add alarm wakeup op
23b07248cd7b1aa3be1ea9a9b7158fa46221e0c6 AppOps: Update Cherry-Picks
66d8936c93439dacb986314e1d880b78c360d627 AppOps: Add support for whitelist of packages.
2898e4ba88786cba785e65cb670ddb259c206af4 AppOps: Add Bluetooth enable control into AppOps
3447900866e5ef8bec34883ccc4268acde402c43 AppOps: Add data connect control into AppOps
baf099de3173e14b5829a3cd3edbea4088b22616 wifi: Confirm user permission before toggling wifi.
d559105a4a176c28e6d820f61d5867318e680558 AppOpsService: Add MODE_ASK support to AppOps.

Change-Id: I191e1ca3837f3dfb6b0932204a92b8aacb5013ef
privacy guard: changes part 1

the new cm implementation from our privacy guard is not the best.
Some changes we needd to do next week. For first give back the ability
to filter critical apps + do not show apps without any permissions

to do
- enable only the critical permissions the app is using
- add another active icon to notify the user if he modiefied another permission then the default ones
- add ability to disable notifications

Change-Id: I35507796cc14ce5c39177c6c47538db135f16ed7
Frameworks: Privacy Guard part 2 (1/2)

Current implementation does not really merge both awesome features
appops and privacy guard. As well it is from UX perspective too complicated

So this commits changes:

- Move int array to logical correct place AppOpsManager
- Switch only the privacy guard permissions which the app
  really requests and not all...this irritates the user
- give support for custom permission set and reflect this state
  with an icon in notification and pgm
- add pack filterpermission feature due that user mainly are interested
  in the apps which use critical personal data
- permit by default as well writing off personal data
- do not show apps where either permissions are not changeable due
  off appops or apps which do not have permissions at all
- ability to hide pg notification
- remove pg checkbox in InstalledAppdetails and add a button to
  modify appops. Button is disabled if either the app does not have
  permissions or appops does not support it. As well for platform
  certificate apps
- add on appops detail screen reset and privacy guard button to quick
  change all states
- rework of the complete dialog handling in pgm and add several dialogs
- move all notify icon for pgm and notification to frameworks base
- and a lot more minor fixes and fc fixes

cheers

PatchSet:
- correct privacy guard filter logic
- add pgm map
- add status icons.....PGM shows either off/partly enabled/enabled
  in addition to it other set permissions shows a red plus sign on
  the top right corner of the PGM icon on all states
- tapping on PGM and menu pgm button on detail appops screen turns on/off
  only PGM permissions to be more consistent
- some minor fixes

Change-Id: I060cfefd847a6c8824cde913b6b3ea30440965d9
Frameworks: Policy: implement a pin keypad shuffler [1/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

- correct coding style
- added reload button

PatchSet:
- simplify shuffle code
- fix over shifting in some cases
- add reload button functionallity
- add lockscreenutils method to detect only PIN lock
  for settings
- exclude sim and simpuk PIN lock
- add drawables for reload button

PatchSet
- cleanup

PatchSet:
- fix shuffle NumKeyPad even if a theme replaces the xml
  and reload button is not present.

PatchSet:
- add mode disabled/always/on request

cheers

kufi

Change-Id: If4b387f43b06ecc91e06ae420a21697d39cda75b
suspend actions (1/2) && wakelock blocker (1/2)

Change-Id: If4be7f212155f65f9d240c827203f5a68c673bf7
Pie: Add master switch to disable Pie (1/2)

Change-Id: Iff8624a7b8317246992742c9953f41a9d3f9b205
CircleBattery: Turn green when plugged in at 100%

Change-Id: I86e93b75215e9674907bfcb7d4dfcf412bf32ce9
Merge pull request #5 from PAC-man/cm-10.2

Maj