Reduce observers in SystemUI: StatusBarIconView

Currently, for each status bar icon view there is a observer that
listens for changes of STATUS_BAR_NOTIF_COUNT. With one
notification usually having one or more status bar icons
you may end up easily with 10+ more observers for ~5 notifications.

With this commit the internal observer class becomes a singleton.
This means there is now only one observer for all status bar icons
and additional binder calls on new notification are avoided.

See "dumpsys content"

Change-Id: I7ca6481fe43e87c34b19d7b71e531cce93cf80ef

Conflicts:
	packages/SystemUI/src/com/android/systemui/statusbar/StatusBarIconView.java
Navbar buttons spacing for Phablet UI

This patch trys to make spaces in navbar buttons to fit Google behaviour
for tablets (Nexus 7, Nexus 10).

PS2: Better values after some testing on Nexus 7
PS3: Previous solution isn't good

Change-Id: I1ea9c883c519641fd99a033a54a1dc29fd9d57bd
Signed-off-by: kecinzer <kecinzer@gmail.com>
Reduce observers in SystemUI: KeyButtonView

This is based on the work by Jens Doll for the StatusBarIconView

The ContentObserver class will be a singleton, so there is only
one observer for all buttons.

On my Nexus 10 it reduced the observer count from 48 to 4.

Change-Id: I3223a18fcb5d2c9c2e7de655c514ff751dcd345d
Signed-off-by: Dirk Rettschlag <dirk.rettschlag@gmail.com>
Reduce observers in SystemUI: BatteryBarController

This is based on the work by Jens Doll for the StatusBarIconView

The ContentObserver class will be a singleton, so there is only
one observer for all instances.

On my Nexus 10 it reduced the observer count from 15 to 3

Change-Id: Ibdd6fca75e5f0245b2897c9d5aebb5a0961cc351
Signed-off-by: Dirk Rettschlag <dirk.rettschlag@gmail.com>

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