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

Commit 3d6dffb3 authored by Tiger Huang's avatar Tiger Huang Committed by Android (Google) Code Review
Browse files

Merge changes Ida8d0153,Ia9fb857d

* changes:
  Enable mouse hovering on sides to show system bars
  Remove alt bars from DisplayPolicy
parents ec2e875d 4283157c
Loading
Loading
Loading
Loading
+0 −7
Original line number Diff line number Diff line
@@ -55,13 +55,6 @@ public interface WindowManagerPolicyConstants {
    int PRESENCE_INTERNAL = 1 << 0;
    int PRESENCE_EXTERNAL = 1 << 1;

    // Alternate bars position values
    int ALT_BAR_UNKNOWN = -1;
    int ALT_BAR_LEFT = 1 << 0;
    int ALT_BAR_RIGHT = 1 << 1;
    int ALT_BAR_BOTTOM = 1 << 2;
    int ALT_BAR_TOP = 1 << 3;

    // Navigation bar position values
    int NAV_BAR_INVALID = -1;
    int NAV_BAR_LEFT = 1 << 0;
+0 −4
Original line number Diff line number Diff line
@@ -136,10 +136,6 @@ public interface WindowManagerPolicy extends WindowManagerPolicyConstants {
    @IntDef({NAV_BAR_LEFT, NAV_BAR_RIGHT, NAV_BAR_BOTTOM})
    @interface NavigationBarPosition {}

    @Retention(SOURCE)
    @IntDef({ALT_BAR_UNKNOWN, ALT_BAR_LEFT, ALT_BAR_RIGHT, ALT_BAR_BOTTOM, ALT_BAR_TOP})
    @interface AltBarPosition {}

    /**
     * Pass this event to the user / app.  To be returned from
     * {@link #interceptKeyBeforeQueueing}.
+131 −234

File changed.

Preview size limit exceeded, changes collapsed.

+52 −13
Original line number Diff line number Diff line
@@ -78,7 +78,10 @@ class SystemGesturesPointerEventListener implements PointerEventListener {
    private int mDownPointers;
    private boolean mSwipeFireable;
    private boolean mDebugFireable;
    private boolean mMouseHoveringAtEdge;
    private boolean mMouseHoveringAtLeft;
    private boolean mMouseHoveringAtTop;
    private boolean mMouseHoveringAtRight;
    private boolean mMouseHoveringAtBottom;
    private long mLastFlingTime;

    SystemGesturesPointerEventListener(Context context, Handler handler, Callbacks callbacks) {
@@ -174,9 +177,21 @@ class SystemGesturesPointerEventListener implements PointerEventListener {
                mDebugFireable = true;
                mDownPointers = 0;
                captureDown(event, 0);
                if (mMouseHoveringAtEdge) {
                    mMouseHoveringAtEdge = false;
                    mCallbacks.onMouseLeaveFromEdge();
                if (mMouseHoveringAtLeft) {
                    mMouseHoveringAtLeft = false;
                    mCallbacks.onMouseLeaveFromLeft();
                }
                if (mMouseHoveringAtTop) {
                    mMouseHoveringAtTop = false;
                    mCallbacks.onMouseLeaveFromTop();
                }
                if (mMouseHoveringAtRight) {
                    mMouseHoveringAtRight = false;
                    mCallbacks.onMouseLeaveFromRight();
                }
                if (mMouseHoveringAtBottom) {
                    mMouseHoveringAtBottom = false;
                    mCallbacks.onMouseLeaveFromBottom();
                }
                mCallbacks.onDown();
                break;
@@ -211,16 +226,35 @@ class SystemGesturesPointerEventListener implements PointerEventListener {
                break;
            case MotionEvent.ACTION_HOVER_MOVE:
                if (event.isFromSource(InputDevice.SOURCE_MOUSE)) {
                    if (!mMouseHoveringAtEdge && event.getY() == 0) {
                    final float eventX = event.getX();
                    final float eventY = event.getY();
                    if (!mMouseHoveringAtLeft && eventX == 0) {
                        mCallbacks.onMouseHoverAtLeft();
                        mMouseHoveringAtLeft = true;
                    } else if (mMouseHoveringAtLeft && eventX > 0) {
                        mCallbacks.onMouseLeaveFromLeft();
                        mMouseHoveringAtLeft = false;
                    }
                    if (!mMouseHoveringAtTop && eventY == 0) {
                        mCallbacks.onMouseHoverAtTop();
                        mMouseHoveringAtEdge = true;
                    } else if (!mMouseHoveringAtEdge && event.getY() >= screenHeight - 1) {
                        mMouseHoveringAtTop = true;
                    } else if (mMouseHoveringAtTop && eventY > 0) {
                        mCallbacks.onMouseLeaveFromTop();
                        mMouseHoveringAtTop = false;
                    }
                    if (!mMouseHoveringAtRight && eventX >= screenWidth - 1) {
                        mCallbacks.onMouseHoverAtRight();
                        mMouseHoveringAtRight = true;
                    } else if (mMouseHoveringAtRight && eventX < screenWidth - 1) {
                        mCallbacks.onMouseLeaveFromRight();
                        mMouseHoveringAtRight = false;
                    }
                    if (!mMouseHoveringAtBottom && eventY >= screenHeight - 1) {
                        mCallbacks.onMouseHoverAtBottom();
                        mMouseHoveringAtEdge = true;
                    } else if (mMouseHoveringAtEdge
                            && (event.getY() > 0 && event.getY() < screenHeight - 1)) {
                        mCallbacks.onMouseLeaveFromEdge();
                        mMouseHoveringAtEdge = false;
                        mMouseHoveringAtBottom = true;
                    } else if (mMouseHoveringAtBottom && eventY < screenHeight - 1) {
                        mCallbacks.onMouseLeaveFromBottom();
                        mMouseHoveringAtBottom = false;
                    }
                }
                break;
@@ -373,9 +407,14 @@ class SystemGesturesPointerEventListener implements PointerEventListener {
        void onFling(int durationMs);
        void onDown();
        void onUpOrCancel();
        void onMouseHoverAtLeft();
        void onMouseHoverAtTop();
        void onMouseHoverAtRight();
        void onMouseHoverAtBottom();
        void onMouseLeaveFromEdge();
        void onMouseLeaveFromLeft();
        void onMouseLeaveFromTop();
        void onMouseLeaveFromRight();
        void onMouseLeaveFromBottom();
        void onDebug();
    }
}