Apply sliding transition to trust agent.

- Also rename the extra of page transition.
- Remove useless code while starting activity from fragment.

Bug: 187542491
Test: robotest and manually went through trust agent flow.
Change-Id: I55419f23db7fa77281039e642bde5558c17dce0f
This commit is contained in:
Yi-Ling Chuang
2021-06-01 16:39:13 +08:00
parent 4abbe80385
commit e7c769fe02
4 changed files with 5 additions and 16 deletions

View File

@@ -67,7 +67,7 @@ public class SettingsBaseActivity extends FragmentActivity {
/**
* What type of page transition should be apply.
*/
public static final String EXTRA_PAGE_TRANSITION_TYPE = "extra_page_transition_type";
public static final String EXTRA_PAGE_TRANSITION_TYPE = "page_transition_type";
protected static final boolean DEBUG_TIMING = false;
private static final String TAG = "SettingsBaseActivity";

View File

@@ -17,22 +17,17 @@
package com.android.settings.core;
import android.annotation.StringRes;
import android.app.Activity;
import android.app.ActivityOptions;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.os.UserHandle;
import android.text.TextUtils;
import android.widget.Toolbar;
import androidx.annotation.VisibleForTesting;
import androidx.fragment.app.Fragment;
import com.android.settings.R;
import com.android.settings.SettingsActivity;
import com.android.settings.SubSettings;
import com.android.settings.Utils;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.transition.SettingsTransitionHelper.TransitionType;
@@ -199,14 +194,6 @@ public class SubSettingLauncher {
@VisibleForTesting
void launchForResult(Fragment listener, Intent intent, int requestCode) {
if (Utils.isPageTransitionEnabled(mContext)) {
final Activity activity = listener.getActivity();
final Toolbar toolbar = activity.findViewById(R.id.action_bar);
final Bundle bundle = ActivityOptions.makeSceneTransitionAnimation(activity, toolbar,
"shared_element_view").toBundle();
listener.startActivityForResult(intent, requestCode, bundle);
return;
}
listener.startActivityForResult(intent, requestCode);
}

View File

@@ -33,6 +33,7 @@ import com.android.internal.widget.LockPatternUtils;
import com.android.settings.R;
import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.core.SettingsBaseActivity;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.password.ChooseLockSettingsHelper;
import com.android.settings.security.SecurityFeatureProvider;
@@ -44,6 +45,7 @@ import com.android.settingslib.core.lifecycle.events.OnCreate;
import com.android.settingslib.core.lifecycle.events.OnResume;
import com.android.settingslib.core.lifecycle.events.OnSaveInstanceState;
import com.android.settingslib.search.SearchIndexableRaw;
import com.android.settingslib.transition.SettingsTransitionHelper;
import java.util.ArrayList;
import java.util.List;
@@ -128,6 +130,8 @@ public class TrustAgentListPreferenceController extends AbstractPreferenceContro
.show();
mTrustAgentClickIntent = preference.getIntent();
mTrustAgentClickIntent.putExtra(SettingsBaseActivity.EXTRA_PAGE_TRANSITION_TYPE,
SettingsTransitionHelper.TransitionType.TRANSITION_SLIDE);
if (!confirmationLaunched && mTrustAgentClickIntent != null) {
// If this returns false, it means no password confirmation is required.

View File

@@ -50,7 +50,6 @@ import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
@RunWith(RobolectricTestRunner.class)
@Config(shadows = ShadowUtils.class)
public class SubSettingLauncherTest {
@Mock
@@ -117,7 +116,6 @@ public class SubSettingLauncherTest {
@Test
public void launch_hasRequestListener_shouldStartActivityForResult() {
ShadowUtils.setIsPageTransitionEnabled(true);
final int requestCode = 123123;
when(mFragment.getActivity()).thenReturn(mActivity);