Frameworks: Add reboot menu - prepare for Slims Global menu - misc changes

Adding advanced reboot menu like it was on kk4.4
Adding advanced reboot secure option
Move reboot into safe mode from longpress power to longpress reboot
Enable for now per default Airplane mode and sound and reboot till we have imported our SlimActions class to make in configurable

misc changes and adaptions to lp

Change-Id: Idd4f56d985ac51ade5f8deb2597d8f1dda22088a
Fix fr-CA locale AOSP bug

as reported on aosp bug tracker fix for crash from systemUI/keyguard which results in heavy system instabilities.

Change-Id: I30d17e16048b738624523e77da05ca11c575a91b
framework:Thread synchronization for UI update

Issue : Framework reboot was observed due to out of sync between
        two threads which inturn causes Null pointer exception
        while updating airplanemode.
Fix : Handled Null pointer exception and the crash is not observed.
CRs-Fixed: 570122

Change-Id: I2e969f6e7726ffcf8648b366ebb54cb2b0afc292
    Improve scrolling cache

    Scrolling cache helps make short scrolls/flings smooth but will
    cause stutter when long flings are made. This patch disables
    scrolling cache when long flings are made.

    This patch also fixes a related bug where scrolling cache will
    not be enabled properly when transitioning from flinging to scrolling.

    Patch Set 2: Calculate threshold based on maximum velocity (Sang Tae Park)

    Credits: Pawit Pornkitprasan

Change-Id: Iad52a35120212c871ffd35df6184aeb678ee44aa
Turn off carrier provisioning by default to allow tethering

Whether or not to use carrier provisioning is a setting hidden to the
end user that is currently not set. Unfortunately, on some carriers that
may result in it being set to yes, or effectively set to yes, without
other accompanying changes that must occur, such as setting a tethering
apn and possibly having a carrier provisioning app, resulting in hitting
a paywall when a tethering plan exists, or, worse having nothing happen
at all when you try to tether since the data doesn't have an apn set.

Change-Id: I3b5b3cc86e3325302411f46e3fd5f7a7c1b9f57e
Frameworks: Add per app controls for LP keyguard notifications (1/2)

Nice done by google but the UX is a problem especially for ppl who are using a lot apps and just want
to see from important apps the notifications on the lockscreen.

This commit adds the ability to

- enable/disable per app the keyguard notification at all
- enable/disable per app ongoing notifications on the keyguard

We handle this over the app policy conf file like the other per app notification options.

Change-Id: I3e4641c3413ca0a8920b1680ca5f01f6eb4d0225
Dialer lookup

Squashed commit of the following:

commit 780211109f80d07b11d7a0261544b1a0fed10ea0
Author: Xiao-Long Chen <chenxiaolong@cxl.epac.to>
Date:   Fri Mar 7 17:11:02 2014 -0500

    Add people lookup settings keys.

    Change-Id: I2ff9bb7684d04f4f9b640939c7db269873aa3308

commit 0e5ed5ac782c2ee253179a03a2c5842ad3de6831
Author: Xiao-Long Chen <chenxiaolong@cxl.epac.to>
Date:   Fri Jan 31 11:43:10 2014 -0500

    Frameworks: Add settings keys for forward and reverse phone number
    lookup

    Change-Id: I1c4c7825b4361b7a52dd419f83afd7b9fcbe1494

commit 3cd778a712234332f327d7e63050c216f21515ac
Author: Xiao-Long Chen <chenxiaolong@cxl.epac.to>
Date:   Sat Apr 12 15:26:29 2014 -0400

    Add OpenCnam paid account settings keys

    Change-Id: I895b5f2b2a8a8de568e5aa1cea5d66ba490985fc

Change-Id: I68e4214e813695021b64c29ab1d831a944a6275a
frameworks/base: support devices with SoftAp that don't require firmware reload

Partial forward port from ICS.
Original Change-Id: If2db6e8ce675c3214ce645231c7a354f41ea0cc6

Change-Id: Iacb2498ec0f567a0a7c4e0dbf9127b70f09223bd
PackageInstallerSession: use ftruncate if fallocate is ENOTSUP

When posix_fallocate is not supported (e.g. on ext3), fall
back to using ftruncate instead.

Change-Id: I8f7792ed3f43504df21e86cff79ed34f3ba795d7
AppOps: track op persistence by name instead of id

On XML write, include the op name.  On XML read, map
the name back to op id (if it exists).

Persistent AppOp state now follows the op name instead
numeric id.  This allows upgrades between versions of
android that have different code<>name mappings.

Change-Id: Iffc02095b6838a34ff999f8db51c2c6739dd0db8
SystemUI: change back button to hide ime buttom with rotate animation.

Change-Id: Ia9a7716a6797d0442670451e59857d44b579b5f6
allow forcing HighEndGfx mode

people have already started fipping the lomRam prop to enable
transparent status bar, this will enable it with fewer
repercussions

Change-Id: Ied6de65276425fa1e7db0bf9da35f1932a355172
Dispatch keys to a device specific key handler

Injects a device key handler into the input path to handle additional
keys (as found on some docks with a hardware keyboard).

Configurable via overlay settings config_deviceKeyHandlerLib and
config_deviceKeyHandlerClass.

Change-Id: I6678c89c7530fdb1d4d516ba4f1d2c9e30ce79a4

DeviceKeyHandle: The device should consume only known keys

When the device receive the key, only should consume it if the device
know about the key. Otherwise, the key must be handle by the active app.
Also make mDeviceKeyHandler private (is not useful outside this class)

Change-Id: I4b9ea57b802e8c8c88c8b93a63d510f5952b0700
Signed-off-by: Jorge Ruesga <jorge@ruesga.com>

DeviceKeyHandler : Allow handling keyevents while screen off

Some devices require the keyevents to be processed while the screen
is off, this patchset addresses that by moving the filter up in the call
hierarchy.

Change-Id: If71beecc81aa5e453dcd08aba72b7bea5c210590
SystemUI: add quick settings pull down with one finger

Logic is currently set to use 1/3 of right hand side of the statusbar to
trigger a quick settings quick pull down, quickly.

Change-Id: I3f536496f724f07d2419a5b2db5fa8f8261609e7
Signed-off-by: Roman Birg <roman@cyngn.com>
SystemUI: fix right hand side gestures on lockscreen

two finger quick pulldown was not accounting for being in the keyguard
adn was eating touch events when it shouldn't be.

Change-Id: I625d48a4002aaaf2d55d7efaed65d892ab7aa13c
Signed-off-by: Roman Birg <roman@cyngn.com>
keyboard: re-add code to detect lid state and handle lights

Depends on libhardware patch for the light ids:
http://review.cyanogenmod.org/77944

This squashes the following commits from cm-11.0 and updates
them for cm-12.0:

From: Dave Daynard <nardholio@gmail.com>
Date: Tue, 19 Nov 2013 18:22:45 -0500
Subject: keyboard: re-add code to detect lid state

keyboard: re-add code to detect lid state

This was lost in the cm-11 merge. Without this, a change in lid state
isn't generated to light up the keyboard backlight

Change-Id: Ief35cebcb62da13afe1ae7531d69ab58e196be9e

From: YuanQY <yuanqingyun@gmail.com>
Date: Fri, 8 Feb 2013 10:59:22 +0800
Subject: Keyboard light: Fix the physical keyboard not light when

Keyboard light: Fix the physical keyboard not light when it's visiable.

Change-Id: I595afd3cb6b422a17ae0f6ec20aa51979db13810

From: tbalden <illespal@gmail.com>
Date: Sun, 31 Mar 2013 18:33:53 +0200
Subject: keyboard: adding functional alt/shift lights

keyboard: adding functional alt/shift lights

This is useful for devices that has QWERTY keyboard
and leds for the Alt/Shift (Fn/Caps) keys, like
htc doubleshot.

Change-Id: I66ebc2d881438f5b51db77eaa885421e65a7da0d
display: Don't enable keyboard lights when dozing

Change-Id: Ifd2e490da0af564315aa3c07002cb045377b78cd
Also dump widget options in 'dumpsys appwidget'.

Change-Id: Ia002c4b93d453ecb94be9312371ec71853a9774b
PhoneWindowmanager: disable panic mechanism when PolicyControl activated.

Change-Id: I5cf5f681237bbd17ec0fe2d041dd782cfb4b72f0
Show confirmation for deleted screenshot.

Change-Id: I4a36cf06bf252e5e15fe08fbd054dc64a0a507ae