Merge "Revert transition codes from the base activity" into sc-dev

This commit is contained in:
TreeHugger Robot
2021-06-22 14:11:28 +00:00
committed by Android (Google) Code Review
4 changed files with 1 additions and 85 deletions

View File

@@ -77,7 +77,6 @@ import android.provider.ContactsContract.Contacts;
import android.provider.ContactsContract.Data; import android.provider.ContactsContract.Data;
import android.provider.ContactsContract.Profile; import android.provider.ContactsContract.Profile;
import android.provider.ContactsContract.RawContacts; import android.provider.ContactsContract.RawContacts;
import android.provider.Settings;
import android.telephony.SubscriptionManager; import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager; import android.telephony.TelephonyManager;
import android.text.Spannable; import android.text.Spannable;
@@ -164,9 +163,6 @@ public final class Utils extends com.android.settingslib.Utils {
public static final String PROPERTY_HIBERNATION_TARGETS_PRE_S_APPS = public static final String PROPERTY_HIBERNATION_TARGETS_PRE_S_APPS =
"app_hibernation_targets_pre_s_apps"; "app_hibernation_targets_pre_s_apps";
/** Whether or not Settings Shared Axis transition is enabled */
public static final String SETTINGS_SHARED_AXIS_ENABLED = "settings_shared_axis_enabled";
/** /**
* Finds a matching activity for a preference's intent. If a matching * Finds a matching activity for a preference's intent. If a matching
* activity is not found, it will remove the preference. * activity is not found, it will remove the preference.
@@ -1225,9 +1221,4 @@ public final class Utils extends com.android.settingslib.Utils {
public static boolean isProviderModelEnabled(Context context) { public static boolean isProviderModelEnabled(Context context) {
return FeatureFlagUtils.isEnabled(context, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL); return FeatureFlagUtils.isEnabled(context, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL);
} }
public static boolean isPageTransitionEnabled(Context context) {
return Settings.Global.getInt(context.getContentResolver(),
SETTINGS_SHARED_AXIS_ENABLED, 0) == 1;
}
} }

View File

@@ -17,17 +17,14 @@ package com.android.settings.core;
import android.annotation.LayoutRes; import android.annotation.LayoutRes;
import android.app.ActivityManager; import android.app.ActivityManager;
import android.app.ActivityOptions;
import android.content.ComponentName; import android.content.ComponentName;
import android.content.Intent; import android.content.Intent;
import android.content.pm.PackageManager; import android.content.pm.PackageManager;
import android.content.res.TypedArray; import android.content.res.TypedArray;
import android.os.Bundle; import android.os.Bundle;
import android.os.UserHandle;
import android.text.TextUtils; import android.text.TextUtils;
import android.util.Log; import android.util.Log;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.view.Window; import android.view.Window;
@@ -40,10 +37,8 @@ import androidx.fragment.app.FragmentActivity;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.SubSettings; import com.android.settings.SubSettings;
import com.android.settings.Utils;
import com.android.settings.core.CategoryMixin.CategoryHandler; import com.android.settings.core.CategoryMixin.CategoryHandler;
import com.android.settingslib.core.lifecycle.HideNonSystemOverlayMixin; import com.android.settingslib.core.lifecycle.HideNonSystemOverlayMixin;
import com.android.settingslib.transition.SettingsTransitionHelper;
import com.android.settingslib.transition.SettingsTransitionHelper.TransitionType; import com.android.settingslib.transition.SettingsTransitionHelper.TransitionType;
import com.google.android.material.appbar.AppBarLayout; import com.google.android.material.appbar.AppBarLayout;
@@ -76,13 +71,6 @@ public class SettingsBaseActivity extends FragmentActivity implements CategoryHa
@Override @Override
protected void onCreate(@Nullable Bundle savedInstanceState) { protected void onCreate(@Nullable Bundle savedInstanceState) {
if (Utils.isPageTransitionEnabled(this)) {
// Enable Activity transitions
getWindow().requestFeature(Window.FEATURE_ACTIVITY_TRANSITIONS);
SettingsTransitionHelper.applyForwardTransition(this);
SettingsTransitionHelper.applyBackwardTransition(this);
}
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
if (isLockTaskModePinned() && !isSettingsRunOnTop()) { if (isLockTaskModePinned() && !isSettingsRunOnTop()) {
Log.w(TAG, "Devices lock task mode pinned."); Log.w(TAG, "Devices lock task mode pinned.");
@@ -145,28 +133,10 @@ public class SettingsBaseActivity extends FragmentActivity implements CategoryHa
return true; return true;
} }
@Override
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
final int id = item.getItemId();
if (id == android.R.id.home) {
// Make the up button behave the same as the back button.
finishAfterTransition();
return true;
}
return super.onOptionsItemSelected(item);
}
@Override @Override
public void startActivityForResult(Intent intent, int requestCode, public void startActivityForResult(Intent intent, int requestCode,
@androidx.annotation.Nullable Bundle options) { @androidx.annotation.Nullable Bundle options) {
final int transitionType = getTransitionType(intent); final int transitionType = getTransitionType(intent);
if (Utils.isPageTransitionEnabled(this) &&
transitionType == TransitionType.TRANSITION_SHARED_AXIS) {
super.startActivityForResult(intent, requestCode,
createActivityOptionsBundleForTransition(options));
return;
}
super.startActivityForResult(intent, requestCode, options); super.startActivityForResult(intent, requestCode, options);
if (transitionType == TransitionType.TRANSITION_SLIDE) { if (transitionType == TransitionType.TRANSITION_SLIDE) {
overridePendingTransition(R.anim.sud_slide_next_in, R.anim.sud_slide_next_out); overridePendingTransition(R.anim.sud_slide_next_in, R.anim.sud_slide_next_out);
@@ -175,18 +145,6 @@ public class SettingsBaseActivity extends FragmentActivity implements CategoryHa
} }
} }
@Override
public void startActivityForResultAsUser(Intent intent, int requestCode,
UserHandle userHandle) {
if (!Utils.isPageTransitionEnabled(this) || requestCode == DEFAULT_REQUEST) {
super.startActivityForResultAsUser(intent, requestCode, userHandle);
return;
}
super.startActivityForResultAsUser(intent, requestCode,
createActivityOptionsBundleForTransition(null),
userHandle);
}
@Override @Override
protected void onPause() { protected void onPause() {
// For accessibility activities launched from setup wizard. // For accessibility activities launched from setup wizard.
@@ -294,25 +252,6 @@ public class SettingsBaseActivity extends FragmentActivity implements CategoryHa
} }
private int getTransitionType(Intent intent) { private int getTransitionType(Intent intent) {
return intent.getIntExtra(EXTRA_PAGE_TRANSITION_TYPE, return intent.getIntExtra(EXTRA_PAGE_TRANSITION_TYPE, TransitionType.TRANSITION_NONE);
SettingsTransitionHelper.TransitionType.TRANSITION_SHARED_AXIS);
} }
@Nullable
private Bundle createActivityOptionsBundleForTransition(
@androidx.annotation.Nullable Bundle options) {
if (mToolbar == null) {
Log.w(TAG, "setActionBar(Toolbar) is not called. Cannot apply settings transition!");
return options;
}
final Bundle transitionOptions = ActivityOptions.makeSceneTransitionAnimation(this,
mToolbar, "shared_element_view").toBundle();
if (options == null) {
return transitionOptions;
}
final Bundle mergedOptions = new Bundle(options);
mergedOptions.putAll(transitionOptions);
return mergedOptions;
}
} }

View File

@@ -28,14 +28,12 @@ import static org.mockito.Mockito.when;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.os.Bundle;
import android.os.UserHandle; import android.os.UserHandle;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentActivity; import androidx.fragment.app.FragmentActivity;
import com.android.settings.SettingsActivity; import com.android.settings.SettingsActivity;
import com.android.settings.testutils.shadow.ShadowUtils;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider; import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.transition.SettingsTransitionHelper; import com.android.settingslib.transition.SettingsTransitionHelper;
@@ -45,7 +43,6 @@ import org.junit.runner.RunWith;
import org.mockito.ArgumentCaptor; import org.mockito.ArgumentCaptor;
import org.mockito.Mock; import org.mockito.Mock;
import org.mockito.MockitoAnnotations; import org.mockito.MockitoAnnotations;
import org.robolectric.annotation.Config;
import org.robolectric.RobolectricTestRunner; import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment; import org.robolectric.RuntimeEnvironment;

View File

@@ -47,7 +47,6 @@ public class ShadowUtils {
private static boolean sIsVoiceCapable; private static boolean sIsVoiceCapable;
private static ArraySet<String> sResultLinks = new ArraySet<>(); private static ArraySet<String> sResultLinks = new ArraySet<>();
private static boolean sIsBatteryPresent; private static boolean sIsBatteryPresent;
private static boolean sIsPageTransitionEnabled;
private static boolean sIsMultipleBiometricsSupported; private static boolean sIsMultipleBiometricsSupported;
@Implementation @Implementation
@@ -71,7 +70,6 @@ public class ShadowUtils {
sIsVoiceCapable = false; sIsVoiceCapable = false;
sResultLinks = new ArraySet<>(); sResultLinks = new ArraySet<>();
sIsBatteryPresent = true; sIsBatteryPresent = true;
sIsPageTransitionEnabled = true;
sIsMultipleBiometricsSupported = false; sIsMultipleBiometricsSupported = false;
} }
@@ -171,15 +169,6 @@ public class ShadowUtils {
sIsBatteryPresent = isBatteryPresent; sIsBatteryPresent = isBatteryPresent;
} }
@Implementation
protected static boolean isPageTransitionEnabled(Context context) {
return sIsPageTransitionEnabled;
}
public static void setIsPageTransitionEnabled(boolean isPageTransitionEnabled) {
sIsPageTransitionEnabled = isPageTransitionEnabled;
}
@Implementation @Implementation
protected static boolean isMultipleBiometricsSupported(Context context) { protected static boolean isMultipleBiometricsSupported(Context context) {
return sIsMultipleBiometricsSupported; return sIsMultipleBiometricsSupported;