Modified Quicksettings to act just like Power Widget. Fixed Power Widget Sleep toggle with the help of Danesh M and David van Tonder

The code for QuickSettings has been rewritten using quicksettings.QuickSettings and QuickSettingsController classes.

Patch set 1-15: 	Original commits
Patch set 16:   	Re-arrange button order
Patch set 17-20:	Rewritten toggles

Change-Id: I7dcdca925970d816671e60ee01f393d71ce36581
SystemUI: Open Quick Settings panel if there are no active notifications

This is ported from AOKP and described as follows:

  If there are no notifications that belong to the current user, then automatically
  open the quick settings menu (like the two-finger open). It only ignores the ADB
  icon for now (which is pretty useless) but could be extended to ignore the usb
  mounting one or maybe another?
  Author: Roman Birg <romanbirg@gmail.com> AOKP
  AOKP Github: commit 2eb664a4bc5f93b705eeeaa0847331343bb017cd

The CM version of the commit respects the Power widget enabled settings and will
only display this behaviour if the Power widget is disabled.

Change-Id: Ie0c22167ebc6fd3152335c4148dbb7c65bfce46f
SystemUI: Tweak number of notifications detection method

Change-Id: Ibd46fa5039e1d3062dcdb8f3c4dbd9ec1bdc73b0
QuickSettings: New icons better matching stock

There icons should match the stock feel a bit better
in terms of size, design and color.

Change-Id: I1c8e6af9e48569e1c227c081495f70607cfe6d2b
Framework: Quick Settings customization (Part 2 of 2) WIP!

This commit will alow loading the Quick Settings tiles layout from
a layout that is configured in Settings.

Patchset 3 - Restore Settings tile to AOSP location

Change-Id: Id4e4353dee68b8ca434dfa64d1f88737792a2e28
Revert "SystemUI: Open Quick Settings panel if there are no active notifications"

This reverts commit 0031e6c3a1d6d2796d01430585d8d52d9b876552.

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

Change-Id: I6981416a8aa769663f471f2a536196af7ee7e70d
SystemUI: Pull down QS if x > 70% width

Change-Id: Ic41d331e8f0166484b124e91a8ed8e904ff38edb
QuickSettings : Dismiss keyguard upon ActivityLaunch

Dismiss keyguard if launching activity

Change-Id: I850d719c188faf9e3e06c3944287d817cdacbdd6
QuickSettings : Add torch tile

Patchset 2 : New torch drawables (Björn Lundén)

Change-Id: I0831266d503195ee249a85d0d728bdae321e56cd
QuickSettings : Add longpress for Torch Tile

Add long press capability to torch tile + Fix string mishap

Change-Id: I760c54b9abfe5e549a29b0f06660a6bf84f1d200
QuickSettings: Add light grey QS drawables for use in Settings

Change-Id: I293aaff06e5c604a01138f30297c01d98de9430e
QuickSettings : Wifi-AP Tile

Patchset 2 : Cleanup
Patchset 3 : More cleanup and old comment removal
Patchset 4 : Switch to the WifiManager rather than Power Widget
             Better state handling between WiFi AP and WiFi
             WiFi now turns on again if it was on before
Patchset 5 : Revert Power Widget change from Ps1, no longer needed

Change-Id: I5bd59df37ed3094f5ba253a97fd86aa426b98b39
Quick Settings : Fix Sound tile

This commit removes the deprecated VIBRATE related code and uses
the proper 4.x api/settings to toggle the ringer states.  It also
now shows the proper state on reboot.

Patchset 2 : Remove deprecated (non functioning) VIBRATE_IN_SILENT

Change-Id: Iec3e59e79c7ed686f8ff33f9cfdeb892ff70b151
QuickSettings : Auto-rotate toggle fixes

Use RotationPolicy to avoid unecessary code and stay consistent
with rest of the system.

Change-Id: Id3532c10db5f6fc9c2a97ffb809c2c3674f16918
QuickSettings : Dismiss notification panel upon toggle

Automatically dismisses the notification panel after selecting a toggle,
if the option is enabled.

Patchset 2 : Rename to "panel"
             Rename onclick/onlongclick to mOnClick/mOnLongClick

Change-Id: Iaf211db99e45ef464cbc59aa2ee26899f1e44d22
SystemUI: fix delay in applying am/pm setting for notification clock

When changing AM/PM display setting for status bar clock, the
clock in the notification dropdown will not apply that setting
until a reboot.

Change-Id: I1bceb411ba51e17a9c4890c6f24d6adb08a8788d
SystemUI: Use Settings.Global.getInt to read global settings

Settings.Global.getInt should be used instead of Settings.Secure.getInt
to read global settings.

Change-Id: Icf8b9b2c9f04d4a111e5cc165e090aeb996f91b1
SystemUI: Request CHANGE_NETWORK_MODE permission

com.android.phone.CHANGE_NETWORK_MODE permission is required for the
network toggle to function properly

Change-Id: I88a6f6705553fcb08bee5e8308e89395a4749e4f

Conflicts:
	packages/SystemUI/AndroidManifest.xml