Merge "Provide a way to suppress page transitions." into sc-dev am: 631e7eb024

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14730695

Change-Id: Ib7064e7b399ac80e59465bd84c210a954626bb01
This commit is contained in:
TreeHugger Robot
2021-05-27 03:43:11 +00:00
committed by Automerger Merge Worker
2 changed files with 11 additions and 35 deletions

View File

@@ -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() {

View File

@@ -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;