AOKP's NavBar Customizations

Thanks PAC Team for the initial port!!

@Owain94 and @Nick0703
SystemUI: add customizable navigation bar

Change-Id: Ibad1ecf52c7db0ac352892aed7529de68476c092
Signed-off-by: Roman Birg <romanbirg@gmail.com>

Conflicts:
	core/java/android/provider/Settings.java
	packages/SystemUI/res/layout-sw600dp/navigation_bar.xml
	packages/SystemUI/res/layout/navigation_bar.xml
	packages/SystemUI/res/values/config.xml
	packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarTransitions.java
	packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
	packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java
	packages/SystemUI/src/com/android/systemui/statusbar/policy/KeyButtonView.java

SystemUI: Fix NavBar FC

Change-Id: I5cfa3110e0239023801c5233164c6cafae5f8498

SystemUI: fix alt back icon; navbar button fc

Change-Id: I61cb2a3d5ad024922016a1ff03564bc114bd0f0b
Signed-off-by: Roman Birg <romanbirg@gmail.com>

SystemUI: add legacy menu button back

Change-Id: I32d687c2dd2682036ceee1032b777b9b10987ffd
Signed-off-by: Roman Birg <romanbirg@gmail.com>

Fix navbar layout

Before: http://owain.nl/before.png
After:  http://owain.nl/after.png

Change-Id: Ie3e3c54a9644d232b1d9b74cbc9fa0eeed072b98

SystemUI: update navigation bar layouts

For tablets, mimic stock button paddings.
Except for when 5 buttons are used, then
distribute them equally across the navbar.

Change-Id: I99ccc07d31bc7b719c44be74f164d88d7dc542d5
Signed-off-by: Roman Birg <romanbirg@gmail.com>

SystemUI: align lights out mode properly in nav bar

We need a little spacer for lights out mode to offset
the menu button!

Change-Id: I322acaea927470c09337823839249953e7558391
Signed-off-by: Roman Birg <romanbirg@gmail.com>

SystemUI: fix nav bar alignment with 4+ buttons

The menu button at the end is now a constant size,
so the separator in the front needs to also be constant now.

Change-Id: I83c33942509e6cf76750b806e828462f3df9c8a8
Signed-off-by: Roman Birg <romanbirg@gmail.com>

SystemUI: fix custom back button image not restoring

Change-Id: I4f564662da21860ab03d10300f52b70590c0f8fc
Signed-off-by: Roman Birg <romanbirg@gmail.com>

Fix cherry-picks

Change-Id: I719eb2462f0be39f5bf6a1af004872e34df068ad

Conflicts:
	core/res/res/values/pac_strings.xml
	core/res/res/values/pac_symbols.xml

SystemUI: update custom nav bar icons

Give them a drop shadow like the new buttons

Change-Id: Iff7d0b1230e824925c98faba99f1a0daa07f0dd4
Signed-off-by: Roman Birg <romanbirg@gmail.com>

Conflicts:
	packages/SystemUI/res/drawable-hdpi/ic_sysbar_null.png
	packages/SystemUI/res/drawable-xhdpi/ic_sysbar_null.png

More fixes

Change-Id: Idd1388bf414177555144b788742a27b44ef7443f

Conflicts:
	packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java

AwesomeAction Background thread and kill app changes

launchAction can be handled off the UI thread.
kill app should remove the task from recents too.

Change-Id: I9c24a68667a859fae7df1a71a18e30cc66ff69a5

reimplement navbar cursor keys (1/2)

Change-Id: Iffd8d7f98dc5ec3e5f208821e8eb09723f00b1df
Signed-off-by: Dirk Rettschlag <dirk.rettschlag@gmail.com>

Merge with old branch

Change-Id: I3e9025f60badbc40cf0b9433483dcc095cf79e78

Conflicts:
	packages/SystemUI/res/layout/navigation_bar.xml
	packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
	packages/SystemUI/src/com/android/systemui/statusbar/policy/KeyButtonView.java

fix lights out layout

Buttons during lights out were shifted due to the right arrow button
only being invisible. Set the button to be gone and make Petr happy.

Change-Id: Iafdcb2696809cf5129244833d49595fa448b8b44
Signed-off-by: Dirk Rettschlag <dirk.rettschlag@gmail.com>

NavBar Buttons FC fix.

Change-Id: Ic68c4926971e4f94152c4eabd15463e3f7efdf94
Signed-off-by: Lokesh Chamane <lokesh.c703@gmail.com>

NavigationButtonView: remove redundant onchange from setting observer, and prevent double (un)registration.

Change-Id: I05de2946823647345e34ced6c3b4394afecb22f4

Conflicts:
	packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java

Navbar: don't read the user config on every setupNavigationButtons call

It's only necessary to read the string when the user config has changed

Change-Id: I421c27d15202965b663c76f8a8574bede4ccb961

Conflicts:
	packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java

Navbar: improve button response time

reuse contexts instead of getting new ones
AwesomeAction: reduce obfustification on injectKeyDelayed
ACTION_HOME: remove injectKeyDelayed in favor of much faster IPC binder
inline some trivial method calls
keybuttonview: remove getter for ACTION_BLANK lookup
yatta yatta

Change-Id: Ia2b9c978f6dc241b70506fc104ac36782c7f74a9

Conflicts:
	core/java/android/view/IWindowManager.aidl
	core/java/android/view/WindowManagerPolicy.java
	packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
	policy/src/com/android/internal/policy/impl/PhoneWindowManager.java

Nevermind :)

Navbar: fix custom back key image resetting on rotation

Change-Id: Ifb602a5186b562433a069ae16f6e76de7b1bfc2e

copy/pasta derp

Change-Id: I1dd7c46795a6be9888e8705961532677afb952c7

Add back the theme stuff from cm && fix compiling problems

Change-Id: I522ecd7c4968a03cd5a2afd1bd3bc00b5ddd122e

Conflicts:
	packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java

Remove used variables

Change-Id: I432cef2008a20cf103532f74f82f7384467d5ffd
Signed-off-by: Lokesh Chamane <lokesh.c703@gmail.com>

Fix double vibrate and use some cm functions instead of aokp

Change-Id: I5733524c3fb877fedff31ee9fc536879ac703b65

AwesomeAction: move recents key handling to keybutton view

Improves recents button response time.

PS2: make statusbarservice a singleton to lessen GC churn
PS3: add preloading and cleanup

Change-Id: I3172d9fc9641b7a643ca88858e5f2aa0b6aa2693