Frameworks: Add per app controls for LP keyguard notifications (1/2)

Nice done by google but the UX is a problem especially for ppl who are using a lot apps and just want
to see from important apps the notifications on the lockscreen.

This commit adds the ability to

- enable/disable per app the keyguard notification at all
- enable/disable per app ongoing notifications on the keyguard

We handle this over the app policy conf file like the other per app notification options.

Change-Id: I3e4641c3413ca0a8920b1680ca5f01f6eb4d0225
Frameworks: Slim heads up customizations for LP (1/2)

Basically it follows the same idea like we had on SlimKat....see here
https://github.com/SlimRoms/frameworks_base/commit/323ed77c5e5bd6d421beae1f8118eb580be5ecf1

That said there are some differences in this more or less completely
recoded feature.

- Moved it into the app policy files
- Enable/Disable on every app (no system apps)  either longpress a
notification and an button appears / or in notification app settings
- For now only snooze and heads up timeout configurable....other stuff
will follow later.
- fix up some AOSP code for it as well fix some UX inconsitence.
- left swipe dismiss, right swipe put into background, swipe down opens
notification drawer and moves the notification into it
(aosp default behaviour is a big UX disaster....swipe up dismisses it
completely and swipe down open notification drawer but heads up
stays....first
   happened to me 10000 times accidentally which is really bad and
second does not make sense. Hence this change of the default behaviour)

Well and a lot smaller things as usual.

Last PS
- fixed some minor stuff
- reset snooze timer when screen goes off
- do not show headups if notification drawer is visible

PS
making snooze button functional - we may need to move it a bit down.

PS
give snooze button a bit animation love

PS
icons

PS
add accessibility descriptions etc

PS
hedasupcandidate package fix
move snooze timout into config
smaller fixes
out off WIP and ready to merge
added commit description

Still ToDo:
Settings

Conflicts:
	core/java/android/provider/Settings.java
	core/res/res/values/slim_strings.xml
	packages/SystemUI/AndroidManifest.xml
	packages/SystemUI/res/layout/notification_guts.xml
	packages/SystemUI/res/values/colors_custom.xml
	packages/SystemUI/res/values/config.xml

packages/SystemUI/src/com/android/systemui/statusbar/BaseStatusBar.java

packages/SystemUI/src/com/android/systemui/statusbar/CommandQueue.java

packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java

services/core/java/com/android/server/am/ActivityStackSupervisor.java

Change-Id: Ic8977feb4bb0700f1093ce7d62c22d4c63c69bad
Signed-off-by: STELIX <ssspinni@gmail.com>
CommandQueue: showCustomIntentAfterKeyguard ensure that it gets syncronized

Change-Id: I86be91a09277bfa8b1522fb0088541ac865eb23b
Frameworks: Only set package name on user heads ups

Let us not influence the default aosp behaviour which could conflict if an app
is strange coded

Change-Id: If69e40ce932ce7e77886d250879346a9a43920a2
Frameworks: Be sure heads up view is attached before removing it

We did not have it in our tests but some user ran into it. Thing is if the
system is disabling notifications for whatever reason and till this time the
view was never attached and the system tries to detach the view on windowmanager
we run into an illegal argument exception.

Fix it with simply checking if the view was attached before removing it.

Change-Id: I0800beed3553815cc529087052138345773b32e4
Framworks: Slim Heads-Up build fix

Change-Id: I5dcf98c44ee942b1225e6832bae1d6d2d7945269
Signed-off-by: STELIX <ssspinni@gmail.com>