Get rid of direct usage of Utils.onBuildStartFragmentIntent

Change-Id: I87eb97d6da4cd4f99be5bcdb1e3e245eb1c7bd1c
Fixes: 73250851
Test: robotests
This commit is contained in:
Fan Zhang
2018-02-19 14:31:50 -08:00
parent 47854c2945
commit 1f6d24a991
14 changed files with 221 additions and 168 deletions

View File

@@ -43,8 +43,8 @@ import android.util.Log;
import com.android.internal.logging.nano.MetricsProto;
import com.android.settings.SettingsActivity;
import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.Utils;
import com.android.settings.applications.manageapplications.ManageApplications;
import com.android.settings.core.SubSettingLauncher;
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.wrapper.DevicePolicyManagerWrapper;
@@ -218,20 +218,18 @@ public abstract class AppInfoBase extends SettingsPreferenceFragment
public static void startAppInfoFragment(Class<?> fragment, int titleRes,
String pkg, int uid, Fragment source, int request, int sourceMetricsCategory) {
startAppInfoFragment(fragment, titleRes, pkg, uid, source.getActivity(), request,
sourceMetricsCategory);
}
public static void startAppInfoFragment(Class<?> fragment, int titleRes,
String pkg, int uid, Activity source, int request, int sourceMetricsCategory) {
Bundle args = new Bundle();
final Bundle args = new Bundle();
args.putString(AppInfoBase.ARG_PACKAGE_NAME, pkg);
args.putInt(AppInfoBase.ARG_PACKAGE_UID, uid);
Intent intent = Utils.onBuildStartFragmentIntent(source, fragment.getName(),
args, null, titleRes, null, false, sourceMetricsCategory);
source.startActivityForResultAsUser(intent, request,
new UserHandle(UserHandle.getUserId(uid)));
new SubSettingLauncher(source.getContext())
.setDestination(fragment.getName())
.setSourceMetricsCategory(sourceMetricsCategory)
.setTitle(titleRes)
.setArguments(args)
.setUserHandle(new UserHandle(UserHandle.getUserId(uid)))
.setResultListener(source, request)
.launch();
}
public static class MyAlertDialogFragment extends InstrumentedDialogFragment {