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

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

Merge "Provide a way to suppress page transitions." into sc-dev

parents f2dba2bc abf096f2
Loading
Loading
Loading
Loading
+9 −35
Original line number Diff line number Diff line
@@ -16,6 +16,8 @@

package com.android.settingslib.collapsingtoolbar;

import static com.android.settingslib.transition.SettingsTransitionHelper.EXTRA_PAGE_TRANSITION_TYPE;

import android.app.ActivityOptions;
import android.content.Intent;
import android.os.Bundle;
@@ -28,6 +30,7 @@ import androidx.core.os.BuildCompat;
import androidx.fragment.app.FragmentActivity;

import com.android.settingslib.transition.SettingsTransitionHelper;
import com.android.settingslib.transition.SettingsTransitionHelper.TransitionType;

/**
 * A base Activity for Settings-specific page transition. Activities extending it will get
@@ -35,7 +38,6 @@ import com.android.settingslib.transition.SettingsTransitionHelper;
 */
public abstract class SettingsTransitionActivity extends FragmentActivity {
    private static final String TAG = "SettingsTransitionActivity";
    private static final int DEFAULT_REQUEST = -1;

    private Toolbar mToolbar;

@@ -57,46 +59,18 @@ public abstract class SettingsTransitionActivity extends FragmentActivity {
        mToolbar = toolbar;
    }

    @Override
    public void startActivity(Intent intent) {
        if (!isSettingsTransitionEnabled()) {
            super.startActivity(intent);
            return;
        }

        super.startActivity(intent, createActivityOptionsBundleForTransition(null));
    }

    @Override
    public void startActivity(Intent intent, @Nullable Bundle options) {
        if (!isSettingsTransitionEnabled()) {
            super.startActivity(intent, options);
            return;
        }

        super.startActivity(intent, createActivityOptionsBundleForTransition(options));
    }

    @Override
    public void startActivityForResult(Intent intent, int requestCode) {
        if (!isSettingsTransitionEnabled() || requestCode == DEFAULT_REQUEST) {
            super.startActivityForResult(intent, requestCode);
            return;
        }

        super.startActivityForResult(intent, requestCode, createActivityOptionsBundleForTransition(
                null));
    }

    @Override
    public void startActivityForResult(Intent intent, int requestCode, @Nullable Bundle options) {
        if (!isSettingsTransitionEnabled() || requestCode == DEFAULT_REQUEST) {
        final int transitionType = intent.getIntExtra(EXTRA_PAGE_TRANSITION_TYPE,
                TransitionType.TRANSITION_SHARED_AXIS);
        if (!isSettingsTransitionEnabled() ||
                transitionType == TransitionType.TRANSITION_NONE) {
            super.startActivityForResult(intent, requestCode, options);
            return;
        }

        super.startActivityForResult(intent, requestCode, createActivityOptionsBundleForTransition(
                options));
        super.startActivityForResult(intent, requestCode,
                createActivityOptionsBundleForTransition(options));
    }

    protected boolean isSettingsTransitionEnabled() {
+2 −0
Original line number Diff line number Diff line
@@ -55,6 +55,8 @@ public class SettingsTransitionHelper {
        int TRANSITION_FADE = 2;
    }

    public static final String EXTRA_PAGE_TRANSITION_TYPE = "page_transition_type";

    private static final String TAG = "SettingsTransitionHelper";
    private static final long DURATION = 450L;
    private static final float FADE_THROUGH_THRESHOLD = 0.22F;