[WIP] SlimPIE (1/2)

Port to CM11.0 sources by @cristianomatos

Change-Id: I19a39102cb1e2514c74788332fa064be03914683
PIE: adjust gesture sensitivity to maximum

Change-Id: I933059dfa33b3718d07aa15dd1d7e47c6bb0f813
Adjust PIE trigger to better action and set new sensitivity values

Here we set SENSITIVITY_DEFAULT = 5 and SENSITIVITY_HIGHEST = 10 to high values.
Values was 2 and 5 and using this commit b36d535e6cc23dfbc986518f2b5e1d63e32d7db0 result always in SENSITIVITY_DEFAULT = 2;

Inside this method is were PIE control sensitivity is defined:

    private void setupListener() {
        ContentResolver resolver = mContext.getContentResolver();

        mPieTriggerSlots = Settings.System.getIntForUser(resolver,
                Settings.System.PIE_GRAVITY, EdgeGesturePosition.LEFT.FLAG,
                UserHandle.USER_CURRENT);

        int sensitivity = mContext.getResources().getInteger(R.integer.pie_gesture_sensivity);
        if (sensitivity < EdgeServiceConstants.SENSITIVITY_LOWEST
                || sensitivity > EdgeServiceConstants.SENSITIVITY_HIGHEST) {
            sensitivity = EdgeServiceConstants.SENSITIVITY_DEFAULT;
        }

        mPieManager.updateEdgeGestureActivationListener(mPieActivationListener,
                sensitivity<<EdgeServiceConstants.SENSITIVITY_SHIFT
                | mPieTriggerSlots & mPieTriggerMask);
    }

Change-Id: I8b2a4cc0b7b634f6d805c4566a61602f9841c2b6
Frameworks: SlimPie only preload recent on button press down

and not like it was before on showing up pie for better peformance

Change-Id: I87ec56649a5bc8979225036b9eb8e823de587185
SlimPie: turn on HA on highEndGfx devices

for smoother experience

Change-Id: Ie2a052e1071a8ab7ea303b6a8d21e245658bec2b
Fix navbar not showing when swiping down in expanded desktop with pie disable

Change-Id: Ia5f487ef26aeb1c67cf5f5e672332cc1c6fb1e6b
Frameworks: EdgeGestureService give abbility to reduce the left and right trigger height if IME shows up

This patch gives the abbility that features can set the IME_CONTROL flag in addition to the position flags
to enable reducing trigger heights on the left and right edge to avoid conflicts with swipe keyboard.

Although the inputfilter lets come presses to the application trough the normal user behaviour is to start keyboard swiping
before they really even pressed the char button which results in conflicts with whatever feature is using the left and right
edge as trigger.

Features who want to use it need to set IME_CONTROL flag. As well if notification drawer was pulled down or global menu is
shown on top of the IME keyboard the original size gets restored till they are dismissed/closed

This patch adds only the support for it.

PS
- Fix small logic derp in BaseStatusBar
PS
- follow Josues suggestion and make the trigger a bit bigger

Change-Id: I51804d6e0768cc7770a6e52fac454dbad0ab632b

Conflicts:
	core/java/android/inputmethodservice/InputMethodService.java
	core/java/android/service/gesture/IEdgeGestureService.aidl
	policy/src/com/android/internal/policy/impl/GlobalActions.java
	services/java/com/android/server/gesture/EdgeGestureTracker.java

Conflicts:
	core/java/android/inputmethodservice/InputMethodService.java
	policy/src/com/android/internal/policy/impl/GlobalActions.java
Frameworks: SlimPie give user ability to reduce trigger heights if IME keyboard shows (1/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.

Change-Id: I5dce4f36f5b14320f806ac60ad75931fa7f2873b

Conflicts:
	core/java/android/provider/Settings.java