Quicktoggles

Patchset 1: Invert actions
Patchset 2: Basic drag and drop handler (temporally stored, no animations)
Patchset 3: Animations and hover effect
Patchset 4: White color, better view swaping method, fixed bugs
Patchset 5: Edit mode (long press on user tile), Overshoot interpolator for scale animation (still temporal)
Patchset 6: Removed interpolator, added animation on entering/leaving edit mode, Stuff sticks through reboot
Patchset 7: Fixed view swapping for real
Patchset 8: Fixed jerky animations
Patchset 9: Fixes for phonestatusbar, preparing for activation method
Patchset 10: Airplane toggle -> Aint nobody got time for dat. Disable activation on user tile (waiting another method to come up to my mind)
Patchset 11: Better drag handler, edit mode on tablets only
Patchset 12: New icons, animations, back to hovering
Patchset 13: Fix behaviour with temporary tiles and slow animations
Patchset 14: Edit mode on phones (credits to Curtis Mayers: https://gerrit.paranoidandroid.co/#/c/241/)
Patchset 15: I'm not the only nitpicky here right?

Change-Id: I967f94428606f8f909cb428eaaa6d12e9d59808e

Conflicts:

	core/java/android/provider/Settings.java
	packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettings.java
	packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettingsContainerView.java
	packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettingsTileView.java
Immersive mode on quick settings

This adds the ability to toggle statusbar / navbar via quicksettings (former expanded desktop), but
using the new 4.4 APIs that allow a swipe-up, swipe-down gesture, to restore bars.

Credits to CM project for the implementation
http://review.cyanogenmod.org/#/c/53468/

Drawables by Arz Bhatia

Patchset 2: Rebase
Patchset 6: Fixes from CM

Change-Id: I1f694d87f0364aed7b6951714ea2bfbfd8555064

Conflicts:

	core/java/android/provider/Settings.java
	core/res/res/drawable/ic_notification_cast_connecting.xml
	packages/WallpaperCropper/res/values-nodpi/wallpapers.xml
	policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
Quicksettings: Immersive: Fix collapse panel animation.

Right now it collapse after the ui goes into immersive mode so the collapse animation is not showed.
First collapse the panel then go into immersive mode so we see the animation.

Signed-off-by: Carlo Savignano <stevewatersy@gmail.com>

Change-Id: Icf2925fa517fc077929e02d1f96a8cd51163b809
Fix immersive mode recents animation.

Inspired on this https://github.com/CyanogenMod/android_frameworks_base/commit/be9c31709e2b90bc85ef1814b22df1785515d23d

Signed-off-by: Carlo Savignano <stevewatersy@gmail.com>
Quicksettings: Long press actions.

* Long click action for user tile (opens sync settings).
* Long click action for rotation tile (opens accessibility settings).
* General cleanup.

Signed-off-by: Carlo Savignano <stevewatersy@gmail.com>
Quicksettings: Hardcode quick pulldown from right status bar side.

* Still works 2-fingers pull down.
* Quick pull available in the up-right 20% of status bar.

Signed-off-by: Carlo Savignano <stevewatersy@gmail.com>
Fix: Ensure immersive tile state (on/off) persists after reboot

If immersive mode is enabled, the immersive tile icon should be white,
with the appropriate text "IMMERSIVE" as opposed to grey with text,
"IMMERSIVE OFF".
When rebooting the device, the tile shows "IMMERSIVE OFF" regardless
of if immersive mode is on or off.

Change-Id: Id805fcb6c6fded41e1d3a38e9a1bc46b7a2a7d1e
QuickSettings: Tile Actions

    Mobile Data Tile:
        - Click to toggle mobile data
        - Long press to enter data usage statistics

   Alarm Tile:
	- Fix launching alarm on click

PS1: Edit mobile data tile actions
PS2: Fix type in commit message
PS3: Fix bug in Alarm tile implementation

Change-Id: I21eef91114a3119834db7181dc3b35d4eb56c90b

Conflicts:

	packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettings.java
[1/3] Frameworks: Add Network Tiles & Lightbulb Tile

      Add an LTE tile and a 2G/3G mobile network tile.

      The LTE tile requires that at least one (1) of the following configs
      be present in the device's build.prop in order to show:
          telephony.lteOnCdmaDevice=1
          telephony.lteOnGsmDevice=1

      The 2G/3G tile toggles between 3G Only, 2G Only and 2G/3G.

      If LTE is turned on the 2G/3G tile is disabled (shows unknown).
      The reverse is also true, turning on the 2G/3G tile disables LTE tile.

PS1  : Network tiles (LTE & 2G/3G)
PS2-3: Clean up
PS4  : Add Lightbulb tile
PS5  : Add lightbulb icons & permissions
PS6  : Check for LTE support only after device boot completes

Linked commits:
      frameworks/opt/telephony
      packages/services/Telephony

Change-Id: Id64c061227efd557416de312c4e5972725c29e71

Conflicts:

	packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettings.java
[1/2] Frameworks: Combine LTE & 2G/3G Tiles

This combines both network tiles into one tile.
2G -> 3G -> 2G3G -> LTE

Linked commit: packages/services/Telephony

Change-Id: Ia0d8edaec0e920b9ba174ec6ce49c5e7b832a5ab
Fixes for build with QuickSettings
Quicksettings: Sleep tile.

* Click goes to sleep.
* Long click opens display settings.

Signed-off-by: Carlo Savignano <stevewatersy@gmail.com>
Change-Id: I3eeae514535e9edff72f233e18d8f8dfaadf3517
QS: Update edit mode icon

Uses the correct transparency so that it matches the rest of the pulldown icons.

Change-Id: I783c4b4038b536dfb6d3c73fac3c739895e9cac6
Signed-off-by: Evan Anderson <evan1124@gmail.com>
Quicksettings: USB Tether tile

courtesy of OmniRom
based on: http://goo.gl/0RfbFy

PS3: add "private ConnectivityManager mCM;" variable
PS4: compiles, not yet tested
PS5: derp forgot to initialize mCM which caused a NPE
(http://developer.android.com/reference/android/net/ConnectivityManager.html)
PS6: fixed some connectivity manager redundancies in qs.java
PS8: make tile temporary, only appears when connected to usb.
PS10: fix conflicts in pa_strings and QuickSettingsModel after recents merges.
      clean up commit message's conflicts.
PS11: Remove unnecessary resources
PS12: Don't show tether tile is feature is not supported

Signed-off-by: Andre Saddler <dresadd09691@gmail.com>
Change-Id: I856f1a1f954544cb9e1b78f504fde8916b94235e

Conflicts:

	packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettings.java
Quicksettings 3.0

* Improve code (cleanup, indenting, redistribute resources, some comments updates and more).
* Fix: Restore stock aosp transition for quick settings on rotate (the rebuild animation
       executed when you are on quick settings panel and rotate the screen is not always showed).
* Animated Dual Tiles
    Animation: Added new animation by Jesus David (@D4rKn3sSyS):
     -Up/Down switch animation.
     -Moron Effect: Reminds you to turn on main tile before acting with related extra one.
    Follow aosp quick settings style (as for Quicksettings 2.0) and improve it. Add specific classes
      and constructors for tiles that have their own layouts.
    Add dedicated classes for rssi, wifi and basic dual tiles.
    Evolve dual tiles concept making them dual tiles for real.
    Integrate dual tiles into edit mode.
    Tiles added:
     -Wifi AP Tile (Dual): Made the aosp way. Created receiver for the main intent sent to change
      wifi ap state (also toggling with apps will refresh it). Integrated with Wifi Tile. Thanks
      CyanogenMod for the drawables.
     -Screen Timeout Tile (Dual): Integrate it in the sleep tile previous added. Cleaner implement.
      Thanks Yanuar Harry (@squadzone) for cleaning my code :) Thanks Lo Huot for the drawables.
     -Bluetooth Extra Tile (Dual): Original from OmniRom. Partially rewrote it. Use android stock
      classes, methods and constructors. Toggles discoverability. Thanks Lo Huot for the drawables.
     -Location Extra Tile (Dual): From OmniRom (Yanuar Harry, @squadzone). Changed methods labels,
      add moron effect with main location tile, added its own icons. Thanks Lo Huot for the drawables.
    Tiles cleaned/updated:
     -Mobile Network Modes Tile: Fix icon refresh at boot.
     -Immersive Tile: Completely rework. Redistribuite resources, improve the code, add triple immersive
      mode (Off-Full/Navbar/Statusbar).
     -Brightness Tile: Long click toggles auto-mode.
     -RSSI Tile (Dual): Rework and simplify. Show off indicator when disabled. Merge in Mobile Network Modes Tile.
     -General Basic and CustomBasic Tiles: Clean up.

PS2:  Fix rssi front tile construction.
PS3:  Clean up wrongly added file.
      Some fixes and updates for rssi tile.
      Solve recent merge conflicts.
PS4:  Rebase:
      Fix traces of not solved conflicts after recent merges rebase.
      Improve the dual tile logic, reduce code in QuickSettings class.
      Improve screen timeout (sleep sub-tile) code, thanks Yanuar Harry.
      Don't return dual (flip) animator touch event on edit mode. (Need test)
      Nitpicks cleanup.
      Update main commit message.
PS5:  Continue rebasing:
      General code cleanup.
      Improve strings and drawables labels.
      Fix wifi ap tile construction and NPEs.
      Remove unused imports.
      Cleaned dual sleep tile implement (more polish methods names).
      Cleaned paired device bluetooth extra tile traces (added some todo).
      Update edit mode integration.
      Added a refresh callback sub-class for network tile (now contructed with
      new Basic Network Tile class). Not yet used and (EDIT: Removed).
      Update commit message (added some TODO).
PS6:  Finish bluetooth extra tile. Add drawables, refresh resources.
      Improve immersive tile.
      Traces of previous rebase.
PS7:  Fix missing icon and signal activity state for rssi tile.
      Restore rssi refresh method to aosp state (temp).
      Try to restore wifi signal activity (it doesn't show up and don't know why, yet).
PS8:  Rework the whole concept:
      Cleaned and simplify the whole code.
      Added our new animations.
      Updated copyrights.
      Added location extra tile (Yanuar Harry).
      Add wifi basic tile class to handle its layout (it has signal activity layout defined there).
      Ditch omnirom flip implementation and rework dual tiles constructor.
      Rewrote tiles layouts to host a switch button.
      Cleaned up user tile too (make its own class and save code in QuickSettings class as for the others).
      Remove unused stuffs.
      Big thanks to Jesus David that helped me making this new concept :)
      Updated main commit message.
PS9:  Forget new layouts X]
PS10: Add spanish translations.
PS11: Rebase with latest git merge.
PS12: Improvements and fixes:
      Fix switch button layout/view (derp while preparing patchset :P).
      Rework immersive tile. Upgrades modes to three (Full/Navbar/Statusbar).
      Cleanup Wifi Ap Tile code, improve code aspect.
      Improve/add strings.
      Fix Network Modes Tile icon refreshing at boot, sometimes not displayed until you toggle.
      Add hdpi and mdpi drawables for all icons added.
      WIP: Perfect edit mode integration and new immersive drawables.
PS13: Crediting @david96 for inspiring new immersive tile concept.
PS14: Added new immersive modes drawables. Thanks Lo Huot.
      Added new sleep time ones, more polished. Thanks Lo Huot.
      Improved strings.
      Updated some spanish translations.
      Code style for strings.
PS15: Fixed edit mode
      Removed WIP tag. Ready for merging
PS16: Code cleanup
PS17: Latest cosmetic changes:
      Whitespaces.
      Remove collapsing for high accuracy mode (location back tile).
      Copyright and last general clean up.

Signed-off-by: Carlo Savignano <stevewatersy@gmail.com>
Signed-off-by: Jesus David <jesdga95@gmail.com>
Change-Id: Iceccd6a489c23286d8bc4e285fbb87b77509cd29

Conflicts:

	packages/SystemUI/res/values-es/pa_strings.xml
	packages/SystemUI/res/values/minimal_strings.xml
	packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettings.java
	policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
Fix: Network tiles for CDMA devices

PS 1: initial fix
PS 2: remove 3G Only for CDMA
PS 3: rebase for QS 3.0 changes

Change-Id: I2e526c8d94cc561c48c2a9198311e03b4f18328d
Frameworks: Update Google dialer check for QS 3.0

As the network tile is now on the back of the rssi tile instead of it's own tile,
it's no longer feasible to simply hide the network tile if the google dialer is installed.

Quick setting tiles are created BEFORE boot, but we can only confirm the dilaer type AFTER
boot. Instead of recreating the rssi tile as a single tile, simply disable the
on click network mode toggle if google dialer is present and provide an appropriate toast.

Change-Id: Ia74c7d0622446464a2a57395cf3f336eeb172ca3

Conflicts:

	packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettingsModel.java
Revert "Frameworks: Update Google dialer check for QS 3.0"

This reverts commit e6f68d4c1623a35be4d76b2046811ad5016a782f.
Quicksettings 3.1

Minor post update.

* Update Recents animation with new immersive modes. Continue this https://github.com/AOSPA/android_frameworks_base/commit/48be6b18bbf2d676da75eb031ee76b282635713a
* Sleep Tile
  Cleanup code.
  Add new holoish drawable.
  Long press now opens power menu (pure emulation of power button). Thanks to @cristianomatos
* Immersive
  Back on our first concept of having the tile dualized and change it:
  - Front: Toggles Global On/Off.
  - Back: Toggles modes (Full/Nav only/Status only).
  The tile now stores last immersive state, thanks @David96 for the idea.
  Fixed a critical bug with status bar hidden only, thanks to @David96.
* Rssi Tile
  Restore long press action to data usage on front rssi tile
  Fix icon overlay, restore blank overlay on disable and while wifi is on.
* Code indenting and cleanup.
* Update dual switch icons, less bright.
* Restore a previous fix that relays on immersive.
* Get rid of some useless imports and code in quick settings, make a class for battery tile.

PS2: Update dual switch icon brightness.
PS3: Spanish translations.
PS4: Translation fix.
PS5: Translation derp.
PS6: Cleanup.
     Add battery tile class.

Signed-off-by: Carlo Savignano <stevewatersy@gmail.com>
Change-Id: I076d4c2be5f22df7cf1f04d5487c699d90d663f7

Conflicts:

	packages/SystemUI/res/values-es/minimal_strings.xml
	packages/SystemUI/res/values/minimal_strings.xml
	packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettings.java
	policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
Fixes for build with QS