Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7447e103 authored by Steve Kondik's avatar Steve Kondik Committed by Steve Kondik
Browse files

Revert "PhoneWindowManager: add ability to use EdgeGestureService for system gestures."

This reverts commit 04e1696c.

Change-Id: Ie3912b8d47015e82f6a7b6a07f84b8666d00923f
parent 43ea0124
Loading
Loading
Loading
Loading
+0 −86
Original line number Diff line number Diff line
@@ -83,7 +83,6 @@ import android.service.dreams.DreamService;
import android.service.dreams.IDreamManager;
import android.speech.RecognizerIntent;
import android.telecom.TelecomManager;
import android.service.gesture.EdgeGestureManager;
import com.android.internal.os.DeviceKeyHandler;

import com.android.internal.util.cm.ActionUtils;
@@ -129,8 +128,6 @@ import com.android.internal.R;
import com.android.internal.policy.IKeyguardService;
import com.android.internal.statusbar.IStatusBarService;
import com.android.internal.util.ScreenShapeHelper;
import com.android.internal.util.gesture.EdgeGesturePosition;
import com.android.internal.util.gesture.EdgeServiceConstants;
import com.android.internal.view.RotationPolicy;
import com.android.internal.widget.PointerLocationView;
import com.android.server.GestureLauncherService;
@@ -898,9 +895,6 @@ public class PhoneWindowManager implements WindowManagerPolicy {
            resolver.registerContentObserver(CMSettings.System.getUriFor(
                    CMSettings.System.VOLBTN_MUSIC_CONTROLS), false, this,
                    UserHandle.USER_ALL);
            resolver.registerContentObserver(CMSettings.System.getUriFor(
                    CMSettings.System.USE_EDGE_SERVICE_FOR_GESTURES), false, this,
                    UserHandle.USER_ALL);
            resolver.registerContentObserver(CMSettings.System.getUriFor(
                    CMSettings.System.BACK_WAKE_SCREEN), false, this,
                    UserHandle.USER_ALL);
@@ -995,67 +989,6 @@ public class PhoneWindowManager implements WindowManagerPolicy {

    private SystemGesturesPointerEventListener mSystemGestures;

    private EdgeGestureManager.EdgeGestureActivationListener mEdgeGestureActivationListener
            = new EdgeGestureManager.EdgeGestureActivationListener() {

        @Override
        public void onEdgeGestureActivation(int touchX, int touchY,
                EdgeGesturePosition position, int flags) {
            WindowState target = null;

            if (position == EdgeGesturePosition.TOP) {
                target = mStatusBar;
            } else if (position == EdgeGesturePosition.BOTTOM  && mNavigationBarOnBottom) {
                target = mNavigationBar;
            } else if (position == EdgeGesturePosition.LEFT
                    && !mNavigationBarOnBottom && mNavigationBarLeftInLandscape) {
                target = mNavigationBar;
            } else if (position == EdgeGesturePosition.RIGHT && !mNavigationBarOnBottom) {
                target = mNavigationBar;
            }

            if (target != null) {
                requestTransientBars(target);
                dropEventsUntilLift();
                mEdgeListenerActivated = true;
            } else {
                restoreListenerState();
            }
        }
    };
    private EdgeGestureManager mEdgeGestureManager = null;
    private int mLastEdgePositions = 0;
    private boolean mEdgeListenerActivated = false;
    private boolean mUsingEdgeGestureServiceForGestures = false;

    private void updateEdgeGestureListenerState() {
        int flags = 0;
        if (mUsingEdgeGestureServiceForGestures) {
            flags = EdgeServiceConstants.LONG_LIVING | EdgeServiceConstants.UNRESTRICTED;
            if (mStatusBar != null && !mStatusBar.isVisibleLw()) {
                flags |= EdgeGesturePosition.TOP.FLAG;
            }
            if (mNavigationBar != null && !mNavigationBar.isVisibleLw() && !isStatusBarKeyguard()) {
                if (mNavigationBarOnBottom) {
                    flags |= EdgeGesturePosition.BOTTOM.FLAG;
                } else if (mNavigationBarLeftInLandscape) {
                    flags |= EdgeGesturePosition.LEFT.FLAG;
                } else {
                    flags |= EdgeGesturePosition.RIGHT.FLAG;
                }
            }
        }
        if (mEdgeListenerActivated) {
            mEdgeGestureActivationListener.restoreListenerState();
            mEdgeListenerActivated = false;
        }
        if (flags != mLastEdgePositions) {
            mEdgeGestureManager.updateEdgeGestureActivationListener(mEdgeGestureActivationListener,
                    flags);
            mLastEdgePositions = flags;
        }
    }

    IStatusBarService getStatusBarService() {
        synchronized (mServiceAquireLock) {
            if (mStatusBarService == null) {
@@ -2186,19 +2119,6 @@ public class PhoneWindowManager implements WindowManagerPolicy {
                updateWakeGestureListenerLp();
            }

            final boolean useEdgeService = CMSettings.System.getIntForUser(resolver,
                    CMSettings.System.USE_EDGE_SERVICE_FOR_GESTURES, 0, UserHandle.USER_CURRENT) == 1;
            if (useEdgeService ^ mUsingEdgeGestureServiceForGestures && mSystemReady) {
                if (!mUsingEdgeGestureServiceForGestures && useEdgeService) {
                    mUsingEdgeGestureServiceForGestures = true;
                    mWindowManagerFuncs.unregisterPointerEventListener(mSystemGestures);
                } else if (mUsingEdgeGestureServiceForGestures && !useEdgeService) {
                    mUsingEdgeGestureServiceForGestures = false;
                    mWindowManagerFuncs.registerPointerEventListener(mSystemGestures);
                }
                updateEdgeGestureListenerState();
            }

            boolean devForceNavbar = CMSettings.Secure.getIntForUser(resolver,
                    CMSettings.Secure.DEV_FORCE_SHOW_NAVBAR, 0, UserHandle.USER_CURRENT) == 1;
            if (devForceNavbar != mDevForceNavbar) {
@@ -4029,8 +3949,6 @@ public class PhoneWindowManager implements WindowManagerPolicy {
        mNavigationBarController.adjustSystemUiVisibilityLw(mLastSystemUiFlags, visibility);
        mRecentsVisible = (visibility & View.RECENT_APPS_VISIBLE) > 0;

        updateEdgeGestureListenerState();

        // Reset any bits in mForceClearingStatusBarVisibility that
        // are now clear.
        mResettingSystemUiFlags &= visibility;
@@ -5359,7 +5277,6 @@ public class PhoneWindowManager implements WindowManagerPolicy {

        // update since mAllowLockscreenWhenOn might have changed
        updateLockScreenTimeout();
        updateEdgeGestureListenerState();
        return changes;
    }

@@ -6965,9 +6882,6 @@ public class PhoneWindowManager implements WindowManagerPolicy {
        mKeyguardDelegate = new KeyguardServiceDelegate(mContext);
        mKeyguardDelegate.onSystemReady();

        mEdgeGestureManager = EdgeGestureManager.getInstance();
        mEdgeGestureManager.setEdgeGestureActivationListener(mEdgeGestureActivationListener);

        readCameraLensCoverState();
        updateUiMode();
        boolean bindKeyguardNow;