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

This commit is contained in:
TreeHugger Robot
2021-05-27 03:20:56 +00:00
committed by Android (Google) Code Review
2 changed files with 11 additions and 35 deletions

View File

@@ -16,6 +16,8 @@
package com.android.settingslib.collapsingtoolbar; package com.android.settingslib.collapsingtoolbar;
import static com.android.settingslib.transition.SettingsTransitionHelper.EXTRA_PAGE_TRANSITION_TYPE;
import android.app.ActivityOptions; import android.app.ActivityOptions;
import android.content.Intent; import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
@@ -28,6 +30,7 @@ import androidx.core.os.BuildCompat;
import androidx.fragment.app.FragmentActivity; import androidx.fragment.app.FragmentActivity;
import com.android.settingslib.transition.SettingsTransitionHelper; 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 * 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 { public abstract class SettingsTransitionActivity extends FragmentActivity {
private static final String TAG = "SettingsTransitionActivity"; private static final String TAG = "SettingsTransitionActivity";
private static final int DEFAULT_REQUEST = -1;
private Toolbar mToolbar; private Toolbar mToolbar;
@@ -57,46 +59,18 @@ public abstract class SettingsTransitionActivity extends FragmentActivity {
mToolbar = toolbar; 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 @Override
public void startActivityForResult(Intent intent, int requestCode, @Nullable Bundle options) { 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); super.startActivityForResult(intent, requestCode, options);
return; return;
} }
super.startActivityForResult(intent, requestCode, createActivityOptionsBundleForTransition( super.startActivityForResult(intent, requestCode,
options)); createActivityOptionsBundleForTransition(options));
} }
protected boolean isSettingsTransitionEnabled() { protected boolean isSettingsTransitionEnabled() {

View File

@@ -55,6 +55,8 @@ public class SettingsTransitionHelper {
int TRANSITION_FADE = 2; int TRANSITION_FADE = 2;
} }
public static final String EXTRA_PAGE_TRANSITION_TYPE = "page_transition_type";
private static final String TAG = "SettingsTransitionHelper"; private static final String TAG = "SettingsTransitionHelper";
private static final long DURATION = 450L; private static final long DURATION = 450L;
private static final float FADE_THROUGH_THRESHOLD = 0.22F; private static final float FADE_THROUGH_THRESHOLD = 0.22F;