From 0d22b079c5508709ec5ce9804b3b410db68fae11 Mon Sep 17 00:00:00 2001 From: Matthew Ng Date: Thu, 8 Dec 2016 15:59:26 -0800 Subject: [PATCH] Cancels out long press on recents button when viewing home screen Cancel the long press when viewing home (launcher) to disable the double vibration that should occur when in multiwindow mode. Fixes: 29927464 Test: manual - at home and multiwindow to long press recents button Change-Id: Ic9c8a5096ce9f30fc1265774ebb82c1356b1221b --- .../systemui/statusbar/phone/PhoneStatusBar.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java index b2dae50262b12..194bb9e513d20 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java @@ -146,10 +146,12 @@ import com.android.systemui.plugins.qs.QS.ActivityStarter; import com.android.systemui.plugins.qs.QS.BaseStatusBarHeader; import com.android.systemui.qs.QSFragment; import com.android.systemui.qs.QSPanel; +import com.android.systemui.recents.Recents; import com.android.systemui.recents.ScreenPinningRequest; import com.android.systemui.recents.events.EventBus; import com.android.systemui.recents.events.activity.AppTransitionFinishedEvent; import com.android.systemui.recents.events.activity.UndockingTaskEvent; +import com.android.systemui.recents.misc.SystemServicesProxy; import com.android.systemui.stackdivider.Divider; import com.android.systemui.stackdivider.WindowManagerProxy; import com.android.systemui.statusbar.ActivatableNotificationView; @@ -1360,6 +1362,14 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, return false; } + ActivityManager.RunningTaskInfo runningTask = + Recents.getSystemServices().getRunningTask(); + boolean isRunningTaskInHomeOrRecentsStack = runningTask != null && + ActivityManager.StackId.isHomeOrRecentsStack(runningTask.stackId); + if (isRunningTaskInHomeOrRecentsStack) { + return false; + } + toggleSplitScreenMode(MetricsEvent.ACTION_WINDOW_DOCK_LONGPRESS, MetricsEvent.ACTION_WINDOW_UNDOCK_LONGPRESS); return true;