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

Change-Id: Ia861e06758a6dadcb5a6b52689e574308b2dcc02

Conflicts:

	res/values/cr_strings.xml
	res/xml/temasek_navigation_settings.xml

(cherry picked from commit 170da6ffce458b349cf6c7100602980727abf067)

Conflicts:
	res/values/cr_strings.xml
	res/xml/temasek_navigation_settings.xml
	src/com/android/settings/temasek/dslv/ButtonsListViewSettings.java
Add Pie
rename PIE
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
(cherry picked from commit 635cd51f5731d3c7f2320b50ffcbed10402e73ef)

Conflicts:
	res/values/cr_arrays.xml
	res/values/cr_strings.xml
	src/com/android/settings/temasek/NavbarSettings.java
Update SlimPIE

(cherry picked from commit b7ba78f2065f37852769372fada8c51c24bfcfbe)

Conflicts:
	res/xml/pie_style.xml
Settings: SlimPie give user ability to reduce trigger heights if IME keyboard shows (2/2)

Add a user option to reduce left and right trigger of SlimPie if keyboard shows up
(especially usefull for swipe keyboard which most keyboards are nowadays). Enabled
by default user can disable it in settings

PS:
- fix category string

Change-Id: Ia5ae621a5e63b2efd10180cfbe1876b14a63c866

Patchset: 3
https://gerrit.slimroms.net/#/c/3503/
(cherry picked from commit 94cca41613e070024535f3b76c80b0522988f3bb)
Fix PIE (again :p)

(cherry picked from commit 291eb8d20ce9fa8dbf371703240251def4c2395b)