Merge "Logging Square button presses opening Recents" into ub-launcher3-edmonton
This commit is contained in:
commit
3c25046da8
|
@ -90,6 +90,7 @@ enum ContainerType {
|
|||
TASKSWITCHER = 12; // Recents UI Container (QuickStep)
|
||||
APP = 13; // Foreground activity is another app (QuickStep)
|
||||
TIP = 14; // Onboarding texts (QuickStep)
|
||||
SIDELOADED_LAUNCHER = 15;
|
||||
}
|
||||
|
||||
// Used to define what type of control a Target would represent.
|
||||
|
@ -153,6 +154,7 @@ message Action {
|
|||
CANCEL = 3; // Indicates that a confirmation screen was cancelled
|
||||
CONFIRM = 4; // Indicates thata confirmation screen was accepted
|
||||
STOP = 5; // Indicates onStop() was called (screen time out, power off)
|
||||
RECENTS_BUTTON = 6; // Indicates that Recents button was pressed
|
||||
}
|
||||
|
||||
optional Type type = 1;
|
||||
|
|
|
@ -48,6 +48,7 @@ import com.android.launcher3.allapps.AllAppsTransitionController;
|
|||
import com.android.launcher3.allapps.DiscoveryBounce;
|
||||
import com.android.launcher3.anim.AnimatorPlaybackController;
|
||||
import com.android.launcher3.dragndrop.DragLayer;
|
||||
import com.android.launcher3.userevent.nano.LauncherLogProto;
|
||||
import com.android.launcher3.util.MultiValueAlpha.AlphaProperty;
|
||||
import com.android.quickstep.util.LayoutUtils;
|
||||
import com.android.quickstep.util.RemoteAnimationProvider;
|
||||
|
@ -99,7 +100,7 @@ public interface ActivityControlHelper<T extends BaseDraggingActivity> {
|
|||
RecentsView getVisibleRecentsView();
|
||||
|
||||
@UiThread
|
||||
boolean switchToRecentsIfVisible();
|
||||
boolean switchToRecentsIfVisible(boolean fromRecentsButton);
|
||||
|
||||
Rect getOverviewWindowBounds(Rect homeBounds, RemoteAnimationTargetCompat target);
|
||||
|
||||
|
@ -120,6 +121,11 @@ public interface ActivityControlHelper<T extends BaseDraggingActivity> {
|
|||
*/
|
||||
LongSwipeHelper getLongSwipeController(T activity, RemoteAnimationTargetSet targetSet);
|
||||
|
||||
/**
|
||||
* Used for containerType in {@link com.android.launcher3.logging.UserEventDispatcher}
|
||||
*/
|
||||
int getContainerType();
|
||||
|
||||
class LauncherActivityControllerHelper implements ActivityControlHelper<Launcher> {
|
||||
|
||||
@Override
|
||||
|
@ -277,9 +283,15 @@ public interface ActivityControlHelper<T extends BaseDraggingActivity> {
|
|||
}
|
||||
|
||||
@Override
|
||||
public boolean switchToRecentsIfVisible() {
|
||||
public boolean switchToRecentsIfVisible(boolean fromRecentsButton) {
|
||||
Launcher launcher = getVisibleLaucher();
|
||||
if (launcher != null) {
|
||||
if (fromRecentsButton) {
|
||||
launcher.getUserEventDispatcher().logActionCommand(
|
||||
LauncherLogProto.Action.Command.RECENTS_BUTTON,
|
||||
getContainerType(),
|
||||
LauncherLogProto.ContainerType.TASKSWITCHER);
|
||||
}
|
||||
launcher.getStateManager().goToState(OVERVIEW);
|
||||
return true;
|
||||
}
|
||||
|
@ -319,6 +331,13 @@ public interface ActivityControlHelper<T extends BaseDraggingActivity> {
|
|||
public AlphaProperty getAlphaProperty(Launcher activity) {
|
||||
return activity.getDragLayer().getAlphaProperty(DragLayer.ALPHA_INDEX_SWIPE_UP);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getContainerType() {
|
||||
final Launcher launcher = getVisibleLaucher();
|
||||
return launcher != null ? launcher.getStateManager().getState().containerType
|
||||
: LauncherLogProto.ContainerType.APP;
|
||||
}
|
||||
}
|
||||
|
||||
class FallbackActivityControllerHelper implements ActivityControlHelper<RecentsActivity> {
|
||||
|
@ -457,7 +476,7 @@ public interface ActivityControlHelper<T extends BaseDraggingActivity> {
|
|||
}
|
||||
|
||||
@Override
|
||||
public boolean switchToRecentsIfVisible() {
|
||||
public boolean switchToRecentsIfVisible(boolean fromRecentsButton) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -495,6 +514,10 @@ public interface ActivityControlHelper<T extends BaseDraggingActivity> {
|
|||
return activity.getDragLayer().getAlphaProperty(0);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getContainerType() {
|
||||
return LauncherLogProto.ContainerType.SIDELOADED_LAUNCHER;
|
||||
}
|
||||
}
|
||||
|
||||
interface LayoutListener {
|
||||
|
|
|
@ -52,6 +52,8 @@ import com.android.launcher3.InvariantDeviceProfile;
|
|||
import com.android.launcher3.MainThreadExecutor;
|
||||
import com.android.launcher3.anim.AnimationSuccessListener;
|
||||
import com.android.launcher3.logging.UserEventDispatcher;
|
||||
import com.android.launcher3.userevent.nano.LauncherLogProto.Action;
|
||||
import com.android.launcher3.userevent.nano.LauncherLogProto.ContainerType;
|
||||
import com.android.quickstep.ActivityControlHelper.ActivityInitListener;
|
||||
import com.android.quickstep.ActivityControlHelper.AnimationFactory;
|
||||
import com.android.quickstep.ActivityControlHelper.FallbackActivityControllerHelper;
|
||||
|
@ -224,6 +226,7 @@ public class OverviewCommandHelper {
|
|||
private T mActivity;
|
||||
private RecentsView mRecentsView;
|
||||
private final long mToggleClickedTime = SystemClock.uptimeMillis();
|
||||
private boolean mUserEventLogged;
|
||||
|
||||
public RecentsActivityCommand() {
|
||||
mHelper = getActivityControlHelper();
|
||||
|
@ -241,7 +244,7 @@ public class OverviewCommandHelper {
|
|||
|
||||
if (!handleCommand(elapsedTime)) {
|
||||
// Start overview
|
||||
if (!mHelper.switchToRecentsIfVisible()) {
|
||||
if (!mHelper.switchToRecentsIfVisible(true)) {
|
||||
mListener = mHelper.createActivityInitListener(this::onActivityReady);
|
||||
mListener.registerAndStartActivity(overviewIntent, this::createWindowAnimation,
|
||||
mContext, mMainThreadExecutor.getHandler(), RECENTS_LAUNCH_DURATION);
|
||||
|
@ -284,6 +287,11 @@ public class OverviewCommandHelper {
|
|||
mActivity = activity;
|
||||
mRecentsView = mActivity.getOverviewPanel();
|
||||
mRecentsView.setRunningTaskIconScaledDown(true /* isScaledDown */, false /* animate */);
|
||||
if (!mUserEventLogged) {
|
||||
activity.getUserEventDispatcher().logActionCommand(Action.Command.RECENTS_BUTTON,
|
||||
mHelper.getContainerType(), ContainerType.TASKSWITCHER);
|
||||
mUserEventLogged = true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
|
@ -133,7 +133,7 @@ public class QuickScrubController implements OnAlarmListener {
|
|||
*/
|
||||
private void breakOutOfQuickScrub() {
|
||||
if (mRecentsView.getChildCount() == 0 || mActivityControlHelper == null
|
||||
|| !mActivityControlHelper.switchToRecentsIfVisible()) {
|
||||
|| !mActivityControlHelper.switchToRecentsIfVisible(false)) {
|
||||
mActivity.onBackPressed();
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue