SystemUI: fix memory leaks

ContentObservers are being registered without being unregistered,
causing old objects not to be garbage collected. This causes memory
leak if the classes are destroyed and recreated throughout the
device's uptime.

SearchPanelView is recreated every time the screen is turned on.
StatusBarIconView is created every time a notification is triggered.

JIRA: CYAN-650
Change-Id: Iabd3221fc2b0c848396af1790fd09424be602e7e
Changed USB page icon from Android to Cid

Change-Id: I57386c2d555723adad99cafe8ae6d2e8f6fe8cbd
Set QS panel opening to outer 15% of statusbar

Prevent accidental opening of QS panel in stead of notification bar

Change-Id: Ibe5f6504333af2ce124be1efbd463fb56a51c2dd
Option to enable gfx effects (Framework)

Based on original commit by kladd

Change-Id: Icf1ea2dc952ccb9c2e8fafd237e80a671bd467f7
Revert 3 clock related patches

Revert "SystemUI: fix delay in applying am/pm setting for notification clock"
Revert "4.2 Transition: Notification Header datetime click"
Revert "SystemUI: Forward port Statusbar Clock and Date actions"
4.2 Transition: Notification Header datetime click

- Fixes tiny clickable area for much smaller 4.2 date string
- remaps clock behavior:
  - click does open deskclock now - same as clicking clock widgets now does
  - long click jumps directly to alarm setup

Change-Id: Ic4e3f623ef7b6bf4116242b479c681f2866b4c9c
Fix status bar Clock events

Change-Id: I675d92d8f9bb497c9299867f62873d309def4fc4
Add clock styles and Clock color picker

This commit is a combination of CM, AOKP and SlimROMs work

features:

- Clock and date enable/disable
- Clock and date position
- AM/PM styles multilang support
- Fully customizable date in style and format
- Fully dynamic settings
- Fix update am/pm style on statusbar
- Fix statusbar clock click and longclick events
[Framework] Port BatteryBar (2/2)

- Adds Battery bar with following features
- location set
- color
- aligment
- thickness
- animation

- dynamic slim settings

Change-Id: Iacb3e38505b0ab30bb3f9df54231aeb2c79c20f1
framework: add RAM Bar to Recents

Updated version with improvements in calculations and translation
SystemUI: Option to display Quick Settings when there are no ongoing notificaions

Added member function hasClearableNotifications to class
PhoneStatusBar. This function returns true when clearable
notifications are present on the status bar. Also, onTouchEvent in
NotificaionPanelView now flips to Quick Settings if there are no
ongoing notifications, and the QS_QUICK_PULLDOWN is set accordingly.

Change-Id: Ia77f90b19c7b408b7fc9376b6914e3173b734655
Fix Battery bar 2dp and 3dp graphics glitch

and a bit codestlye

cheers

Change-Id: I7e01c351fdfc3e3f5adfaab9eba870a4b022cb47
Frameworks: Optimize more and fixes

Batterybar this time

- unregister observe
- fix another old old glitch in center mode
- code cleanup

cheers

Change-Id: Icddcfe7664b24dfb54ea45c34ce1b179fc368ef2
added contact lockscreen icon

Change-Id: I204e3a43d3e2beed391e605f3d3add55b24bb4b7