Forward port battery icon options [1/2]

Bring forward the various battery icon options.
Portrait, Landscape, Circle, Text.

Still retains new options for where to display battery percentage text.

Change-Id: Icfc14d989eebde9014538291c24aa76d328df234
Adding back pdf_printer_media_sizes for values-zh-rCN to accomodate mediasize_default

Change-Id: I45cfd8babe813fa5dba49bb444e10517a3771f30
SystemUI: fix battery icon patch for MSim

Change-Id: Ia3437069de3faeb0cc922b756e4c1db85e2a2524
SystemUI: fix MediaProjection cast crash

Clicking on the "cast" icon of an app using the MediaProjection API will
crash as the code assume that it is a device.

java.lang.ClassCastException: android.media.projection.MediaProjectionInfo cannot be cast to android.media.MediaRouter$RouteInfo
	at com.android.systemui.statusbar.policy.CastControllerImpl.startCasting(CastControllerImpl.java:177)
	at com.android.systemui.qs.tiles.CastTile$CastDetailAdapter.onDetailItemClick(CastTile.java:237)
	at com.android.systemui.qs.QSDetailItems$1.onClick(QSDetailItems.java:177)
	at android.view.View.performClick(View.java:4756)
	at android.view.View$PerformClick.run(View.java:19749)
	at android.os.Handler.handleCallback(Handler.java:739)
	at android.os.Handler.dispatchMessage(Handler.java:95)
	at android.os.Looper.loop(Looper.java:135)
	at android.app.ActivityThread.main(ActivityThread.java:5221)
	at java.lang.reflect.Method.invoke(Native Method)
	at java.lang.reflect.Method.invoke(Method.java:372)
	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:898)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:693)

Change-Id: Icfdf745c03da7bd1bbb228e06005f55324c1b8fa
Cleanup button wake settings (2/2)

Change-Id: Ie37136cbd57c4c334321abbfa4543727e940bc43
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

Change-Id: Ic8977feb4bb0700f1093ce7d62c22d4c63c69bad
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
FWB: Gesture Anywhere - bring it back [1/2]

AICPfy lp5.0:
- Lollipopify LOL
- By request from doc
- Added TriggerOverlayView from AppSidebar
- some lines from Locskcreen gestures to get
  it compiled and working

Change-Id: I04acb9a88fe0011921a1bafdc1919d76ce57aedf
Frameworks: Gesture Lockscreen (1/2)

This adds the ability to us a hand drawn gesture as
a means to unlock the device.

In the case that the gesture is forgotton or not
being recognized correctly, the fallback will be the
same as when using patterns.

Androidx:
Some changes needed for 5.0

Change-Id: Ia54282682372394793ec019380cc7f09fcefa7f9
Frameworks: add ability to change the color in battery saver mode (1/2)

User complain about the ugly orange....give the user the ability to change the
color in status and navigation bar if battery saver mode is activated.

Especially for you Tylog :D

PS
- move it into the observer...method is called to often to call every time
  the settings value for it.

Change-Id: I48ed2e85c462a2e94770b2bc1ad75b1ca40f2304
Contacts/Dialer/InCallUI: Dark theme, (1/7):

Part 2/7: Contacts
Part 3/7: ContactsCommon
Part 4/7: Dialer
Part 5/7: InCallUI
Part 6/7: PhoneCommon
Part 7/7: services/Telephony

Change-Id: I71bacd8c16ee5c640bd04e84bbe19c04648cfb29