Settings Fragment Migration (Build pass app)
This patch focused on fixing compile errors and some runtime errors.
Test: We can't test it now. But we will have an integration test later.
Bug: 110259478
Change-Id: I16c471ddcd0fa1460c665b7f74d86fcace5ee67b
diff --git a/proguard.flags b/proguard.flags
index 7592370..298058d 100644
--- a/proguard.flags
+++ b/proguard.flags
@@ -6,7 +6,7 @@
-keepattributes Exceptions
# Keep all Fragments in this package, which are used by reflection.
--keep public class com.android.settings.** extends android.app.Fragment
+-keep public class com.android.settings.** extends androidx.fragment.app.Fragment
# Keep all preference controllers needed by slice and DashboardFragment.
-keep class * extends com.android.settings.core.BasePreferenceController {
diff --git a/res/values/themes.xml b/res/values/themes.xml
index 53aa026..991bf47 100644
--- a/res/values/themes.xml
+++ b/res/values/themes.xml
@@ -239,8 +239,8 @@
<item name="preferenceBackgroundColor">@drawable/preference_background</item>
- <!-- For all Alert Dialogs -->
- <item name="android:alertDialogTheme">@style/Theme.AlertDialog</item>
+ <!-- For all androidx version of AlertDialogs -->
+ <item name="alertDialogTheme">@style/Theme.AppCompat.Light.Dialog.Alert</item>
<item name="*android:lockPatternStyle">@style/LockPatternStyle.Setup</item>
diff --git a/src/com/android/settings/BugreportPreference.java b/src/com/android/settings/BugreportPreference.java
index 6371e3a..d2b5ec1 100644
--- a/src/com/android/settings/BugreportPreference.java
+++ b/src/com/android/settings/BugreportPreference.java
@@ -17,7 +17,6 @@
package com.android.settings;
import android.app.ActivityManager;
-import android.app.AlertDialog.Builder;
import android.content.Context;
import android.content.DialogInterface;
import android.os.RemoteException;
@@ -29,9 +28,11 @@
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.overlay.FeatureFactory;
-import com.android.settingslib.CustomDialogPreference;
+import com.android.settingslib.CustomDialogPreferenceCompat;
-public class BugreportPreference extends CustomDialogPreference {
+import androidx.appcompat.app.AlertDialog.Builder;
+
+public class BugreportPreference extends CustomDialogPreferenceCompat {
private static final String TAG = "BugreportPreference";
diff --git a/src/com/android/settings/CredentialStorage.java b/src/com/android/settings/CredentialStorage.java
index 4bcf656..7b39e4f 100644
--- a/src/com/android/settings/CredentialStorage.java
+++ b/src/com/android/settings/CredentialStorage.java
@@ -49,6 +49,7 @@
import java.io.ByteArrayInputStream;
import java.io.IOException;
+import androidx.fragment.app.FragmentActivity;
import sun.security.util.ObjectIdentifier;
import sun.security.x509.AlgorithmId;
@@ -88,7 +89,7 @@
* Action: normal unlock/install
* Notes: this is the common case
*/
-public final class CredentialStorage extends Activity {
+public final class CredentialStorage extends FragmentActivity {
private static final String TAG = "CredentialStorage";
@@ -160,7 +161,7 @@
case UNLOCKED: {
if (isActivePasswordQualityInsufficient()) {
final ConfigureKeyGuardDialog dialog = new ConfigureKeyGuardDialog();
- dialog.show(getFragmentManager(), ConfigureKeyGuardDialog.TAG);
+ dialog.show(getSupportFragmentManager(), ConfigureKeyGuardDialog.TAG);
return;
}
installIfAvailable();
@@ -180,7 +181,7 @@
if (isActivePasswordQualityInsufficient()) {
// key guard not setup, doing so will initialize keystore
final ConfigureKeyGuardDialog dialog = new ConfigureKeyGuardDialog();
- dialog.show(getFragmentManager(), ConfigureKeyGuardDialog.TAG);
+ dialog.show(getSupportFragmentManager(), ConfigureKeyGuardDialog.TAG);
// will return to onResume after Activity
return;
}
diff --git a/src/com/android/settings/CustomListPreference.java b/src/com/android/settings/CustomListPreference.java
index 9047752..8838c10 100644
--- a/src/com/android/settings/CustomListPreference.java
+++ b/src/com/android/settings/CustomListPreference.java
@@ -28,9 +28,11 @@
import com.android.internal.logging.nano.MetricsProto;
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
+import androidx.appcompat.app.AlertDialog.Builder;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentTransaction;
import androidx.preference.ListPreference;
+import androidx.preference.ListPreferenceDialogFragmentCompat;
public class CustomListPreference extends ListPreference {
@@ -43,7 +45,7 @@
super(context, attrs, defStyleAttr, defStyleRes);
}
- protected void onPrepareDialogBuilder(AlertDialog.Builder builder,
+ protected void onPrepareDialogBuilder(Builder builder,
DialogInterface.OnClickListener listener) {
}
@@ -72,15 +74,17 @@
protected void onDialogStateRestored(Dialog dialog, Bundle savedInstanceState) {
}
- public static class CustomListPreferenceDialogFragment extends ListPreferenceDialogFragment {
+ public static class CustomListPreferenceDialogFragment extends
+ ListPreferenceDialogFragmentCompat {
private static final java.lang.String KEY_CLICKED_ENTRY_INDEX
= "settings.CustomListPrefDialog.KEY_CLICKED_ENTRY_INDEX";
private int mClickedDialogEntryIndex;
- public static ListPreferenceDialogFragment newInstance(String key) {
- final ListPreferenceDialogFragment fragment = new CustomListPreferenceDialogFragment();
+ public static ListPreferenceDialogFragmentCompat newInstance(String key) {
+ final ListPreferenceDialogFragmentCompat fragment =
+ new CustomListPreferenceDialogFragment();
final Bundle b = new Bundle(1);
b.putString(ARG_KEY, key);
fragment.setArguments(b);
@@ -92,7 +96,7 @@
}
@Override
- protected void onPrepareDialogBuilder(AlertDialog.Builder builder) {
+ protected void onPrepareDialogBuilder(Builder builder) {
super.onPrepareDialogBuilder(builder);
mClickedDialogEntryIndex = getCustomizablePreference()
.findIndexOfValue(getCustomizablePreference().getValue());
diff --git a/src/com/android/settings/DateTimeSettings.java b/src/com/android/settings/DateTimeSettings.java
index 16c6ff5..bf4299b 100644
--- a/src/com/android/settings/DateTimeSettings.java
+++ b/src/com/android/settings/DateTimeSettings.java
@@ -71,7 +71,7 @@
@Override
public void onAttach(Context context) {
super.onAttach(context);
- getLifecycle().addObserver(new TimeChangeListenerMixin(context, this));
+ getSettingsLifecycle().addObserver(new TimeChangeListenerMixin(context, this));
}
@Override
diff --git a/src/com/android/settings/DisplaySettings.java b/src/com/android/settings/DisplaySettings.java
index ea9267a..236c7db 100644
--- a/src/com/android/settings/DisplaySettings.java
+++ b/src/com/android/settings/DisplaySettings.java
@@ -69,7 +69,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildPreferenceControllers(context, getLifecycle());
+ return buildPreferenceControllers(context, getSettingsLifecycle());
}
@Override
diff --git a/src/com/android/settings/EditPinPreference.java b/src/com/android/settings/EditPinPreference.java
index 4efed4a..611f520 100644
--- a/src/com/android/settings/EditPinPreference.java
+++ b/src/com/android/settings/EditPinPreference.java
@@ -23,19 +23,19 @@
import android.view.View;
import android.widget.EditText;
-import com.android.settingslib.CustomEditTextPreference;
+import com.android.settingslib.CustomEditTextPreferenceCompat;
/**
* TODO: Add a soft dialpad for PIN entry.
*/
-class EditPinPreference extends CustomEditTextPreference {
+class EditPinPreference extends CustomEditTextPreferenceCompat {
interface OnPinEnteredListener {
void onPinEntered(EditPinPreference preference, boolean positiveResult);
}
-
+
private OnPinEnteredListener mPinListener;
-
+
public EditPinPreference(Context context, AttributeSet attrs) {
super(context, attrs);
}
@@ -43,7 +43,7 @@
public EditPinPreference(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
-
+
public void setOnPinEnteredListener(OnPinEnteredListener listener) {
mPinListener = listener;
}
diff --git a/src/com/android/settings/ProxySelector.java b/src/com/android/settings/ProxySelector.java
index 79767fb..1c51a98 100644
--- a/src/com/android/settings/ProxySelector.java
+++ b/src/com/android/settings/ProxySelector.java
@@ -113,7 +113,7 @@
Log.e(TAG, "Old dialog fragment not null!");
}
mDialogFragment = new SettingsDialogFragment(this, dialogId);
- mDialogFragment.show(getActivity().getFragmentManager(), Integer.toString(dialogId));
+ mDialogFragment.show(getActivity().getSupportFragmentManager(), Integer.toString(dialogId));
}
private void initView(View view) {
diff --git a/src/com/android/settings/RestrictedListPreference.java b/src/com/android/settings/RestrictedListPreference.java
index 7e4c456..a5d241c 100644
--- a/src/com/android/settings/RestrictedListPreference.java
+++ b/src/com/android/settings/RestrictedListPreference.java
@@ -41,6 +41,8 @@
import java.util.ArrayList;
import java.util.List;
+import androidx.appcompat.app.AlertDialog.Builder;
+import androidx.preference.ListPreferenceDialogFragmentCompat;
import androidx.preference.PreferenceViewHolder;
public class RestrictedListPreference extends CustomListPreference {
@@ -168,7 +170,7 @@
}
@Override
- protected void onPrepareDialogBuilder(AlertDialog.Builder builder,
+ protected void onPrepareDialogBuilder(Builder builder,
DialogInterface.OnClickListener listener) {
builder.setAdapter(createListAdapter(), listener);
}
@@ -218,8 +220,8 @@
CustomListPreference.CustomListPreferenceDialogFragment {
private int mLastCheckedPosition = AdapterView.INVALID_POSITION;
- public static ListPreferenceDialogFragment newInstance(String key) {
- final ListPreferenceDialogFragment fragment
+ public static ListPreferenceDialogFragmentCompat newInstance(String key) {
+ final ListPreferenceDialogFragmentCompat fragment
= new RestrictedListPreferenceDialogFragment();
final Bundle b = new Bundle(1);
b.putString(ARG_KEY, key);
diff --git a/src/com/android/settings/SeekBarDialogPreference.java b/src/com/android/settings/SeekBarDialogPreference.java
index 507c551..d0c8134 100644
--- a/src/com/android/settings/SeekBarDialogPreference.java
+++ b/src/com/android/settings/SeekBarDialogPreference.java
@@ -23,13 +23,13 @@
import android.widget.ImageView;
import android.widget.SeekBar;
-import com.android.settingslib.CustomDialogPreference;
+import com.android.settingslib.CustomDialogPreferenceCompat;
/**
* Based on frameworks/base/core/java/android/preference/SeekBarDialogPreference.java
* except uses support lib preferences.
*/
-public class SeekBarDialogPreference extends CustomDialogPreference {
+public class SeekBarDialogPreference extends CustomDialogPreferenceCompat {
private final Drawable mMyIcon;
public SeekBarDialogPreference(Context context, AttributeSet attrs) {
diff --git a/src/com/android/settings/SettingsActivity.java b/src/com/android/settings/SettingsActivity.java
index 7513e43..cafe5cf 100644
--- a/src/com/android/settings/SettingsActivity.java
+++ b/src/com/android/settings/SettingsActivity.java
@@ -70,13 +70,13 @@
import androidx.fragment.app.FragmentTransaction;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import androidx.preference.Preference;
-import androidx.preference.PreferenceFragment;
+import androidx.preference.PreferenceFragmentCompat;
import androidx.preference.PreferenceManager;
public class SettingsActivity extends SettingsBaseActivity
implements PreferenceManager.OnPreferenceTreeClickListener,
- PreferenceFragment.OnPreferenceStartFragmentCallback,
+ PreferenceFragmentCompat.OnPreferenceStartFragmentCallback,
ButtonBarHandler, FragmentManager.OnBackStackChangedListener {
private static final String LOG_TAG = "SettingsActivity";
@@ -190,7 +190,7 @@
}
@Override
- public boolean onPreferenceStartFragment(PreferenceFragment caller, Preference pref) {
+ public boolean onPreferenceStartFragment(PreferenceFragmentCompat caller, Preference pref) {
new SubSettingLauncher(this)
.setDestination(pref.getFragment())
.setArguments(pref.getExtras())
@@ -270,7 +270,7 @@
mContent = findViewById(R.id.main_content);
- getFragmentManager().addOnBackStackChangedListener(this);
+ getSupportFragmentManager().addOnBackStackChangedListener(this);
if (savedState != null) {
// We are restarting from a previous saved state; used that to initialize, instead
@@ -430,7 +430,7 @@
}
private void setTitleFromBackStack() {
- final int count = getFragmentManager().getBackStackEntryCount();
+ final int count = getSupportFragmentManager().getBackStackEntryCount();
if (count == 0) {
if (mInitialTitleResId > 0) {
@@ -441,7 +441,8 @@
return;
}
- FragmentManager.BackStackEntry bse = getFragmentManager().getBackStackEntryAt(count - 1);
+ FragmentManager.BackStackEntry bse = getSupportFragmentManager().
+ getBackStackEntryAt(count - 1);
setTitleFromBackStackEntry(bse);
}
@@ -581,7 +582,7 @@
+ fragmentName);
}
Fragment f = Fragment.instantiate(this, fragmentName, args);
- FragmentTransaction transaction = getFragmentManager().beginTransaction();
+ FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
transaction.replace(R.id.main_content, f);
if (withTransition) {
TransitionManager.beginDelayedTransition(mContent);
@@ -595,7 +596,7 @@
transaction.setBreadCrumbTitle(title);
}
transaction.commitAllowingStateLoss();
- getFragmentManager().executePendingTransactions();
+ getSupportFragmentManager().executePendingTransactions();
Log.d(LOG_TAG, "Executed frag manager pendingTransactions");
return f;
}
diff --git a/src/com/android/settings/SettingsHomepageActivity.java b/src/com/android/settings/SettingsHomepageActivity.java
index eed3a7f..6eef99c 100644
--- a/src/com/android/settings/SettingsHomepageActivity.java
+++ b/src/com/android/settings/SettingsHomepageActivity.java
@@ -16,9 +16,6 @@
package com.android.settings;
-import android.app.Activity;
-import android.app.Fragment;
-import android.app.FragmentManager;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
@@ -28,6 +25,10 @@
import com.android.settings.core.SettingsBaseActivity;
import com.android.settings.homepage.HomepageFragment;
+import androidx.fragment.app.Fragment;
+import androidx.fragment.app.FragmentActivity;
+import androidx.fragment.app.FragmentManager;
+
public class SettingsHomepageActivity extends SettingsBaseActivity {
@Override
@@ -51,10 +52,10 @@
/**
* Switch to a specific Fragment
*/
- public static void switchToFragment(Activity activity, int id, String fragmentName) {
+ public static void switchToFragment(FragmentActivity activity, int id, String fragmentName) {
final Fragment f = Fragment.instantiate(activity, fragmentName, null /* args */);
- FragmentManager manager = activity.getFragmentManager();
+ FragmentManager manager = activity.getSupportFragmentManager();
manager.beginTransaction().replace(id, f).commitAllowingStateLoss();
manager.executePendingTransactions();
}
diff --git a/src/com/android/settings/SettingsLicenseActivity.java b/src/com/android/settings/SettingsLicenseActivity.java
index d3c3b48..c1bf9e5 100644
--- a/src/com/android/settings/SettingsLicenseActivity.java
+++ b/src/com/android/settings/SettingsLicenseActivity.java
@@ -16,7 +16,6 @@
package com.android.settings;
-import android.app.Activity;
import android.content.ActivityNotFoundException;
import android.content.ContentResolver;
import android.content.Intent;
@@ -28,19 +27,20 @@
import android.widget.Toast;
import com.android.settings.users.RestrictedProfileSettings;
-import com.android.settingslib.license.LicenseHtmlLoader;
+import com.android.settingslib.license.LicenseHtmlLoaderCompat;
import java.io.File;
import androidx.annotation.VisibleForTesting;
import androidx.core.content.FileProvider;
+import androidx.fragment.app.FragmentActivity;
import androidx.loader.app.LoaderManager;
import androidx.loader.content.Loader;
/**
* The "dialog" that shows from "License" in the Settings app.
*/
-public class SettingsLicenseActivity extends Activity implements
+public class SettingsLicenseActivity extends FragmentActivity implements
LoaderManager.LoaderCallbacks<File> {
private static final String TAG = "SettingsLicenseActivity";
@@ -64,7 +64,7 @@
@Override
public Loader<File> onCreateLoader(int id, Bundle args) {
- return new LicenseHtmlLoader(this);
+ return new LicenseHtmlLoaderCompat(this);
}
@Override
@@ -77,7 +77,7 @@
}
private void showHtmlFromDefaultXmlFiles() {
- getLoaderManager().initLoader(LOADER_ID_LICENSE_HTML_LOADER, Bundle.EMPTY, this);
+ getSupportLoaderManager().initLoader(LOADER_ID_LICENSE_HTML_LOADER, Bundle.EMPTY, this);
}
@VisibleForTesting
diff --git a/src/com/android/settings/SettingsPreferenceFragment.java b/src/com/android/settings/SettingsPreferenceFragment.java
index 74b1405..7ad18fe 100644
--- a/src/com/android/settings/SettingsPreferenceFragment.java
+++ b/src/com/android/settings/SettingsPreferenceFragment.java
@@ -41,10 +41,10 @@
import com.android.settings.support.actionbar.HelpResourceProvider;
import com.android.settings.widget.HighlightablePreferenceGroupAdapter;
import com.android.settings.widget.LoadingViewController;
-import com.android.settingslib.CustomDialogPreference;
-import com.android.settingslib.CustomEditTextPreference;
+import com.android.settingslib.CustomDialogPreferenceCompat;
+import com.android.settingslib.CustomEditTextPreferenceCompat;
import com.android.settingslib.core.instrumentation.Instrumentable;
-import com.android.settingslib.widget.FooterPreferenceMixin;
+import com.android.settingslib.widget.FooterPreferenceMixinCompat;
import java.util.UUID;
@@ -68,8 +68,8 @@
private static final String SAVE_HIGHLIGHTED_KEY = "android:preference_highlighted";
- protected final FooterPreferenceMixin mFooterPreferenceMixin =
- new FooterPreferenceMixin(this, getLifecycle());
+ protected final FooterPreferenceMixinCompat mFooterPreferenceMixin =
+ new FooterPreferenceMixinCompat(this, getSettingsLifecycle());
private static final int ORDER_FIRST = -1;
@@ -517,11 +517,11 @@
} else if (preference instanceof CustomListPreference) {
f = CustomListPreference.CustomListPreferenceDialogFragment
.newInstance(preference.getKey());
- } else if (preference instanceof CustomDialogPreference) {
- f = CustomDialogPreference.CustomPreferenceDialogFragment
+ } else if (preference instanceof CustomDialogPreferenceCompat) {
+ f = CustomDialogPreferenceCompat.CustomPreferenceDialogFragment
.newInstance(preference.getKey());
- } else if (preference instanceof CustomEditTextPreference) {
- f = CustomEditTextPreference.CustomPreferenceDialogFragment
+ } else if (preference instanceof CustomEditTextPreferenceCompat) {
+ f = CustomEditTextPreferenceCompat.CustomPreferenceDialogFragment
.newInstance(preference.getKey());
} else {
super.onDisplayPreferenceDialog(preference);
diff --git a/src/com/android/settings/TetherSettings.java b/src/com/android/settings/TetherSettings.java
index b703e4d..9515a13 100644
--- a/src/com/android/settings/TetherSettings.java
+++ b/src/com/android/settings/TetherSettings.java
@@ -112,7 +112,7 @@
public void onAttach(Context context) {
super.onAttach(context);
mWifiTetherPreferenceController =
- new WifiTetherPreferenceController(context, getLifecycle());
+ new WifiTetherPreferenceController(context, getSettingsLifecycle());
}
@Override
diff --git a/src/com/android/settings/accessibility/AccessibilitySettingsForSetupWizardActivity.java b/src/com/android/settings/accessibility/AccessibilitySettingsForSetupWizardActivity.java
index 1d5f8f4..1b8e554 100644
--- a/src/com/android/settings/accessibility/AccessibilitySettingsForSetupWizardActivity.java
+++ b/src/com/android/settings/accessibility/AccessibilitySettingsForSetupWizardActivity.java
@@ -27,6 +27,7 @@
import com.android.settingslib.core.instrumentation.Instrumentable;
import androidx.preference.Preference;
+import androidx.preference.PreferenceFragmentCompat;
public class AccessibilitySettingsForSetupWizardActivity extends SettingsActivity {
@@ -70,7 +71,7 @@
}
@Override
- public boolean onPreferenceStartFragment(PreferenceFragment caller, Preference pref) {
+ public boolean onPreferenceStartFragment(PreferenceFragmentCompat caller, Preference pref) {
Bundle args = pref.getExtras();
if (args == null) {
args = new Bundle();
diff --git a/src/com/android/settings/accessibility/ListDialogPreference.java b/src/com/android/settings/accessibility/ListDialogPreference.java
index cfb77bb..8a09512 100644
--- a/src/com/android/settings/accessibility/ListDialogPreference.java
+++ b/src/com/android/settings/accessibility/ListDialogPreference.java
@@ -16,7 +16,6 @@
package com.android.settings.accessibility;
-import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
@@ -31,12 +30,14 @@
import android.widget.AdapterView;
import android.widget.BaseAdapter;
-import com.android.settingslib.CustomDialogPreference;
+import com.android.settingslib.CustomDialogPreferenceCompat;
+
+import androidx.appcompat.app.AlertDialog.Builder;
/**
* Abstract dialog preference that displays a set of values and optional titles.
*/
-public abstract class ListDialogPreference extends CustomDialogPreference {
+public abstract class ListDialogPreference extends CustomDialogPreferenceCompat {
private CharSequence[] mEntryTitles;
private int[] mEntryValues;
@@ -138,7 +139,7 @@
}
@Override
- protected void onPrepareDialogBuilder(AlertDialog.Builder builder,
+ protected void onPrepareDialogBuilder(Builder builder,
DialogInterface.OnClickListener listener) {
super.onPrepareDialogBuilder(builder, listener);
diff --git a/src/com/android/settings/accessibility/ShortcutServicePickerFragment.java b/src/com/android/settings/accessibility/ShortcutServicePickerFragment.java
index bca6195..08a6269 100644
--- a/src/com/android/settings/accessibility/ShortcutServicePickerFragment.java
+++ b/src/com/android/settings/accessibility/ShortcutServicePickerFragment.java
@@ -22,7 +22,6 @@
.DALTONIZER_COMPONENT_NAME;
import android.accessibilityservice.AccessibilityServiceInfo;
-import android.app.Activity;
import android.app.Dialog;
import android.content.ComponentName;
import android.content.Context;
@@ -55,6 +54,7 @@
import java.util.Map;
import androidx.fragment.app.Fragment;
+import androidx.fragment.app.FragmentActivity;
/**
* Fragment for picking accessibility shortcut service
@@ -135,10 +135,11 @@
// This is a framework feature. It doesn't need to be confirmed.
onRadioButtonConfirmed(selectedKey);
} else {
- final Activity activity = getActivity();
+ final FragmentActivity activity = getActivity();
if (activity != null) {
ConfirmationDialogFragment.newInstance(this, selectedKey)
- .show(activity.getFragmentManager(), ConfirmationDialogFragment.TAG);
+ .show(activity.getSupportFragmentManager(),
+ ConfirmationDialogFragment.TAG);
}
}
}
diff --git a/src/com/android/settings/accounts/AccountDashboardFragment.java b/src/com/android/settings/accounts/AccountDashboardFragment.java
index fd15f4e..d8b1008 100644
--- a/src/com/android/settings/accounts/AccountDashboardFragment.java
+++ b/src/com/android/settings/accounts/AccountDashboardFragment.java
@@ -80,7 +80,7 @@
final AccountPreferenceController accountPrefController =
new AccountPreferenceController(context, parent, authorities);
if (parent != null) {
- parent.getLifecycle().addObserver(accountPrefController);
+ parent.getSettingsLifecycle().addObserver(accountPrefController);
}
controllers.add(accountPrefController);
controllers.add(new AutoSyncDataPreferenceController(context, parent));
diff --git a/src/com/android/settings/accounts/AccountDetailDashboardFragment.java b/src/com/android/settings/accounts/AccountDetailDashboardFragment.java
index 56d8763..709066a 100644
--- a/src/com/android/settings/accounts/AccountDetailDashboardFragment.java
+++ b/src/com/android/settings/accounts/AccountDetailDashboardFragment.java
@@ -117,7 +117,7 @@
mRemoveAccountController = new RemoveAccountPreferenceController(context, this);
controllers.add(mRemoveAccountController);
controllers.add(new AccountHeaderPreferenceController(
- context, getLifecycle(), getActivity(), this /* host */, getArguments()));
+ context, getSettingsLifecycle(), getActivity(), this /* host */, getArguments()));
return controllers;
}
diff --git a/src/com/android/settings/accounts/AccountHeaderPreferenceController.java b/src/com/android/settings/accounts/AccountHeaderPreferenceController.java
index 54b042c..25a902e 100644
--- a/src/com/android/settings/accounts/AccountHeaderPreferenceController.java
+++ b/src/com/android/settings/accounts/AccountHeaderPreferenceController.java
@@ -35,6 +35,7 @@
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnResume;
+import androidx.preference.PreferenceFragmentCompat;
import androidx.preference.PreferenceScreen;
public class AccountHeaderPreferenceController extends AbstractPreferenceController
@@ -43,14 +44,14 @@
private static final String KEY_ACCOUNT_HEADER = "account_header";
private final Activity mActivity;
- private final PreferenceFragment mHost;
+ private final PreferenceFragmentCompat mHost;
private final Account mAccount;
private final UserHandle mUserHandle;
private LayoutPreference mHeaderPreference;
public AccountHeaderPreferenceController(Context context, Lifecycle lifecycle,
- Activity activity, PreferenceFragment host, Bundle args) {
+ Activity activity, PreferenceFragmentCompat host, Bundle args) {
super(context);
mActivity = activity;
mHost = host;
diff --git a/src/com/android/settings/accounts/AccountSyncSettings.java b/src/com/android/settings/accounts/AccountSyncSettings.java
index 66e8d22..f90c3c6 100644
--- a/src/com/android/settings/accounts/AccountSyncSettings.java
+++ b/src/com/android/settings/accounts/AccountSyncSettings.java
@@ -122,7 +122,7 @@
final Activity activity = getActivity();
final Preference pref = EntityHeaderController
.newInstance(activity, this, null /* header */)
- .setRecyclerView(getListView(), getLifecycle())
+ .setRecyclerView(getListView(), getSettingsLifecycle())
.setIcon(getDrawableForType(mAccount.type))
.setLabel(mAccount.name)
.setSummary(getLabelForType(mAccount.type))
diff --git a/src/com/android/settings/accounts/AccountTypePreferenceLoader.java b/src/com/android/settings/accounts/AccountTypePreferenceLoader.java
index 4598f76..90bcb5e 100644
--- a/src/com/android/settings/accounts/AccountTypePreferenceLoader.java
+++ b/src/com/android/settings/accounts/AccountTypePreferenceLoader.java
@@ -41,6 +41,7 @@
import androidx.preference.Preference;
import androidx.preference.Preference.OnPreferenceClickListener;
+import androidx.preference.PreferenceFragmentCompat;
import androidx.preference.PreferenceGroup;
import androidx.preference.PreferenceScreen;
@@ -60,9 +61,9 @@
private AuthenticatorHelper mAuthenticatorHelper;
private UserHandle mUserHandle;
- private PreferenceFragment mFragment;
+ private PreferenceFragmentCompat mFragment;
- public AccountTypePreferenceLoader(PreferenceFragment fragment,
+ public AccountTypePreferenceLoader(PreferenceFragmentCompat fragment,
AuthenticatorHelper authenticatorHelper, UserHandle userHandle) {
mFragment = fragment;
mAuthenticatorHelper = authenticatorHelper;
diff --git a/src/com/android/settings/accounts/EnterpriseDisclosurePreferenceController.java b/src/com/android/settings/accounts/EnterpriseDisclosurePreferenceController.java
index 4fb8cf8..aad1172 100644
--- a/src/com/android/settings/accounts/EnterpriseDisclosurePreferenceController.java
+++ b/src/com/android/settings/accounts/EnterpriseDisclosurePreferenceController.java
@@ -22,7 +22,7 @@
import com.android.settings.enterprise.EnterprisePrivacyFeatureProvider;
import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.widget.FooterPreference;
-import com.android.settingslib.widget.FooterPreferenceMixin;
+import com.android.settingslib.widget.FooterPreferenceMixinCompat;
import androidx.annotation.VisibleForTesting;
import androidx.preference.PreferenceScreen;
@@ -30,7 +30,7 @@
public class EnterpriseDisclosurePreferenceController extends BasePreferenceController {
private final EnterprisePrivacyFeatureProvider mFeatureProvider;
- private FooterPreferenceMixin mFooterPreferenceMixin;
+ private FooterPreferenceMixinCompat mFooterPreferenceMixin;
private PreferenceScreen mScreen;
public EnterpriseDisclosurePreferenceController(Context context) {
@@ -41,7 +41,7 @@
.getEnterprisePrivacyFeatureProvider(mContext);
}
- public void setFooterPreferenceMixin(FooterPreferenceMixin footerPreferenceMixin) {
+ public void setFooterPreferenceMixin(FooterPreferenceMixinCompat footerPreferenceMixin) {
mFooterPreferenceMixin = footerPreferenceMixin;
}
diff --git a/src/com/android/settings/applications/AppInfoBase.java b/src/com/android/settings/applications/AppInfoBase.java
index f5a34b1..4ee2fd8 100644
--- a/src/com/android/settings/applications/AppInfoBase.java
+++ b/src/com/android/settings/applications/AppInfoBase.java
@@ -93,7 +93,7 @@
mApplicationFeatureProvider = FeatureFactory.getFactory(activity)
.getApplicationFeatureProvider(activity);
mState = ApplicationsState.getInstance(activity.getApplication());
- mSession = mState.newSession(this, getLifecycle());
+ mSession = mState.newSession(this, getSettingsLifecycle());
mDpm = (DevicePolicyManager) activity.getSystemService(Context.DEVICE_POLICY_SERVICE);
mUserManager = (UserManager) activity.getSystemService(Context.USER_SERVICE);
mPm = activity.getPackageManager();
diff --git a/src/com/android/settings/applications/AppInfoWithHeader.java b/src/com/android/settings/applications/AppInfoWithHeader.java
index 9b6b708..2a4aeb8 100644
--- a/src/com/android/settings/applications/AppInfoWithHeader.java
+++ b/src/com/android/settings/applications/AppInfoWithHeader.java
@@ -44,7 +44,7 @@
final Activity activity = getActivity();
final Preference pref = EntityHeaderController
.newInstance(activity, this, null /* header */)
- .setRecyclerView(getListView(), getLifecycle())
+ .setRecyclerView(getListView(), getSettingsLifecycle())
.setIcon(IconDrawableFactory.newInstance(getContext())
.getBadgedIcon(mPackageInfo.applicationInfo))
.setLabel(mPackageInfo.applicationInfo.loadLabel(mPm))
diff --git a/src/com/android/settings/applications/DirectoryAccessDetails.java b/src/com/android/settings/applications/DirectoryAccessDetails.java
index 970a06d..02c33c0 100644
--- a/src/com/android/settings/applications/DirectoryAccessDetails.java
+++ b/src/com/android/settings/applications/DirectoryAccessDetails.java
@@ -99,7 +99,7 @@
final Activity activity = getActivity();
final Preference pref = EntityHeaderController
.newInstance(activity, this, /* header= */ null )
- .setRecyclerView(getListView(), getLifecycle())
+ .setRecyclerView(getListView(), getSettingsLifecycle())
.setIcon(IconDrawableFactory.newInstance(getPrefContext())
.getBadgedIcon(mPackageInfo.applicationInfo))
.setLabel(mPackageInfo.applicationInfo.loadLabel(mPm))
diff --git a/src/com/android/settings/applications/FetchPackageStorageAsyncLoader.java b/src/com/android/settings/applications/FetchPackageStorageAsyncLoader.java
index 9ff96c1..f3ad326 100644
--- a/src/com/android/settings/applications/FetchPackageStorageAsyncLoader.java
+++ b/src/com/android/settings/applications/FetchPackageStorageAsyncLoader.java
@@ -26,14 +26,14 @@
import com.android.internal.util.Preconditions;
import com.android.settingslib.applications.StorageStatsSource;
import com.android.settingslib.applications.StorageStatsSource.AppStorageStats;
-import com.android.settingslib.utils.AsyncLoader;
+import com.android.settingslib.utils.AsyncLoaderCompat;
import java.io.IOException;
/**
* Fetches the storage stats using the StorageStatsManager for a given package and user tuple.
*/
-public class FetchPackageStorageAsyncLoader extends AsyncLoader<AppStorageStats> {
+public class FetchPackageStorageAsyncLoader extends AsyncLoaderCompat<AppStorageStats> {
private static final String TAG = "FetchPackageStorage";
private final StorageStatsSource mSource;
private final ApplicationInfo mInfo;
diff --git a/src/com/android/settings/applications/ProcessStatsDetail.java b/src/com/android/settings/applications/ProcessStatsDetail.java
index 1d5fcd9..3331b1c 100644
--- a/src/com/android/settings/applications/ProcessStatsDetail.java
+++ b/src/com/android/settings/applications/ProcessStatsDetail.java
@@ -129,7 +129,7 @@
final Activity activity = getActivity();
final Preference pref = EntityHeaderController
.newInstance(activity, this, null /* appHeader */)
- .setRecyclerView(getListView(), getLifecycle())
+ .setRecyclerView(getListView(), getSettingsLifecycle())
.setIcon(mApp.mUiTargetApp != null
? IconDrawableFactory.newInstance(activity).getBadgedIcon(mApp.mUiTargetApp)
: new ColorDrawable(0))
diff --git a/src/com/android/settings/applications/appinfo/AppButtonsPreferenceController.java b/src/com/android/settings/applications/appinfo/AppButtonsPreferenceController.java
index a1aafed..69fa71d 100644
--- a/src/com/android/settings/applications/appinfo/AppButtonsPreferenceController.java
+++ b/src/com/android/settings/applications/appinfo/AppButtonsPreferenceController.java
@@ -568,7 +568,7 @@
private void showDialogInner(@ButtonActionDialogFragment.DialogType int id) {
ButtonActionDialogFragment newFragment = ButtonActionDialogFragment.newInstance(id);
newFragment.setTargetFragment(mFragment, 0);
- newFragment.show(mActivity.getFragmentManager(), "dialog " + id);
+ newFragment.show(mActivity.getSupportFragmentManager(), "dialog " + id);
}
/** Returns whether there is only one user on this device, not including the system-only user */
diff --git a/src/com/android/settings/applications/appinfo/AppDataUsagePreferenceController.java b/src/com/android/settings/applications/appinfo/AppDataUsagePreferenceController.java
index 925d982..61502d0 100644
--- a/src/com/android/settings/applications/appinfo/AppDataUsagePreferenceController.java
+++ b/src/com/android/settings/applications/appinfo/AppDataUsagePreferenceController.java
@@ -37,7 +37,7 @@
import com.android.settingslib.core.lifecycle.events.OnPause;
import com.android.settingslib.core.lifecycle.events.OnResume;
import com.android.settingslib.net.ChartData;
-import com.android.settingslib.net.ChartDataLoader;
+import com.android.settingslib.net.ChartDataLoaderCompat;
import androidx.annotation.VisibleForTesting;
import androidx.loader.app.LoaderManager;
@@ -86,7 +86,7 @@
final AppItem app = new AppItem(uid);
app.addUid(uid);
mParent.getLoaderManager().restartLoader(mParent.LOADER_CHART_DATA,
- ChartDataLoader.buildArgs(getTemplate(mContext), app),
+ ChartDataLoaderCompat.buildArgs(getTemplate(mContext), app),
this);
}
}
@@ -98,7 +98,7 @@
@Override
public Loader<ChartData> onCreateLoader(int id, Bundle args) {
- return new ChartDataLoader(mContext, mStatsSession, args);
+ return new ChartDataLoaderCompat(mContext, mStatsSession, args);
}
@Override
diff --git a/src/com/android/settings/applications/appinfo/AppInfoDashboardFragment.java b/src/com/android/settings/applications/appinfo/AppInfoDashboardFragment.java
index 80f01fc..4ef5b03 100755
--- a/src/com/android/settings/applications/appinfo/AppInfoDashboardFragment.java
+++ b/src/com/android/settings/applications/appinfo/AppInfoDashboardFragment.java
@@ -238,7 +238,7 @@
}
final String packageName = getPackageName();
final List<AbstractPreferenceController> controllers = new ArrayList<>();
- final Lifecycle lifecycle = getLifecycle();
+ final Lifecycle lifecycle = getSettingsLifecycle();
// The following are controllers for preferences that needs to refresh the preference state
// when app state changes.
@@ -524,7 +524,7 @@
}
if (mState == null) {
mState = ApplicationsState.getInstance(activity.getApplication());
- mSession = mState.newSession(this, getLifecycle());
+ mSession = mState.newSession(this, getSettingsLifecycle());
}
mUserId = UserHandle.myUserId();
mAppEntry = mState.getEntry(getPackageName(), UserHandle.myUserId());
diff --git a/src/com/android/settings/applications/assist/ManageAssist.java b/src/com/android/settings/applications/assist/ManageAssist.java
index cd85aca..8eb6a7f 100644
--- a/src/com/android/settings/applications/assist/ManageAssist.java
+++ b/src/com/android/settings/applications/assist/ManageAssist.java
@@ -54,7 +54,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildPreferenceControllers(context, getLifecycle());
+ return buildPreferenceControllers(context, getSettingsLifecycle());
}
@Override
diff --git a/src/com/android/settings/applications/defaultapps/DefaultAppPickerFragment.java b/src/com/android/settings/applications/defaultapps/DefaultAppPickerFragment.java
index 81606b8..d0493e9 100644
--- a/src/com/android/settings/applications/defaultapps/DefaultAppPickerFragment.java
+++ b/src/com/android/settings/applications/defaultapps/DefaultAppPickerFragment.java
@@ -16,7 +16,6 @@
package com.android.settings.applications.defaultapps;
-import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
@@ -36,6 +35,7 @@
import androidx.fragment.app.DialogFragment;
import androidx.fragment.app.Fragment;
+import androidx.fragment.app.FragmentActivity;
/**
* A generic app picker fragment that shows a list of app as radio button group.
@@ -54,13 +54,13 @@
public void onRadioButtonClicked(RadioButtonPreference selected) {
final String selectedKey = selected.getKey();
final CharSequence confirmationMessage = getConfirmationMessage(getCandidate(selectedKey));
- final Activity activity = getActivity();
+ final FragmentActivity activity = getActivity();
if (TextUtils.isEmpty(confirmationMessage)) {
super.onRadioButtonClicked(selected);
} else if (activity != null) {
final DialogFragment fragment =
newConfirmationDialogFragment(selectedKey, confirmationMessage);
- fragment.show(activity.getFragmentManager(), ConfirmationDialogFragment.TAG);
+ fragment.show(activity.getSupportFragmentManager(), ConfirmationDialogFragment.TAG);
}
}
diff --git a/src/com/android/settings/applications/managedomainurls/DomainAppPreferenceController.java b/src/com/android/settings/applications/managedomainurls/DomainAppPreferenceController.java
index a1b9ab5..cb89c9a 100644
--- a/src/com/android/settings/applications/managedomainurls/DomainAppPreferenceController.java
+++ b/src/com/android/settings/applications/managedomainurls/DomainAppPreferenceController.java
@@ -81,7 +81,7 @@
public void setFragment(ManageDomainUrls fragment) {
mFragment = fragment;
mMetricsCategory = fragment.getMetricsCategory();
- mSession = mApplicationsState.newSession(this, mFragment.getLifecycle());
+ mSession = mApplicationsState.newSession(this, mFragment.getSettingsLifecycle());
}
@Override
diff --git a/src/com/android/settings/applications/specialaccess/deviceadmin/DeviceAdminListPreferenceController.java b/src/com/android/settings/applications/specialaccess/deviceadmin/DeviceAdminListPreferenceController.java
index 2c94acc..fe4ae1d 100644
--- a/src/com/android/settings/applications/specialaccess/deviceadmin/DeviceAdminListPreferenceController.java
+++ b/src/com/android/settings/applications/specialaccess/deviceadmin/DeviceAdminListPreferenceController.java
@@ -45,7 +45,7 @@
import com.android.settingslib.core.lifecycle.events.OnStart;
import com.android.settingslib.core.lifecycle.events.OnStop;
import com.android.settingslib.widget.FooterPreference;
-import com.android.settingslib.widget.FooterPreferenceMixin;
+import com.android.settingslib.widget.FooterPreferenceMixinCompat;
import java.util.ArrayList;
import java.util.Collection;
@@ -88,7 +88,7 @@
};
private PreferenceGroup mPreferenceGroup;
- private FooterPreferenceMixin mFooterPreferenceMixin;
+ private FooterPreferenceMixinCompat mFooterPreferenceMixin;
static {
FILTER.addAction(ACTION_DEVICE_POLICY_MANAGER_STATE_CHANGED);
@@ -103,7 +103,7 @@
}
public DeviceAdminListPreferenceController setFooterPreferenceMixin(
- FooterPreferenceMixin mixin) {
+ FooterPreferenceMixinCompat mixin) {
mFooterPreferenceMixin = mixin;
return this;
}
diff --git a/src/com/android/settings/applications/specialaccess/premiumsms/PremiumSmsAccess.java b/src/com/android/settings/applications/specialaccess/premiumsms/PremiumSmsAccess.java
index dd940db..b768063 100644
--- a/src/com/android/settings/applications/specialaccess/premiumsms/PremiumSmsAccess.java
+++ b/src/com/android/settings/applications/specialaccess/premiumsms/PremiumSmsAccess.java
@@ -63,7 +63,7 @@
super.onCreate(icicle);
mApplicationsState = ApplicationsState.getInstance((Application)
getContext().getApplicationContext());
- mSession = mApplicationsState.newSession(this, getLifecycle());
+ mSession = mApplicationsState.newSession(this, getSettingsLifecycle());
mSmsBackend = new AppStateSmsPremBridge(getContext(), mApplicationsState, this);
}
diff --git a/src/com/android/settings/backup/BackupSettingsActivity.java b/src/com/android/settings/backup/BackupSettingsActivity.java
index 3d48cdd..c17d1e7 100644
--- a/src/com/android/settings/backup/BackupSettingsActivity.java
+++ b/src/com/android/settings/backup/BackupSettingsActivity.java
@@ -16,7 +16,6 @@
package com.android.settings.backup;
-import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
@@ -34,6 +33,7 @@
import java.util.List;
import androidx.annotation.VisibleForTesting;
+import androidx.fragment.app.FragmentActivity;
import androidx.fragment.app.FragmentManager;
@@ -42,7 +42,7 @@
* if the manufacturer provided their backup settings.
*/
@SearchIndexable
-public class BackupSettingsActivity extends Activity implements Indexable {
+public class BackupSettingsActivity extends FragmentActivity implements Indexable {
private static final String TAG = "BackupSettingsActivity";
private FragmentManager mFragmentManager;
@@ -81,7 +81,7 @@
}
// mFragmentManager can be set by {@link #setFragmentManager()} for testing
if (mFragmentManager == null) {
- mFragmentManager = getFragmentManager();
+ mFragmentManager = getSupportFragmentManager();
}
mFragmentManager.beginTransaction()
.replace(android.R.id.content, new BackupSettingsFragment())
diff --git a/src/com/android/settings/biometrics/BiometricsEnrollEnrolling.java b/src/com/android/settings/biometrics/BiometricsEnrollEnrolling.java
index ab3cd84..ec7d120 100644
--- a/src/com/android/settings/biometrics/BiometricsEnrollEnrolling.java
+++ b/src/com/android/settings/biometrics/BiometricsEnrollEnrolling.java
@@ -73,7 +73,8 @@
if (shouldFinishOnStop() && !isChangingConfigurations()) {
if (mSidecar != null) {
mSidecar.cancelEnrollment();
- getFragmentManager().beginTransaction().remove(mSidecar).commitAllowingStateLoss();
+ getSupportFragmentManager()
+ .beginTransaction().remove(mSidecar).commitAllowingStateLoss();
}
finish();
}
@@ -84,7 +85,8 @@
if (mSidecar != null) {
mSidecar.setListener(null);
mSidecar.cancelEnrollment();
- getFragmentManager().beginTransaction().remove(mSidecar).commitAllowingStateLoss();
+ getSupportFragmentManager()
+ .beginTransaction().remove(mSidecar).commitAllowingStateLoss();
mSidecar = null;
}
super.onBackPressed();
@@ -103,10 +105,11 @@
}
public void startEnrollment() {
- mSidecar = (BiometricEnrollSidecar) getFragmentManager().findFragmentByTag(TAG_SIDECAR);
+ mSidecar = (BiometricEnrollSidecar) getSupportFragmentManager()
+ .findFragmentByTag(TAG_SIDECAR);
if (mSidecar == null) {
mSidecar = getSidecar();
- getFragmentManager().beginTransaction().add(mSidecar, TAG_SIDECAR).commit();
+ getSupportFragmentManager().beginTransaction().add(mSidecar, TAG_SIDECAR).commit();
}
mSidecar.setListener(this);
}
diff --git a/src/com/android/settings/biometrics/face/FaceEnrollEnrolling.java b/src/com/android/settings/biometrics/face/FaceEnrollEnrolling.java
index ad92c8d..9786363 100644
--- a/src/com/android/settings/biometrics/face/FaceEnrollEnrolling.java
+++ b/src/com/android/settings/biometrics/face/FaceEnrollEnrolling.java
@@ -31,8 +31,8 @@
import com.android.settings.R;
import com.android.settings.Utils;
import com.android.settings.biometrics.BiometricEnrollSidecar;
-import com.android.settings.biometrics.BiometricsEnrollEnrolling;
import com.android.settings.biometrics.BiometricErrorDialog;
+import com.android.settings.biometrics.BiometricsEnrollEnrolling;
import com.android.settings.password.ChooseLockSettingsHelper;
@@ -166,7 +166,7 @@
private void showErrorDialog(CharSequence msg, int msgId) {
BiometricErrorDialog dialog = FaceErrorDialog.newInstance(msg, msgId);
- dialog.show(getFragmentManager(), FaceErrorDialog.class.getName());
+ dialog.show(getSupportFragmentManager(), FaceErrorDialog.class.getName());
}
private void showError(CharSequence error) {
diff --git a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollEnrolling.java b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollEnrolling.java
index 3d4c5d4..56d96ce 100644
--- a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollEnrolling.java
+++ b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollEnrolling.java
@@ -303,12 +303,12 @@
private void showErrorDialog(CharSequence msg, int msgId) {
BiometricErrorDialog dlg = FingerprintErrorDialog.newInstance(msg, msgId);
- dlg.show(getFragmentManager(), FingerprintErrorDialog.class.getName());
+ dlg.show(getSupportFragmentManager(), FingerprintErrorDialog.class.getName());
}
private void showIconTouchDialog() {
mIconTouchCount = 0;
- new IconTouchDialog().show(getFragmentManager(), null /* tag */);
+ new IconTouchDialog().show(getSupportFragmentManager(), null /* tag */);
}
private void showError(CharSequence error) {
diff --git a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollFindSensor.java b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollFindSensor.java
index 93a8d6e..d2975ef 100644
--- a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollFindSensor.java
+++ b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollFindSensor.java
@@ -78,11 +78,11 @@
}
private void startLookingForFingerprint() {
- mSidecar = (FingerprintEnrollSidecar) getFragmentManager().findFragmentByTag(
+ mSidecar = (FingerprintEnrollSidecar) getSupportFragmentManager().findFragmentByTag(
FingerprintEnrollEnrolling.TAG_SIDECAR);
if (mSidecar == null) {
mSidecar = new FingerprintEnrollSidecar();
- getFragmentManager().beginTransaction()
+ getSupportFragmentManager().beginTransaction()
.add(mSidecar, FingerprintEnrollEnrolling.TAG_SIDECAR).commit();
}
mSidecar.setListener(new Listener() {
@@ -148,7 +148,8 @@
return;
}
}
- getFragmentManager().beginTransaction().remove(mSidecar).commitAllowingStateLoss();
+ getSupportFragmentManager().beginTransaction().remove(mSidecar).
+ commitAllowingStateLoss();
mSidecar = null;
startActivityForResult(getFingerprintEnrollingIntent(), ENROLLING);
}
diff --git a/src/com/android/settings/biometrics/fingerprint/SetupFingerprintEnrollFindSensor.java b/src/com/android/settings/biometrics/fingerprint/SetupFingerprintEnrollFindSensor.java
index 93e3b0d2..4529277 100644
--- a/src/com/android/settings/biometrics/fingerprint/SetupFingerprintEnrollFindSensor.java
+++ b/src/com/android/settings/biometrics/fingerprint/SetupFingerprintEnrollFindSensor.java
@@ -54,7 +54,7 @@
@Override
protected void onSkipButtonClick() {
- new SkipFingerprintDialog().show(getFragmentManager());
+ new SkipFingerprintDialog().show(getSupportFragmentManager());
}
@Override
diff --git a/src/com/android/settings/bluetooth/BluetoothDetailsButtonsController.java b/src/com/android/settings/bluetooth/BluetoothDetailsButtonsController.java
index 4993151..d7249b3 100644
--- a/src/com/android/settings/bluetooth/BluetoothDetailsButtonsController.java
+++ b/src/com/android/settings/bluetooth/BluetoothDetailsButtonsController.java
@@ -23,6 +23,7 @@
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
import com.android.settingslib.core.lifecycle.Lifecycle;
+import androidx.preference.PreferenceFragmentCompat;
import androidx.preference.PreferenceScreen;
/**
@@ -36,7 +37,7 @@
private boolean mConnectButtonInitialized;
private ActionButtonPreference mActionButtons;
- public BluetoothDetailsButtonsController(Context context, PreferenceFragment fragment,
+ public BluetoothDetailsButtonsController(Context context, PreferenceFragmentCompat fragment,
CachedBluetoothDevice device, Lifecycle lifecycle) {
super(context, fragment, device, lifecycle);
mIsConnected = device.isConnected();
diff --git a/src/com/android/settings/bluetooth/BluetoothDetailsController.java b/src/com/android/settings/bluetooth/BluetoothDetailsController.java
index 623c433..deb38fd 100644
--- a/src/com/android/settings/bluetooth/BluetoothDetailsController.java
+++ b/src/com/android/settings/bluetooth/BluetoothDetailsController.java
@@ -26,6 +26,7 @@
import com.android.settingslib.core.lifecycle.events.OnPause;
import com.android.settingslib.core.lifecycle.events.OnResume;
+import androidx.preference.PreferenceFragmentCompat;
import androidx.preference.PreferenceScreen;
/**
@@ -37,10 +38,10 @@
OnPause, OnResume {
protected final Context mContext;
- protected final PreferenceFragment mFragment;
+ protected final PreferenceFragmentCompat mFragment;
protected final CachedBluetoothDevice mCachedDevice;
- public BluetoothDetailsController(Context context, PreferenceFragment fragment,
+ public BluetoothDetailsController(Context context, PreferenceFragmentCompat fragment,
CachedBluetoothDevice device, Lifecycle lifecycle) {
super(context);
mContext = context;
diff --git a/src/com/android/settings/bluetooth/BluetoothDetailsHeaderController.java b/src/com/android/settings/bluetooth/BluetoothDetailsHeaderController.java
index 16b54bb..9ff3dc2 100644
--- a/src/com/android/settings/bluetooth/BluetoothDetailsHeaderController.java
+++ b/src/com/android/settings/bluetooth/BluetoothDetailsHeaderController.java
@@ -30,6 +30,7 @@
import com.android.settingslib.bluetooth.LocalBluetoothManager;
import com.android.settingslib.core.lifecycle.Lifecycle;
+import androidx.preference.PreferenceFragmentCompat;
import androidx.preference.PreferenceScreen;
/**
@@ -42,7 +43,7 @@
private LocalBluetoothManager mLocalManager;
private CachedBluetoothDeviceManager mDeviceManager;
- public BluetoothDetailsHeaderController(Context context, PreferenceFragment fragment,
+ public BluetoothDetailsHeaderController(Context context, PreferenceFragmentCompat fragment,
CachedBluetoothDevice device, Lifecycle lifecycle,
LocalBluetoothManager bluetoothManager) {
super(context, fragment, device, lifecycle);
diff --git a/src/com/android/settings/bluetooth/BluetoothDetailsMacAddressController.java b/src/com/android/settings/bluetooth/BluetoothDetailsMacAddressController.java
index 0cb7328..b48a59f 100644
--- a/src/com/android/settings/bluetooth/BluetoothDetailsMacAddressController.java
+++ b/src/com/android/settings/bluetooth/BluetoothDetailsMacAddressController.java
@@ -22,23 +22,24 @@
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.widget.FooterPreference;
-import com.android.settingslib.widget.FooterPreferenceMixin;
+import com.android.settingslib.widget.FooterPreferenceMixinCompat;
+import androidx.preference.PreferenceFragmentCompat;
import androidx.preference.PreferenceScreen;
/**
* This class adds the device MAC address to a footer.
*/
public class BluetoothDetailsMacAddressController extends BluetoothDetailsController {
- FooterPreferenceMixin mFooterPreferenceMixin;
+ FooterPreferenceMixinCompat mFooterPreferenceMixin;
FooterPreference mFooterPreference;
public BluetoothDetailsMacAddressController(Context context,
- PreferenceFragment fragment,
+ PreferenceFragmentCompat fragment,
CachedBluetoothDevice device,
Lifecycle lifecycle) {
super(context, fragment, device, lifecycle);
- mFooterPreferenceMixin = new FooterPreferenceMixin(fragment, lifecycle);
+ mFooterPreferenceMixin = new FooterPreferenceMixinCompat(fragment, lifecycle);
}
@Override
diff --git a/src/com/android/settings/bluetooth/BluetoothDetailsProfilesController.java b/src/com/android/settings/bluetooth/BluetoothDetailsProfilesController.java
index 2290649..a26e961 100644
--- a/src/com/android/settings/bluetooth/BluetoothDetailsProfilesController.java
+++ b/src/com/android/settings/bluetooth/BluetoothDetailsProfilesController.java
@@ -36,6 +36,7 @@
import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference;
import androidx.preference.PreferenceCategory;
+import androidx.preference.PreferenceFragmentCompat;
import androidx.preference.PreferenceScreen;
import androidx.preference.SwitchPreference;
@@ -55,7 +56,7 @@
private CachedBluetoothDevice mCachedDevice;
private PreferenceCategory mProfilesContainer;
- public BluetoothDetailsProfilesController(Context context, PreferenceFragment fragment,
+ public BluetoothDetailsProfilesController(Context context, PreferenceFragmentCompat fragment,
LocalBluetoothManager manager, CachedBluetoothDevice device, Lifecycle lifecycle) {
super(context, fragment, device, lifecycle);
mManager = manager;
diff --git a/src/com/android/settings/bluetooth/BluetoothDeviceDetailsFragment.java b/src/com/android/settings/bluetooth/BluetoothDeviceDetailsFragment.java
index 7083137..719a61b 100644
--- a/src/com/android/settings/bluetooth/BluetoothDeviceDetailsFragment.java
+++ b/src/com/android/settings/bluetooth/BluetoothDeviceDetailsFragment.java
@@ -120,7 +120,7 @@
ArrayList<AbstractPreferenceController> controllers = new ArrayList<>();
if (mCachedDevice != null) {
- Lifecycle lifecycle = getLifecycle();
+ Lifecycle lifecycle = getSettingsLifecycle();
controllers.add(new BluetoothDetailsHeaderController(context, this, mCachedDevice,
lifecycle, mManager));
controllers.add(new BluetoothDetailsButtonsController(context, this, mCachedDevice,
diff --git a/src/com/android/settings/bluetooth/BluetoothPairingDialog.java b/src/com/android/settings/bluetooth/BluetoothPairingDialog.java
index 8133005..060c174 100644
--- a/src/com/android/settings/bluetooth/BluetoothPairingDialog.java
+++ b/src/com/android/settings/bluetooth/BluetoothPairingDialog.java
@@ -17,7 +17,6 @@
package com.android.settings.bluetooth;
import android.annotation.Nullable;
-import android.app.Activity;
import android.bluetooth.BluetoothDevice;
import android.content.BroadcastReceiver;
import android.content.Context;
@@ -26,12 +25,13 @@
import android.os.Bundle;
import androidx.annotation.VisibleForTesting;
+import androidx.fragment.app.FragmentActivity;
/**
* BluetoothPairingDialog asks the user to enter a PIN / Passkey / simple confirmation
* for pairing with a remote Bluetooth device. It is an activity that appears as a dialog.
*/
-public class BluetoothPairingDialog extends Activity {
+public class BluetoothPairingDialog extends FragmentActivity {
public static final String FRAGMENT_TAG = "bluetooth.pairing.fragment";
private BluetoothPairingController mBluetoothPairingController;
@@ -70,7 +70,8 @@
boolean fragmentFound = true;
// check if the fragment has been preloaded
BluetoothPairingDialogFragment bluetoothFragment =
- (BluetoothPairingDialogFragment) getFragmentManager().findFragmentByTag(FRAGMENT_TAG);
+ (BluetoothPairingDialogFragment) getSupportFragmentManager().
+ findFragmentByTag(FRAGMENT_TAG);
// dismiss the fragment if it is already used
if (bluetoothFragment != null && (bluetoothFragment.isPairingControllerSet()
|| bluetoothFragment.isPairingDialogActivitySet())) {
@@ -86,7 +87,7 @@
bluetoothFragment.setPairingDialogActivity(this);
// pass the fragment to the manager when it is created from scratch
if (!fragmentFound) {
- bluetoothFragment.show(getFragmentManager(), FRAGMENT_TAG);
+ bluetoothFragment.show(getSupportFragmentManager(), FRAGMENT_TAG);
}
/*
* Leave this registered through pause/resume since we still want to
diff --git a/src/com/android/settings/connecteddevice/AdvancedConnectedDeviceDashboardFragment.java b/src/com/android/settings/connecteddevice/AdvancedConnectedDeviceDashboardFragment.java
index e9d291d..e58ac1f 100644
--- a/src/com/android/settings/connecteddevice/AdvancedConnectedDeviceDashboardFragment.java
+++ b/src/com/android/settings/connecteddevice/AdvancedConnectedDeviceDashboardFragment.java
@@ -66,7 +66,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildControllers(context, getLifecycle());
+ return buildControllers(context, getSettingsLifecycle());
}
private static List<AbstractPreferenceController> buildControllers(Context context,
diff --git a/src/com/android/settings/connecteddevice/BluetoothDashboardFragment.java b/src/com/android/settings/connecteddevice/BluetoothDashboardFragment.java
index a8d92a9..b5a9ffb 100644
--- a/src/com/android/settings/connecteddevice/BluetoothDashboardFragment.java
+++ b/src/com/android/settings/connecteddevice/BluetoothDashboardFragment.java
@@ -92,7 +92,7 @@
mSwitchBar = activity.getSwitchBar();
mController = new BluetoothSwitchPreferenceController(activity,
new SwitchBarController(mSwitchBar), mFooterPreference);
- Lifecycle lifecycle = getLifecycle();
+ Lifecycle lifecycle = getSettingsLifecycle();
if (lifecycle != null) {
lifecycle.addObserver(mController);
}
diff --git a/src/com/android/settings/connecteddevice/ConnectedDeviceDashboardFragment.java b/src/com/android/settings/connecteddevice/ConnectedDeviceDashboardFragment.java
index 27dcac4..380e8a5 100644
--- a/src/com/android/settings/connecteddevice/ConnectedDeviceDashboardFragment.java
+++ b/src/com/android/settings/connecteddevice/ConnectedDeviceDashboardFragment.java
@@ -66,7 +66,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildPreferenceControllers(context, getLifecycle());
+ return buildPreferenceControllers(context, getSettingsLifecycle());
}
private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
diff --git a/src/com/android/settings/connecteddevice/DiscoverableFooterPreferenceController.java b/src/com/android/settings/connecteddevice/DiscoverableFooterPreferenceController.java
index 384ec48..e5e1a70 100644
--- a/src/com/android/settings/connecteddevice/DiscoverableFooterPreferenceController.java
+++ b/src/com/android/settings/connecteddevice/DiscoverableFooterPreferenceController.java
@@ -36,7 +36,7 @@
import com.android.settingslib.core.lifecycle.events.OnPause;
import com.android.settingslib.core.lifecycle.events.OnResume;
import com.android.settingslib.widget.FooterPreference;
-import com.android.settingslib.widget.FooterPreferenceMixin;
+import com.android.settingslib.widget.FooterPreferenceMixinCompat;
import androidx.annotation.VisibleForTesting;
import androidx.preference.PreferenceScreen;
@@ -52,7 +52,7 @@
BroadcastReceiver mBluetoothChangedReceiver;
@VisibleForTesting
LocalBluetoothManager mLocalManager;
- private FooterPreferenceMixin mFooterPreferenceMixin;
+ private FooterPreferenceMixinCompat mFooterPreferenceMixin;
private FooterPreference mPreference;
private LocalBluetoothAdapter mLocalAdapter;
private AlwaysDiscoverable mAlwaysDiscoverable;
@@ -82,11 +82,12 @@
}
public void init(DashboardFragment fragment) {
- mFooterPreferenceMixin = new FooterPreferenceMixin(fragment, fragment.getLifecycle());
+ mFooterPreferenceMixin = new FooterPreferenceMixinCompat(fragment,
+ fragment.getSettingsLifecycle());
}
@VisibleForTesting
- void init(FooterPreferenceMixin footerPreferenceMixin, FooterPreference preference,
+ void init(FooterPreferenceMixinCompat footerPreferenceMixin, FooterPreference preference,
AlwaysDiscoverable alwaysDiscoverable) {
mFooterPreferenceMixin = footerPreferenceMixin;
mPreference = preference;
diff --git a/src/com/android/settings/connecteddevice/usb/UsbDefaultFragment.java b/src/com/android/settings/connecteddevice/usb/UsbDefaultFragment.java
index e1b3d70..a37a78c 100644
--- a/src/com/android/settings/connecteddevice/usb/UsbDefaultFragment.java
+++ b/src/com/android/settings/connecteddevice/usb/UsbDefaultFragment.java
@@ -27,7 +27,7 @@
import com.android.settings.widget.RadioButtonPickerFragment;
import com.android.settingslib.widget.CandidateInfo;
import com.android.settingslib.widget.FooterPreference;
-import com.android.settingslib.widget.FooterPreferenceMixin;
+import com.android.settingslib.widget.FooterPreferenceMixinCompat;
import com.google.android.collect.Lists;
@@ -49,7 +49,8 @@
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
super.onCreatePreferences(savedInstanceState, rootKey);
- FooterPreferenceMixin footer = new FooterPreferenceMixin(this, this.getLifecycle());
+ FooterPreferenceMixinCompat footer = new FooterPreferenceMixinCompat(this,
+ this.getSettingsLifecycle());
FooterPreference pref = footer.createFooterPreference();
pref.setTitle(R.string.usb_default_info);
}
diff --git a/src/com/android/settings/connecteddevice/usb/UsbDetailsFragment.java b/src/com/android/settings/connecteddevice/usb/UsbDetailsFragment.java
index 7b1026c..8fd0902 100644
--- a/src/com/android/settings/connecteddevice/usb/UsbDetailsFragment.java
+++ b/src/com/android/settings/connecteddevice/usb/UsbDetailsFragment.java
@@ -85,7 +85,7 @@
mControllers = createControllerList(context, mUsbBackend, this);
mUsbReceiver = new UsbConnectionBroadcastReceiver(context, mUsbConnectionListener,
mUsbBackend);
- this.getLifecycle().addObserver(mUsbReceiver);
+ this.getSettingsLifecycle().addObserver(mUsbReceiver);
return new ArrayList<>(mControllers);
}
diff --git a/src/com/android/settings/core/InstrumentedActivity.java b/src/com/android/settings/core/InstrumentedActivity.java
index 5ec8505..be350a8 100644
--- a/src/com/android/settings/core/InstrumentedActivity.java
+++ b/src/com/android/settings/core/InstrumentedActivity.java
@@ -32,7 +32,7 @@
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Mixin that logs visibility change for activity.
- getLifecycle().addObserver(new VisibilityLoggerMixin(getMetricsCategory(),
+ getSettingsLifecycle().addObserver(new VisibilityLoggerMixin(getMetricsCategory(),
FeatureFactory.getFactory(this).getMetricsFeatureProvider()));
}
}
diff --git a/src/com/android/settings/core/InstrumentedFragment.java b/src/com/android/settings/core/InstrumentedFragment.java
index b1215b9..427e33a 100644
--- a/src/com/android/settings/core/InstrumentedFragment.java
+++ b/src/com/android/settings/core/InstrumentedFragment.java
@@ -37,8 +37,8 @@
mVisibilityLoggerMixin = new VisibilityLoggerMixin(getMetricsCategory(),
mMetricsFeatureProvider);
// Mixin that logs visibility change for activity.
- getLifecycle().addObserver(mVisibilityLoggerMixin);
- getLifecycle().addObserver(new SurveyMixin(this, getClass().getSimpleName()));
+ getSettingsLifecycle().addObserver(mVisibilityLoggerMixin);
+ getSettingsLifecycle().addObserver(new SurveyMixin(this, getClass().getSimpleName()));
super.onAttach(context);
}
diff --git a/src/com/android/settings/core/InstrumentedPreferenceFragment.java b/src/com/android/settings/core/InstrumentedPreferenceFragment.java
index 30157e9..2bcf895 100644
--- a/src/com/android/settings/core/InstrumentedPreferenceFragment.java
+++ b/src/com/android/settings/core/InstrumentedPreferenceFragment.java
@@ -53,8 +53,8 @@
// Mixin that logs visibility change for activity.
mVisibilityLoggerMixin = new VisibilityLoggerMixin(getMetricsCategory(),
mMetricsFeatureProvider);
- getLifecycle().addObserver(mVisibilityLoggerMixin);
- getLifecycle().addObserver(new SurveyMixin(this, getClass().getSimpleName()));
+ getSettingsLifecycle().addObserver(mVisibilityLoggerMixin);
+ getSettingsLifecycle().addObserver(new SurveyMixin(this, getClass().getSimpleName()));
super.onAttach(context);
}
diff --git a/src/com/android/settings/dashboard/DashboardAdapter.java b/src/com/android/settings/dashboard/DashboardAdapter.java
index 936164c..a76414d 100644
--- a/src/com/android/settings/dashboard/DashboardAdapter.java
+++ b/src/com/android/settings/dashboard/DashboardAdapter.java
@@ -45,7 +45,7 @@
import com.android.settingslib.drawer.DashboardCategory;
import com.android.settingslib.drawer.Tile;
import com.android.settingslib.drawer.TileUtils;
-import com.android.settingslib.suggestions.SuggestionControllerMixin;
+import com.android.settingslib.suggestions.SuggestionControllerMixinCompat;
import com.android.settingslib.utils.IconCache;
import java.util.List;
@@ -84,7 +84,7 @@
};
public DashboardAdapter(Context context, Bundle savedInstanceState,
- List<Condition> conditions, SuggestionControllerMixin suggestionControllerMixin,
+ List<Condition> conditions, SuggestionControllerMixinCompat suggestionControllerMixin,
Lifecycle lifecycle) {
DashboardCategory category = null;
diff --git a/src/com/android/settings/dashboard/DashboardFragment.java b/src/com/android/settings/dashboard/DashboardFragment.java
index 67ffb76..2a962c1 100644
--- a/src/com/android/settings/dashboard/DashboardFragment.java
+++ b/src/com/android/settings/dashboard/DashboardFragment.java
@@ -89,7 +89,7 @@
controllers.addAll(uniqueControllerFromXml);
// And wire up with lifecycle.
- final Lifecycle lifecycle = getLifecycle();
+ final Lifecycle lifecycle = getSettingsLifecycle();
uniqueControllerFromXml
.stream()
.filter(controller -> controller instanceof LifecycleObserver)
diff --git a/src/com/android/settings/dashboard/DashboardSummary.java b/src/com/android/settings/dashboard/DashboardSummary.java
index 00e18c5..c6b69e9 100644
--- a/src/com/android/settings/dashboard/DashboardSummary.java
+++ b/src/com/android/settings/dashboard/DashboardSummary.java
@@ -41,7 +41,7 @@
import com.android.settings.widget.ActionBarShadowController;
import com.android.settingslib.drawer.CategoryKey;
import com.android.settingslib.drawer.DashboardCategory;
-import com.android.settingslib.suggestions.SuggestionControllerMixin;
+import com.android.settingslib.suggestions.SuggestionControllerMixinCompat;
import com.android.settingslib.utils.ThreadUtils;
import java.util.List;
@@ -53,7 +53,7 @@
public class DashboardSummary extends InstrumentedFragment
implements CategoryListener, ConditionListener,
- FocusListener, SuggestionControllerMixin.SuggestionControllerHost {
+ FocusListener, SuggestionControllerMixinCompat.SuggestionControllerHost {
public static final boolean DEBUG = false;
private static final boolean DEBUG_TIMING = false;
private static final int MAX_WAIT_MILLIS = 3000;
@@ -69,7 +69,7 @@
private SummaryLoader mSummaryLoader;
private ConditionManager mConditionManager;
private LinearLayoutManager mLayoutManager;
- private SuggestionControllerMixin mSuggestionControllerMixin;
+ private SuggestionControllerMixinCompat mSuggestionControllerMixin;
private DashboardFeatureProvider mDashboardFeatureProvider;
@VisibleForTesting
boolean mIsOnCategoriesChangedCalled;
@@ -86,14 +86,14 @@
@Override
public void onAttach(Context context) {
super.onAttach(context);
- Log.d(TAG, "Creating SuggestionControllerMixin");
+ Log.d(TAG, "Creating SuggestionControllerMixinCompat");
final SuggestionFeatureProvider suggestionFeatureProvider = FeatureFactory
.getFactory(context)
.getSuggestionFeatureProvider(context);
if (suggestionFeatureProvider.isSuggestionEnabled(context)) {
- mSuggestionControllerMixin = new SuggestionControllerMixin(context, this /* host */,
- getLifecycle(), suggestionFeatureProvider
- .getSuggestionServiceComponent());
+ mSuggestionControllerMixin = new SuggestionControllerMixinCompat(
+ context, this /* host */, getSettingsLifecycle(),
+ suggestionFeatureProvider.getSuggestionServiceComponent());
}
}
@@ -117,7 +117,7 @@
mSummaryLoader = new SummaryLoader(activity, CategoryKey.CATEGORY_HOMEPAGE);
mConditionManager = ConditionManager.get(activity, false);
- getLifecycle().addObserver(mConditionManager);
+ getSettingsLifecycle().addObserver(mConditionManager);
if (savedInstanceState != null) {
mIsOnCategoriesChangedCalled =
savedInstanceState.getBoolean(STATE_CATEGORIES_CHANGE_CALLED);
@@ -209,11 +209,13 @@
mDashboard.setListener(this);
mDashboard.setItemAnimator(new DashboardItemAnimator());
mAdapter = new DashboardAdapter(getContext(), bundle,
- mConditionManager.getConditions(), mSuggestionControllerMixin, getLifecycle());
+ mConditionManager.getConditions(), mSuggestionControllerMixin,
+ getSettingsLifecycle());
mDashboard.setAdapter(mAdapter);
mSummaryLoader.setSummaryConsumer(mAdapter);
ActionBarShadowController.attachToRecyclerView(
- getActivity().findViewById(R.id.search_bar_container), getLifecycle(), mDashboard);
+ getActivity().findViewById(R.id.search_bar_container), getSettingsLifecycle(),
+ mDashboard);
rebuildUI();
if (DEBUG_TIMING) {
Log.d(TAG, "onCreateView took "
diff --git a/src/com/android/settings/dashboard/suggestions/SuggestionAdapter.java b/src/com/android/settings/dashboard/suggestions/SuggestionAdapter.java
index 9b964e1..95d1502 100644
--- a/src/com/android/settings/dashboard/suggestions/SuggestionAdapter.java
+++ b/src/com/android/settings/dashboard/suggestions/SuggestionAdapter.java
@@ -41,7 +41,7 @@
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnSaveInstanceState;
-import com.android.settingslib.suggestions.SuggestionControllerMixin;
+import com.android.settingslib.suggestions.SuggestionControllerMixinCompat;
import com.android.settingslib.utils.IconCache;
import java.util.ArrayList;
@@ -63,7 +63,7 @@
private final IconCache mCache;
private final ArrayList<String> mSuggestionsShownLogged;
private final SuggestionFeatureProvider mSuggestionFeatureProvider;
- private final SuggestionControllerMixin mSuggestionControllerMixin;
+ private final SuggestionControllerMixinCompat mSuggestionControllerMixin;
private final Callback mCallback;
private final CardConfig mConfig;
@@ -76,8 +76,9 @@
void onSuggestionClosed(Suggestion suggestion);
}
- public SuggestionAdapter(Context context, SuggestionControllerMixin suggestionControllerMixin,
- Bundle savedInstanceState, Callback callback, Lifecycle lifecycle) {
+ public SuggestionAdapter(Context context,
+ SuggestionControllerMixinCompat suggestionControllerMixin, Bundle savedInstanceState,
+ Callback callback, Lifecycle lifecycle) {
mContext = context;
mSuggestionControllerMixin = suggestionControllerMixin;
mCache = new IconCache(context);
diff --git a/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProvider.java b/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProvider.java
index ce2d118..1564b9f 100644
--- a/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProvider.java
+++ b/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProvider.java
@@ -23,7 +23,7 @@
import android.util.Pair;
import com.android.settingslib.drawer.Tile;
-import com.android.settingslib.suggestions.SuggestionControllerMixin;
+import com.android.settingslib.suggestions.SuggestionControllerMixinCompat;
import java.util.List;
@@ -63,7 +63,7 @@
/**
* Dismisses a suggestion.
*/
- void dismissSuggestion(Context context, SuggestionControllerMixin suggestionMixin,
+ void dismissSuggestion(Context context, SuggestionControllerMixinCompat suggestionMixin,
Suggestion suggestion);
/**
diff --git a/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImpl.java b/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImpl.java
index 14e4c36..1601f19 100644
--- a/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImpl.java
+++ b/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImpl.java
@@ -39,7 +39,7 @@
import com.android.settings.wifi.calling.WifiCallingSuggestionActivity;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.drawer.Tile;
-import com.android.settingslib.suggestions.SuggestionControllerMixin;
+import com.android.settingslib.suggestions.SuggestionControllerMixinCompat;
import java.util.List;
@@ -119,7 +119,7 @@
}
@Override
- public void dismissSuggestion(Context context, SuggestionControllerMixin mixin,
+ public void dismissSuggestion(Context context, SuggestionControllerMixinCompat mixin,
Suggestion suggestion) {
if (mixin == null || suggestion == null || context == null) {
return;
diff --git a/src/com/android/settings/datausage/AppDataUsage.java b/src/com/android/settings/datausage/AppDataUsage.java
index a7ec7de..ed1920c 100644
--- a/src/com/android/settings/datausage/AppDataUsage.java
+++ b/src/com/android/settings/datausage/AppDataUsage.java
@@ -45,7 +45,7 @@
import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
import com.android.settingslib.RestrictedSwitchPreference;
import com.android.settingslib.net.ChartData;
-import com.android.settingslib.net.ChartDataLoader;
+import com.android.settingslib.net.ChartDataLoaderCompat;
import com.android.settingslib.net.UidDetail;
import com.android.settingslib.net.UidDetailProvider;
@@ -222,7 +222,7 @@
}
mPolicy = services.mPolicyEditor.getPolicy(mTemplate);
getLoaderManager().restartLoader(LOADER_CHART_DATA,
- ChartDataLoader.buildArgs(mTemplate, mAppItem), mChartDataCallbacks);
+ ChartDataLoaderCompat.buildArgs(mTemplate, mAppItem), mChartDataCallbacks);
updatePrefs();
}
@@ -345,7 +345,7 @@
final Activity activity = getActivity();
final Preference pref = EntityHeaderController
.newInstance(activity, this, null /* header */)
- .setRecyclerView(getListView(), getLifecycle())
+ .setRecyclerView(getListView(), getSettingsLifecycle())
.setUid(uid)
.setHasAppInfoLink(showInfoButton)
.setButtonActions(EntityHeaderController.ActionType.ACTION_NONE,
@@ -383,7 +383,7 @@
new LoaderManager.LoaderCallbacks<ChartData>() {
@Override
public Loader<ChartData> onCreateLoader(int id, Bundle args) {
- return new ChartDataLoader(getActivity(), mStatsSession, args);
+ return new ChartDataLoaderCompat(getActivity(), mStatsSession, args);
}
@Override
diff --git a/src/com/android/settings/datausage/AppPrefLoader.java b/src/com/android/settings/datausage/AppPrefLoader.java
index 63c5c53..501d142 100644
--- a/src/com/android/settings/datausage/AppPrefLoader.java
+++ b/src/com/android/settings/datausage/AppPrefLoader.java
@@ -21,11 +21,11 @@
import android.content.pm.PackageManager;
import android.util.ArraySet;
-import com.android.settingslib.utils.AsyncLoader;
+import com.android.settingslib.utils.AsyncLoaderCompat;
import androidx.preference.Preference;
-public class AppPrefLoader extends AsyncLoader<ArraySet<Preference>> {
+public class AppPrefLoader extends AsyncLoaderCompat<ArraySet<Preference>> {
private ArraySet<String> mPackages;
private PackageManager mPackageManager;
private Context mPrefContext;
diff --git a/src/com/android/settings/datausage/CellDataPreference.java b/src/com/android/settings/datausage/CellDataPreference.java
index 508b2d0..e46a235 100644
--- a/src/com/android/settings/datausage/CellDataPreference.java
+++ b/src/com/android/settings/datausage/CellDataPreference.java
@@ -14,7 +14,6 @@
package com.android.settings.datausage;
-import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.database.ContentObserver;
@@ -37,15 +36,16 @@
import com.android.settings.R;
import com.android.settings.Utils;
import com.android.settings.overlay.FeatureFactory;
-import com.android.settingslib.CustomDialogPreference;
+import com.android.settingslib.CustomDialogPreferenceCompat;
import java.util.List;
import androidx.annotation.VisibleForTesting;
+import androidx.appcompat.app.AlertDialog.Builder;
import androidx.core.content.res.TypedArrayUtils;
import androidx.preference.PreferenceViewHolder;
-public class CellDataPreference extends CustomDialogPreference implements TemplatePreference {
+public class CellDataPreference extends CustomDialogPreferenceCompat implements TemplatePreference {
private static final String TAG = "CellDataPreference";
@@ -196,7 +196,7 @@
}
@Override
- protected void onPrepareDialogBuilder(AlertDialog.Builder builder,
+ protected void onPrepareDialogBuilder(Builder builder,
DialogInterface.OnClickListener listener) {
if (mMultiSimDialog) {
showMultiSimDialog(builder, listener);
@@ -205,7 +205,7 @@
}
}
- private void showDisableDialog(AlertDialog.Builder builder,
+ private void showDisableDialog(Builder builder,
DialogInterface.OnClickListener listener) {
builder.setTitle(null)
.setMessage(R.string.data_usage_disable_mobile)
@@ -213,7 +213,7 @@
.setNegativeButton(android.R.string.cancel, null);
}
- private void showMultiSimDialog(AlertDialog.Builder builder,
+ private void showMultiSimDialog(Builder builder,
DialogInterface.OnClickListener listener) {
final SubscriptionInfo currentSir = mSubscriptionManager.getActiveSubscriptionInfo(mSubId);
final SubscriptionInfo nextSir = mSubscriptionManager.getDefaultDataSubscriptionInfo();
diff --git a/src/com/android/settings/datausage/DataSaverSummary.java b/src/com/android/settings/datausage/DataSaverSummary.java
index 97334aa..24e8740 100644
--- a/src/com/android/settings/datausage/DataSaverSummary.java
+++ b/src/com/android/settings/datausage/DataSaverSummary.java
@@ -70,7 +70,7 @@
(Application) getContext().getApplicationContext());
mDataSaverBackend = new DataSaverBackend(getContext());
mDataUsageBridge = new AppStateDataUsageBridge(mApplicationsState, this, mDataSaverBackend);
- mSession = mApplicationsState.newSession(this, getLifecycle());
+ mSession = mApplicationsState.newSession(this, getSettingsLifecycle());
}
@Override
diff --git a/src/com/android/settings/datausage/DataUsageList.java b/src/com/android/settings/datausage/DataUsageList.java
index 032f337..d912462 100644
--- a/src/com/android/settings/datausage/DataUsageList.java
+++ b/src/com/android/settings/datausage/DataUsageList.java
@@ -57,8 +57,8 @@
import com.android.settings.widget.LoadingViewController;
import com.android.settingslib.AppItem;
import com.android.settingslib.net.ChartData;
-import com.android.settingslib.net.ChartDataLoader;
-import com.android.settingslib.net.SummaryForAllUidLoader;
+import com.android.settingslib.net.ChartDataLoaderCompat;
+import com.android.settingslib.net.SummaryForAllUidLoaderCompat;
import com.android.settingslib.net.UidDetailProvider;
import java.util.ArrayList;
@@ -262,7 +262,7 @@
// TODO: consider chaining two loaders together instead of reloading
// network history when showing app detail.
getLoaderManager().restartLoader(LOADER_CHART_DATA,
- ChartDataLoader.buildArgs(mTemplate, null), mChartDataCallbacks);
+ ChartDataLoaderCompat.buildArgs(mTemplate, null), mChartDataCallbacks);
// detail mode can change visible menus, invalidate
getActivity().invalidateOptionsMenu();
@@ -326,7 +326,7 @@
// kick off loader for detailed stats
getLoaderManager().restartLoader(LOADER_SUMMARY,
- SummaryForAllUidLoader.buildArgs(mTemplate, start, end), mSummaryCallbacks);
+ SummaryForAllUidLoaderCompat.buildArgs(mTemplate, start, end), mSummaryCallbacks);
final long totalBytes = entry != null ? entry.rxBytes + entry.txBytes : 0;
final CharSequence totalPhrase = DataUsageUtils.formatDataUsage(context, totalBytes);
@@ -548,7 +548,7 @@
ChartData>() {
@Override
public Loader<ChartData> onCreateLoader(int id, Bundle args) {
- return new ChartDataLoader(getActivity(), mStatsSession, args);
+ return new ChartDataLoaderCompat(getActivity(), mStatsSession, args);
}
@Override
@@ -572,7 +572,7 @@
NetworkStats>() {
@Override
public Loader<NetworkStats> onCreateLoader(int id, Bundle args) {
- return new SummaryForAllUidLoader(getActivity(), mStatsSession, args);
+ return new SummaryForAllUidLoaderCompat(getActivity(), mStatsSession, args);
}
@Override
diff --git a/src/com/android/settings/datausage/DataUsageSummary.java b/src/com/android/settings/datausage/DataUsageSummary.java
index c1f9f52..d8f8f02 100644
--- a/src/com/android/settings/datausage/DataUsageSummary.java
+++ b/src/com/android/settings/datausage/DataUsageSummary.java
@@ -141,9 +141,9 @@
final Activity activity = getActivity();
final ArrayList<AbstractPreferenceController> controllers = new ArrayList<>();
mSummaryController =
- new DataUsageSummaryPreferenceController(activity, getLifecycle(), this);
+ new DataUsageSummaryPreferenceController(activity, getSettingsLifecycle(), this);
controllers.add(mSummaryController);
- getLifecycle().addObserver(mSummaryController);
+ getSettingsLifecycle().addObserver(mSummaryController);
return controllers;
}
diff --git a/src/com/android/settings/datausage/UnrestrictedDataAccess.java b/src/com/android/settings/datausage/UnrestrictedDataAccess.java
index b8d47b1..ff516ee 100644
--- a/src/com/android/settings/datausage/UnrestrictedDataAccess.java
+++ b/src/com/android/settings/datausage/UnrestrictedDataAccess.java
@@ -93,7 +93,7 @@
super.onAttach(context);
mFilter = mShowSystem ? ApplicationsState.FILTER_ALL_ENABLED
: ApplicationsState.FILTER_DOWNLOADED_AND_LAUNCHER;
- use(UnrestrictedDataAccessPreferenceController.class).setSession(getLifecycle());
+ use(UnrestrictedDataAccessPreferenceController.class).setSession(getSettingsLifecycle());
use(UnrestrictedDataAccessPreferenceController.class).setFilter(mFilter);
}
diff --git a/src/com/android/settings/datetime/timezone/model/TimeZoneDataLoader.java b/src/com/android/settings/datetime/timezone/model/TimeZoneDataLoader.java
index fae3df6..7ca157e 100644
--- a/src/com/android/settings/datetime/timezone/model/TimeZoneDataLoader.java
+++ b/src/com/android/settings/datetime/timezone/model/TimeZoneDataLoader.java
@@ -19,12 +19,12 @@
import android.content.Context;
import android.os.Bundle;
-import com.android.settingslib.utils.AsyncLoader;
+import com.android.settingslib.utils.AsyncLoaderCompat;
import androidx.loader.app.LoaderManager;
import androidx.loader.content.Loader;
-public class TimeZoneDataLoader extends AsyncLoader<TimeZoneData> {
+public class TimeZoneDataLoader extends AsyncLoaderCompat<TimeZoneData> {
public TimeZoneDataLoader(Context context) {
super(context);
diff --git a/src/com/android/settings/development/BluetoothA2dpHwOffloadRebootDialog.java b/src/com/android/settings/development/BluetoothA2dpHwOffloadRebootDialog.java
index ddd9021..03e1143 100644
--- a/src/com/android/settings/development/BluetoothA2dpHwOffloadRebootDialog.java
+++ b/src/com/android/settings/development/BluetoothA2dpHwOffloadRebootDialog.java
@@ -35,7 +35,7 @@
public static void show(DevelopmentSettingsDashboardFragment host,
BluetoothA2dpHwOffloadPreferenceController controller) {
- final FragmentManager manager = host.getActivity().getFragmentManager();
+ final FragmentManager manager = host.getActivity().getSupportFragmentManager();
if (manager.findFragmentByTag(TAG) == null) {
final BluetoothA2dpHwOffloadRebootDialog dialog =
new BluetoothA2dpHwOffloadRebootDialog();
diff --git a/src/com/android/settings/development/ClearAdbKeysWarningDialog.java b/src/com/android/settings/development/ClearAdbKeysWarningDialog.java
index 43e7c8f..e930759 100644
--- a/src/com/android/settings/development/ClearAdbKeysWarningDialog.java
+++ b/src/com/android/settings/development/ClearAdbKeysWarningDialog.java
@@ -34,7 +34,7 @@
public static final String TAG = "ClearAdbKeysDlg";
public static void show(Fragment host) {
- final FragmentManager manager = host.getActivity().getFragmentManager();
+ final FragmentManager manager = host.getActivity().getSupportFragmentManager();
if (manager.findFragmentByTag(TAG) == null) {
final ClearAdbKeysWarningDialog dialog =
new ClearAdbKeysWarningDialog();
diff --git a/src/com/android/settings/development/DevelopmentSettingsDashboardFragment.java b/src/com/android/settings/development/DevelopmentSettingsDashboardFragment.java
index c97ed52..82ca54b 100644
--- a/src/com/android/settings/development/DevelopmentSettingsDashboardFragment.java
+++ b/src/com/android/settings/development/DevelopmentSettingsDashboardFragment.java
@@ -166,7 +166,8 @@
// Set up master switch
mSwitchBar = ((SettingsActivity) getActivity()).getSwitchBar();
mSwitchBarController = new DevelopmentSwitchBarController(
- this /* DevelopmentSettings */, mSwitchBar, mIsAvailable, getLifecycle());
+ this /* DevelopmentSettings */, mSwitchBar, mIsAvailable,
+ getSettingsLifecycle());
mSwitchBar.show();
// Restore UI state based on whether developer options is enabled
@@ -318,8 +319,8 @@
mPreferenceControllers = new ArrayList<>();
return null;
}
- mPreferenceControllers = buildPreferenceControllers(context, getActivity(), getLifecycle(),
- this /* devOptionsDashboardFragment */,
+ mPreferenceControllers = buildPreferenceControllers(context, getActivity(),
+ getSettingsLifecycle(), this /* devOptionsDashboardFragment */,
new BluetoothA2dpConfigStore());
return mPreferenceControllers;
}
diff --git a/src/com/android/settings/development/DisableLogPersistWarningDialog.java b/src/com/android/settings/development/DisableLogPersistWarningDialog.java
index 7223d8e..fbe2b05 100644
--- a/src/com/android/settings/development/DisableLogPersistWarningDialog.java
+++ b/src/com/android/settings/development/DisableLogPersistWarningDialog.java
@@ -38,7 +38,7 @@
return;
}
final Fragment hostFragment = (Fragment) host;
- final FragmentManager manager = hostFragment.getActivity().getFragmentManager();
+ final FragmentManager manager = hostFragment.getActivity().getSupportFragmentManager();
if (manager.findFragmentByTag(TAG) == null) {
final DisableLogPersistWarningDialog dialog =
new DisableLogPersistWarningDialog();
diff --git a/src/com/android/settings/development/EnableAdbWarningDialog.java b/src/com/android/settings/development/EnableAdbWarningDialog.java
index 1dac782..e1354ce 100644
--- a/src/com/android/settings/development/EnableAdbWarningDialog.java
+++ b/src/com/android/settings/development/EnableAdbWarningDialog.java
@@ -34,7 +34,7 @@
public static final String TAG = "EnableAdbDialog";
public static void show(Fragment host) {
- final FragmentManager manager = host.getActivity().getFragmentManager();
+ final FragmentManager manager = host.getActivity().getSupportFragmentManager();
if (manager.findFragmentByTag(TAG) == null) {
final EnableAdbWarningDialog dialog = new EnableAdbWarningDialog();
dialog.setTargetFragment(host, 0 /* requestCode */);
diff --git a/src/com/android/settings/development/EnableDevelopmentSettingWarningDialog.java b/src/com/android/settings/development/EnableDevelopmentSettingWarningDialog.java
index 667f621..51532f3 100644
--- a/src/com/android/settings/development/EnableDevelopmentSettingWarningDialog.java
+++ b/src/com/android/settings/development/EnableDevelopmentSettingWarningDialog.java
@@ -37,7 +37,7 @@
final EnableDevelopmentSettingWarningDialog dialog =
new EnableDevelopmentSettingWarningDialog();
dialog.setTargetFragment(host, 0 /* requestCode */);
- final FragmentManager manager = host.getActivity().getFragmentManager();
+ final FragmentManager manager = host.getActivity().getSupportFragmentManager();
if (manager.findFragmentByTag(TAG) == null) {
dialog.show(manager, TAG);
}
diff --git a/src/com/android/settings/development/EnableOemUnlockSettingWarningDialog.java b/src/com/android/settings/development/EnableOemUnlockSettingWarningDialog.java
index 64a1b6b..09d2ffe 100644
--- a/src/com/android/settings/development/EnableOemUnlockSettingWarningDialog.java
+++ b/src/com/android/settings/development/EnableOemUnlockSettingWarningDialog.java
@@ -34,7 +34,7 @@
public static final String TAG = "EnableOemUnlockDlg";
public static void show(Fragment host) {
- final FragmentManager manager = host.getActivity().getFragmentManager();
+ final FragmentManager manager = host.getActivity().getSupportFragmentManager();
if (manager.findFragmentByTag(TAG) == null) {
final EnableOemUnlockSettingWarningDialog dialog =
new EnableOemUnlockSettingWarningDialog();
diff --git a/src/com/android/settings/development/featureflags/FeatureFlagFooterPreferenceController.java b/src/com/android/settings/development/featureflags/FeatureFlagFooterPreferenceController.java
index a86b8bb..a0d7036 100644
--- a/src/com/android/settings/development/featureflags/FeatureFlagFooterPreferenceController.java
+++ b/src/com/android/settings/development/featureflags/FeatureFlagFooterPreferenceController.java
@@ -22,18 +22,18 @@
import com.android.settings.core.BasePreferenceController;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnStart;
-import com.android.settingslib.widget.FooterPreferenceMixin;
+import com.android.settingslib.widget.FooterPreferenceMixinCompat;
public class FeatureFlagFooterPreferenceController extends BasePreferenceController
implements LifecycleObserver, OnStart {
- private FooterPreferenceMixin mFooterMixin;
+ private FooterPreferenceMixinCompat mFooterMixin;
public FeatureFlagFooterPreferenceController(Context context) {
super(context, "feature_flag_footer_pref");
}
- public void setFooterMixin(FooterPreferenceMixin mixin) {
+ public void setFooterMixin(FooterPreferenceMixinCompat mixin) {
mFooterMixin = mixin;
}
diff --git a/src/com/android/settings/development/featureflags/FeatureFlagsDashboard.java b/src/com/android/settings/development/featureflags/FeatureFlagsDashboard.java
index 038b149..0307727 100644
--- a/src/com/android/settings/development/featureflags/FeatureFlagsDashboard.java
+++ b/src/com/android/settings/development/featureflags/FeatureFlagsDashboard.java
@@ -65,7 +65,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildPrefControllers(context, getLifecycle());
+ return buildPrefControllers(context, getSettingsLifecycle());
}
private static List<AbstractPreferenceController> buildPrefControllers(Context context,
diff --git a/src/com/android/settings/deviceinfo/PrivateVolumeSettings.java b/src/com/android/settings/deviceinfo/PrivateVolumeSettings.java
index a200c3a..8d6714d 100644
--- a/src/com/android/settings/deviceinfo/PrivateVolumeSettings.java
+++ b/src/com/android/settings/deviceinfo/PrivateVolumeSettings.java
@@ -203,7 +203,7 @@
setTitle();
// Valid options may have changed
- getFragmentManager().invalidateOptionsMenu();
+ getActivity().invalidateOptionsMenu();
final Context context = getActivity();
final PreferenceScreen screen = getPreferenceScreen();
diff --git a/src/com/android/settings/deviceinfo/StorageDashboardFragment.java b/src/com/android/settings/deviceinfo/StorageDashboardFragment.java
index a44e9a9..03a2ada 100644
--- a/src/com/android/settings/deviceinfo/StorageDashboardFragment.java
+++ b/src/com/android/settings/deviceinfo/StorageDashboardFragment.java
@@ -105,7 +105,7 @@
void initializeOptionsMenu(Activity activity) {
mOptionMenuController = new PrivateVolumeOptionMenuController(
activity, mVolume, activity.getPackageManager());
- getLifecycle().addObserver(mOptionMenuController);
+ getSettingsLifecycle().addObserver(mOptionMenuController);
setHasOptionsMenu(true);
activity.invalidateOptionsMenu();
}
@@ -119,7 +119,7 @@
final Activity activity = getActivity();
EntityHeaderController.newInstance(activity, this /*fragment*/,
null /* header view */)
- .setRecyclerView(getListView(), getLifecycle())
+ .setRecyclerView(getListView(), getSettingsLifecycle())
.styleActionBar(activity);
}
diff --git a/src/com/android/settings/deviceinfo/StorageWizardBase.java b/src/com/android/settings/deviceinfo/StorageWizardBase.java
index cae39e2..c6d0b2f 100644
--- a/src/com/android/settings/deviceinfo/StorageWizardBase.java
+++ b/src/com/android/settings/deviceinfo/StorageWizardBase.java
@@ -22,7 +22,6 @@
import android.annotation.LayoutRes;
import android.annotation.NonNull;
-import android.app.Activity;
import android.content.Intent;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
@@ -48,7 +47,9 @@
import java.util.List;
import java.util.Objects;
-public abstract class StorageWizardBase extends Activity {
+import androidx.fragment.app.FragmentActivity;
+
+public abstract class StorageWizardBase extends FragmentActivity {
protected static final String EXTRA_FORMAT_FORGET_UUID = "format_forget_uuid";
protected static final String EXTRA_FORMAT_PRIVATE = "format_private";
protected static final String EXTRA_FORMAT_SLOW = "format_slow";
diff --git a/src/com/android/settings/deviceinfo/StorageWizardFormatConfirm.java b/src/com/android/settings/deviceinfo/StorageWizardFormatConfirm.java
index 51e17c6..85e5929 100644
--- a/src/com/android/settings/deviceinfo/StorageWizardFormatConfirm.java
+++ b/src/com/android/settings/deviceinfo/StorageWizardFormatConfirm.java
@@ -20,7 +20,6 @@
import static com.android.settings.deviceinfo.StorageWizardBase.EXTRA_FORMAT_FORGET_UUID;
import static com.android.settings.deviceinfo.StorageWizardBase.EXTRA_FORMAT_PRIVATE;
-import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
@@ -34,22 +33,24 @@
import com.android.settings.R;
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
+import androidx.fragment.app.FragmentActivity;
+
public class StorageWizardFormatConfirm extends InstrumentedDialogFragment {
private static final String TAG_FORMAT_WARNING = "format_warning";
- public static void showPublic(Activity activity, String diskId) {
+ public static void showPublic(FragmentActivity activity, String diskId) {
show(activity, diskId, null, false);
}
- public static void showPublic(Activity activity, String diskId, String forgetUuid) {
+ public static void showPublic(FragmentActivity activity, String diskId, String forgetUuid) {
show(activity, diskId, forgetUuid, false);
}
- public static void showPrivate(Activity activity, String diskId) {
+ public static void showPrivate(FragmentActivity activity, String diskId) {
show(activity, diskId, null, true);
}
- private static void show(Activity activity, String diskId, String formatForgetUuid,
+ private static void show(FragmentActivity activity, String diskId, String formatForgetUuid,
boolean formatPrivate) {
final Bundle args = new Bundle();
args.putString(EXTRA_DISK_ID, diskId);
@@ -58,7 +59,8 @@
final StorageWizardFormatConfirm fragment = new StorageWizardFormatConfirm();
fragment.setArguments(args);
- fragment.showAllowingStateLoss(activity.getFragmentManager(), TAG_FORMAT_WARNING);
+ // TODO (b/111150236) : Need to check it again.
+ fragment.show(activity.getSupportFragmentManager(), TAG_FORMAT_WARNING);
}
@Override
diff --git a/src/com/android/settings/deviceinfo/StorageWizardFormatProgress.java b/src/com/android/settings/deviceinfo/StorageWizardFormatProgress.java
index d7949a2..287cc3f 100644
--- a/src/com/android/settings/deviceinfo/StorageWizardFormatProgress.java
+++ b/src/com/android/settings/deviceinfo/StorageWizardFormatProgress.java
@@ -59,7 +59,8 @@
setHeaderText(R.string.storage_wizard_format_progress_title, getDiskShortDescription());
setBodyText(R.string.storage_wizard_format_progress_body, getDiskDescription());
- mTask = (PartitionTask) getLastNonConfigurationInstance();
+ // TODO (b/111151113) : Need to check it again.
+ mTask = (PartitionTask) getLastCustomNonConfigurationInstance();
if (mTask == null) {
mTask = new PartitionTask();
mTask.setActivity(this);
@@ -68,9 +69,9 @@
mTask.setActivity(this);
}
}
-
+ // TODO (b/111151113) : Need to check it again.
@Override
- public Object onRetainNonConfigurationInstance() {
+ public Object onRetainCustomNonConfigurationInstance() {
return mTask;
}
diff --git a/src/com/android/settings/deviceinfo/aboutphone/DeviceNameWarningDialog.java b/src/com/android/settings/deviceinfo/aboutphone/DeviceNameWarningDialog.java
index c016cb6..45f39d9 100644
--- a/src/com/android/settings/deviceinfo/aboutphone/DeviceNameWarningDialog.java
+++ b/src/com/android/settings/deviceinfo/aboutphone/DeviceNameWarningDialog.java
@@ -36,7 +36,7 @@
public static final String TAG = "DeviceNameWarningDlg";
public static void show(MyDeviceInfoFragment host) {
- final FragmentManager manager = host.getActivity().getFragmentManager();
+ final FragmentManager manager = host.getActivity().getSupportFragmentManager();
if (manager.findFragmentByTag(TAG) != null) {
return;
}
diff --git a/src/com/android/settings/deviceinfo/aboutphone/MyDeviceInfoFragment.java b/src/com/android/settings/deviceinfo/aboutphone/MyDeviceInfoFragment.java
index 00be8be..976a254 100644
--- a/src/com/android/settings/deviceinfo/aboutphone/MyDeviceInfoFragment.java
+++ b/src/com/android/settings/deviceinfo/aboutphone/MyDeviceInfoFragment.java
@@ -104,7 +104,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
return buildPreferenceControllers(context, getActivity(), this /* fragment */,
- getLifecycle());
+ getSettingsLifecycle());
}
private static List<AbstractPreferenceController> buildPreferenceControllers(
@@ -156,7 +156,7 @@
final Bundle bundle = getArguments();
final EntityHeaderController controller = EntityHeaderController
.newInstance(context, this, appSnippet)
- .setRecyclerView(getListView(), getLifecycle())
+ .setRecyclerView(getListView(), getSettingsLifecycle())
.setButtonActions(EntityHeaderController.ActionType.ACTION_NONE,
EntityHeaderController.ActionType.ACTION_NONE);
diff --git a/src/com/android/settings/deviceinfo/storage/StorageAsyncLoader.java b/src/com/android/settings/deviceinfo/storage/StorageAsyncLoader.java
index 5001548..9d10a1d 100644
--- a/src/com/android/settings/deviceinfo/storage/StorageAsyncLoader.java
+++ b/src/com/android/settings/deviceinfo/storage/StorageAsyncLoader.java
@@ -33,7 +33,7 @@
import android.util.SparseArray;
import com.android.settingslib.applications.StorageStatsSource;
-import com.android.settingslib.utils.AsyncLoader;
+import com.android.settingslib.utils.AsyncLoaderCompat;
import java.io.IOException;
import java.util.Collections;
@@ -45,7 +45,7 @@
* users
*/
public class StorageAsyncLoader
- extends AsyncLoader<SparseArray<StorageAsyncLoader.AppsStorageResult>> {
+ extends AsyncLoaderCompat<SparseArray<StorageAsyncLoader.AppsStorageResult>> {
private UserManager mUserManager;
private static final String TAG = "StorageAsyncLoader";
diff --git a/src/com/android/settings/deviceinfo/storage/UserIconLoader.java b/src/com/android/settings/deviceinfo/storage/UserIconLoader.java
index e85bf08..8273e68 100644
--- a/src/com/android/settings/deviceinfo/storage/UserIconLoader.java
+++ b/src/com/android/settings/deviceinfo/storage/UserIconLoader.java
@@ -24,12 +24,12 @@
import com.android.internal.util.Preconditions;
import com.android.settings.Utils;
-import com.android.settingslib.utils.AsyncLoader;
+import com.android.settingslib.utils.AsyncLoaderCompat;
/**
* Fetches a user icon as a loader using a given icon loading lambda.
*/
-public class UserIconLoader extends AsyncLoader<SparseArray<Drawable>> {
+public class UserIconLoader extends AsyncLoaderCompat<SparseArray<Drawable>> {
private FetchUserIconTask mTask;
/**
diff --git a/src/com/android/settings/deviceinfo/storage/VolumeSizesLoader.java b/src/com/android/settings/deviceinfo/storage/VolumeSizesLoader.java
index 844c195..2d3de81 100644
--- a/src/com/android/settings/deviceinfo/storage/VolumeSizesLoader.java
+++ b/src/com/android/settings/deviceinfo/storage/VolumeSizesLoader.java
@@ -22,13 +22,13 @@
import com.android.settingslib.deviceinfo.PrivateStorageInfo;
import com.android.settingslib.deviceinfo.StorageVolumeProvider;
-import com.android.settingslib.utils.AsyncLoader;
+import com.android.settingslib.utils.AsyncLoaderCompat;
import java.io.IOException;
import androidx.annotation.VisibleForTesting;
-public class VolumeSizesLoader extends AsyncLoader<PrivateStorageInfo> {
+public class VolumeSizesLoader extends AsyncLoaderCompat<PrivateStorageInfo> {
private StorageVolumeProvider mVolumeProvider;
private StorageStatsManager mStats;
private VolumeInfo mVolume;
diff --git a/src/com/android/settings/display/DensityPreference.java b/src/com/android/settings/display/DensityPreference.java
index e55e578..61c5729 100644
--- a/src/com/android/settings/display/DensityPreference.java
+++ b/src/com/android/settings/display/DensityPreference.java
@@ -27,12 +27,12 @@
import com.android.settings.R;
import com.android.settings.Utils;
-import com.android.settingslib.CustomEditTextPreference;
+import com.android.settingslib.CustomEditTextPreferenceCompat;
import com.android.settingslib.display.DisplayDensityUtils;
import java.text.NumberFormat;
-public class DensityPreference extends CustomEditTextPreference {
+public class DensityPreference extends CustomEditTextPreferenceCompat {
private static final String TAG = "DensityPreference";
public DensityPreference(Context context, AttributeSet attrs) {
diff --git a/src/com/android/settings/display/TimeoutListPreference.java b/src/com/android/settings/display/TimeoutListPreference.java
index 7512a14..34b2e11 100644
--- a/src/com/android/settings/display/TimeoutListPreference.java
+++ b/src/com/android/settings/display/TimeoutListPreference.java
@@ -18,7 +18,6 @@
import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
-import android.app.AlertDialog;
import android.app.Dialog;
import android.app.admin.DevicePolicyManager;
import android.content.Context;
@@ -33,6 +32,9 @@
import java.util.ArrayList;
+import androidx.appcompat.app.AlertDialog.Builder;
+
+
public class TimeoutListPreference extends RestrictedListPreference {
private static final String TAG = "TimeoutListPreference";
private EnforcedAdmin mAdmin;
@@ -46,7 +48,7 @@
}
@Override
- protected void onPrepareDialogBuilder(AlertDialog.Builder builder,
+ protected void onPrepareDialogBuilder(Builder builder,
DialogInterface.OnClickListener listener) {
super.onPrepareDialogBuilder(builder, listener);
if (mAdmin != null) {
diff --git a/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java b/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java
index 1e48f58..c71468b 100644
--- a/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java
+++ b/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java
@@ -246,7 +246,7 @@
final Bundle bundle = getArguments();
EntityHeaderController controller = EntityHeaderController
.newInstance(context, this, appSnippet)
- .setRecyclerView(getListView(), getLifecycle())
+ .setRecyclerView(getListView(), getSettingsLifecycle())
.setButtonActions(EntityHeaderController.ActionType.ACTION_NONE,
EntityHeaderController.ActionType.ACTION_NONE);
@@ -327,7 +327,7 @@
controllers.add(new BatteryOptimizationPreferenceController(
(SettingsActivity) getActivity(), this, packageName));
mAppButtonsPreferenceController = new AppButtonsPreferenceController(
- (SettingsActivity) getActivity(), this, getLifecycle(), packageName, mState,
+ (SettingsActivity) getActivity(), this, getSettingsLifecycle(), packageName, mState,
REQUEST_UNINSTALL, REQUEST_REMOVE_DEVICE_ADMIN);
controllers.add(mAppButtonsPreferenceController);
diff --git a/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceController.java b/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceController.java
index 87fa13c..71eb554 100644
--- a/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceController.java
+++ b/src/com/android/settings/fuelgauge/BatteryHeaderPreferenceController.java
@@ -36,6 +36,7 @@
import com.android.settingslib.core.lifecycle.events.OnStart;
import androidx.annotation.VisibleForTesting;
+import androidx.preference.PreferenceFragmentCompat;
import androidx.preference.PreferenceScreen;
/**
@@ -56,14 +57,14 @@
TextView mSummary2;
private final Activity mActivity;
- private final PreferenceFragment mHost;
+ private final PreferenceFragmentCompat mHost;
private final Lifecycle mLifecycle;
private final PowerManager mPowerManager;
private LayoutPreference mBatteryLayoutPref;
public BatteryHeaderPreferenceController(Context context, Activity activity,
- PreferenceFragment host, Lifecycle lifecycle) {
+ PreferenceFragmentCompat host, Lifecycle lifecycle) {
super(context);
mActivity = activity;
mHost = host;
diff --git a/src/com/android/settings/fuelgauge/BatteryInfoLoader.java b/src/com/android/settings/fuelgauge/BatteryInfoLoader.java
index 22efaf6..a03e797 100644
--- a/src/com/android/settings/fuelgauge/BatteryInfoLoader.java
+++ b/src/com/android/settings/fuelgauge/BatteryInfoLoader.java
@@ -19,14 +19,14 @@
import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.os.BatteryStatsHelper;
-import com.android.settingslib.utils.AsyncLoader;
+import com.android.settingslib.utils.AsyncLoaderCompat;
/**
* Loader that can be used by classes to load BatteryInfo in a background thread. This loader will
* automatically grab enhanced battery estimates if available or fall back to the system estimate
* when not available.
*/
-public class BatteryInfoLoader extends AsyncLoader<BatteryInfo>{
+public class BatteryInfoLoader extends AsyncLoaderCompat<BatteryInfo>{
BatteryStatsHelper mStatsHelper;
private static final String LOG_TAG = "BatteryInfoLoader";
diff --git a/src/com/android/settings/fuelgauge/BatteryStatsHelperLoader.java b/src/com/android/settings/fuelgauge/BatteryStatsHelperLoader.java
index cb260af..7369ed8 100644
--- a/src/com/android/settings/fuelgauge/BatteryStatsHelperLoader.java
+++ b/src/com/android/settings/fuelgauge/BatteryStatsHelperLoader.java
@@ -20,14 +20,14 @@
import android.os.UserManager;
import com.android.internal.os.BatteryStatsHelper;
-import com.android.settingslib.utils.AsyncLoader;
+import com.android.settingslib.utils.AsyncLoaderCompat;
import androidx.annotation.VisibleForTesting;
/**
* Loader to get new {@link BatteryStatsHelper} in the background
*/
-public class BatteryStatsHelperLoader extends AsyncLoader<BatteryStatsHelper> {
+public class BatteryStatsHelperLoader extends AsyncLoaderCompat<BatteryStatsHelper> {
@VisibleForTesting
UserManager mUserManager;
@VisibleForTesting
diff --git a/src/com/android/settings/fuelgauge/DebugEstimatesLoader.java b/src/com/android/settings/fuelgauge/DebugEstimatesLoader.java
index f58ad96..d27e4dc 100644
--- a/src/com/android/settings/fuelgauge/DebugEstimatesLoader.java
+++ b/src/com/android/settings/fuelgauge/DebugEstimatesLoader.java
@@ -23,13 +23,13 @@
import com.android.internal.os.BatteryStatsHelper;
import com.android.settings.overlay.FeatureFactory;
-import com.android.settingslib.utils.AsyncLoader;
+import com.android.settingslib.utils.AsyncLoaderCompat;
import com.android.settingslib.utils.PowerUtil;
import java.util.ArrayList;
import java.util.List;
-public class DebugEstimatesLoader extends AsyncLoader<List<BatteryInfo>> {
+public class DebugEstimatesLoader extends AsyncLoaderCompat<List<BatteryInfo>> {
private BatteryStatsHelper mStatsHelper;
public DebugEstimatesLoader(Context context, BatteryStatsHelper statsHelper) {
diff --git a/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java b/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java
index 8e3c8de..9e9e7af 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java
@@ -135,7 +135,7 @@
final List<AbstractPreferenceController> controllers = new ArrayList<>();
mBatteryAppListPreferenceController = new BatteryAppListPreferenceController(context,
- KEY_APP_LIST, getLifecycle(), (SettingsActivity) getActivity(), this);
+ KEY_APP_LIST, getSettingsLifecycle(), (SettingsActivity) getActivity(), this);
controllers.add(mBatteryAppListPreferenceController);
return controllers;
diff --git a/src/com/android/settings/fuelgauge/PowerUsageSummary.java b/src/com/android/settings/fuelgauge/PowerUsageSummary.java
index 6190b7b..3d13d04 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageSummary.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageSummary.java
@@ -241,7 +241,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- final Lifecycle lifecycle = getLifecycle();
+ final Lifecycle lifecycle = getSettingsLifecycle();
final SettingsActivity activity = (SettingsActivity) getActivity();
final List<AbstractPreferenceController> controllers = new ArrayList<>();
mBatteryHeaderPreferenceController = new BatteryHeaderPreferenceController(
diff --git a/src/com/android/settings/fuelgauge/RestrictedAppDetails.java b/src/com/android/settings/fuelgauge/RestrictedAppDetails.java
index 5d92bfd..dd3d9dc 100644
--- a/src/com/android/settings/fuelgauge/RestrictedAppDetails.java
+++ b/src/com/android/settings/fuelgauge/RestrictedAppDetails.java
@@ -38,7 +38,7 @@
import com.android.settings.fuelgauge.batterytip.tips.UnrestrictAppTip;
import com.android.settings.widget.AppCheckBoxPreference;
import com.android.settingslib.core.AbstractPreferenceController;
-import com.android.settingslib.widget.FooterPreferenceMixin;
+import com.android.settingslib.widget.FooterPreferenceMixinCompat;
import java.util.List;
@@ -68,8 +68,8 @@
BatteryUtils mBatteryUtils;
@VisibleForTesting
PackageManager mPackageManager;
- private final FooterPreferenceMixin mFooterPreferenceMixin =
- new FooterPreferenceMixin(this, getLifecycle());
+ private final FooterPreferenceMixinCompat mFooterPreferenceMixin =
+ new FooterPreferenceMixinCompat(this, getSettingsLifecycle());
public static void startRestrictedAppDetails(InstrumentedPreferenceFragment fragment,
List<AppInfo> appInfos) {
diff --git a/src/com/android/settings/fuelgauge/anomaly/AnomalyLoader.java b/src/com/android/settings/fuelgauge/anomaly/AnomalyLoader.java
index 8917e35..c7d6ba4 100644
--- a/src/com/android/settings/fuelgauge/anomaly/AnomalyLoader.java
+++ b/src/com/android/settings/fuelgauge/anomaly/AnomalyLoader.java
@@ -24,7 +24,7 @@
import android.util.Log;
import com.android.internal.os.BatteryStatsHelper;
-import com.android.settingslib.utils.AsyncLoader;
+import com.android.settingslib.utils.AsyncLoaderCompat;
import java.util.ArrayList;
import java.util.List;
@@ -35,7 +35,7 @@
* Loader to compute which apps are anomaly and return a anomaly list. It will return
* an empty list if there is no anomaly.
*/
-public class AnomalyLoader extends AsyncLoader<List<Anomaly>> {
+public class AnomalyLoader extends AsyncLoaderCompat<List<Anomaly>> {
private static final String TAG = "AnomalyLoader";
private static final boolean USE_FAKE_DATA = false;
diff --git a/src/com/android/settings/fuelgauge/batterysaver/BatterySaverSettings.java b/src/com/android/settings/fuelgauge/batterysaver/BatterySaverSettings.java
index 5288970..8b0409c 100644
--- a/src/com/android/settings/fuelgauge/batterysaver/BatterySaverSettings.java
+++ b/src/com/android/settings/fuelgauge/batterysaver/BatterySaverSettings.java
@@ -62,7 +62,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildPreferenceControllers(context, getLifecycle());
+ return buildPreferenceControllers(context, getSettingsLifecycle());
}
@Override
diff --git a/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoader.java b/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoader.java
index b46c12e..916ee85 100644
--- a/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoader.java
+++ b/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoader.java
@@ -31,7 +31,7 @@
import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
import com.android.settings.fuelgauge.batterytip.tips.LowBatteryTip;
import com.android.settings.fuelgauge.batterytip.tips.SummaryTip;
-import com.android.settingslib.utils.AsyncLoader;
+import com.android.settingslib.utils.AsyncLoaderCompat;
import java.util.ArrayList;
import java.util.Collections;
@@ -43,7 +43,7 @@
* Loader to compute and return a battery tip list. It will always return a full length list even
* though some tips may have state {@code BaseBatteryTip.StateType.INVISIBLE}.
*/
-public class BatteryTipLoader extends AsyncLoader<List<BatteryTip>> {
+public class BatteryTipLoader extends AsyncLoaderCompat<List<BatteryTip>> {
private static final String TAG = "BatteryTipLoader";
private static final boolean USE_FAKE_DATA = false;
diff --git a/src/com/android/settings/gestures/AssistGestureSettings.java b/src/com/android/settings/gestures/AssistGestureSettings.java
index ffe2234..bbd148c 100644
--- a/src/com/android/settings/gestures/AssistGestureSettings.java
+++ b/src/com/android/settings/gestures/AssistGestureSettings.java
@@ -54,7 +54,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildPreferenceControllers(context, getLifecycle());
+ return buildPreferenceControllers(context, getSettingsLifecycle());
}
private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
diff --git a/src/com/android/settings/inputmethod/AvailableVirtualKeyboardFragment.java b/src/com/android/settings/inputmethod/AvailableVirtualKeyboardFragment.java
index 75bf724..0410176 100644
--- a/src/com/android/settings/inputmethod/AvailableVirtualKeyboardFragment.java
+++ b/src/com/android/settings/inputmethod/AvailableVirtualKeyboardFragment.java
@@ -38,7 +38,7 @@
import com.android.settings.R;
import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.search.BaseSearchIndexProvider;
-import com.android.settingslib.inputmethod.InputMethodAndSubtypeUtil;
+import com.android.settingslib.inputmethod.InputMethodAndSubtypeUtilCompat;
import com.android.settingslib.inputmethod.InputMethodPreference;
import com.android.settingslib.inputmethod.InputMethodSettingValuesWrapper;
import com.android.settingslib.search.SearchIndexable;
@@ -79,7 +79,7 @@
public void onSaveInputMethodPreference(final InputMethodPreference pref) {
final boolean hasHardwareKeyboard = getResources().getConfiguration().keyboard
== Configuration.KEYBOARD_QWERTY;
- InputMethodAndSubtypeUtil.saveInputMethodSubtypeList(this, getContentResolver(),
+ InputMethodAndSubtypeUtilCompat.saveInputMethodSubtypeList(this, getContentResolver(),
mImm.getInputMethodList(), hasHardwareKeyboard);
// Update input method settings and preference list.
mInputMethodSettingValues.refreshAllInputMethodAndSubtypes();
@@ -164,7 +164,7 @@
final InputMethodPreference pref = mInputMethodPreferenceList.get(i);
pref.setOrder(i);
getPreferenceScreen().addPreference(pref);
- InputMethodAndSubtypeUtil.removeUnnecessaryNonPersistentPreference(pref);
+ InputMethodAndSubtypeUtilCompat.removeUnnecessaryNonPersistentPreference(pref);
pref.updatePreferenceViews();
}
}
diff --git a/src/com/android/settings/inputmethod/InputMethodAndSubtypePreferenceController.java b/src/com/android/settings/inputmethod/InputMethodAndSubtypePreferenceController.java
index 912b5cf..4c08e01 100644
--- a/src/com/android/settings/inputmethod/InputMethodAndSubtypePreferenceController.java
+++ b/src/com/android/settings/inputmethod/InputMethodAndSubtypePreferenceController.java
@@ -22,25 +22,26 @@
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnStart;
import com.android.settingslib.core.lifecycle.events.OnStop;
-import com.android.settingslib.inputmethod.InputMethodAndSubtypeEnablerManager;
+import com.android.settingslib.inputmethod.InputMethodAndSubtypeEnablerManagerCompat;
+import androidx.preference.PreferenceFragmentCompat;
import androidx.preference.PreferenceScreen;
public class InputMethodAndSubtypePreferenceController extends BasePreferenceController implements
LifecycleObserver, OnStart, OnStop {
- private PreferenceFragment mFragment;
- private InputMethodAndSubtypeEnablerManager mManager;
+ private PreferenceFragmentCompat mFragment;
+ private InputMethodAndSubtypeEnablerManagerCompat mManager;
private String mTargetImi;
public InputMethodAndSubtypePreferenceController(Context context, String key) {
super(context, key);
}
- public void initialize(PreferenceFragment fragment, String imi) {
+ public void initialize(PreferenceFragmentCompat fragment, String imi) {
mFragment = fragment;
mTargetImi = imi;
- mManager = new InputMethodAndSubtypeEnablerManager(mFragment);
+ mManager = new InputMethodAndSubtypeEnablerManagerCompat(mFragment);
}
@Override
diff --git a/src/com/android/settings/inputmethod/KeyboardLayoutDialogFragment.java b/src/com/android/settings/inputmethod/KeyboardLayoutDialogFragment.java
index 6a03c22..1a7fe22 100644
--- a/src/com/android/settings/inputmethod/KeyboardLayoutDialogFragment.java
+++ b/src/com/android/settings/inputmethod/KeyboardLayoutDialogFragment.java
@@ -157,7 +157,7 @@
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
- show(getActivity().getFragmentManager(), "layout");
+ show(getActivity().getSupportFragmentManager(), "layout");
}
private void onKeyboardLayoutClicked(int which) {
diff --git a/src/com/android/settings/inputmethod/PhysicalKeyboardFragment.java b/src/com/android/settings/inputmethod/PhysicalKeyboardFragment.java
index 765a834..cc1978f 100644
--- a/src/com/android/settings/inputmethod/PhysicalKeyboardFragment.java
+++ b/src/com/android/settings/inputmethod/PhysicalKeyboardFragment.java
@@ -182,7 +182,7 @@
KeyboardLayoutDialogFragment fragment = new KeyboardLayoutDialogFragment(
inputDeviceIdentifier);
fragment.setTargetFragment(this, 0);
- fragment.show(getActivity().getFragmentManager(), "keyboardLayout");
+ fragment.show(getActivity().getSupportFragmentManager(), "keyboardLayout");
}
private void registerShowVirtualKeyboardSettingsObserver() {
diff --git a/src/com/android/settings/inputmethod/SpellCheckerPreference.java b/src/com/android/settings/inputmethod/SpellCheckerPreference.java
index 83d24d9..8cd73f7 100644
--- a/src/com/android/settings/inputmethod/SpellCheckerPreference.java
+++ b/src/com/android/settings/inputmethod/SpellCheckerPreference.java
@@ -16,7 +16,6 @@
package com.android.settings.inputmethod;
-import android.app.AlertDialog.Builder;
import android.content.ActivityNotFoundException;
import android.content.Context;
import android.content.DialogInterface;
@@ -29,6 +28,7 @@
import com.android.settings.CustomListPreference;
import com.android.settings.R;
+import androidx.appcompat.app.AlertDialog.Builder;
import androidx.preference.PreferenceViewHolder;
/**
diff --git a/src/com/android/settings/inputmethod/SpellCheckerPreferenceController.java b/src/com/android/settings/inputmethod/SpellCheckerPreferenceController.java
index 10d8414..cdc1c3a 100644
--- a/src/com/android/settings/inputmethod/SpellCheckerPreferenceController.java
+++ b/src/com/android/settings/inputmethod/SpellCheckerPreferenceController.java
@@ -23,7 +23,7 @@
import com.android.settings.R;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settingslib.core.AbstractPreferenceController;
-import com.android.settingslib.inputmethod.InputMethodAndSubtypeUtil;
+import com.android.settingslib.inputmethod.InputMethodAndSubtypeUtilCompat;
import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;
@@ -46,7 +46,7 @@
super.displayPreference(screen);
final Preference preference = screen.findPreference(KEY_SPELL_CHECKERS);
if (preference != null) {
- InputMethodAndSubtypeUtil.removeUnnecessaryNonPersistentPreference(preference);
+ InputMethodAndSubtypeUtilCompat.removeUnnecessaryNonPersistentPreference(preference);
}
}
diff --git a/src/com/android/settings/inputmethod/UserDictionaryCursorLoader.java b/src/com/android/settings/inputmethod/UserDictionaryCursorLoader.java
index 73602dc..5f13402 100644
--- a/src/com/android/settings/inputmethod/UserDictionaryCursorLoader.java
+++ b/src/com/android/settings/inputmethod/UserDictionaryCursorLoader.java
@@ -17,7 +17,6 @@
package com.android.settings.inputmethod;
import android.content.Context;
-import android.content.CursorLoader;
import android.database.Cursor;
import android.database.MatrixCursor;
import android.provider.UserDictionary;
@@ -28,6 +27,7 @@
import java.util.Set;
import androidx.annotation.VisibleForTesting;
+import androidx.loader.content.CursorLoader;
public class UserDictionaryCursorLoader extends CursorLoader {
diff --git a/src/com/android/settings/inputmethod/VirtualKeyboardFragment.java b/src/com/android/settings/inputmethod/VirtualKeyboardFragment.java
index 939309d..024fe60 100644
--- a/src/com/android/settings/inputmethod/VirtualKeyboardFragment.java
+++ b/src/com/android/settings/inputmethod/VirtualKeyboardFragment.java
@@ -33,7 +33,7 @@
import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.search.Indexable;
-import com.android.settingslib.inputmethod.InputMethodAndSubtypeUtil;
+import com.android.settingslib.inputmethod.InputMethodAndSubtypeUtilCompat;
import com.android.settingslib.inputmethod.InputMethodPreference;
import com.android.settingslib.search.SearchIndexable;
@@ -113,7 +113,7 @@
final InputMethodPreference pref = mInputMethodPreferenceList.get(i);
pref.setOrder(i);
getPreferenceScreen().addPreference(pref);
- InputMethodAndSubtypeUtil.removeUnnecessaryNonPersistentPreference(pref);
+ InputMethodAndSubtypeUtilCompat.removeUnnecessaryNonPersistentPreference(pref);
pref.updatePreferenceViews();
}
mAddVirtualKeyboardScreen.setIcon(R.drawable.ic_add_24dp);
diff --git a/src/com/android/settings/language/LanguageAndInputSettings.java b/src/com/android/settings/language/LanguageAndInputSettings.java
index 507e6cb..c983c07 100644
--- a/src/com/android/settings/language/LanguageAndInputSettings.java
+++ b/src/com/android/settings/language/LanguageAndInputSettings.java
@@ -89,7 +89,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildPreferenceControllers(context, getLifecycle());
+ return buildPreferenceControllers(context, getSettingsLifecycle());
}
private static List<AbstractPreferenceController> buildPreferenceControllers(
diff --git a/src/com/android/settings/localepicker/LocaleListEditor.java b/src/com/android/settings/localepicker/LocaleListEditor.java
index 6b3ed39..87c19dd 100644
--- a/src/com/android/settings/localepicker/LocaleListEditor.java
+++ b/src/com/android/settings/localepicker/LocaleListEditor.java
@@ -31,7 +31,6 @@
import android.widget.TextView;
import com.android.internal.app.LocalePicker;
-import com.android.internal.app.LocalePickerWithRegion;
import com.android.internal.app.LocaleStore;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
diff --git a/src/com/android/settings/localepicker/LocalePickerWithRegion.java b/src/com/android/settings/localepicker/LocalePickerWithRegion.java
new file mode 100644
index 0000000..e8a91bc
--- /dev/null
+++ b/src/com/android/settings/localepicker/LocalePickerWithRegion.java
@@ -0,0 +1,278 @@
+/*
+ * Copyright (C) 2018 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.localepicker;
+
+import android.content.Context;
+import android.os.Bundle;
+import android.os.LocaleList;
+import android.text.TextUtils;
+import android.view.Menu;
+import android.view.MenuInflater;
+import android.view.MenuItem;
+import android.view.View;
+import android.widget.ListView;
+import android.widget.SearchView;
+
+import com.android.internal.R;
+import com.android.internal.app.LocaleHelper;
+import com.android.internal.app.LocalePicker;
+import com.android.internal.app.LocaleStore;
+import com.android.internal.app.SuggestedLocaleAdapter;
+
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Locale;
+import java.util.Set;
+
+import androidx.fragment.app.FragmentManager;
+import androidx.fragment.app.FragmentTransaction;
+import androidx.fragment.app.ListFragment;
+
+/**
+ * A two-step locale picker. It shows a language, then a country.
+ *
+ * <p>It shows suggestions at the top, then the rest of the locales.
+ * Allows the user to search for locales using both their native name and their name in the
+ * default locale.</p>
+ */
+public class LocalePickerWithRegion extends ListFragment implements SearchView.OnQueryTextListener {
+ private static final String PARENT_FRAGMENT_NAME = "localeListEditor";
+
+ private SuggestedLocaleAdapter mAdapter;
+ private LocaleSelectedListener mListener;
+ private Set<LocaleStore.LocaleInfo> mLocaleList;
+ private LocaleStore.LocaleInfo mParentLocale;
+ private boolean mTranslatedOnly = false;
+ private SearchView mSearchView = null;
+ private CharSequence mPreviousSearch = null;
+ private boolean mPreviousSearchHadFocus = false;
+ private int mFirstVisiblePosition = 0;
+ private int mTopDistance = 0;
+
+ /**
+ * Other classes can register to be notified when a locale was selected.
+ *
+ * <p>This is the mechanism to "return" the result of the selection.</p>
+ */
+ public interface LocaleSelectedListener {
+ /**
+ * The classes that want to retrieve the locale picked should implement this method.
+ * @param locale the locale picked.
+ */
+ void onLocaleSelected(LocaleStore.LocaleInfo locale);
+ }
+
+ private static LocalePickerWithRegion createCountryPicker(Context context,
+ LocaleSelectedListener listener, LocaleStore.LocaleInfo parent,
+ boolean translatedOnly) {
+ LocalePickerWithRegion
+ localePicker = new LocalePickerWithRegion();
+ boolean shouldShowTheList = localePicker.setListener(context, listener, parent,
+ translatedOnly);
+ return shouldShowTheList ? localePicker : null;
+ }
+
+ public static LocalePickerWithRegion createLanguagePicker(Context context,
+ LocaleSelectedListener listener, boolean translatedOnly) {
+ LocalePickerWithRegion
+ localePicker = new LocalePickerWithRegion();
+ localePicker.setListener(context, listener, /* parent */ null, translatedOnly);
+ return localePicker;
+ }
+
+ /**
+ * Sets the listener and initializes the locale list.
+ *
+ * <p>Returns true if we need to show the list, false if not.</p>
+ *
+ * <p>Can return false because of an error, trying to show a list of countries,
+ * but no parent locale was provided.</p>
+ *
+ * <p>It can also return false if the caller tries to show the list in country mode and
+ * there is only one country available (i.e. Japanese => Japan).
+ * In this case we don't even show the list, we call the listener with that locale,
+ * "pretending" it was selected, and return false.</p>
+ */
+ private boolean setListener(Context context, LocaleSelectedListener listener,
+ LocaleStore.LocaleInfo parent, boolean translatedOnly) {
+ this.mParentLocale = parent;
+ this.mListener = listener;
+ this.mTranslatedOnly = translatedOnly;
+ setRetainInstance(true);
+
+ final HashSet<String> langTagsToIgnore = new HashSet<>();
+ if (!translatedOnly) {
+ final LocaleList userLocales = LocalePicker.getLocales();
+ final String[] langTags = userLocales.toLanguageTags().split(",");
+ Collections.addAll(langTagsToIgnore, langTags);
+ }
+
+ if (parent != null) {
+ mLocaleList = LocaleStore.getLevelLocales(context,
+ langTagsToIgnore, parent, translatedOnly);
+ if (mLocaleList.size() <= 1) {
+ if (listener != null && (mLocaleList.size() == 1)) {
+ listener.onLocaleSelected(mLocaleList.iterator().next());
+ }
+ return false;
+ }
+ } else {
+ mLocaleList = LocaleStore.getLevelLocales(context, langTagsToIgnore,
+ null /* no parent */, translatedOnly);
+ }
+
+ return true;
+ }
+
+ private void returnToParentFrame() {
+ getFragmentManager().popBackStack(PARENT_FRAGMENT_NAME,
+ FragmentManager.POP_BACK_STACK_INCLUSIVE);
+ }
+
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setHasOptionsMenu(true);
+
+ if (mLocaleList == null) {
+ // The fragment was killed and restored by the FragmentManager.
+ // At this point we have no data, no listener. Just return, to prevend a NPE.
+ // Fixes b/28748150. Created b/29400003 for a cleaner solution.
+ returnToParentFrame();
+ return;
+ }
+
+ final boolean countryMode = mParentLocale != null;
+ final Locale sortingLocale = countryMode ? mParentLocale.getLocale() : Locale.getDefault();
+ mAdapter = new SuggestedLocaleAdapter(mLocaleList, countryMode);
+ final LocaleHelper.LocaleInfoComparator comp =
+ new LocaleHelper.LocaleInfoComparator(sortingLocale, countryMode);
+ mAdapter.sort(comp);
+ setListAdapter(mAdapter);
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem menuItem) {
+ int id = menuItem.getItemId();
+ switch (id) {
+ case android.R.id.home:
+ getFragmentManager().popBackStack();
+ return true;
+ }
+ return super.onOptionsItemSelected(menuItem);
+ }
+
+ @Override
+ public void onResume() {
+ super.onResume();
+
+ if (mParentLocale != null) {
+ getActivity().setTitle(mParentLocale.getFullNameNative());
+ } else {
+ getActivity().setTitle(R.string.language_selection_title);
+ }
+
+ getListView().requestFocus();
+ }
+
+ @Override
+ public void onPause() {
+ super.onPause();
+
+ // Save search status
+ if (mSearchView != null) {
+ mPreviousSearchHadFocus = mSearchView.hasFocus();
+ mPreviousSearch = mSearchView.getQuery();
+ } else {
+ mPreviousSearchHadFocus = false;
+ mPreviousSearch = null;
+ }
+
+ // Save scroll position
+ final ListView list = getListView();
+ final View firstChild = list.getChildAt(0);
+ mFirstVisiblePosition = list.getFirstVisiblePosition();
+ mTopDistance = (firstChild == null) ? 0 : (firstChild.getTop() - list.getPaddingTop());
+ }
+
+ @Override
+ public void onListItemClick(ListView l, View v, int position, long id) {
+ final LocaleStore.LocaleInfo locale =
+ (LocaleStore.LocaleInfo) getListAdapter().getItem(position);
+
+ if (locale.getParent() != null) {
+ if (mListener != null) {
+ mListener.onLocaleSelected(locale);
+ }
+ returnToParentFrame();
+ } else {
+ LocalePickerWithRegion
+ selector = LocalePickerWithRegion.createCountryPicker(
+ getContext(), mListener, locale, mTranslatedOnly /* translate only */);
+ if (selector != null) {
+ getFragmentManager().beginTransaction()
+ .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)
+ .replace(getId(), selector).addToBackStack(null)
+ .commit();
+ } else {
+ returnToParentFrame();
+ }
+ }
+ }
+
+ @Override
+ public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
+ if (mParentLocale == null) {
+ inflater.inflate(R.menu.language_selection_list, menu);
+
+ final MenuItem searchMenuItem = menu.findItem(R.id.locale_search_menu);
+ mSearchView = (SearchView) searchMenuItem.getActionView();
+
+ mSearchView.setQueryHint(getText(R.string.search_language_hint));
+ mSearchView.setOnQueryTextListener(this);
+
+ // Restore previous search status
+ if (!TextUtils.isEmpty(mPreviousSearch)) {
+ searchMenuItem.expandActionView();
+ mSearchView.setIconified(false);
+ mSearchView.setActivated(true);
+ if (mPreviousSearchHadFocus) {
+ mSearchView.requestFocus();
+ }
+ mSearchView.setQuery(mPreviousSearch, true /* submit */);
+ } else {
+ mSearchView.setQuery(null, false /* submit */);
+ }
+
+ // Restore previous scroll position
+ getListView().setSelectionFromTop(mFirstVisiblePosition, mTopDistance);
+ }
+ }
+
+ @Override
+ public boolean onQueryTextSubmit(String query) {
+ return false;
+ }
+
+ @Override
+ public boolean onQueryTextChange(String newText) {
+ if (mAdapter != null) {
+ mAdapter.getFilter().filter(newText);
+ }
+ return false;
+ }
+}
diff --git a/src/com/android/settings/location/LocationSettings.java b/src/com/android/settings/location/LocationSettings.java
index 638518c..18b1033 100644
--- a/src/com/android/settings/location/LocationSettings.java
+++ b/src/com/android/settings/location/LocationSettings.java
@@ -81,7 +81,8 @@
final SwitchBar switchBar = activity.getSwitchBar();
switchBar.setSwitchBarText(R.string.location_settings_master_switch_title,
R.string.location_settings_master_switch_title);
- mSwitchBarController = new LocationSwitchBarController(activity, switchBar, getLifecycle());
+ mSwitchBarController = new LocationSwitchBarController(activity, switchBar,
+ getSettingsLifecycle());
switchBar.show();
}
@@ -97,7 +98,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildPreferenceControllers(context, this, getLifecycle());
+ return buildPreferenceControllers(context, this, getSettingsLifecycle());
}
static void addPreferencesSorted(List<Preference> prefs, PreferenceGroup container) {
diff --git a/src/com/android/settings/location/RecentLocationRequestSeeAllFragment.java b/src/com/android/settings/location/RecentLocationRequestSeeAllFragment.java
index 8a15734..d256b9b 100644
--- a/src/com/android/settings/location/RecentLocationRequestSeeAllFragment.java
+++ b/src/com/android/settings/location/RecentLocationRequestSeeAllFragment.java
@@ -59,7 +59,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildPreferenceControllers(context, getLifecycle(), this);
+ return buildPreferenceControllers(context, getSettingsLifecycle(), this);
}
private static List<AbstractPreferenceController> buildPreferenceControllers(
diff --git a/src/com/android/settings/network/NetworkDashboardFragment.java b/src/com/android/settings/network/NetworkDashboardFragment.java
index f270627..31a8435 100644
--- a/src/com/android/settings/network/NetworkDashboardFragment.java
+++ b/src/com/android/settings/network/NetworkDashboardFragment.java
@@ -81,9 +81,8 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildPreferenceControllers(context, getLifecycle(), mMetricsFeatureProvider, this
- /* fragment */,
- this /* mobilePlanHost */);
+ return buildPreferenceControllers(context, getSettingsLifecycle(), mMetricsFeatureProvider,
+ this /* fragment */, this /* mobilePlanHost */);
}
private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
diff --git a/src/com/android/settings/network/PrivateDnsModeDialogPreference.java b/src/com/android/settings/network/PrivateDnsModeDialogPreference.java
index 7bdc14e..3a04ade 100644
--- a/src/com/android/settings/network/PrivateDnsModeDialogPreference.java
+++ b/src/com/android/settings/network/PrivateDnsModeDialogPreference.java
@@ -45,7 +45,7 @@
import com.android.settings.R;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.utils.AnnotationSpan;
-import com.android.settingslib.CustomDialogPreference;
+import com.android.settingslib.CustomDialogPreferenceCompat;
import com.android.settingslib.HelpUtils;
import java.util.HashMap;
@@ -56,7 +56,7 @@
/**
* Dialog to set the Private DNS
*/
-public class PrivateDnsModeDialogPreference extends CustomDialogPreference implements
+public class PrivateDnsModeDialogPreference extends CustomDialogPreferenceCompat implements
DialogInterface.OnClickListener, RadioGroup.OnCheckedChangeListener, TextWatcher {
public static final String ANNOTATION_URL = "url";
diff --git a/src/com/android/settings/nfc/NfcPaymentPreference.java b/src/com/android/settings/nfc/NfcPaymentPreference.java
index 456115a..f5275ec 100644
--- a/src/com/android/settings/nfc/NfcPaymentPreference.java
+++ b/src/com/android/settings/nfc/NfcPaymentPreference.java
@@ -15,23 +15,23 @@
*/
package com.android.settings.nfc;
-import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.util.AttributeSet;
-import com.android.settingslib.CustomDialogPreference;
+import com.android.settingslib.CustomDialogPreferenceCompat;
+import androidx.appcompat.app.AlertDialog.Builder;
import androidx.preference.PreferenceViewHolder;
-public class NfcPaymentPreference extends CustomDialogPreference {
+public class NfcPaymentPreference extends CustomDialogPreferenceCompat {
private Listener mListener;
interface Listener {
void onBindViewHolder(PreferenceViewHolder view);
- void onPrepareDialogBuilder(AlertDialog.Builder builder,
+ void onPrepareDialogBuilder(Builder builder,
DialogInterface.OnClickListener listener);
}
@@ -62,7 +62,7 @@
}
@Override
- protected void onPrepareDialogBuilder(AlertDialog.Builder builder,
+ protected void onPrepareDialogBuilder(Builder builder,
DialogInterface.OnClickListener listener) {
super.onPrepareDialogBuilder(builder, listener);
diff --git a/src/com/android/settings/nfc/NfcPaymentPreferenceController.java b/src/com/android/settings/nfc/NfcPaymentPreferenceController.java
index 39f0195..8996cb1 100644
--- a/src/com/android/settings/nfc/NfcPaymentPreferenceController.java
+++ b/src/com/android/settings/nfc/NfcPaymentPreferenceController.java
@@ -13,7 +13,6 @@
*/
package com.android.settings.nfc;
-import android.app.AlertDialog;
import android.app.Dialog;
import android.content.ActivityNotFoundException;
import android.content.Context;
@@ -39,6 +38,7 @@
import java.util.List;
+import androidx.appcompat.app.AlertDialog.Builder;
import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;
import androidx.preference.PreferenceViewHolder;
@@ -134,7 +134,7 @@
}
@Override
- public void onPrepareDialogBuilder(AlertDialog.Builder builder,
+ public void onPrepareDialogBuilder(Builder builder,
DialogInterface.OnClickListener listener) {
builder.setSingleChoiceItems(mAdapter, 0, listener);
}
diff --git a/src/com/android/settings/notification/ConfigureNotificationSettings.java b/src/com/android/settings/notification/ConfigureNotificationSettings.java
index adcd393..2b5a8ab 100644
--- a/src/com/android/settings/notification/ConfigureNotificationSettings.java
+++ b/src/com/android/settings/notification/ConfigureNotificationSettings.java
@@ -87,7 +87,7 @@
} else {
app = null;
}
- return buildPreferenceControllers(context, getLifecycle(), app, this);
+ return buildPreferenceControllers(context, getSettingsLifecycle(), app, this);
}
private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
@@ -119,7 +119,7 @@
if (preference instanceof RingtonePreference) {
mRequestPreference = (RingtonePreference) preference;
mRequestPreference.onPrepareRingtonePickerIntent(mRequestPreference.getIntent());
- startActivityForResultAsUser(
+ getActivity().startActivityForResultAsUser(
mRequestPreference.getIntent(),
REQUEST_CODE,
null,
diff --git a/src/com/android/settings/notification/HeaderPreferenceController.java b/src/com/android/settings/notification/HeaderPreferenceController.java
index 89a312f..6ddafc3 100644
--- a/src/com/android/settings/notification/HeaderPreferenceController.java
+++ b/src/com/android/settings/notification/HeaderPreferenceController.java
@@ -34,15 +34,16 @@
import androidx.lifecycle.LifecycleObserver;
import androidx.lifecycle.OnLifecycleEvent;
import androidx.preference.Preference;
+import androidx.preference.PreferenceFragmentCompat;
public class HeaderPreferenceController extends NotificationPreferenceController
implements PreferenceControllerMixin, LifecycleObserver {
- private final PreferenceFragment mFragment;
+ private final PreferenceFragmentCompat mFragment;
private EntityHeaderController mHeaderController;
private boolean mStarted = false;
- public HeaderPreferenceController(Context context, PreferenceFragment fragment) {
+ public HeaderPreferenceController(Context context, PreferenceFragmentCompat fragment) {
super(context, null);
mFragment = fragment;
}
diff --git a/src/com/android/settings/notification/NotificationLockscreenPreference.java b/src/com/android/settings/notification/NotificationLockscreenPreference.java
index b3f39f9..af912af 100644
--- a/src/com/android/settings/notification/NotificationLockscreenPreference.java
+++ b/src/com/android/settings/notification/NotificationLockscreenPreference.java
@@ -36,6 +36,8 @@
import com.android.settings.Utils;
import com.android.settingslib.RestrictedLockUtils;
+import androidx.appcompat.app.AlertDialog.Builder;
+
public class NotificationLockscreenPreference extends RestrictedListPreference {
private boolean mAllowRemoteInput;
@@ -72,7 +74,7 @@
}
@Override
- protected void onPrepareDialogBuilder(AlertDialog.Builder builder,
+ protected void onPrepareDialogBuilder(Builder builder,
DialogInterface.OnClickListener innerListener) {
mListener = new Listener(innerListener);
diff --git a/src/com/android/settings/notification/NotificationSettingsBase.java b/src/com/android/settings/notification/NotificationSettingsBase.java
index ccef262..44f77cf 100644
--- a/src/com/android/settings/notification/NotificationSettingsBase.java
+++ b/src/com/android/settings/notification/NotificationSettingsBase.java
@@ -120,7 +120,7 @@
loadChannelGroup();
collectConfigActivities();
- getLifecycle().addObserver(use(HeaderPreferenceController.class));
+ getSettingsLifecycle().addObserver(use(HeaderPreferenceController.class));
for (NotificationPreferenceController controller : mControllers) {
controller.onResume(mAppRow, mChannel, mChannelGroup, mSuspendedAppsAdmin);
diff --git a/src/com/android/settings/notification/SoundSettings.java b/src/com/android/settings/notification/SoundSettings.java
index dbac1c2..dafc538 100644
--- a/src/com/android/settings/notification/SoundSettings.java
+++ b/src/com/android/settings/notification/SoundSettings.java
@@ -117,7 +117,7 @@
if (preference instanceof RingtonePreference) {
mRequestPreference = (RingtonePreference) preference;
mRequestPreference.onPrepareRingtonePickerIntent(mRequestPreference.getIntent());
- startActivityForResultAsUser(
+ getActivity().startActivityForResultAsUser(
mRequestPreference.getIntent(),
REQUEST_CODE,
null,
@@ -156,7 +156,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildPreferenceControllers(context, this, getLifecycle());
+ return buildPreferenceControllers(context, this, getSettingsLifecycle());
}
@Override
@@ -195,7 +195,7 @@
for (VolumeSeekBarPreferenceController controller : volumeControllers) {
controller.setCallback(mVolumeCallback);
- getLifecycle().addObserver(controller);
+ getSettingsLifecycle().addObserver(controller);
}
}
diff --git a/src/com/android/settings/notification/ZenAutomaticRuleHeaderPreferenceController.java b/src/com/android/settings/notification/ZenAutomaticRuleHeaderPreferenceController.java
index 4b1c8c5..6468f1d 100644
--- a/src/com/android/settings/notification/ZenAutomaticRuleHeaderPreferenceController.java
+++ b/src/com/android/settings/notification/ZenAutomaticRuleHeaderPreferenceController.java
@@ -36,18 +36,19 @@
import androidx.fragment.app.Fragment;
import androidx.preference.Preference;
+import androidx.preference.PreferenceFragmentCompat;
public class ZenAutomaticRuleHeaderPreferenceController extends AbstractZenModePreferenceController
implements PreferenceControllerMixin {
private final String KEY = PREF_KEY_APP_HEADER;
- private final PreferenceFragment mFragment;
+ private final PreferenceFragmentCompat mFragment;
private AutomaticZenRule mRule;
private String mId;
private EntityHeaderController mController;
- public ZenAutomaticRuleHeaderPreferenceController(Context context, PreferenceFragment fragment,
- Lifecycle lifecycle) {
+ public ZenAutomaticRuleHeaderPreferenceController(Context context,
+ PreferenceFragmentCompat fragment, Lifecycle lifecycle) {
super(context, PREF_KEY_APP_HEADER, lifecycle);
mFragment = fragment;
}
diff --git a/src/com/android/settings/notification/ZenModeAutomationSettings.java b/src/com/android/settings/notification/ZenModeAutomationSettings.java
index 196b4e7..ee85c4e 100644
--- a/src/com/android/settings/notification/ZenModeAutomationSettings.java
+++ b/src/com/android/settings/notification/ZenModeAutomationSettings.java
@@ -43,7 +43,7 @@
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
ZenServiceListing serviceListing = new ZenServiceListing(getContext(), CONFIG);
serviceListing.reloadApprovedServices();
- return buildPreferenceControllers(context, this, serviceListing, getLifecycle());
+ return buildPreferenceControllers(context, this, serviceListing, getSettingsLifecycle());
}
private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
diff --git a/src/com/android/settings/notification/ZenModeBlockedEffectsSettings.java b/src/com/android/settings/notification/ZenModeBlockedEffectsSettings.java
index 2bda243..c105a1a 100644
--- a/src/com/android/settings/notification/ZenModeBlockedEffectsSettings.java
+++ b/src/com/android/settings/notification/ZenModeBlockedEffectsSettings.java
@@ -51,7 +51,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildPreferenceControllers(context, getLifecycle());
+ return buildPreferenceControllers(context, getSettingsLifecycle());
}
private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
diff --git a/src/com/android/settings/notification/ZenModeCallsSettings.java b/src/com/android/settings/notification/ZenModeCallsSettings.java
index d771ef2..bff1c9f 100644
--- a/src/com/android/settings/notification/ZenModeCallsSettings.java
+++ b/src/com/android/settings/notification/ZenModeCallsSettings.java
@@ -37,7 +37,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildPreferenceControllers(context, getLifecycle());
+ return buildPreferenceControllers(context, getSettingsLifecycle());
}
private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
diff --git a/src/com/android/settings/notification/ZenModeEventRuleSettings.java b/src/com/android/settings/notification/ZenModeEventRuleSettings.java
index 9d1d49b..a6aba11 100644
--- a/src/com/android/settings/notification/ZenModeEventRuleSettings.java
+++ b/src/com/android/settings/notification/ZenModeEventRuleSettings.java
@@ -82,8 +82,9 @@
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
List<AbstractPreferenceController> controllers = new ArrayList<>();
mHeader = new ZenAutomaticRuleHeaderPreferenceController(context, this,
- getLifecycle());
- mSwitch = new ZenAutomaticRuleSwitchPreferenceController(context, this, getLifecycle());
+ getSettingsLifecycle());
+ mSwitch = new ZenAutomaticRuleSwitchPreferenceController(context, this,
+ getSettingsLifecycle());
controllers.add(mHeader);
controllers.add(mSwitch);
return controllers;
diff --git a/src/com/android/settings/notification/ZenModeMsgEventReminderSettings.java b/src/com/android/settings/notification/ZenModeMsgEventReminderSettings.java
index e3a721f..b61b76e 100644
--- a/src/com/android/settings/notification/ZenModeMsgEventReminderSettings.java
+++ b/src/com/android/settings/notification/ZenModeMsgEventReminderSettings.java
@@ -37,7 +37,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildPreferenceControllers(context, getLifecycle());
+ return buildPreferenceControllers(context, getSettingsLifecycle());
}
private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
diff --git a/src/com/android/settings/notification/ZenModeRestrictNotificationsSettings.java b/src/com/android/settings/notification/ZenModeRestrictNotificationsSettings.java
index 737c646..bf170df 100644
--- a/src/com/android/settings/notification/ZenModeRestrictNotificationsSettings.java
+++ b/src/com/android/settings/notification/ZenModeRestrictNotificationsSettings.java
@@ -42,7 +42,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildPreferenceControllers(context, getLifecycle());
+ return buildPreferenceControllers(context, getSettingsLifecycle());
}
@Override
diff --git a/src/com/android/settings/notification/ZenModeScheduleRuleSettings.java b/src/com/android/settings/notification/ZenModeScheduleRuleSettings.java
index 5043e27..56f9081 100644
--- a/src/com/android/settings/notification/ZenModeScheduleRuleSettings.java
+++ b/src/com/android/settings/notification/ZenModeScheduleRuleSettings.java
@@ -200,8 +200,9 @@
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
List<AbstractPreferenceController> controllers = new ArrayList<>();
mHeader = new ZenAutomaticRuleHeaderPreferenceController(context, this,
- getLifecycle());
- mSwitch = new ZenAutomaticRuleSwitchPreferenceController(context, this, getLifecycle());
+ getSettingsLifecycle());
+ mSwitch = new ZenAutomaticRuleSwitchPreferenceController(context, this,
+ getSettingsLifecycle());
controllers.add(mHeader);
controllers.add(mSwitch);
diff --git a/src/com/android/settings/notification/ZenModeSettings.java b/src/com/android/settings/notification/ZenModeSettings.java
index b209ac8..ce8fe4d 100644
--- a/src/com/android/settings/notification/ZenModeSettings.java
+++ b/src/com/android/settings/notification/ZenModeSettings.java
@@ -71,7 +71,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildPreferenceControllers(context, getLifecycle(), getFragmentManager());
+ return buildPreferenceControllers(context, getSettingsLifecycle(), getFragmentManager());
}
@Override
diff --git a/src/com/android/settings/notification/ZenModeSoundVibrationSettings.java b/src/com/android/settings/notification/ZenModeSoundVibrationSettings.java
index b72460c..32ff2d1 100644
--- a/src/com/android/settings/notification/ZenModeSoundVibrationSettings.java
+++ b/src/com/android/settings/notification/ZenModeSoundVibrationSettings.java
@@ -35,7 +35,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildPreferenceControllers(context, getLifecycle());
+ return buildPreferenceControllers(context, getSettingsLifecycle());
}
private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
diff --git a/src/com/android/settings/password/ChooseLockTypeDialogFragment.java b/src/com/android/settings/password/ChooseLockTypeDialogFragment.java
index 99921b2..8969eec 100644
--- a/src/com/android/settings/password/ChooseLockTypeDialogFragment.java
+++ b/src/com/android/settings/password/ChooseLockTypeDialogFragment.java
@@ -17,8 +17,6 @@
package com.android.settings.password;
import android.app.Activity;
-import android.app.AlertDialog;
-import android.app.AlertDialog.Builder;
import android.app.Dialog;
import android.app.admin.DevicePolicyManager;
import android.content.Context;
@@ -42,6 +40,7 @@
import java.util.List;
+import androidx.appcompat.app.AlertDialog.Builder;
import androidx.fragment.app.Fragment;
/**
@@ -133,7 +132,7 @@
mAdapter = new ScreenLockAdapter(context, locks, mController);
builder.setAdapter(mAdapter, this);
builder.setTitle(R.string.setup_lock_settings_options_dialog_title);
- AlertDialog alertDialog = builder.create();
+ Dialog alertDialog = builder.create();
return alertDialog;
}
diff --git a/src/com/android/settings/password/ConfirmDeviceCredentialBaseActivity.java b/src/com/android/settings/password/ConfirmDeviceCredentialBaseActivity.java
index 4dd4a97..3818ac9 100644
--- a/src/com/android/settings/password/ConfirmDeviceCredentialBaseActivity.java
+++ b/src/com/android/settings/password/ConfirmDeviceCredentialBaseActivity.java
@@ -124,7 +124,7 @@
}
private ConfirmDeviceCredentialBaseFragment getFragment() {
- Fragment fragment = getFragmentManager().findFragmentById(R.id.main_content);
+ Fragment fragment = getSupportFragmentManager().findFragmentById(R.id.main_content);
if (fragment != null && fragment instanceof ConfirmDeviceCredentialBaseFragment) {
return (ConfirmDeviceCredentialBaseFragment) fragment;
}
diff --git a/src/com/android/settings/password/ConfirmLockPassword.java b/src/com/android/settings/password/ConfirmLockPassword.java
index fd22b1e..b381226 100644
--- a/src/com/android/settings/password/ConfirmLockPassword.java
+++ b/src/com/android/settings/password/ConfirmLockPassword.java
@@ -85,7 +85,7 @@
@Override
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
- Fragment fragment = getFragmentManager().findFragmentById(R.id.main_content);
+ Fragment fragment = getSupportFragmentManager().findFragmentById(R.id.main_content);
if (fragment != null && fragment instanceof ConfirmLockPasswordFragment) {
((ConfirmLockPasswordFragment)fragment).onWindowFocusChanged(hasFocus);
}
diff --git a/src/com/android/settings/password/SetupChooseLockGeneric.java b/src/com/android/settings/password/SetupChooseLockGeneric.java
index 9384236..6ca0916 100644
--- a/src/com/android/settings/password/SetupChooseLockGeneric.java
+++ b/src/com/android/settings/password/SetupChooseLockGeneric.java
@@ -36,6 +36,7 @@
import com.android.setupwizardlib.GlifPreferenceLayout;
import androidx.preference.Preference;
+import androidx.preference.PreferenceFragmentCompat;
import androidx.recyclerview.widget.RecyclerView;
/**
@@ -55,7 +56,7 @@
}
@Override
- /* package */ Class<? extends PreferenceFragment> getFragmentClass() {
+ /* package */ Class<? extends PreferenceFragmentCompat> getFragmentClass() {
return SetupChooseLockGenericFragment.class;
}
diff --git a/src/com/android/settings/print/PrintServiceSettingsFragment.java b/src/com/android/settings/print/PrintServiceSettingsFragment.java
index e05bea6..4629360 100644
--- a/src/com/android/settings/print/PrintServiceSettingsFragment.java
+++ b/src/com/android/settings/print/PrintServiceSettingsFragment.java
@@ -28,7 +28,6 @@
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.print.PrintManager;
-import android.print.PrintServicesLoader;
import android.print.PrinterDiscoverySession;
import android.print.PrinterDiscoverySession.OnPrintersChangeListener;
import android.print.PrinterId;
diff --git a/src/com/android/settings/print/PrintServicesLoader.java b/src/com/android/settings/print/PrintServicesLoader.java
new file mode 100644
index 0000000..57cddb9
--- /dev/null
+++ b/src/com/android/settings/print/PrintServicesLoader.java
@@ -0,0 +1,126 @@
+/*
+ * Copyright (C) 2018 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.print;
+
+import android.annotation.NonNull;
+import android.content.Context;
+import android.os.Handler;
+import android.os.Message;
+import android.print.PrintManager;
+import android.printservice.PrintServiceInfo;
+
+import com.android.internal.util.Preconditions;
+
+import java.util.List;
+
+import androidx.loader.content.Loader;
+
+/**
+ * Loader for the list of print services. Can be parametrized to select a subset.
+ *
+ */
+public class PrintServicesLoader extends Loader<List<PrintServiceInfo>> {
+ /** What type of services to load. */
+ private final int mSelectionFlags;
+
+ /** The print manager to be used by this object */
+ private final @NonNull PrintManager mPrintManager;
+
+ /** Handler to sequentialize the delivery of the results to the main thread */
+ private final @NonNull Handler mHandler;
+
+ /** Listens for updates to the data from the platform */
+ private PrintManager.PrintServicesChangeListener mListener;
+
+ /**
+ * Create a new PrintServicesLoader.
+ *
+ * @param printManager The print manager supplying the data
+ * @param context Context of the using object
+ * @param selectionFlags What type of services to load.
+ */
+ public PrintServicesLoader(@NonNull PrintManager printManager, @NonNull Context context,
+ int selectionFlags) {
+ super(Preconditions.checkNotNull(context));
+ mHandler = new MyHandler();
+ mPrintManager = Preconditions.checkNotNull(printManager);
+ mSelectionFlags = Preconditions.checkFlagsArgument(selectionFlags,
+ PrintManager.ALL_SERVICES);
+ }
+
+ @Override
+ protected void onForceLoad() {
+ queueNewResult();
+ }
+
+ /**
+ * Read the print services and queue it to be delivered on the main thread.
+ */
+ private void queueNewResult() {
+ Message m = mHandler.obtainMessage(0);
+ m.obj = mPrintManager.getPrintServices(mSelectionFlags);
+ mHandler.sendMessage(m);
+ }
+
+ @Override
+ protected void onStartLoading() {
+ mListener = new PrintManager.PrintServicesChangeListener() {
+ @Override public void onPrintServicesChanged() {
+ queueNewResult();
+ }
+ };
+
+ mPrintManager.addPrintServicesChangeListener(mListener, null);
+
+ // Immediately deliver a result
+ deliverResult(mPrintManager.getPrintServices(mSelectionFlags));
+ }
+
+ @Override
+ protected void onStopLoading() {
+ if (mListener != null) {
+ mPrintManager.removePrintServicesChangeListener(mListener);
+ mListener = null;
+ }
+
+ mHandler.removeMessages(0);
+ }
+
+ @Override
+ protected void onReset() {
+ onStopLoading();
+ }
+
+ /**
+ * Handler to sequentialize all the updates to the main thread.
+ */
+ private class MyHandler extends Handler {
+ /**
+ * Create a new handler on the main thread.
+ */
+ public MyHandler() {
+ super(getContext().getMainLooper());
+ }
+
+ @Override
+ public void handleMessage(Message msg) {
+ if (isStarted()) {
+ deliverResult((List<PrintServiceInfo>) msg.obj);
+ }
+ }
+ }
+}
diff --git a/src/com/android/settings/print/PrintSettingsFragment.java b/src/com/android/settings/print/PrintSettingsFragment.java
index 844f9f1..a6b3d7e 100644
--- a/src/com/android/settings/print/PrintSettingsFragment.java
+++ b/src/com/android/settings/print/PrintSettingsFragment.java
@@ -32,7 +32,6 @@
import android.print.PrintJobInfo;
import android.print.PrintManager;
import android.print.PrintManager.PrintJobStateChangeListener;
-import android.print.PrintServicesLoader;
import android.printservice.PrintServiceInfo;
import android.provider.SearchIndexableResource;
import android.provider.Settings;
diff --git a/src/com/android/settings/search/actionbar/SearchMenuController.java b/src/com/android/settings/search/actionbar/SearchMenuController.java
index a3bb234..2fcc048 100644
--- a/src/com/android/settings/search/actionbar/SearchMenuController.java
+++ b/src/com/android/settings/search/actionbar/SearchMenuController.java
@@ -40,11 +40,11 @@
private final Fragment mHost;
public static void init(@NonNull ObservablePreferenceFragment host) {
- host.getLifecycle().addObserver(new SearchMenuController(host));
+ host.getSettingsLifecycle().addObserver(new SearchMenuController(host));
}
public static void init(@NonNull ObservableFragment host) {
- host.getLifecycle().addObserver(new SearchMenuController(host));
+ host.getSettingsLifecycle().addObserver(new SearchMenuController(host));
}
private SearchMenuController(@NonNull Fragment host) {
diff --git a/src/com/android/settings/security/EncryptionAndCredential.java b/src/com/android/settings/security/EncryptionAndCredential.java
index 9096486..7f50c5d 100644
--- a/src/com/android/settings/security/EncryptionAndCredential.java
+++ b/src/com/android/settings/security/EncryptionAndCredential.java
@@ -56,7 +56,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildPreferenceControllers(context, getLifecycle());
+ return buildPreferenceControllers(context, getSettingsLifecycle());
}
@Override
diff --git a/src/com/android/settings/security/LockscreenDashboardFragment.java b/src/com/android/settings/security/LockscreenDashboardFragment.java
index eaaf51d..e214720 100644
--- a/src/com/android/settings/security/LockscreenDashboardFragment.java
+++ b/src/com/android/settings/security/LockscreenDashboardFragment.java
@@ -100,7 +100,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
final List<AbstractPreferenceController> controllers = new ArrayList<>();
- final Lifecycle lifecycle = getLifecycle();
+ final Lifecycle lifecycle = getSettingsLifecycle();
final LockScreenNotificationPreferenceController notificationController =
new LockScreenNotificationPreferenceController(context,
KEY_LOCK_SCREEN_NOTIFICATON,
diff --git a/src/com/android/settings/security/SecuritySettings.java b/src/com/android/settings/security/SecuritySettings.java
index ed6b4e9..effbd51 100644
--- a/src/com/android/settings/security/SecuritySettings.java
+++ b/src/com/android/settings/security/SecuritySettings.java
@@ -79,7 +79,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildPreferenceControllers(context, getLifecycle(), this /* host*/);
+ return buildPreferenceControllers(context, getSettingsLifecycle(), this /* host*/);
}
/**
diff --git a/src/com/android/settings/security/screenlock/ScreenLockSettings.java b/src/com/android/settings/security/screenlock/ScreenLockSettings.java
index ec147d4..abb4b33 100644
--- a/src/com/android/settings/security/screenlock/ScreenLockSettings.java
+++ b/src/com/android/settings/security/screenlock/ScreenLockSettings.java
@@ -65,7 +65,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
mLockPatternUtils = new LockPatternUtils(context);
- return buildPreferenceControllers(context, this /* parent */, getLifecycle(),
+ return buildPreferenceControllers(context, this /* parent */, getSettingsLifecycle(),
mLockPatternUtils);
}
diff --git a/src/com/android/settings/support/actionbar/HelpMenuController.java b/src/com/android/settings/support/actionbar/HelpMenuController.java
index 8ea98aa..3ac248c 100644
--- a/src/com/android/settings/support/actionbar/HelpMenuController.java
+++ b/src/com/android/settings/support/actionbar/HelpMenuController.java
@@ -40,11 +40,11 @@
private final Fragment mHost;
public static void init(@NonNull ObservablePreferenceFragment host) {
- host.getLifecycle().addObserver(new HelpMenuController(host));
+ host.getSettingsLifecycle().addObserver(new HelpMenuController(host));
}
public static void init(@NonNull ObservableFragment host) {
- host.getLifecycle().addObserver(new HelpMenuController(host));
+ host.getSettingsLifecycle().addObserver(new HelpMenuController(host));
}
private HelpMenuController(@NonNull Fragment host) {
diff --git a/src/com/android/settings/system/ResetDashboardFragment.java b/src/com/android/settings/system/ResetDashboardFragment.java
index 153177a..772f18b 100644
--- a/src/com/android/settings/system/ResetDashboardFragment.java
+++ b/src/com/android/settings/system/ResetDashboardFragment.java
@@ -55,7 +55,7 @@
@Override
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
- return buildPreferenceControllers(context, getLifecycle());
+ return buildPreferenceControllers(context, getSettingsLifecycle());
}
private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
diff --git a/src/com/android/settings/users/MultiUserFooterPreferenceController.java b/src/com/android/settings/users/MultiUserFooterPreferenceController.java
index 877df58..f42f190 100644
--- a/src/com/android/settings/users/MultiUserFooterPreferenceController.java
+++ b/src/com/android/settings/users/MultiUserFooterPreferenceController.java
@@ -21,7 +21,7 @@
import com.android.settings.R;
import com.android.settings.core.BasePreferenceController;
import com.android.settingslib.widget.FooterPreference;
-import com.android.settingslib.widget.FooterPreferenceMixin;
+import com.android.settingslib.widget.FooterPreferenceMixinCompat;
import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference;
@@ -31,14 +31,15 @@
@VisibleForTesting
final UserCapabilities mUserCaps;
- private FooterPreferenceMixin mFooterMixin;
+ private FooterPreferenceMixinCompat mFooterMixin;
public MultiUserFooterPreferenceController(Context context) {
super(context, "dummy_key");
mUserCaps = UserCapabilities.create(context);
}
- public MultiUserFooterPreferenceController setFooterMixin(FooterPreferenceMixin footerMixin) {
+ public MultiUserFooterPreferenceController setFooterMixin(
+ FooterPreferenceMixinCompat footerMixin) {
mFooterMixin = footerMixin;
return this;
}
diff --git a/src/com/android/settings/users/UserSettings.java b/src/com/android/settings/users/UserSettings.java
index 931fdcf..7d84d99 100644
--- a/src/com/android/settings/users/UserSettings.java
+++ b/src/com/android/settings/users/UserSettings.java
@@ -216,7 +216,7 @@
final SwitchBar switchBar = activity.getSwitchBar();
mSwitchBarController = new MultiUserSwitchBarController(activity,
new SwitchBarController(switchBar), this /* listener */);
- getLifecycle().addObserver(mSwitchBarController);
+ getSettingsLifecycle().addObserver(mSwitchBarController);
switchBar.show();
}
diff --git a/src/com/android/settings/widget/UpdatableListPreferenceDialogFragment.java b/src/com/android/settings/widget/UpdatableListPreferenceDialogFragment.java
index 5877078..4d54192 100644
--- a/src/com/android/settings/widget/UpdatableListPreferenceDialogFragment.java
+++ b/src/com/android/settings/widget/UpdatableListPreferenceDialogFragment.java
@@ -15,7 +15,6 @@
*/
package com.android.settings.widget;
-import android.app.AlertDialog;
import android.content.res.TypedArray;
import android.os.Bundle;
import android.widget.ArrayAdapter;
@@ -25,14 +24,15 @@
import java.util.ArrayList;
import androidx.annotation.VisibleForTesting;
+import androidx.appcompat.app.AlertDialog.Builder;
import androidx.preference.ListPreference;
-import androidx.preference.PreferenceDialogFragment;
+import androidx.preference.PreferenceDialogFragmentCompat;
/**
- * {@link PreferenceDialogFragment} that updates the available options
+ * {@link PreferenceDialogFragmentCompat} that updates the available options
* when {@code onListPreferenceUpdated} is called."
*/
-public class UpdatableListPreferenceDialogFragment extends PreferenceDialogFragment implements
+public class UpdatableListPreferenceDialogFragment extends PreferenceDialogFragmentCompat implements
Instrumentable {
private static final String SAVE_STATE_INDEX = "UpdatableListPreferenceDialogFragment.index";
@@ -115,7 +115,7 @@
}
@Override
- protected void onPrepareDialogBuilder(AlertDialog.Builder builder) {
+ protected void onPrepareDialogBuilder(Builder builder) {
super.onPrepareDialogBuilder(builder);
final TypedArray a = getContext().obtainStyledAttributes(
null,
diff --git a/src/com/android/settings/widget/ValidatedEditTextPreference.java b/src/com/android/settings/widget/ValidatedEditTextPreference.java
index 35be502..aec362f 100644
--- a/src/com/android/settings/widget/ValidatedEditTextPreference.java
+++ b/src/com/android/settings/widget/ValidatedEditTextPreference.java
@@ -27,7 +27,7 @@
import android.widget.EditText;
import android.widget.TextView;
-import com.android.settingslib.CustomEditTextPreference;
+import com.android.settingslib.CustomEditTextPreferenceCompat;
import androidx.annotation.VisibleForTesting;
import androidx.preference.PreferenceViewHolder;
@@ -35,7 +35,7 @@
/**
* {@code EditTextPreference} that supports input validation.
*/
-public class ValidatedEditTextPreference extends CustomEditTextPreference {
+public class ValidatedEditTextPreference extends CustomEditTextPreferenceCompat {
public interface Validator {
boolean isTextValid(String value);
diff --git a/src/com/android/settings/wifi/ConfigureWifiSettings.java b/src/com/android/settings/wifi/ConfigureWifiSettings.java
index e0e63cc..1d1c30c 100644
--- a/src/com/android/settings/wifi/ConfigureWifiSettings.java
+++ b/src/com/android/settings/wifi/ConfigureWifiSettings.java
@@ -76,15 +76,18 @@
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
mWifiWakeupPreferenceController = new WifiWakeupPreferenceController(context, this);
mUseOpenWifiPreferenceController = new UseOpenWifiPreferenceController(context, this,
- getLifecycle());
+ getSettingsLifecycle());
final WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE);
final List<AbstractPreferenceController> controllers = new ArrayList<>();
controllers.add(mWifiWakeupPreferenceController);
- controllers.add(new NotifyOpenNetworksPreferenceController(context, getLifecycle()));
+ controllers.add(new NotifyOpenNetworksPreferenceController(context,
+ getSettingsLifecycle()));
controllers.add(mUseOpenWifiPreferenceController);
- controllers.add(new WifiInfoPreferenceController(context, getLifecycle(), wifiManager));
+ controllers.add(new WifiInfoPreferenceController(context, getSettingsLifecycle(),
+ wifiManager));
controllers.add(new CellularFallbackPreferenceController(context));
- controllers.add(new WifiP2pPreferenceController(context, getLifecycle(), wifiManager));
+ controllers.add(new WifiP2pPreferenceController(context, getSettingsLifecycle(),
+ wifiManager));
return controllers;
}
diff --git a/src/com/android/settings/wifi/WifiPickerActivity.java b/src/com/android/settings/wifi/WifiPickerActivity.java
index d035a80..ca392ce 100644
--- a/src/com/android/settings/wifi/WifiPickerActivity.java
+++ b/src/com/android/settings/wifi/WifiPickerActivity.java
@@ -22,6 +22,8 @@
import com.android.settings.SettingsActivity;
import com.android.settings.wifi.p2p.WifiP2pSettings;
+import androidx.preference.PreferenceFragmentCompat;
+
public class WifiPickerActivity extends SettingsActivity implements ButtonBarHandler {
@Override
@@ -44,7 +46,7 @@
return false;
}
- /* package */ Class<? extends PreferenceFragment> getWifiSettingsClass() {
+ /* package */ Class<? extends PreferenceFragmentCompat> getWifiSettingsClass() {
return WifiSettings.class;
}
}
diff --git a/src/com/android/settings/wifi/WifiScanModeActivity.java b/src/com/android/settings/wifi/WifiScanModeActivity.java
index 704c6fd..4742f63 100644
--- a/src/com/android/settings/wifi/WifiScanModeActivity.java
+++ b/src/com/android/settings/wifi/WifiScanModeActivity.java
@@ -16,7 +16,6 @@
package com.android.settings.wifi;
-import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
@@ -32,11 +31,12 @@
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
import androidx.fragment.app.DialogFragment;
+import androidx.fragment.app.FragmentActivity;
/**
* This activity requests users permission to allow scanning even when Wi-Fi is turned off
*/
-public class WifiScanModeActivity extends Activity {
+public class WifiScanModeActivity extends FragmentActivity {
private DialogFragment mDialog;
private String mApp;
@@ -67,7 +67,7 @@
private void createDialog() {
if (mDialog == null) {
mDialog = AlertDialogFragment.newInstance(mApp);
- mDialog.show(getFragmentManager(), "dialog");
+ mDialog.show(getSupportFragmentManager(), "dialog");
}
}
diff --git a/src/com/android/settings/wifi/WifiSettings.java b/src/com/android/settings/wifi/WifiSettings.java
index 5397eae..e5ff3d9 100644
--- a/src/com/android/settings/wifi/WifiSettings.java
+++ b/src/com/android/settings/wifi/WifiSettings.java
@@ -243,7 +243,7 @@
super.onActivityCreated(savedInstanceState);
mWifiTracker = WifiTrackerFactory.create(
- getActivity(), this, getLifecycle(), true, true);
+ getActivity(), this, getSettingsLifecycle(), true, true);
mWifiManager = mWifiTracker.getManager();
final Activity activity = getActivity();
diff --git a/src/com/android/settings/wifi/calling/WifiCallingSettings.java b/src/com/android/settings/wifi/calling/WifiCallingSettings.java
index ec27bac..5762b7b 100644
--- a/src/com/android/settings/wifi/calling/WifiCallingSettings.java
+++ b/src/com/android/settings/wifi/calling/WifiCallingSettings.java
@@ -38,7 +38,7 @@
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
-import androidx.legacy.app.FragmentPagerAdapter;
+import androidx.fragment.app.FragmentPagerAdapter;
/**
* "Wi-Fi Calling settings" screen. This is the container fragment which holds
diff --git a/src/com/android/settings/wifi/details/WifiNetworkDetailsFragment.java b/src/com/android/settings/wifi/details/WifiNetworkDetailsFragment.java
index 3438035..d114e06 100644
--- a/src/com/android/settings/wifi/details/WifiNetworkDetailsFragment.java
+++ b/src/com/android/settings/wifi/details/WifiNetworkDetailsFragment.java
@@ -128,7 +128,7 @@
context,
this,
new Handler(Looper.getMainLooper()), // UI thread.
- getLifecycle(),
+ getSettingsLifecycle(),
context.getSystemService(WifiManager.class),
mMetricsFeatureProvider);
diff --git a/src/com/android/settings/wifi/tether/WifiTetherSettings.java b/src/com/android/settings/wifi/tether/WifiTetherSettings.java
index b6db02c..16908d6 100644
--- a/src/com/android/settings/wifi/tether/WifiTetherSettings.java
+++ b/src/com/android/settings/wifi/tether/WifiTetherSettings.java
@@ -110,7 +110,7 @@
final SwitchBar switchBar = activity.getSwitchBar();
mSwitchBarController = new WifiTetherSwitchBarController(activity,
new SwitchBarController(switchBar));
- getLifecycle().addObserver(mSwitchBarController);
+ getSettingsLifecycle().addObserver(mSwitchBarController);
switchBar.show();
}