Convert ProfileSelectDialog to androidx verison
Change-Id: Ib3baf04860aee07e5f28d7b537a99a3543d2a978 Fixes: 112155563 Test: robo, manual test
This commit is contained in:
@@ -15,7 +15,6 @@
|
||||
*/
|
||||
package com.android.settings.dashboard;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.Context;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.graphics.drawable.Drawable;
|
||||
@@ -32,6 +31,7 @@ import android.widget.LinearLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
import androidx.fragment.app.FragmentActivity;
|
||||
import androidx.recyclerview.widget.DiffUtil;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
@@ -80,7 +80,8 @@ public class DashboardAdapter extends RecyclerView.Adapter<DashboardAdapter.Dash
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
//TODO: get rid of setTag/getTag
|
||||
mDashboardFeatureProvider.openTileIntent((Activity) mContext, (Tile) v.getTag());
|
||||
mDashboardFeatureProvider.openTileIntent((FragmentActivity) mContext,
|
||||
(Tile) v.getTag());
|
||||
}
|
||||
};
|
||||
|
||||
|
@@ -15,16 +15,16 @@
|
||||
*/
|
||||
package com.android.settings.dashboard;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.Context;
|
||||
|
||||
import androidx.fragment.app.FragmentActivity;
|
||||
import androidx.preference.Preference;
|
||||
|
||||
import com.android.settingslib.drawer.DashboardCategory;
|
||||
import com.android.settingslib.drawer.Tile;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import androidx.preference.Preference;
|
||||
|
||||
/**
|
||||
* FeatureProvider for dashboard (aka settings homepage).
|
||||
*/
|
||||
@@ -47,7 +47,7 @@ public interface DashboardFeatureProvider {
|
||||
* of auto-ordering, progressive disclosure, auto-refreshing summary text etc.
|
||||
*/
|
||||
@Deprecated
|
||||
List<Preference> getPreferencesForCategory(Activity activity, Context context,
|
||||
List<Preference> getPreferencesForCategory(FragmentActivity activity, Context context,
|
||||
int sourceMetricsCategory, String key);
|
||||
|
||||
/**
|
||||
@@ -57,6 +57,7 @@ public interface DashboardFeatureProvider {
|
||||
|
||||
/**
|
||||
* Whether or not we should tint icons in setting pages.
|
||||
*
|
||||
* @deprecated in favor of color icons in homepage
|
||||
*/
|
||||
@Deprecated
|
||||
@@ -78,7 +79,7 @@ public interface DashboardFeatureProvider {
|
||||
* @param baseOrder The order offset value. When binding, pref's order is determined by
|
||||
* both this value and tile's own priority.
|
||||
*/
|
||||
void bindPreferenceToTile(Activity activity, int sourceMetricsCategory, Preference pref,
|
||||
void bindPreferenceToTile(FragmentActivity activity, int sourceMetricsCategory, Preference pref,
|
||||
Tile tile, String key, int baseOrder);
|
||||
|
||||
/**
|
||||
@@ -89,6 +90,6 @@ public interface DashboardFeatureProvider {
|
||||
/**
|
||||
* Opens a tile to its destination intent.
|
||||
*/
|
||||
void openTileIntent(Activity activity, Tile tile);
|
||||
void openTileIntent(FragmentActivity activity, Tile tile);
|
||||
|
||||
}
|
||||
|
@@ -20,7 +20,6 @@ import static com.android.settingslib.drawer.TileUtils.META_DATA_PREFERENCE_ICON
|
||||
import static com.android.settingslib.drawer.TileUtils.META_DATA_PREFERENCE_SUMMARY;
|
||||
import static com.android.settingslib.drawer.TileUtils.META_DATA_PREFERENCE_SUMMARY_URI;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.ComponentName;
|
||||
import android.content.Context;
|
||||
import android.content.IContentProvider;
|
||||
@@ -35,6 +34,7 @@ import android.util.Log;
|
||||
import android.util.Pair;
|
||||
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
import androidx.fragment.app.FragmentActivity;
|
||||
import androidx.preference.Preference;
|
||||
|
||||
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
|
||||
@@ -83,7 +83,7 @@ public class DashboardFeatureProviderImpl implements DashboardFeatureProvider {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Preference> getPreferencesForCategory(Activity activity, Context context,
|
||||
public List<Preference> getPreferencesForCategory(FragmentActivity activity, Context context,
|
||||
int sourceMetricsCategory, String key) {
|
||||
final DashboardCategory category = getTilesForCategory(key);
|
||||
if (category == null) {
|
||||
@@ -130,8 +130,8 @@ public class DashboardFeatureProviderImpl implements DashboardFeatureProvider {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void bindPreferenceToTile(Activity activity, int sourceMetricsCategory, Preference pref,
|
||||
Tile tile, String key, int baseOrder) {
|
||||
public void bindPreferenceToTile(FragmentActivity activity, int sourceMetricsCategory,
|
||||
Preference pref, Tile tile, String key, int baseOrder) {
|
||||
if (pref == null) {
|
||||
return;
|
||||
}
|
||||
@@ -194,7 +194,7 @@ public class DashboardFeatureProviderImpl implements DashboardFeatureProvider {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void openTileIntent(Activity activity, Tile tile) {
|
||||
public void openTileIntent(FragmentActivity activity, Tile tile) {
|
||||
if (tile == null) {
|
||||
Intent intent = new Intent(Settings.ACTION_SETTINGS).addFlags(
|
||||
Intent.FLAG_ACTIVITY_CLEAR_TASK);
|
||||
@@ -260,7 +260,7 @@ public class DashboardFeatureProviderImpl implements DashboardFeatureProvider {
|
||||
}
|
||||
}
|
||||
|
||||
private void launchIntentOrSelectProfile(Activity activity, Tile tile, Intent intent,
|
||||
private void launchIntentOrSelectProfile(FragmentActivity activity, Tile tile, Intent intent,
|
||||
int sourceMetricCategory) {
|
||||
if (!isIntentResolvable(intent)) {
|
||||
Log.w(TAG, "Cannot resolve intent, skipping. " + intent);
|
||||
@@ -275,7 +275,7 @@ public class DashboardFeatureProviderImpl implements DashboardFeatureProvider {
|
||||
mMetricsFeatureProvider.logDashboardStartIntent(mContext, intent, sourceMetricCategory);
|
||||
activity.startActivityForResultAsUser(intent, 0, tile.userHandle.get(0));
|
||||
} else {
|
||||
ProfileSelectDialog.show(activity.getFragmentManager(), tile);
|
||||
ProfileSelectDialog.show(activity.getSupportFragmentManager(), tile);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -16,10 +16,7 @@
|
||||
|
||||
package com.android.settings.dashboard.profileselector;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.app.Dialog;
|
||||
import android.app.DialogFragment;
|
||||
import android.app.FragmentManager;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.content.DialogInterface.OnClickListener;
|
||||
@@ -29,6 +26,10 @@ import android.os.UserHandle;
|
||||
import android.os.UserManager;
|
||||
import android.util.Log;
|
||||
|
||||
import androidx.appcompat.app.AlertDialog;
|
||||
import androidx.fragment.app.DialogFragment;
|
||||
import androidx.fragment.app.FragmentManager;
|
||||
|
||||
import com.android.settingslib.drawer.Tile;
|
||||
|
||||
import java.util.List;
|
||||
|
@@ -6,3 +6,4 @@ com.android.settings.password.ChooseLockPattern$SaveAndFinishWorker
|
||||
com.android.settings.RestrictedListPreference$RestrictedListPreferenceDialogFragment
|
||||
com.android.settings.password.ConfirmDeviceCredentialBaseFragment$LastTryDialog
|
||||
com.android.settings.password.CredentialCheckResultTracker
|
||||
com.android.settings.dashboard.profileselector.ProfileSelectDialog
|
@@ -23,7 +23,6 @@ import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import android.accounts.Account;
|
||||
import android.app.Activity;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.pm.ActivityInfo;
|
||||
@@ -32,6 +31,7 @@ import android.content.pm.ResolveInfo;
|
||||
import android.os.Bundle;
|
||||
import android.os.UserHandle;
|
||||
|
||||
import androidx.fragment.app.FragmentActivity;
|
||||
import androidx.preference.Preference;
|
||||
|
||||
import com.android.internal.logging.nano.MetricsProto;
|
||||
@@ -126,7 +126,7 @@ public class AccountDetailDashboardFragmentTest {
|
||||
tile.userHandle = null;
|
||||
mFragment.displayTile(tile);
|
||||
|
||||
final Activity activity = Robolectric.setupActivity(Activity.class);
|
||||
final FragmentActivity activity = Robolectric.setupActivity(FragmentActivity.class);
|
||||
final Preference preference = new Preference(mContext);
|
||||
dashboardFeatureProvider.bindPreferenceToTile(activity,
|
||||
MetricsProto.MetricsEvent.DASHBOARD_SUMMARY, preference, tile, "key",
|
||||
|
@@ -33,7 +33,6 @@ import static org.mockito.Mockito.verify;
|
||||
import static org.mockito.Mockito.verifyZeroInteractions;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.pm.ActivityInfo;
|
||||
@@ -45,6 +44,7 @@ import android.os.Bundle;
|
||||
import android.os.UserHandle;
|
||||
import android.os.UserManager;
|
||||
|
||||
import androidx.fragment.app.FragmentActivity;
|
||||
import androidx.preference.Preference;
|
||||
|
||||
import com.android.internal.logging.nano.MetricsProto;
|
||||
@@ -82,7 +82,7 @@ import java.util.ArrayList;
|
||||
public class DashboardFeatureProviderImplTest {
|
||||
|
||||
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
|
||||
private Activity mActivity;
|
||||
private FragmentActivity mActivity;
|
||||
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
|
||||
private UserManager mUserManager;
|
||||
@Mock
|
||||
@@ -165,7 +165,7 @@ public class DashboardFeatureProviderImplTest {
|
||||
preference, tile, "123", Preference.DEFAULT_ORDER);
|
||||
preference.getOnPreferenceClickListener().onPreferenceClick(null);
|
||||
|
||||
verify(mActivity).getFragmentManager();
|
||||
verify(mActivity).getSupportFragmentManager();
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -334,7 +334,7 @@ public class DashboardFeatureProviderImplTest {
|
||||
|
||||
@Test
|
||||
public void bindPreference_withIntentActionMetadata_shouldSetLaunchAction() {
|
||||
Activity activity = Robolectric.buildActivity(Activity.class).get();
|
||||
FragmentActivity activity = Robolectric.buildActivity(FragmentActivity.class).get();
|
||||
final Preference preference = new Preference(RuntimeEnvironment.application);
|
||||
final Tile tile = new Tile(mActivityInfo, CategoryKey.CATEGORY_HOMEPAGE);
|
||||
tile.key = "key";
|
||||
@@ -356,7 +356,7 @@ public class DashboardFeatureProviderImplTest {
|
||||
public void clickPreference_withUnresolvableIntent_shouldNotLaunchAnything() {
|
||||
ReflectionHelpers.setField(
|
||||
mImpl, "mPackageManager", RuntimeEnvironment.application.getPackageManager());
|
||||
Activity activity = Robolectric.buildActivity(Activity.class).get();
|
||||
FragmentActivity activity = Robolectric.buildActivity(FragmentActivity.class).get();
|
||||
final ShadowApplication application = ShadowApplication.getInstance();
|
||||
final Preference preference = new Preference(application.getApplicationContext());
|
||||
final Tile tile = new Tile(mActivityInfo, CategoryKey.CATEGORY_HOMEPAGE);
|
||||
@@ -442,7 +442,7 @@ public class DashboardFeatureProviderImplTest {
|
||||
|
||||
verify(mActivity, never())
|
||||
.startActivityForResult(any(Intent.class), eq(0));
|
||||
verify(mActivity).getFragmentManager();
|
||||
verify(mActivity).getSupportFragmentManager();
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -457,7 +457,7 @@ public class DashboardFeatureProviderImplTest {
|
||||
|
||||
verify(mActivity, never())
|
||||
.startActivityForResult(any(Intent.class), eq(0));
|
||||
verify(mActivity).getFragmentManager();
|
||||
verify(mActivity).getSupportFragmentManager();
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -472,6 +472,6 @@ public class DashboardFeatureProviderImplTest {
|
||||
|
||||
verify(mActivity)
|
||||
.startActivityForResult(any(Intent.class), eq(0));
|
||||
verify(mActivity, never()).getFragmentManager();
|
||||
verify(mActivity, never()).getSupportFragmentManager();
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user