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

Commit 73c51325 authored by Siarhei Vishniakou's avatar Siarhei Vishniakou
Browse files

Add ALLOW_SLIPPERY_TOUCHES to make StatusBarTouchController slippery am: 918776ee

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16510921

Bug: 212491379
Change-Id: I26d89a46e181f39f95a5e6385be1760fac37437e
Merged-In: I8d05fa3663687b5382a59b0d47cdac404844c3b7
parents 8d398a88 918776ee
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -30,6 +30,7 @@
    <uses-permission android:name="android.permission.CONTROL_REMOTE_APP_TRANSITION_ANIMATIONS" />
    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />
    <uses-permission android:name="android.permission.ALLOW_SLIPPERY_TOUCHES"/>
    <uses-permission android:name="${packageName}.permission.HOTSEAT_EDU" />

    <application
+10 −11
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ 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.MotionEvent.ACTION_CANCEL;
import static android.view.WindowManager.LayoutParams.FLAG_SLIPPERY;
import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_SWIPE_DOWN_WORKSPACE_NOTISHADE_OPEN;

import android.graphics.PointF;
@@ -49,17 +50,6 @@ public class StatusBarTouchController implements TouchController {

    private static final String TAG = "StatusBarController";

    /**
     * Window flag: Enable touches to slide out of a window into neighboring
     * windows in mid-gesture instead of being captured for the duration of
     * the gesture.
     *
     * This flag changes the behavior of touch focus for this window only.
     * Touches can slide out of the window but they cannot necessarily slide
     * back in (unless the other window with touch focus permits it).
     */
    private static final int FLAG_SLIPPERY = 0x20000000;

    private final Launcher mLauncher;
    private final SystemUiProxy mSystemUiProxy;
    private final float mTouchSlop;
@@ -145,6 +135,15 @@ public class StatusBarTouchController implements TouchController {
        return true;
    }

    /**
     * FLAG_SLIPPERY enables touches to slide out of a window into neighboring
     * windows in mid-gesture instead of being captured for the duration of
     * the gesture.
     *
     * This flag changes the behavior of touch focus for this window only.
     * Touches can slide out of the window but they cannot necessarily slide
     * back in (unless the other window with touch focus permits it).
     */
    private void setWindowSlippery(boolean enable) {
        Window w = mLauncher.getWindow();
        WindowManager.LayoutParams wlp = w.getAttributes();