[1/2] Base: Navigation bar height/width

All credits to SlimRoms / kufikugel

Change-Id: I97af1fbd5a2e7df2337abc6c825b4905f576a48b
[1/2] base: NavigationBar customization

Includes:

- Allows user to customize navigation bar.
  Features :
   - Choose from 1-6 # of buttons
   - Re-arrange / assign buttons
  Id: Idc9f5f401f15d207504e49de47666bb5510a06ca

- Navbar : Rework logic for determining orientation
  This patch introduces better checks for hybrid ui's.
  This should fix issues of small buttons due to incorrect ui determination
  Thanks Rolf Arne Schulze for testing :)
  Id: If5b61dc4764a98deedb5b801d11451fed2488cba

- Make navigation bar ready for per-user configuration.
  Also clean it up a bit.
  Id: Ic10bd161fce53bf30048a0cb927dcf1e2bfa7774

- Fix layout on N10
- Remove uncessary padding and logic
- Phone fixes
- Phone padding fixes

PS6: Added RTL support (http://review.cyanogenmod.org/#/c/55059/)
PS7: Navbar: Fix MDPI & HDPI landscape layout (http://review.cyanogenmod.org/#/c/56098/)

OmniGears part: https://gerrit.omnirom.org/#/c/3156/

Change-Id: I5bcdd53e8344e8ce137088544a4a3964655c53af
[1/3] base: added offscreen gesture support

Currently only oppo devices support this
To enable use overlay
    <bool name="config_offscreenGestureSupport">true</bool>

Offscreen gestures are gestures drawn on the screen
when off. Oppo supports the following gestures
V, circle, II, <, >, double tap

The default mapping form oppo are
V - toggle torch
circle - start camera
II - play/pause musiv
> - next track
< - previous track

This gestures are reported as keys F3,F4,F5,F6,F7,F8

This change also switches to the oppo dt2w implementation
in kernel.

This also adds the base support for volume key music track
control since this is sharing the same code

PS2
fixed broken volume wake

PS3
use sendBroadcastAsUser

PS4
also log key scan code

Change-Id: I89914d7ecc25dd1e13e60793233ee0db8dd1feed
PhoneWindowManager: fix navbar behavior in expanded mode after 4.4.2 merge.

Change-Id: I00f814db6c3800b8eb1cf20004ecdfb8d1ee7036
Fix ResTable_config::CONFIG_* typo (MCC vs MNC)

In commit 08d5b8f, the ResTable_config::CONFIG_* enum was incorrectly
changed to assign the same value to both CONFIG_MCC and CONFIG_MNC:
    - CONFIG_MCC = 0x0001,
    - CONFIG_MNC = 0x0002,
    + CONFIG_MCC = ACONFIGURATION_MCC,
    + CONFIG_MNC = ACONFIGURATION_MCC,

This commit assigns CONFIG_MNC the value ACONFIGURATION_MNC, as
intended.

Change-Id: I3b8799914a55debdb3ff30a82ada7ad990c49970
[1/2] Base: add more Power Menu actions

Make the power menu customizable from Menus settings in OmniGears.

added checkboxes for: airplane mode, sound toggles, and a new button for
mobile data toggle.

screenshots: http://goo.gl/ljQ0WA or http://imgur.com/a/THfuZ

part 2: https://gerrit.omnirom.org/#/c/3654/

Change-Id: Ie7d417c898ceeba47eb0c13f6dee934b025beee0
fw/base: update volume control to white to match 4.4 icons

PS3:updated drawables.  Screenshot: http://bit.ly/19vZLCO

Change-Id: Ib30b796d1aeccaa32d5223d36aed6e18a2dc1062
Signed-off-by: Aaron Klein <aaklein@gmail.com>
Base: Listanimation views and interpolator (1/2)

thanks team ThinkingBridge for it. Difference to original implementation

- code cleanup
- some smaller code fixes
- remove of rotation animation due it is to laggy
- multiuser support

Conflicts:
	core/java/android/provider/Settings.java

Change-Id: I255b60dd963c616fb5c0aa583c23d52a7a5108f8
fix for screenshot animation glitch in portrait

edits by Stefano Semeraro aka Suxsem on XDA.

This fixes the glitch in the screenshot animation on the Galaxy Nexus and other affect devices.

Change-Id: I0dbe20bdf5a410e9b148f667eff2b321997d92d9
frameworks/base: Fix for the race in Wallpaperservice

Wallpaperservice has a race among message handler of
DO_DETACH and service's onDestroy. In certain cases,
the engine kept track in mActiveEngines is removed by
message handler of DO_DETACH and service's onDestroy
doesn't get a entry in mActivieEngines and isn't able
to invoke detach. This keeps the broadcast receiver,
mReceiver active and is unregistered by the framework
and a corresponding leak is reported.

  Later, the message handler of DO_DETACH continues
and invokes detach on mEngine, which attempts to
unregister mReceiver and framework throws an exception
"Receiver not registered: android.service.wallpaper.
WallpaperService$Engine$1@40874580" and causes the
framework to reboot.

  In case of system_server, WindownManagerPolicy and
android.server.ServerThread contest for access of
shared members, mActiveEngines and mEgine. Fix is to
protect the critical section via synchronized block.

Change-Id: Ice79cb8344fb54bcc6e9f76f4b143daac2608d7b
Remove possible leak when exception occurred.

nameUtf8 is not released after exception.
In addtion, Fix code going down after ThrowException.

Change-Id: Id46e8ed55acd98e982ae532f7da2c0c48847f010
Fix a JNI local reference leak in JNIMediaPlayerListener::notify.

Bug: https://code.google.com/p/android/issues/detail?id=62137
Change-Id: I776cd83a66de37fdbbe8af367bf1b26e5e0c7247
memoize activity manager graphics acceleration check

also account for devices without hardware rendering support

Change-Id: Ib400d85a261d9c5d0fd5770d6cda5f61832cba6b
Memory leak in IInputMethodSessionWrapper executeMessage

In some cases the executeMessage is called with
mInputMethodSession == null. For the messages

DO_UPDATE_SELECTION, DO_APP_PRIVATE_COMMAND

memory is leaked. This commit recycles the args freeing
the allocated memory.

Change-Id: Ic5455a993442780d43a3b0b02e84a7ab931010b1
adjust settingsprovider defaults for transition

Change-Id: Icd0dd53f85f1ed952a02ee13810f16e5f325b616
Keyguard: fix statusbar lags when default widget shown.

When statusbar became expanded KeyguardStatusView receives
onKeyguardVisibilityChanged callback and refreshes ClockView.
Because it receives more than one call and every time it reads
new values from resources it cause lags in opening statusbar panel.

Replace this code with BroadcastReceiver and ContentObserver to
refresh it only in case something was changed.

Change-Id: If0dbc1db059536806852661931cb2e6436f2acf4
increase touch sensitivity

Change-Id: I77e6aeca3667808e630dc142a2e561d3ddddef80
set default transitions to .5 for smoothness

Change-Id: If3265224e167fc6eca9658067fb2546a1ededbe6