Settings: Don't hide home category if user has a settings capable launcher

By default the settings app hides the home category if it notices the user
has 1 launcher. Due to the ability to have settings per launcher, if the
user only has one launcher which happens to support settings, hiding this
category renders that feature useless.

So now we check if the user has < 2 launchers AND whether they support
a settings panel.

Change-Id: Id5dd94091a31fd9ee3637e0975816481903255bf
Settings LightSettingsDialog: update led on text change

Change-Id: I135f37829b9b4fb2166afac9d9531b76a62f3ef7
Settings: SlimPie (2/2)

Well first I want to thanks again for the ideas Jens Doll, Kyrylo Mikos and PA gave us
on 4.3 allready to make our own SlimPie possible. We used partly code from them and added
and changed it in our Slim way to have it for us most usefull.

Well as known SlimPie advantage to other PIEs is that it can bind on every button
press and longpress action like the user want. All SlimActions are available for
every button (so all possible shortcuts we have + apps etc). Of course as well
available are custom icon images or system icons. Other unique thing of SlimPie
is that 2 rows are available. First row user can setup up to 5 buttons. On the second
row up to 7 Buttons.
Of course the user can setup the style to their like and still theme engine related
things are respected.
Pie is activated present on non expanded Desktop as well

For 4.4 we reworked a lot of the frameworks base code mainly. Changes compared to 4.3

- We use now a edge detection service (thanks a ton to Jens and Kyrylo). We tweaked it only
  very minor due that it works allready out of the box. Two reasons why we want to use it.

  1. We do not have detection overlays on the borders anymore. Means the user is not disturbed
     by it and we do not need to add workarounds like we did before to avoid accidental swipe ups
     (eg old IME reduce triggers). As well it is not needed anymore that the user can setup
     thikness etc. The default values are allready quiet good. If a device has detection problems
     the dm can adjust them via overlay. As said main main main advantage  that no dead zones are present
     anymore.

  2. we will use this service for other upcomming features as well (eg new Recents)

- Centralized and adapted the code to 4.4 and some changes we did in our central classes
- reduced observer to an absolutly minimum. If PIE is disabled it does not observe any value
- A lot small fixes and tweaks
- Change default colors to KK style
- If navbar is present the navbar gets animated with the background to give a full screen overlay
  feeling to the user. Especially now with kk transparency way better.
- Full keyguard support
- complete reworked edge disable detection
- and a lot more

PS:
- better disable message for second layer
PS:
- fix wrong initialize from pie control settings
PS
- changed to Jubas suggestions

Change-Id: Ia861e06758a6dadcb5a6b52689e574308b2dcc02
Signed-off-by: scott <scott@ubuntu>

Conflicts:
	res/values/slim_strings.xml
	res/xml/slim_navigation_settings.xml
Settings: Fix QS unsupported options are shown if called from outside

Change-Id: I179f087bbaed1e3f366f3e65520de09b53beca19
Settings: Add user protection and pie/navbar toggle to SlimActions

Add drawables for it and enable it for navbar, pie, hwkeys
and GlobalMenu and whatever other shorcutfeature want to have it
Keep the user save and do not allow to disable all navigations to keep
the device usable. User will be notified

In Settings user get the choice to enable the other navigation method. Of course
only on navbar devices due that hw key devices always have a working navigation

and a small duplicate cleanup

PS:
- added Jubas suggestions

Change-Id: I3d13a13bf54304b0207b83b54df5c37337bcdaf5
Signed-off-by: scott <scott@ubuntu>

Conflicts:
	res/values/bs_arrays.xml
	res/values/slim_strings.xml
	src/com/android/settings/beanstalk/NavbarSettings.java
Settings: Slim Actions to Shortcuts (2/2)

Depends on:
https://gerrit.slimroms.net/#/c/3321/

Change-Id: I8c9a524f3628c47e882347225372ff065b4f2b94
Signed-off-by: scott <scott@ubuntu>

Conflicts:
	res/values/bs_arrays.xml
	res/values/slim_strings.xml
Settings: Fix Potential NPE

Change-Id: Ied91344a938fee58827a18c3d555053ea9898c0d
slew of fixups from previous commits

Change-Id: Icd7ca5284ed19842df5ac9dba4df5300a593dbd5
Signed-off-by: scott <scott@ubuntu>
yet another derp.  fix arrays.  sloppy.

Change-Id: I0e522190fbfa8ee0f9845fdde0c2296ee41b147b
Signed-off-by: scott <scott@ubuntu>