SystemUI: show statusbar icon if quiet hours is active

Reflects the 3 active modes we provide as status bar icon, similar to
android L.

Change-Id: Ic32242b0843f44de72174ee768ef04ee0f4535aa
fb: Show heads up at the bottom of the screen (1/2)

Due of user requests and indeed especially on hw key devices for a better
workflow we add an option to show heads up notifications on the bottom instead
of the top.

Animation we leave as is due that if it slide from the bottom into the screen it happens
to often that the user accidentaly interacts with it. If it comes from the top of the
container we add, the user has enough time to realize it. Sometimes a ms can make a big difference.

As well this commit fixes the wrong gap on the top if user boots up directly
into immersive mode.

PS:
- if IME keyboard is showing show the heads up on the top to do not disturb the typing.
PS:
- NPE if updatePosition is called to early from the system.

Change-Id: Iea7fbe466808531a9351cf4048570b8f56eb698e

Conflicts:
	core/java/android/provider/Settings.java
	packages/SystemUI/res/drawable-holodark/status_bar_recents_background.xml
	packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java
[HWUI] Fix invisible views are still shown in popup window

Symptom: Invisible views are still shown in popup window

Root Cause: glClear isn't called if there is no draw command

Solution: Even if there is no draw command, it still calls glClear
          by startFrame().

Reproduce steps: App set one view in a popup window to invisible,
                 it will be still visible.

Change-Id: I36bc7b752434ad388fbb80ea63341ac778f48d35
Restore untrusted glStencilMask value on resume after functor

Fixes an issue where the stencil buffer is corrupted
(used in overdraw debugging, path clipping) when used in
conjunction with a HW accelerated WebView.

bug:15023700
bug:16465551

Change-Id: If201b503931380f7107a34e9a9a2f877a50f72b1
[Bitmap] Add null pointer protection in Bitmap_sameAs()

Symptom: SkBitmap::getAddr(int, int) may return NULL due to unrecognized config
(ex: kRLE_Index8_Config). This will cause memcmp method to crash. Since bm0 and
bm1 both have pixel data() (have passed NULL == getPixels() check), those 2
bitmaps should be valid (only unrecognized), we return JNI_FALSE to warn user
those 2 unrecognized config bitmaps may be different.

Change-Id: I6970c27de412110a3035d0a783112c4cd3ebc35b
SlimActions: add new actions and cleanup

A bit cleanup.

As well add 4 actions:

- camera intent
- play/pause music
- next music track
- prev music track
- wake up device

As well check for system ready on the other audio actions which are already present.

ToDo: One of the rare classes which are very bad documented. We need to add code comments
ASAP

Change-Id: I73bcfb6c60454de4d8494dfd846deee770022335

Conflicts:
	core/java/com/android/internal/util/beanstalk/ButtonsConstants.java
	core/java/com/android/internal/util/beanstalk/SlimActions.java
SystemUI: italian translation

Change-Id: Ia32ddb47b43ee61de53efdcdd1b5014bbefaa8d5
FB: Slimrecents background color && transparency [2/2]

PS: now setting sticks through reboots and TRDS state
        changes. also, add reset to default color option.

PS: when resetting to default, use TRDS (png) resources
        instead of custom color

PS: remove LSN dependency

PS: make default background setting cognizant of
        recent panel gravity setting to display
        correct background resource
Change-Id: Icf0259ce45d416364d6e7a7a8c2038f6c4c0cbde
Core: FR Translation

Change-Id: Ifced4dfcfc83cf08afdbb47913c2c12c3adbb6ea