Framework: Forward port Long press back to kill app (2/2)

Change-Id: Ia88d8a2753e203afb8d6117a643c33127f991c4a
fw/base: allow home button to wake device [1/2]
Answer call with hardware HOME button (2/2)

preparation to winter time

Change-Id: Ic11449acf87c6b4d932142b74158af7441658b3d
Runtime toggle of navbar

This adds the framework support for enabling the Navigation bar
on devices with hardware keys. It is toggled from Settings, and
depends on device-specific support for the KeyDisabler hardware
control

Change-Id: I88fecb2ca1e8613591c327a93f53909b00239cd8

wm: Nullify hardkey function assignments if enabling the navbar

This caused erroneous (and sometimes duplicate) events being generated
due to the regular key function assignments. The navbar does its
own action management, so don't try to derive from the actions
usually present in hard keys.

Change-Id: I82866e24547f8145cac4f07820ae90aacce09281
[Base] Nav bar tweaks

    - Toggle on/off (CyanogenMod alredy did but only for hw keys devices). crDroid allow all devices to do that for those using PIE apps.
    - Nav bar dimensions (height and width)
    - Here we also automatically reverts CyanogenMod navbar toggle: https://github.com/crdroidandroid/android_frameworks_base/commit/b70cda7d0d9b5142f54d390275b5e2ffa64ae9b4

    PS: THIS COMMIT IS A SQUASHED PORTED FROM crDroid KK and 99% od the codes are from SlimRoms.
No longer needed