Return: Smart Pulldown [1/2]

Adds the ability to directly open the QS panel when there are
no notifications present in the notification panel.
This commit combines the enhancement by HardCorePawn for detectin
notification types for the same.

Credits: kufikugel, HardCorePawn

PS 2-4 : Cleanup

Change-Id: I3c9b048f2616d2b8950930cc5bfac27c2364e826

Conflicts:
	core/java/android/provider/Settings.java
fb: force carrier label height on first boot

reported tester issue:
- boot up
- pull down QS before any network action was done
- carrier/wifi label is shown on qs

Expected behaviour: should not show up on QS in any cases

Fix: force hide on first statusbar construct

seems to be in rare cases this update is needed to avoid showing the carrier
label on QS on first boot up and no connection is there hence emergency label
is shown

Change-Id: I72d2ddc7767938dd2ea657bd2d976b945b1f6467
fb: add bottom margin to stock default battery icon

We set the layout parameters programmatically so the fix from
google does not take effect. To solve set the bottom margin
programmatically based on the current display density

Change-Id: I9caa0e729afa19eb7cb852a1df6ad036a2839d1b
Frameworks: Fix 0% battery QS tile

when tile is recreated. Fetch the values from
BatteryController

Change-Id: Id0539016e1c479ac1f75535647d91a26f69a76b5

Conflicts:
	packages/SystemUI/src/com/android/systemui/statusbar/policy/BatteryController.java