From e8b19dcf9de48e7e1c1803423ce174dbb0eb1af7 Mon Sep 17 00:00:00 2001 From: Tracy Zhou Date: Fri, 14 May 2021 16:53:49 +0000 Subject: [PATCH] Revert "Allow pulling down the status bar in visual immersive mode" This reverts commit 9d14dbe89dcda57255afc30bcf9b65bc52e8bdbe. Reason for revert: Likely broke tests Bug: 188176340 Change-Id: I0c786e792322f7350b3bb16018ccb39e77a276a2 --- .../statusbar/phone/StatusBarWindowView.java | 28 ------------------- .../com/android/server/wm/DisplayPolicy.java | 9 ------ 2 files changed, 37 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarWindowView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarWindowView.java index 8465889876b42..779ba1c6ac6db 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarWindowView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarWindowView.java @@ -16,9 +16,6 @@ package com.android.systemui.statusbar.phone; -import static android.view.MotionEvent.ACTION_DOWN; -import static android.view.MotionEvent.ACTION_MOVE; -import static android.view.MotionEvent.ACTION_UP; import static android.view.WindowInsets.Type.systemBars; import static com.android.systemui.ScreenDecorations.DisplayCutoutView.boundsFromDirection; @@ -32,7 +29,6 @@ import android.util.Pair; import android.view.Display; import android.view.DisplayCutout; import android.view.Gravity; -import android.view.MotionEvent; import android.view.View; import android.view.WindowInsets; import android.widget.FrameLayout; @@ -53,8 +49,6 @@ public class StatusBarWindowView extends FrameLayout { private int mRightInset = 0; private int mTopInset = 0; - private float mTouchDownY = 0; - public StatusBarWindowView(Context context, AttributeSet attrs) { super(context, attrs); } @@ -73,28 +67,6 @@ public class StatusBarWindowView extends FrameLayout { return windowInsets; } - /** - * This is specifically for pulling down the status bar as a consistent motion in the visual - * immersive mode. In the visual immersive mode, after the system detects a system gesture - * motion from the top, we show permanent bars, and then forward the touch events from the - * focused window to the status bar window. However, since the first relayed event is out of - * bound of the status bar view, in order for the touch event to be correctly dispatched down, - * we jot down the position Y of the initial touch down event, offset it to 0 in the y-axis, - * and calculate the movement based on first touch down position. - */ - @Override - public boolean dispatchTouchEvent(MotionEvent ev) { - if (ev.getAction() == ACTION_DOWN && ev.getRawY() > getHeight()) { - mTouchDownY = ev.getRawY(); - ev.setLocation(ev.getRawX(), mTopInset); - } else if (ev.getAction() == ACTION_MOVE && mTouchDownY != 0) { - ev.setLocation(ev.getRawX(), mTopInset + ev.getRawY() - mTouchDownY); - } else if (ev.getAction() == ACTION_UP) { - mTouchDownY = 0; - } - return super.dispatchTouchEvent(ev); - } - private void applyMargins() { final int count = getChildCount(); for (int i = 0; i < count; i++) { diff --git a/services/core/java/com/android/server/wm/DisplayPolicy.java b/services/core/java/com/android/server/wm/DisplayPolicy.java index dc6c55029768d..30f69dd79f5e2 100644 --- a/services/core/java/com/android/server/wm/DisplayPolicy.java +++ b/services/core/java/com/android/server/wm/DisplayPolicy.java @@ -2423,15 +2423,6 @@ public class DisplayPolicy { } else { // Restore visibilities and positions of system bars. controlTarget.showInsets(Type.statusBars() | Type.navigationBars(), false); - // To further allow the pull-down-from-the-top gesture to pull down the notification - // shade as a consistent motion, we reroute the touch events here from the currently - // touched window to the status bar after making it visible. - if (swipeTarget == mStatusBar) { - final boolean transferred = mStatusBar.transferTouch(); - if (!transferred) { - Slog.i(TAG, "Could not transfer touch to the status bar"); - } - } } mImmersiveModeConfirmation.confirmCurrentPrompt(); }