fb: system wide immersive mode aka expanded desktop thanks to

Danny and Kiril for the base

and kroz for the graphics

At least it is expanded desktop mode like on 4.3 and before but using
not the nice new immersive mode from google which was introduced with 4.4
Means everwhere it is swipable in from the top or bottom depends on
if the navbar or statusbar is existend. As well it respects our other
features like 0dp settings for navbar in landscape or portrait etc.
The option to choose the mode what the user want to hide we removed
due that it is now absolutly not needed. 1. it is swipeable now
2. The user can disable navbar like he want in navbar settings if
urgently needed

As well added shortcut support for navbar navring and powermenu

Change-Id: I37e8f9571cf622154d347b7eabd13bffc99ae187

Conflicts:

	core/res/res/values/cr_strings.xml

(cherry picked from commit e0e8ef2176fed33c1a4de6ac3e9459f0407cf3de)
fb: fix recents animation on new immersive mode

thanks here as well for identify the problem to Kiril.
But I changed the implementation. Beside that we give the user
the ability to setup different navbar heights IMO there is absolutly
no need to use an observer to get the status. We can fetch this
from WindowManagerService to get all needed information.

So at least this patch fetches needed values from WindowManager
and calculates in the missing heights

Change-Id: I3ae57ba0a575624f8aea75ce8d48041f5a1c1c42

Conflicts:
	core/java/android/view/WindowManagerPolicy.java

(cherry picked from commit c7c3a9dd2d667cb58524e03f11f21f349b1d6670)
[2/2] Frameworks: HALO

Forward port from jb.
Credit to @drcmda

Change-Id: Id5bc6c39af2f124c7ada4ba7feb4aff0fa7cc3a0

Conflicts:
	core/java/android/app/NotificationGroup.aidl
	core/java/android/provider/Settings.java
	packages/SystemUI/src/com/android/systemui/statusbar/BaseStatusBar.java
	packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java
	packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettings.java