Loading packages/SystemUI/src/com/android/systemui/shortcut/ShortcutKeyDispatcher.java +17 −6 Original line number Diff line number Diff line Loading @@ -25,6 +25,8 @@ import android.content.Context; import android.content.pm.ServiceInfo; import android.content.res.Configuration; import android.os.RemoteException; import android.os.UserHandle; import android.util.ArraySet; import android.util.DisplayMetrics; import android.util.Log; import android.view.IWindowManager; Loading @@ -39,6 +41,7 @@ import com.android.settingslib.accessibility.AccessibilityUtils; import com.android.systemui.R; import com.android.systemui.SystemUI; import com.android.systemui.recents.Recents; import com.android.systemui.recents.misc.SystemServicesProxy; import com.android.systemui.stackdivider.Divider; import com.android.systemui.stackdivider.DividerView; import com.android.systemui.statusbar.phone.NavigationBarGestureHelper; Loading Loading @@ -102,8 +105,16 @@ public class ShortcutKeyDispatcher extends SystemUI int dockMode = (shortcutCode == SC_DOCK_LEFT) ? ActivityManager.DOCKED_STACK_CREATE_MODE_TOP_OR_LEFT : ActivityManager.DOCKED_STACK_CREATE_MODE_BOTTOM_OR_RIGHT; recents.dockTopTask(NavigationBarGestureHelper.DRAG_MODE_NONE, dockMode, null, MetricsEvent.WINDOW_DOCK_SHORTCUTS); List<ActivityManager.RecentTaskInfo> taskList = SystemServicesProxy.getInstance(mContext).getRecentTasks(1, UserHandle.USER_CURRENT, false, new ArraySet<>()); recents.showRecents( false /* triggeredFromAltTab */, false /* fromHome */); if (!taskList.isEmpty()) { SystemServicesProxy.getInstance(mContext).startTaskInDockedMode( taskList.get(0).id, dockMode); } } else { // If there is already a docked window, we respond by resizing the docking pane. DividerView dividerView = getComponent(Divider.class).getView(); Loading @@ -111,11 +122,11 @@ public class ShortcutKeyDispatcher extends SystemUI int dividerPosition = dividerView.getCurrentPosition(); DividerSnapAlgorithm.SnapTarget currentTarget = snapAlgorithm.calculateNonDismissingSnapTarget(dividerPosition); int increment = (shortcutCode == SC_DOCK_LEFT) ? -1 : 1; DividerSnapAlgorithm.SnapTarget target = snapAlgorithm.cycleNonDismissTarget( currentTarget, increment); DividerSnapAlgorithm.SnapTarget target = (shortcutCode == SC_DOCK_LEFT) ? snapAlgorithm.getPreviousTarget(currentTarget) : snapAlgorithm.getNextTarget(currentTarget); dividerView.startDragging(true /* animate */, false /* touching */); dividerView.stopDragging(target.position, 0f, true /* avoidDismissStart */, dividerView.stopDragging(target.position, 0f, false /* avoidDismissStart */, true /* logMetrics */); } } catch (RemoteException e) { Loading Loading
packages/SystemUI/src/com/android/systemui/shortcut/ShortcutKeyDispatcher.java +17 −6 Original line number Diff line number Diff line Loading @@ -25,6 +25,8 @@ import android.content.Context; import android.content.pm.ServiceInfo; import android.content.res.Configuration; import android.os.RemoteException; import android.os.UserHandle; import android.util.ArraySet; import android.util.DisplayMetrics; import android.util.Log; import android.view.IWindowManager; Loading @@ -39,6 +41,7 @@ import com.android.settingslib.accessibility.AccessibilityUtils; import com.android.systemui.R; import com.android.systemui.SystemUI; import com.android.systemui.recents.Recents; import com.android.systemui.recents.misc.SystemServicesProxy; import com.android.systemui.stackdivider.Divider; import com.android.systemui.stackdivider.DividerView; import com.android.systemui.statusbar.phone.NavigationBarGestureHelper; Loading Loading @@ -102,8 +105,16 @@ public class ShortcutKeyDispatcher extends SystemUI int dockMode = (shortcutCode == SC_DOCK_LEFT) ? ActivityManager.DOCKED_STACK_CREATE_MODE_TOP_OR_LEFT : ActivityManager.DOCKED_STACK_CREATE_MODE_BOTTOM_OR_RIGHT; recents.dockTopTask(NavigationBarGestureHelper.DRAG_MODE_NONE, dockMode, null, MetricsEvent.WINDOW_DOCK_SHORTCUTS); List<ActivityManager.RecentTaskInfo> taskList = SystemServicesProxy.getInstance(mContext).getRecentTasks(1, UserHandle.USER_CURRENT, false, new ArraySet<>()); recents.showRecents( false /* triggeredFromAltTab */, false /* fromHome */); if (!taskList.isEmpty()) { SystemServicesProxy.getInstance(mContext).startTaskInDockedMode( taskList.get(0).id, dockMode); } } else { // If there is already a docked window, we respond by resizing the docking pane. DividerView dividerView = getComponent(Divider.class).getView(); Loading @@ -111,11 +122,11 @@ public class ShortcutKeyDispatcher extends SystemUI int dividerPosition = dividerView.getCurrentPosition(); DividerSnapAlgorithm.SnapTarget currentTarget = snapAlgorithm.calculateNonDismissingSnapTarget(dividerPosition); int increment = (shortcutCode == SC_DOCK_LEFT) ? -1 : 1; DividerSnapAlgorithm.SnapTarget target = snapAlgorithm.cycleNonDismissTarget( currentTarget, increment); DividerSnapAlgorithm.SnapTarget target = (shortcutCode == SC_DOCK_LEFT) ? snapAlgorithm.getPreviousTarget(currentTarget) : snapAlgorithm.getNextTarget(currentTarget); dividerView.startDragging(true /* animate */, false /* touching */); dividerView.stopDragging(target.position, 0f, true /* avoidDismissStart */, dividerView.stopDragging(target.position, 0f, false /* avoidDismissStart */, true /* logMetrics */); } } catch (RemoteException e) { Loading