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

Commit e0380381 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Add event tracking to the gesture navigation tutorial." into tm-dev

parents b66fc8b1 b82d9459
Loading
Loading
Loading
Loading
+18 −0
Original line number Diff line number Diff line
@@ -15,13 +15,21 @@
 */
package com.android.quickstep.interaction;

import android.content.SharedPreferences;
import android.view.MotionEvent;
import android.view.View;

import com.android.launcher3.logging.StatsLogManager;
import com.android.quickstep.interaction.TutorialController.TutorialType;

/** Shows the Home gesture interactive tutorial. */
public class AssistantGestureTutorialFragment extends TutorialFragment {

    protected AssistantGestureTutorialFragment(
            SharedPreferences sharedPrefs, StatsLogManager statsLogManager) {
        super(sharedPrefs, statsLogManager);
    }

    @Override
    TutorialController createController(TutorialType type) {
        return new AssistantGestureTutorialController(this, type);
@@ -39,4 +47,14 @@ public class AssistantGestureTutorialFragment extends TutorialFragment {
        }
        return super.onTouch(view, motionEvent);
    }

    @Override
    void logTutorialStepShown() {
        // No-Op: tutorial step not currently shown to users
    }

    @Override
    void logTutorialStepCompleted() {
        // No-Op: tutorial step not currently shown to users
    }
}
+19 −0
Original line number Diff line number Diff line
@@ -19,12 +19,14 @@ import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
import android.animation.AnimatorSet;
import android.animation.ObjectAnimator;
import android.content.SharedPreferences;
import android.view.MotionEvent;
import android.view.View;

import androidx.annotation.Nullable;

import com.android.launcher3.R;
import com.android.launcher3.logging.StatsLogManager;
import com.android.quickstep.interaction.TutorialController.TutorialType;

import java.util.ArrayList;
@@ -32,6 +34,11 @@ import java.util.ArrayList;
/** Shows the Back gesture interactive tutorial. */
public class BackGestureTutorialFragment extends TutorialFragment {

    protected BackGestureTutorialFragment(
            SharedPreferences sharedPrefs, StatsLogManager statsLogManager) {
        super(sharedPrefs, statsLogManager);
    }

    @Nullable
    @Override
    Integer getEdgeAnimationResId() {
@@ -117,4 +124,16 @@ public class BackGestureTutorialFragment extends TutorialFragment {
        }
        return super.onTouch(view, motionEvent);
    }

    @Override
    void logTutorialStepShown() {
        mStatsLogManager.logger().log(
                StatsLogManager.LauncherEvent.LAUNCHER_GESTURE_TUTORIAL_BACK_STEP_SHOWN);
    }

    @Override
    void logTutorialStepCompleted() {
        mStatsLogManager.logger().log(
                StatsLogManager.LauncherEvent.LAUNCHER_GESTURE_TUTORIAL_BACK_STEP_COMPLETED);
    }
}
+15 −9
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@
 */
package com.android.quickstep.interaction;

import android.content.SharedPreferences;
import android.graphics.Color;
import android.graphics.Rect;
import android.os.Bundle;
@@ -28,6 +29,8 @@ import androidx.annotation.NonNull;
import androidx.fragment.app.FragmentActivity;

import com.android.launcher3.R;
import com.android.launcher3.Utilities;
import com.android.launcher3.logging.StatsLogManager;
import com.android.quickstep.interaction.TutorialController.TutorialType;

import java.util.List;
@@ -46,17 +49,26 @@ public class GestureSandboxActivity extends FragmentActivity {
    private int mCurrentStep;
    private int mNumSteps;

    private SharedPreferences mSharedPrefs;
    private StatsLogManager mStatsLogManager;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.gesture_tutorial_activity);

        mSharedPrefs = Utilities.getPrefs(this);
        mStatsLogManager = StatsLogManager.newInstance(getApplicationContext());

        Bundle args = savedInstanceState == null ? getIntent().getExtras() : savedInstanceState;
        mTutorialSteps = getTutorialSteps(args);
        mCurrentTutorialStep = mTutorialSteps[mCurrentStep - 1];
        mFragment = TutorialFragment.newInstance(
                mCurrentTutorialStep, args.getBoolean(KEY_GESTURE_COMPLETE, false));
                mCurrentTutorialStep,
                args.getBoolean(KEY_GESTURE_COMPLETE, false),
                mSharedPrefs,
                mStatsLogManager);
        getSupportFragmentManager().beginTransaction()
                .add(R.id.gesture_tutorial_fragment_container, mFragment)
                .commit();
@@ -104,13 +116,6 @@ public class GestureSandboxActivity extends FragmentActivity {
        return mNumSteps;
    }

    /**
     * Closes the tutorial and this activity.
     */
    public void closeTutorial() {
        mFragment.closeTutorial();
    }

    /**
     * Replaces the current TutorialFragment, continuing to the next tutorial step if there is one.
     *
@@ -122,7 +127,8 @@ public class GestureSandboxActivity extends FragmentActivity {
            return;
        }
        mCurrentTutorialStep = mTutorialSteps[mCurrentStep];
        mFragment = TutorialFragment.newInstance(mCurrentTutorialStep, false);
        mFragment = TutorialFragment.newInstance(
                mCurrentTutorialStep, /* gestureComplete= */ false, mSharedPrefs, mStatsLogManager);
        getSupportFragmentManager().beginTransaction()
                .replace(R.id.gesture_tutorial_fragment_container, mFragment)
                .runOnCommit(() -> mFragment.onAttachedToWindow())
+19 −0
Original line number Diff line number Diff line
@@ -18,12 +18,14 @@ package com.android.quickstep.interaction;
import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
import android.animation.AnimatorSet;
import android.content.SharedPreferences;
import android.view.MotionEvent;
import android.view.View;

import androidx.annotation.Nullable;

import com.android.launcher3.R;
import com.android.launcher3.logging.StatsLogManager;
import com.android.quickstep.interaction.TutorialController.TutorialType;

import java.util.ArrayList;
@@ -31,6 +33,11 @@ import java.util.ArrayList;
/** Shows the Home gesture interactive tutorial. */
public class HomeGestureTutorialFragment extends TutorialFragment {

    protected HomeGestureTutorialFragment(
            SharedPreferences sharedPrefs, StatsLogManager statsLogManager) {
        super(sharedPrefs, statsLogManager);
    }

    @Nullable
    @Override
    Integer getEdgeAnimationResId() {
@@ -99,4 +106,16 @@ public class HomeGestureTutorialFragment extends TutorialFragment {
        releaseFeedbackAnimation();
        return super.onTouch(view, motionEvent);
    }

    @Override
    void logTutorialStepShown() {
        mStatsLogManager.logger().log(
                StatsLogManager.LauncherEvent.LAUNCHER_GESTURE_TUTORIAL_HOME_STEP_SHOWN);
    }

    @Override
    void logTutorialStepCompleted() {
        mStatsLogManager.logger().log(
                StatsLogManager.LauncherEvent.LAUNCHER_GESTURE_TUTORIAL_HOME_STEP_COMPLETED);
    }
}
+19 −0
Original line number Diff line number Diff line
@@ -18,12 +18,14 @@ package com.android.quickstep.interaction;
import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
import android.animation.AnimatorSet;
import android.content.SharedPreferences;
import android.view.MotionEvent;
import android.view.View;

import androidx.annotation.Nullable;

import com.android.launcher3.R;
import com.android.launcher3.logging.StatsLogManager;
import com.android.quickstep.interaction.TutorialController.TutorialType;

import java.util.ArrayList;
@@ -31,6 +33,11 @@ import java.util.ArrayList;
/** Shows the Overview gesture interactive tutorial. */
public class OverviewGestureTutorialFragment extends TutorialFragment {

    protected OverviewGestureTutorialFragment(
            SharedPreferences sharedPrefs, StatsLogManager statsLogManager) {
        super(sharedPrefs, statsLogManager);
    }

    @Nullable
    @Override
    Integer getEdgeAnimationResId() {
@@ -111,4 +118,16 @@ public class OverviewGestureTutorialFragment extends TutorialFragment {
        releaseFeedbackAnimation();
        return super.onTouch(view, motionEvent);
    }

    @Override
    void logTutorialStepShown() {
        mStatsLogManager.logger().log(
                StatsLogManager.LauncherEvent.LAUNCHER_GESTURE_TUTORIAL_OVERVIEW_STEP_SHOWN);
    }

    @Override
    void logTutorialStepCompleted() {
        mStatsLogManager.logger().log(
                StatsLogManager.LauncherEvent.LAUNCHER_GESTURE_TUTORIAL_OVERVIEW_STEP_COMPLETED);
    }
}
Loading