Settings: Add heads up blacklist options. (2/2)

Change-Id: I13d849b49bee6f516b591625c2ea2e69dff12885
Remove SystemSettingSwitchPreference.

We should not introduce one-off UI patterns when there are plenty of
examples where the same usage pattern (a feature on its own
PreferenceScreen with a global enable switch in the action bar) is
handled differently everywhere else (e.g. daydream, cast display,
blacklist). This makes for inconsistent UX.
Also, there are discoverability issues: As there's no other case of a
preference with an embedded control widget opening another preference
screen, users won't expect to find another screen behind it.
Additionally - but entirely subjective - the control looks plain ugly,
as the preference padding is too large for the large switch.

Change-Id: I61284e961babefa3748102b05055fb1d03b079b0
Deduplicate adapter-of-installed-packages code.

Change-Id: I454ba79eddaaff86233a2cc341f4c8bebe94729e
Hide heads up settings and show a notice if heads up is disabled.

This follows a UI pattern used at several other places, such as
daydream, screencast, profiles or blacklist settings.

Change-Id: I5635338ceccae8ba8450284d3078889333fb77c6
Settings: Fix switch state being out of sync.

    - Since QS Tile can also set state of Heads up now,
    we have to set a content observer for the action bar
    switch.

Change-Id: I1c63fd2627a0f823eb6982456e1ed79ab84d1957
Add some system packages to package list adapter.

As we're using the adapter for notification control stuff, we need to
include those packages, too, as they're throwing notifications as well.

Also optimize code a little.

Change-Id: I8829041a535923e3d93d9566e27eb99c48f25abd
Settings: Remove unnecessary padding from HeadsUpSettings.

Change-Id: I823aa97f32049dc6c6baf6c859c47219952fe454
Fix heads up action bar switch handling for tablets.

Similar to commit 91f47b9f55467f1c8de4c6c732375d9f6f3c3942.

Change-Id: Ia4c5e8169ccd6786d2284eccec30397cac48d218
Add missing drawables for HeadsUp