Merge "Moved network settings reset away from Backup & reset." into nyc-mr1-dev
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index f72aa8e..8b9f368 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -328,7 +328,7 @@
android:value="true" />
</activity>
- <activity android:name=".wifi.WifiInfo"
+ <activity android:name=".Settings$WifiInfoActivity"
android:theme="@style/Theme.SubSettingsDialogWhenLarge"
android:taskAffinity="com.android.settings"
android:parentActivityName="Settings$WifiSettingsActivity">
@@ -337,6 +337,8 @@
<category android:name="android.intent.category.DEVELOPMENT_PREFERENCE" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
+ <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
+ android:value="com.android.settings.wifi.WifiInfo" />
</activity>
<activity android:name=".wifi.WifiConfigInfo"
@@ -350,13 +352,15 @@
</intent-filter>
</activity>
- <activity android:name=".wifi.WifiAPITest"
+ <activity android:name=".Settings$WifiAPITestActivity"
android:theme="@style/Theme.SubSettingsDialogWhenLarge">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.DEVELOPMENT_PREFERENCE" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
+ <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
+ android:value="com.android.settings.wifi.WifiAPITest" />
</activity>
<activity android:name=".wifi.WifiStatusTest"
@@ -1445,7 +1449,7 @@
</intent-filter>
</activity-alias>
- <activity android:name="IccLockSettings"
+ <activity android:name="Settings$IccLockSettingsActivity"
android:label="@string/sim_lock_settings"
android:theme="@style/Theme.SubSettingsDialogWhenLarge"
android:process="com.android.phone">
@@ -1454,6 +1458,8 @@
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
+ <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
+ android:value="com.android.settings.IccLockSettings" />
</activity>
<activity android:name="Settings$AccessibilitySettingsActivity"
@@ -1736,7 +1742,7 @@
<activity android:name=".EncryptionInterstitial"/>
<!-- Runs in the phone process since it needs access to the Phone object -->
- <activity android:name=".deviceinfo.Status"
+ <activity android:name=".Settings$StatusActivity"
android:label="@string/device_status_activity_title"
android:theme="@style/Theme.SubSettingsDialogWhenLarge"
android:process="com.android.phone">
@@ -1745,10 +1751,12 @@
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
+ <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
+ android:value="com.android.settings.deviceinfo.Status" />
</activity>
<!-- Runs in the phone process since it needs access to the Phone object -->
- <activity android:name=".deviceinfo.SimStatus"
+ <activity android:name=".Settings$SimStatusActivity"
android:label="@string/sim_status_title"
android:theme="@style/Theme.SubSettingsDialogWhenLarge"
android:process="com.android.phone">
@@ -1757,10 +1765,12 @@
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
+ <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
+ android:value="com.android.settings.deviceinfo.SimStatus" />
</activity>
<!-- Runs in the phone process since it needs access to the Phone object -->
- <activity android:name=".deviceinfo.ImeiInformation"
+ <activity android:name=".Settings$ImeiInformationActivity"
android:label="@string/imei_information_title"
android:theme="@style/Theme.SubSettingsDialogWhenLarge"
android:process="com.android.phone">
@@ -1769,6 +1779,8 @@
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
+ <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
+ android:value="com.android.settings.deviceinfo.ImeiInformation" />
</activity>
<activity android:name="Settings$StorageSettingsActivity"
@@ -1873,7 +1885,7 @@
android:exported="true"
android:permission="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
- <activity android:name="ApnEditor"
+ <activity android:name="Settings$ApnEditorActivity"
android:label="@string/apn_edit">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
@@ -1887,14 +1899,15 @@
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="vnd.android.cursor.dir/telephony-carrier" />
</intent-filter>
+ <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
+ android:value="com.android.settings.ApnEditor" />
</activity>
<activity android:name="Settings$DevelopmentSettingsActivity"
android:label="@string/development_settings_title"
android:icon="@drawable/ic_settings_development"
android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings"
- android:enabled="false">
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.APPLICATION_DEVELOPMENT_SETTINGS" />
<action android:name="com.android.settings.APPLICATION_DEVELOPMENT_SETTINGS" />
@@ -2151,11 +2164,13 @@
</intent-filter>
</activity>
- <activity android:name="TestingSettings" android:label="@string/testing">
+ <activity android:name="Settings$TestingSettingsActivity" android:label="@string/testing">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
+ <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
+ android:value="com.android.settings.TestingSettings" />
</activity>
<receiver android:name="TestingSettingsBroadcastReceiver">
@@ -2316,10 +2331,13 @@
android:value="true" />
</activity>
- <activity android:name="com.android.settings.accounts.ChooseAccountActivity"
+ <activity android:name="Settings$ChooseAccountActivity"
android:label="@string/header_add_an_account"
android:configChanges="orientation|keyboardHidden|screenSize"
- android:theme="@style/Theme.SubSettingsDialogWhenLarge"/>
+ android:theme="@style/Theme.SubSettingsDialogWhenLarge">
+ <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
+ android:value="com.android.settings.accounts.ChooseAccountActivity" />
+ </activity>
<activity android:name=".CryptKeeper"
androidprv:systemUserOnly="true"
@@ -2439,8 +2457,7 @@
<activity android:name="Settings$PaymentSettingsActivity"
android:label="@string/nfc_payment_settings_title"
android:icon="@drawable/ic_settings_nfc_payment"
- android:taskAffinity=""
- android:enabled="false">
+ android:taskAffinity="">
<intent-filter android:priority="1">
<action android:name="android.settings.NFC_PAYMENT_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2725,7 +2742,6 @@
<activity android:name="Settings$SimSettingsActivity"
android:label="@string/sim_settings_title"
android:icon="@drawable/ic_settings_sim"
- android:enabled="false"
android:taskAffinity="">
<intent-filter android:priority="1">
<action android:name="com.android.settings.sim.SIM_SUB_INFO_SETTINGS" />
diff --git a/res/layout/icc_lock_tabs.xml b/res/layout/icc_lock_tabs.xml
index 79b9660..d62f595 100644
--- a/res/layout/icc_lock_tabs.xml
+++ b/res/layout/icc_lock_tabs.xml
@@ -47,7 +47,7 @@
android:layout_height="0dip" />
<FrameLayout
- android:id="@+id/main_content"
+ android:id="@+id/prefs_container"
android:layout_width="match_parent"
android:layout_height="0dip"
android:layout_weight="1"
diff --git a/res/values/strings.xml b/res/values/strings.xml
index e4d5bcc..ad9cde7 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -7253,13 +7253,13 @@
<string name="ethernet">Ethernet</string>
<!-- Format string for amount of cellular data used [CHAR LIMIT=30] -->
- <string name="cell_data_template"><xliff:g name="units" example="GB">%1$s</xliff:g> cellular data</string>
+ <string name="cell_data_template"><xliff:g id="number" example="128">^1</xliff:g><small><small> <xliff:g id="unit" example="KB">^2</xliff:g></small></small><small><small> cellular data</small></small></string>
<!-- Format string for amount of wifi data used [CHAR LIMIT=30] -->
- <string name="wifi_data_template"><xliff:g name="units" example="GB">%1$s</xliff:g> Wi-Fi data</string>
+ <string name="wifi_data_template"><xliff:g id="number" example="128">^1</xliff:g><small><small> <xliff:g id="unit" example="KB">^2</xliff:g></small></small><small><small> Wi-Fi data</small></small></string>
<!-- Format string for amount of ethernet data used [CHAR LIMIT=30] -->
- <string name="ethernet_data_template"><xliff:g name="units" example="GB">%1$s</xliff:g> ethernet data</string>
+ <string name="ethernet_data_template"><xliff:g id="number" example="128">^1</xliff:g><small><small> <xliff:g id="unit" example="KB">^2</xliff:g></small></small><small><small> ethernet data</small></small></string>
<!-- Format for a summary describing the amount of data before the user is warned [CHAR LIMIT=NONE] -->
<string name="cell_warning_only"><xliff:g name="amount" example="1 GB">%1$s</xliff:g> Data warning</string>
diff --git a/res/xml/device_info_settings.xml b/res/xml/device_info_settings.xml
index 7ec8a4d..74f873b 100644
--- a/res/xml/device_info_settings.xml
+++ b/res/xml/device_info_settings.xml
@@ -38,7 +38,7 @@
android:summary="@string/device_status_summary">
<intent android:action="android.intent.action.MAIN"
android:targetPackage="com.android.settings"
- android:targetClass="com.android.settings.deviceinfo.Status" />
+ android:targetClass="com.android.settings.Settings$StatusActivity" />
</PreferenceScreen>
<!-- Manual -->
diff --git a/res/xml/device_info_status.xml b/res/xml/device_info_status.xml
index 2cb5c6d..a0b7590 100644
--- a/res/xml/device_info_status.xml
+++ b/res/xml/device_info_status.xml
@@ -33,13 +33,13 @@
android:title="@string/sim_status_title"
android:persistent="false">
<intent android:targetPackage="com.android.settings"
- android:targetClass="com.android.settings.deviceinfo.SimStatus" />
+ android:targetClass="com.android.settings.Settings$SimStatusActivity" />
</PreferenceScreen>
<PreferenceScreen android:key="imei_info"
android:title="@string/imei_information_title"
android:persistent="false">
<intent android:targetPackage="com.android.settings"
- android:targetClass="com.android.settings.deviceinfo.ImeiInformation" />
+ android:targetClass="com.android.settings.Settings$ImeiInformationActivity" />
</PreferenceScreen>
<com.android.settings.CopyablePreference android:key="wifi_ip_address"
android:enabled="false"
diff --git a/res/xml/security_settings_misc.xml b/res/xml/security_settings_misc.xml
index 0ba10c0..68a867e 100644
--- a/res/xml/security_settings_misc.xml
+++ b/res/xml/security_settings_misc.xml
@@ -28,7 +28,7 @@
<intent android:action="android.intent.action.MAIN"
android:targetPackage="com.android.settings"
- android:targetClass="com.android.settings.IccLockSettings"/>
+ android:targetClass="com.android.settings.Settings$IccLockSettingsActivity"/>
</Preference>
diff --git a/res/xml/testing_settings.xml b/res/xml/testing_settings.xml
index 4e5c5dd..bce03e5 100644
--- a/res/xml/testing_settings.xml
+++ b/res/xml/testing_settings.xml
@@ -37,7 +37,7 @@
<intent
android:action="android.intent.action.MAIN"
android:targetPackage="com.android.settings"
- android:targetClass="com.android.settings.wifi.WifiInfo" />
+ android:targetClass="com.android.settings.Settings$WifiInfoActivity" />
</PreferenceScreen>
<!--
diff --git a/res/xml/testing_wifi_settings.xml b/res/xml/testing_wifi_settings.xml
index 7844aaa..4ee269a 100644
--- a/res/xml/testing_wifi_settings.xml
+++ b/res/xml/testing_wifi_settings.xml
@@ -23,7 +23,7 @@
<intent
android:action="android.intent.action.MAIN"
android:targetPackage="com.android.settings"
- android:targetClass="com.android.settings.wifi.WifiAPITest" />
+ android:targetClass="com.android.settings.Settings$WifiAPITestActivity" />
</Preference>
<Preference
diff --git a/src/com/android/settings/ApnEditor.java b/src/com/android/settings/ApnEditor.java
index 3163b63..8a963d8 100644
--- a/src/com/android/settings/ApnEditor.java
+++ b/src/com/android/settings/ApnEditor.java
@@ -16,8 +16,12 @@
package com.android.settings;
+import static android.app.Activity.RESULT_OK;
+import static android.content.Context.TELEPHONY_SERVICE;
+
import android.app.AlertDialog;
import android.app.Dialog;
+import android.app.DialogFragment;
import android.content.ContentUris;
import android.content.ContentValues;
import android.content.Intent;
@@ -31,6 +35,7 @@
import android.support.v7.preference.EditTextPreference;
import android.support.v7.preference.ListPreference;
import android.support.v7.preference.Preference;
+import android.support.v7.preference.Preference.OnPreferenceChangeListener;
import android.telephony.ServiceState;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
@@ -38,14 +43,18 @@
import android.util.Log;
import android.view.KeyEvent;
import android.view.Menu;
+import android.view.MenuInflater;
import android.view.MenuItem;
+import android.view.View;
+import android.view.View.OnKeyListener;
+
import com.android.internal.logging.MetricsProto.MetricsEvent;
import java.util.HashSet;
import java.util.Set;
-public class ApnEditor extends InstrumentedPreferenceActivity
- implements Preference.OnPreferenceChangeListener {
+public class ApnEditor extends SettingsPreferenceFragment
+ implements OnPreferenceChangeListener, OnKeyListener {
private final static String TAG = ApnEditor.class.getSimpleName();
@@ -60,7 +69,6 @@
private static final int MENU_DELETE = Menu.FIRST;
private static final int MENU_SAVE = Menu.FIRST + 1;
private static final int MENU_CANCEL = Menu.FIRST + 2;
- private static final int ERROR_DIALOG_ID = 0;
private static String sNotSet;
private EditTextPreference mName;
@@ -152,7 +160,7 @@
@Override
- protected void onCreate(Bundle icicle) {
+ public void onCreate(Bundle icicle) {
super.onCreate(icicle);
addPreferencesFromResource(R.xml.apn_editor);
@@ -242,7 +250,7 @@
return;
}
- mCursor = managedQuery(mUri, sProjection, null, null);
+ mCursor = getActivity().managedQuery(mUri, sProjection, null, null);
mCursor.moveToFirst();
mTelephonyManager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
@@ -526,8 +534,8 @@
}
@Override
- public boolean onCreateOptionsMenu(Menu menu) {
- super.onCreateOptionsMenu(menu);
+ public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
+ super.onCreateOptionsMenu(menu, inflater);
// If it's a new APN, then cancel will delete the new entry in onPause
if (!mNewApn) {
menu.add(0, MENU_DELETE, 0, R.string.menu_delete)
@@ -537,7 +545,6 @@
.setIcon(android.R.drawable.ic_menu_save);
menu.add(0, MENU_CANCEL, 0, R.string.menu_cancel)
.setIcon(android.R.drawable.ic_menu_close_clear_cancel);
- return true;
}
@Override
@@ -562,7 +569,13 @@
}
@Override
- public boolean onKeyDown(int keyCode, KeyEvent event) {
+ public void onViewCreated(View view, Bundle savedInstanceState) {
+ super.onViewCreated(view, savedInstanceState);
+ view.setOnKeyListener(this);
+ }
+
+ public boolean onKey(View v, int keyCode, KeyEvent event) {
+ if (event.getAction() != KeyEvent.ACTION_DOWN) return false;
switch (keyCode) {
case KeyEvent.KEYCODE_BACK: {
if (validateAndSave(false)) {
@@ -571,11 +584,11 @@
return true;
}
}
- return super.onKeyDown(keyCode, event);
+ return false;
}
@Override
- protected void onSaveInstanceState(Bundle icicle) {
+ public void onSaveInstanceState(Bundle icicle) {
super.onSaveInstanceState(icicle);
if (validateAndSave(true)) {
icicle.putInt(SAVED_POS, mCursor.getInt(ID_INDEX));
@@ -595,7 +608,7 @@
String mnc = checkNotSet(mMnc.getText());
if (getErrorMsg() != null && !force) {
- showDialog(ERROR_DIALOG_ID);
+ ErrorDialog.showError(this);
return false;
}
@@ -703,35 +716,6 @@
return errorMsg;
}
- @Override
- protected Dialog onCreateDialog(int id) {
-
- if (id == ERROR_DIALOG_ID) {
- String msg = getErrorMsg();
-
- return new AlertDialog.Builder(this)
- .setTitle(R.string.error_title)
- .setPositiveButton(android.R.string.ok, null)
- .setMessage(msg)
- .create();
- }
-
- return super.onCreateDialog(id);
- }
-
- @Override
- protected void onPrepareDialog(int id, Dialog dialog) {
- super.onPrepareDialog(id, dialog);
-
- if (id == ERROR_DIALOG_ID) {
- String msg = getErrorMsg();
-
- if (msg != null) {
- ((AlertDialog)dialog).setMessage(msg);
- }
- }
- }
-
private void deleteApn() {
getContentResolver().delete(mUri, null, null);
finish();
@@ -765,4 +749,24 @@
}
}
+ public static class ErrorDialog extends DialogFragment {
+
+ public static void showError(ApnEditor editor) {
+ ErrorDialog dialog = new ErrorDialog();
+ dialog.setTargetFragment(editor, 0);
+ dialog.show(editor.getFragmentManager(), "error");
+ }
+
+ @Override
+ public Dialog onCreateDialog(Bundle savedInstanceState) {
+ String msg = ((ApnEditor) getTargetFragment()).getErrorMsg();
+
+ return new AlertDialog.Builder(getContext())
+ .setTitle(R.string.error_title)
+ .setPositiveButton(android.R.string.ok, null)
+ .setMessage(msg)
+ .create();
+ }
+ }
+
}
diff --git a/src/com/android/settings/IccLockSettings.java b/src/com/android/settings/IccLockSettings.java
index 25d4fb1..9d7f10a 100644
--- a/src/com/android/settings/IccLockSettings.java
+++ b/src/com/android/settings/IccLockSettings.java
@@ -31,7 +31,9 @@
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
import android.util.Log;
+import android.view.LayoutInflater;
import android.view.View;
+import android.view.ViewGroup;
import android.widget.ListView;
import android.widget.TabHost;
import android.widget.TabHost.OnTabChangeListener;
@@ -53,7 +55,7 @@
* these operations.
*
*/
-public class IccLockSettings extends InstrumentedPreferenceActivity
+public class IccLockSettings extends SettingsPreferenceFragment
implements EditPinPreference.OnPinEnteredListener {
private static final String TAG = "IccLockSettings";
private static final boolean DBG = true;
@@ -153,12 +155,8 @@
}
@Override
- protected void onCreate(Bundle savedInstanceState) {
+ public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- final Context context = getApplicationContext();
- final TelephonyManager tm =
- (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
- final int numSims = tm.getSimCount();
if (Utils.isMonkeyRunning()) {
finish();
@@ -198,33 +196,53 @@
// Don't need any changes to be remembered
getPreferenceScreen().setPersistent(false);
- if (numSims > 1) {
- setContentView(R.layout.icc_lock_tabs);
+ mRes = getResources();
+ }
- mTabHost = (TabHost) findViewById(android.R.id.tabhost);
- mTabWidget = (TabWidget) findViewById(android.R.id.tabs);
- mListView = (ListView) findViewById(android.R.id.list);
+ @Override
+ public View onCreateView(LayoutInflater inflater, ViewGroup container,
+ Bundle savedInstanceState) {
+
+ final TelephonyManager tm =
+ (TelephonyManager) getContext().getSystemService(Context.TELEPHONY_SERVICE);
+ final int numSims = tm.getSimCount();
+ if (numSims > 1) {
+ View view = inflater.inflate(R.layout.icc_lock_tabs, container, false);
+ final ViewGroup prefs_container = (ViewGroup) view.findViewById(R.id.prefs_container);
+ Utils.prepareCustomPreferencesList(container, view, prefs_container, false);
+ View prefs = super.onCreateView(inflater, prefs_container, savedInstanceState);
+ prefs_container.addView(prefs);
+
+ mTabHost = (TabHost) view.findViewById(android.R.id.tabhost);
+ mTabWidget = (TabWidget) view.findViewById(android.R.id.tabs);
+ mListView = (ListView) view.findViewById(android.R.id.list);
mTabHost.setup();
mTabHost.setOnTabChangedListener(mTabListener);
mTabHost.clearAllTabs();
- SubscriptionManager sm = SubscriptionManager.from(this);
+ SubscriptionManager sm = SubscriptionManager.from(getContext());
for (int i = 0; i < numSims; ++i) {
final SubscriptionInfo subInfo = sm.getActiveSubscriptionInfoForSimSlotIndex(i);
mTabHost.addTab(buildTabSpec(String.valueOf(i),
String.valueOf(subInfo == null
- ? context.getString(R.string.sim_editor_title, i + 1)
+ ? getContext().getString(R.string.sim_editor_title, i + 1)
: subInfo.getDisplayName())));
}
final SubscriptionInfo sir = sm.getActiveSubscriptionInfoForSimSlotIndex(0);
mPhone = (sir == null) ? null
: PhoneFactory.getPhone(SubscriptionManager.getPhoneId(sir.getSubscriptionId()));
+ return view;
} else {
mPhone = PhoneFactory.getDefaultPhone();
+ return super.onCreateView(inflater, container, savedInstanceState);
}
- mRes = getResources();
+ }
+
+ @Override
+ public void onViewCreated(View view, Bundle savedInstanceState) {
+ super.onViewCreated(view, savedInstanceState);
updatePreferences();
}
@@ -243,13 +261,13 @@
}
@Override
- protected void onResume() {
+ public void onResume() {
super.onResume();
// ACTION_SIM_STATE_CHANGED is sticky, so we'll receive current state after this call,
// which will call updatePreferences().
final IntentFilter filter = new IntentFilter(TelephonyIntents.ACTION_SIM_STATE_CHANGED);
- registerReceiver(mSimStateReceiver, filter);
+ getContext().registerReceiver(mSimStateReceiver, filter);
if (mDialogState != OFF_MODE) {
showPinDialog();
@@ -260,13 +278,13 @@
}
@Override
- protected void onPause() {
+ public void onPause() {
super.onPause();
- unregisterReceiver(mSimStateReceiver);
+ getContext().unregisterReceiver(mSimStateReceiver);
}
@Override
- protected void onSaveInstanceState(Bundle out) {
+ public void onSaveInstanceState(Bundle out) {
// Need to store this state for slider open/close
// There is one case where the dialog is popped up by the preference
// framework. In that case, let the preference framework store the
@@ -412,8 +430,8 @@
if (success) {
mPinToggle.setChecked(mToState);
} else {
- Toast.makeText(this, getPinPasswordErrorMessage(attemptsRemaining), Toast.LENGTH_LONG)
- .show();
+ Toast.makeText(getContext(), getPinPasswordErrorMessage(attemptsRemaining),
+ Toast.LENGTH_LONG).show();
}
mPinToggle.setEnabled(true);
resetDialogState();
@@ -421,11 +439,11 @@
private void iccPinChanged(boolean success, int attemptsRemaining) {
if (!success) {
- Toast.makeText(this, getPinPasswordErrorMessage(attemptsRemaining),
+ Toast.makeText(getContext(), getPinPasswordErrorMessage(attemptsRemaining),
Toast.LENGTH_LONG)
.show();
} else {
- Toast.makeText(this, mRes.getString(R.string.sim_change_succeeded),
+ Toast.makeText(getContext(), mRes.getString(R.string.sim_change_succeeded),
Toast.LENGTH_SHORT)
.show();
@@ -476,7 +494,7 @@
@Override
public void onTabChanged(String tabId) {
final int slotId = Integer.parseInt(tabId);
- final SubscriptionInfo sir = SubscriptionManager.from(getBaseContext())
+ final SubscriptionInfo sir = SubscriptionManager.from(getActivity().getBaseContext())
.getActiveSubscriptionInfoForSimSlotIndex(slotId);
mPhone = (sir == null) ? null
diff --git a/src/com/android/settings/InstrumentedPreferenceActivity.java b/src/com/android/settings/InstrumentedPreferenceActivity.java
deleted file mode 100644
index 3b19b33..0000000
--- a/src/com/android/settings/InstrumentedPreferenceActivity.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Copyright (C) 2015 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;
-
-import com.android.internal.logging.MetricsLogger;
-
-/**
- * Instrumented activity that logs visibility state.
- */
-public abstract class InstrumentedPreferenceActivity extends PreferenceActivity {
- /**
- * Declare the view of this category.
- *
- * Categories are defined in {@link com.android.internal.logging.MetricsProto.MetricsEvent}
- * or if there is no relevant existing category you may define one in
- * {@link com.android.settings.InstrumentedFragment}.
- */
- protected abstract int getMetricsCategory();
-
- @Override
- protected void onResume() {
- super.onResume();
- MetricsLogger.visible(this, getMetricsCategory());
- }
-
- @Override
- protected void onPause() {
- super.onPause();
- MetricsLogger.hidden(this, getMetricsCategory());
- }
-}
diff --git a/src/com/android/settings/PreferenceActivity.java b/src/com/android/settings/PreferenceActivity.java
deleted file mode 100644
index 31b5f1f..0000000
--- a/src/com/android/settings/PreferenceActivity.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * Copyright (C) 2015 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;
-
-import android.annotation.Nullable;
-import android.os.Bundle;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceScreen;
-
-public class PreferenceActivity extends SettingsActivity {
-
- private PreferenceActivityFragment mFragment;
-
- @Override
- protected void onCreate(@Nullable Bundle savedInstanceState) {
- getIntent().putExtra(EXTRA_SHOW_FRAGMENT, PreferenceActivityFragment.class.getName());
- super.onCreate(savedInstanceState);
- }
-
- public void addPreferencesFromResource(int resource) {
- mFragment.addPreferencesFromResource(resource);
- }
-
- public Preference findPreference(String preference) {
- return mFragment.findPreference(preference);
- }
-
- public PreferenceScreen getPreferenceScreen() {
- return mFragment.getPreferenceScreen();
- }
-
- public void setPreferenceScreen(PreferenceScreen screen) {
- mFragment.setPreferenceScreen(screen);
- }
-
- public boolean onPreferenceTreeClick(Preference preference) {
- return false;
- }
-
- @Override
- protected boolean isValidFragment(String fragmentName) {
- return super.isValidFragment(fragmentName)
- || PreferenceActivityFragment.class.getName().equals(fragmentName);
- }
-
- public static class PreferenceActivityFragment extends SettingsPreferenceFragment {
- @Override
- public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
- ((PreferenceActivity) getActivity()).mFragment = this;
- }
-
- @Override
- public boolean onPreferenceTreeClick(Preference preference) {
- if (((PreferenceActivity) getActivity()).onPreferenceTreeClick(preference)) {
- return true;
- }
- return super.onPreferenceTreeClick(preference);
- }
-
- @Override
- protected int getMetricsCategory() {
- if (getActivity() instanceof InstrumentedPreferenceActivity) {
- return ((InstrumentedPreferenceActivity) getActivity()).getMetricsCategory();
- }
- return InstrumentedFragment.PREFERENCE_ACTIVITY_FRAGMENT;
- }
- }
-
-}
diff --git a/src/com/android/settings/Settings.java b/src/com/android/settings/Settings.java
index 1eb3af4..1bf1e0e 100644
--- a/src/com/android/settings/Settings.java
+++ b/src/com/android/settings/Settings.java
@@ -141,6 +141,16 @@
public static class ManagedProfileSettingsActivity extends SettingsActivity { /* empty */ }
public static class DeletionHelperActivity extends SettingsActivity { /* empty */ }
+ public static class ApnEditorActivity extends SettingsActivity { /* empty */ }
+ public static class ChooseAccountActivity extends SettingsActivity { /* empty */ }
+ public static class IccLockSettingsActivity extends SettingsActivity { /* empty */ }
+ public static class ImeiInformationActivity extends SettingsActivity { /* empty */ }
+ public static class SimStatusActivity extends SettingsActivity { /* empty */ }
+ public static class StatusActivity extends SettingsActivity { /* empty */ }
+ public static class TestingSettingsActivity extends SettingsActivity { /* empty */ }
+ public static class WifiAPITestActivity extends SettingsActivity { /* empty */ }
+ public static class WifiInfoActivity extends SettingsActivity { /* empty */ }
+
// Categories.
public static class WirelessSettings extends SettingsActivity { /* empty */ }
public static class DeviceSettings extends SettingsActivity { /* empty */ }
diff --git a/src/com/android/settings/SettingsActivity.java b/src/com/android/settings/SettingsActivity.java
index 9a65d3c..330c9ea 100644
--- a/src/com/android/settings/SettingsActivity.java
+++ b/src/com/android/settings/SettingsActivity.java
@@ -57,6 +57,7 @@
import com.android.settings.accessibility.CaptionPropertiesFragment;
import com.android.settings.accounts.AccountSettings;
import com.android.settings.accounts.AccountSyncSettings;
+import com.android.settings.accounts.ChooseAccountActivity;
import com.android.settings.accounts.ManagedProfileSettings;
import com.android.settings.applications.AdvancedAppSettings;
import com.android.settings.applications.DrawOverlayDetails;
@@ -74,9 +75,12 @@
import com.android.settings.dashboard.SearchResultsSummary;
import com.android.settings.datausage.DataUsageSummary;
import com.android.settings.deletionhelper.DeletionHelperFragment;
+import com.android.settings.deviceinfo.ImeiInformation;
import com.android.settings.deviceinfo.PrivateVolumeForget;
import com.android.settings.deviceinfo.PrivateVolumeSettings;
import com.android.settings.deviceinfo.PublicVolumeSettings;
+import com.android.settings.deviceinfo.SimStatus;
+import com.android.settings.deviceinfo.Status;
import com.android.settings.deviceinfo.StorageSettings;
import com.android.settings.fuelgauge.BatterySaverSettings;
import com.android.settings.fuelgauge.PowerUsageDetail;
@@ -119,6 +123,8 @@
import com.android.settings.widget.SwitchBar;
import com.android.settings.wifi.AdvancedWifiSettings;
import com.android.settings.wifi.SavedAccessPointsWifiSettings;
+import com.android.settings.wifi.WifiAPITest;
+import com.android.settings.wifi.WifiInfo;
import com.android.settings.wifi.WifiSettings;
import com.android.settings.wifi.p2p.WifiP2pSettings;
import com.android.settingslib.drawer.DashboardCategory;
@@ -318,6 +324,7 @@
AppNotificationSettings.class.getName(),
OtherSoundSettings.class.getName(),
ApnSettings.class.getName(),
+ ApnEditor.class.getName(),
WifiCallingSettings.class.getName(),
ZenModePrioritySettings.class.getName(),
ZenModeAutomationSettings.class.getName(),
@@ -334,6 +341,14 @@
VrListenerSettings.class.getName(),
ManagedProfileSettings.class.getName(),
DeletionHelperFragment.class.getName(),
+ ChooseAccountActivity.class.getName(),
+ IccLockSettings.class.getName(),
+ ImeiInformation.class.getName(),
+ SimStatus.class.getName(),
+ Status.class.getName(),
+ TestingSettings.class.getName(),
+ WifiAPITest.class.getName(),
+ WifiInfo.class.getName(),
};
@@ -1068,7 +1083,7 @@
for (DashboardCategory category : categories) {
for (Tile tile : category.tiles) {
ComponentName component = tile.intent.getComponent();
- if (packageName.equals(component)&& !ArrayUtils.contains(
+ if (packageName.equals(component.getPackageName()) && !ArrayUtils.contains(
SETTINGS_FOR_RESTRICTED, component.getClassName())) {
setTileEnabled(component, false, isAdmin, pm);
}
@@ -1079,18 +1094,11 @@
private void setTileEnabled(ComponentName component, boolean enabled, boolean isAdmin,
PackageManager pm) {
- if (UserHandle.MU_ENABLED && !isAdmin
+ if (UserHandle.MU_ENABLED && !isAdmin && getPackageName().equals(component.getPackageName())
&& !ArrayUtils.contains(SETTINGS_FOR_RESTRICTED, component.getClassName())) {
enabled = false;
}
- int state = pm.getComponentEnabledSetting(component);
- boolean isEnabled = state == PackageManager.COMPONENT_ENABLED_STATE_ENABLED;
- if (isEnabled != enabled) {
- pm.setComponentEnabledSetting(component, enabled
- ? PackageManager.COMPONENT_ENABLED_STATE_ENABLED
- : PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
- PackageManager.DONT_KILL_APP);
- }
+ setTileEnabled(component, enabled);
}
private void getMetaData() {
diff --git a/src/com/android/settings/SettingsPreferenceFragment.java b/src/com/android/settings/SettingsPreferenceFragment.java
index a992897..f5d7d86 100644
--- a/src/com/android/settings/SettingsPreferenceFragment.java
+++ b/src/com/android/settings/SettingsPreferenceFragment.java
@@ -23,6 +23,7 @@
import android.content.ContentResolver;
import android.content.Context;
import android.content.DialogInterface;
+import android.content.Intent;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.support.annotation.XmlRes;
@@ -42,6 +43,7 @@
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
+
import com.android.settings.applications.LayoutPreference;
import com.android.settings.widget.FloatingActionButton;
import com.android.settingslib.HelpUtils;
@@ -693,6 +695,27 @@
}
}
+ protected Intent getIntent() {
+ if (getActivity() == null) {
+ return null;
+ }
+ return getActivity().getIntent();
+ }
+
+ protected void setResult(int result, Intent intent) {
+ if (getActivity() == null) {
+ return;
+ }
+ getActivity().setResult(result, intent);
+ }
+
+ protected void setResult(int result) {
+ if (getActivity() == null) {
+ return;
+ }
+ getActivity().setResult(result);
+ }
+
protected final Context getPrefContext() {
return getPreferenceManager().getContext();
}
@@ -704,10 +727,6 @@
SettingsActivity sa = (SettingsActivity) activity;
sa.startPreferencePanel(fragmentClass, extras, titleRes, null, caller, requestCode);
return true;
- } else if (activity instanceof PreferenceActivity) {
- PreferenceActivity sa = (PreferenceActivity) activity;
- sa.startPreferencePanel(fragmentClass, extras, titleRes, null, caller, requestCode);
- return true;
} else {
Log.w(TAG,
"Parent isn't SettingsActivity nor PreferenceActivity, thus there's no way to "
diff --git a/src/com/android/settings/TestingSettings.java b/src/com/android/settings/TestingSettings.java
index 7a6f252..264db52 100644
--- a/src/com/android/settings/TestingSettings.java
+++ b/src/com/android/settings/TestingSettings.java
@@ -20,15 +20,17 @@
import android.os.UserManager;
import android.support.v7.preference.PreferenceScreen;
-public class TestingSettings extends PreferenceActivity {
+import com.android.internal.logging.MetricsProto.MetricsEvent;
+
+public class TestingSettings extends SettingsPreferenceFragment {
@Override
- protected void onCreate(Bundle savedInstanceState) {
+ public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.testing_settings);
- final UserManager um = UserManager.get(this);
+ final UserManager um = UserManager.get(getContext());
if (!um.isAdminUser()) {
PreferenceScreen preferenceScreen = (PreferenceScreen)
findPreference("radio_info_settings");
@@ -36,4 +38,8 @@
}
}
+ @Override
+ protected int getMetricsCategory() {
+ return MetricsEvent.TESTING;
+ }
}
diff --git a/src/com/android/settings/TestingSettingsBroadcastReceiver.java b/src/com/android/settings/TestingSettingsBroadcastReceiver.java
index 18d59be..a66f208 100644
--- a/src/com/android/settings/TestingSettingsBroadcastReceiver.java
+++ b/src/com/android/settings/TestingSettingsBroadcastReceiver.java
@@ -6,6 +6,8 @@
import static com.android.internal.telephony.TelephonyIntents.SECRET_CODE_ACTION;
+import com.android.settings.Settings.TestingSettingsActivity;
+
public class TestingSettingsBroadcastReceiver extends BroadcastReceiver {
@@ -16,7 +18,7 @@
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(SECRET_CODE_ACTION)) {
Intent i = new Intent(Intent.ACTION_MAIN);
- i.setClass(context, TestingSettings.class);
+ i.setClass(context, TestingSettingsActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
}
diff --git a/src/com/android/settings/accounts/AddAccountSettings.java b/src/com/android/settings/accounts/AddAccountSettings.java
index d9a181d..ce16ba3 100644
--- a/src/com/android/settings/accounts/AddAccountSettings.java
+++ b/src/com/android/settings/accounts/AddAccountSettings.java
@@ -34,6 +34,7 @@
import com.android.settings.ChooseLockSettingsHelper;
import com.android.settings.R;
+import com.android.settings.Settings;
import com.android.settings.Utils;
import java.io.IOException;
@@ -216,7 +217,7 @@
getIntent().getStringArrayExtra(AccountPreferenceBase.AUTHORITIES_FILTER_KEY);
final String[] accountTypes =
getIntent().getStringArrayExtra(AccountPreferenceBase.ACCOUNT_TYPES_FILTER_KEY);
- final Intent intent = new Intent(this, ChooseAccountActivity.class);
+ final Intent intent = new Intent(this, Settings.ChooseAccountActivity.class);
if (authorities != null) {
intent.putExtra(AccountPreferenceBase.AUTHORITIES_FILTER_KEY, authorities);
}
diff --git a/src/com/android/settings/accounts/ChooseAccountActivity.java b/src/com/android/settings/accounts/ChooseAccountActivity.java
index 2f904cf..2e3280b 100644
--- a/src/com/android/settings/accounts/ChooseAccountActivity.java
+++ b/src/com/android/settings/accounts/ChooseAccountActivity.java
@@ -16,6 +16,10 @@
package com.android.settings.accounts;
+import static android.app.Activity.RESULT_CANCELED;
+import static android.app.Activity.RESULT_OK;
+import static android.content.Intent.EXTRA_USER;
+
import android.accounts.AccountManager;
import android.accounts.AuthenticatorDescription;
import android.content.ContentResolver;
@@ -32,14 +36,15 @@
import android.support.v7.preference.PreferenceGroup;
import android.util.Log;
-import com.google.android.collect.Maps;
-
import com.android.internal.logging.MetricsProto.MetricsEvent;
import com.android.internal.util.CharSequences;
-import com.android.settings.InstrumentedPreferenceActivity;
import com.android.settings.R;
+import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.Utils;
import com.android.settingslib.RestrictedLockUtils;
+import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
+
+import com.google.android.collect.Maps;
import java.util.ArrayList;
import java.util.Collections;
@@ -47,17 +52,13 @@
import java.util.HashSet;
import java.util.Map;
-import static android.content.Intent.EXTRA_USER;
-
-import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
-
/**
* Activity asking a user to select an account to be set up.
*
* An extra {@link UserHandle} can be specified in the intent as {@link EXTRA_USER}, if the user for
* which the action needs to be performed is different to the one the Settings App will run in.
*/
-public class ChooseAccountActivity extends InstrumentedPreferenceActivity {
+public class ChooseAccountActivity extends SettingsPreferenceFragment {
private static final String TAG = "ChooseAccountActivity";
private String[] mAuthorities;
@@ -97,7 +98,7 @@
}
@Override
- protected void onCreate(Bundle icicle) {
+ public void onCreate(Bundle icicle) {
super.onCreate(icicle);
addPreferencesFromResource(R.xml.add_account_settings);
@@ -112,9 +113,9 @@
}
}
mAddAccountGroup = getPreferenceScreen();
- mUm = UserManager.get(this);
- mUserHandle = Utils.getSecureTargetUser(getActivityToken(), mUm, null /* arguments */,
- getIntent().getExtras());
+ mUm = UserManager.get(getContext());
+ mUserHandle = Utils.getSecureTargetUser(getActivity().getActivityToken(), mUm,
+ null /* arguments */, getIntent().getExtras());
updateAuthDescriptions();
}
@@ -123,7 +124,7 @@
* and update any UI that depends on AuthenticatorDescriptions in onAuthDescriptionsUpdated().
*/
private void updateAuthDescriptions() {
- mAuthDescs = AccountManager.get(this).getAuthenticatorTypesAsUser(
+ mAuthDescs = AccountManager.get(getContext()).getAuthenticatorTypesAsUser(
mUserHandle.getIdentifier());
for (int i = 0; i < mAuthDescs.length; i++) {
mTypeToAuthDescription.put(mAuthDescs[i].type, mAuthDescs[i]);
@@ -233,7 +234,8 @@
if (mTypeToAuthDescription.containsKey(accountType)) {
try {
AuthenticatorDescription desc = mTypeToAuthDescription.get(accountType);
- Context authContext = createPackageContextAsUser(desc.packageName, 0, mUserHandle);
+ Context authContext = getActivity()
+ .createPackageContextAsUser(desc.packageName, 0, mUserHandle);
icon = getPackageManager().getUserBadgedIcon(
authContext.getDrawable(desc.iconId), mUserHandle);
} catch (PackageManager.NameNotFoundException e) {
@@ -259,7 +261,8 @@
if (mTypeToAuthDescription.containsKey(accountType)) {
try {
AuthenticatorDescription desc = mTypeToAuthDescription.get(accountType);
- Context authContext = createPackageContextAsUser(desc.packageName, 0, mUserHandle);
+ Context authContext = getActivity()
+ .createPackageContextAsUser(desc.packageName, 0, mUserHandle);
label = authContext.getResources().getText(desc.labelId);
} catch (PackageManager.NameNotFoundException e) {
Log.w(TAG, "No label name for account type " + accountType);
diff --git a/src/com/android/settings/datausage/DataUsageSummary.java b/src/com/android/settings/datausage/DataUsageSummary.java
index bd6ae5c..51804c1 100644
--- a/src/com/android/settings/datausage/DataUsageSummary.java
+++ b/src/com/android/settings/datausage/DataUsageSummary.java
@@ -32,6 +32,7 @@
import android.telephony.SubscriptionInfo;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
+import android.text.TextUtils;
import android.text.format.Formatter;
import android.view.Menu;
import android.view.MenuInflater;
@@ -189,8 +190,8 @@
if (mSummaryPreference != null) {
Formatter.BytesResult usedResult = Formatter.formatBytes(context.getResources(),
info.usageLevel, Formatter.FLAG_SHORTER);
- mSummaryPreference.setAmount(usedResult.value);
- mSummaryPreference.setUnits(getString(mDataUsageTemplate, usedResult.units));
+ mSummaryPreference.setTitle(TextUtils.expandTemplate(getText(mDataUsageTemplate),
+ usedResult.value, usedResult.units));
long limit = info.limitLevel;
if (limit <= 0) {
limit = info.warningLevel;
diff --git a/src/com/android/settings/deviceinfo/ImeiInformation.java b/src/com/android/settings/deviceinfo/ImeiInformation.java
index 6b63d55..7145212 100644
--- a/src/com/android/settings/deviceinfo/ImeiInformation.java
+++ b/src/com/android/settings/deviceinfo/ImeiInformation.java
@@ -27,10 +27,10 @@
import com.android.internal.telephony.Phone;
import com.android.internal.telephony.PhoneConstants;
import com.android.internal.telephony.PhoneFactory;
-import com.android.settings.InstrumentedPreferenceActivity;
import com.android.settings.R;
+import com.android.settings.SettingsPreferenceFragment;
-public class ImeiInformation extends InstrumentedPreferenceActivity {
+public class ImeiInformation extends SettingsPreferenceFragment {
private static final String KEY_PRL_VERSION = "prl_version";
private static final String KEY_MIN_NUMBER = "min_number";
@@ -43,9 +43,9 @@
private boolean isMultiSIM = false;
@Override
- protected void onCreate(Bundle savedInstanceState) {
+ public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- mSubscriptionManager = SubscriptionManager.from(this);
+ mSubscriptionManager = SubscriptionManager.from(getContext());
final TelephonyManager telephonyManager =
(TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
initPreferenceScreen(telephonyManager.getSimCount());
diff --git a/src/com/android/settings/deviceinfo/SimStatus.java b/src/com/android/settings/deviceinfo/SimStatus.java
index 610744b..e580afe 100644
--- a/src/com/android/settings/deviceinfo/SimStatus.java
+++ b/src/com/android/settings/deviceinfo/SimStatus.java
@@ -16,6 +16,9 @@
package com.android.settings.deviceinfo;
+import static android.content.Context.CARRIER_CONFIG_SERVICE;
+import static android.content.Context.TELEPHONY_SERVICE;
+
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
@@ -27,6 +30,7 @@
import android.os.UserHandle;
import android.os.UserManager;
import android.support.v7.preference.Preference;
+import android.telephony.CarrierConfigManager;
import android.telephony.CellBroadcastMessage;
import android.telephony.PhoneNumberUtils;
import android.telephony.PhoneStateListener;
@@ -35,10 +39,11 @@
import android.telephony.SubscriptionInfo;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
-import android.telephony.CarrierConfigManager;
import android.text.TextUtils;
import android.util.Log;
+import android.view.LayoutInflater;
import android.view.View;
+import android.view.ViewGroup;
import android.widget.ListView;
import android.widget.TabHost;
import android.widget.TabHost.OnTabChangeListener;
@@ -50,8 +55,9 @@
import com.android.internal.telephony.DefaultPhoneNotifier;
import com.android.internal.telephony.Phone;
import com.android.internal.telephony.PhoneFactory;
-import com.android.settings.InstrumentedPreferenceActivity;
import com.android.settings.R;
+import com.android.settings.SettingsPreferenceFragment;
+import com.android.settings.Utils;
import java.util.List;
@@ -67,7 +73,7 @@
* # Signal Strength
*
*/
-public class SimStatus extends InstrumentedPreferenceActivity {
+public class SimStatus extends SettingsPreferenceFragment {
private static final String TAG = "SimStatus";
private static final String KEY_DATA_STATE = "data_state";
@@ -131,12 +137,13 @@
};
@Override
- protected void onCreate(Bundle icicle) {
+ public void onCreate(Bundle icicle) {
super.onCreate(icicle);
mTelephonyManager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
mCarrierConfigManager = (CarrierConfigManager) getSystemService(CARRIER_CONFIG_SERVICE);
- mSelectableSubInfos = SubscriptionManager.from(this).getActiveSubscriptionInfoList();
+ mSelectableSubInfos = SubscriptionManager.from(getContext())
+ .getActiveSubscriptionInfoList();
addPreferencesFromResource(R.xml.device_info_sim_status);
@@ -145,17 +152,28 @@
// Note - missing in zaku build, be careful later...
mSignalStrength = findPreference(KEY_SIGNAL_STRENGTH);
+ updatePhoneInfos();
+ }
+
+ @Override
+ public View onCreateView(LayoutInflater inflater, ViewGroup container,
+ Bundle savedInstanceState) {
if (mSelectableSubInfos == null) {
mSir = null;
} else {
mSir = mSelectableSubInfos.size() > 0 ? mSelectableSubInfos.get(0) : null;
if (mSelectableSubInfos.size() > 1) {
- setContentView(R.layout.icc_lock_tabs);
+ View view = inflater.inflate(R.layout.icc_lock_tabs, container, false);
+ final ViewGroup prefs_container = (ViewGroup) view.findViewById(
+ R.id.prefs_container);
+ Utils.prepareCustomPreferencesList(container, view, prefs_container, false);
+ View prefs = super.onCreateView(inflater, prefs_container, savedInstanceState);
+ prefs_container.addView(prefs);
- mTabHost = (TabHost) findViewById(android.R.id.tabhost);
- mTabWidget = (TabWidget) findViewById(android.R.id.tabs);
- mListView = (ListView) findViewById(android.R.id.list);
+ mTabHost = (TabHost) view.findViewById(android.R.id.tabhost);
+ mTabWidget = (TabWidget) view.findViewById(android.R.id.tabs);
+ mListView = (ListView) view.findViewById(android.R.id.list);
mTabHost.setup();
mTabHost.setOnTabChangedListener(mTabListener);
@@ -167,7 +185,7 @@
}
}
}
- updatePhoneInfos();
+ return super.onCreateView(inflater, container, savedInstanceState);
}
@Override
@@ -176,7 +194,7 @@
}
@Override
- protected void onResume() {
+ public void onResume() {
super.onResume();
if (mPhone != null) {
updatePreference();
@@ -189,11 +207,12 @@
| PhoneStateListener.LISTEN_SIGNAL_STRENGTHS
| PhoneStateListener.LISTEN_SERVICE_STATE);
if (mShowLatestAreaInfo) {
- registerReceiver(mAreaInfoReceiver, new IntentFilter(CB_AREA_INFO_RECEIVED_ACTION),
+ getContext().registerReceiver(mAreaInfoReceiver,
+ new IntentFilter(CB_AREA_INFO_RECEIVED_ACTION),
CB_AREA_INFO_SENDER_PERMISSION, null);
// Ask CellBroadcastReceiver to broadcast the latest area info received
Intent getLatestIntent = new Intent(GET_LATEST_CB_AREA_INFO_ACTION);
- sendBroadcastAsUser(getLatestIntent, UserHandle.ALL,
+ getContext().sendBroadcastAsUser(getLatestIntent, UserHandle.ALL,
CB_AREA_INFO_SENDER_PERMISSION);
}
}
@@ -208,7 +227,7 @@
PhoneStateListener.LISTEN_NONE);
}
if (mShowLatestAreaInfo) {
- unregisterReceiver(mAreaInfoReceiver);
+ getContext().unregisterReceiver(mAreaInfoReceiver);
}
}
@@ -250,7 +269,7 @@
boolean show4GForLTE = false;
try {
- Context con = createPackageContext("com.android.systemui", 0);
+ Context con = getActivity().createPackageContext("com.android.systemui", 0);
int id = con.getResources().getIdentifier("config_show4GForLTE",
"bool", "com.android.systemui");
show4GForLTE = con.getResources().getBoolean(id);
@@ -395,7 +414,7 @@
// TODO: http://b/23763013
final Phone phone = PhoneFactory.getPhone(SubscriptionManager.getPhoneId(
mSir.getSubscriptionId()));
- if (UserManager.get(this).isAdminUser()
+ if (UserManager.get(getContext()).isAdminUser()
&& SubscriptionManager.isValidSubscriptionId(mSir.getSubscriptionId())) {
if (phone == null) {
Log.e(TAG, "Unable to locate a phone object for the given Subscription ID.");
diff --git a/src/com/android/settings/deviceinfo/Status.java b/src/com/android/settings/deviceinfo/Status.java
index 41f59ef..1ba3978 100644
--- a/src/com/android/settings/deviceinfo/Status.java
+++ b/src/com/android/settings/deviceinfo/Status.java
@@ -16,6 +16,9 @@
package com.android.settings.deviceinfo;
+import static android.content.Context.CONNECTIVITY_SERVICE;
+import static android.content.Context.WIFI_SERVICE;
+
import android.bluetooth.BluetoothAdapter;
import android.content.BroadcastReceiver;
import android.content.Context;
@@ -37,8 +40,8 @@
import com.android.internal.logging.MetricsProto.MetricsEvent;
import com.android.internal.util.ArrayUtils;
-import com.android.settings.InstrumentedPreferenceActivity;
import com.android.settings.R;
+import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.Utils;
import java.lang.ref.WeakReference;
@@ -51,7 +54,7 @@
* # XMPP/buzz/tickle status : TODO
*
*/
-public class Status extends InstrumentedPreferenceActivity {
+public class Status extends SettingsPreferenceFragment {
private static final String KEY_BATTERY_STATUS = "battery_status";
private static final String KEY_BATTERY_LEVEL = "battery_level";
@@ -152,7 +155,7 @@
}
@Override
- protected void onCreate(Bundle icicle) {
+ public void onCreate(Bundle icicle) {
super.onCreate(icicle);
mHandler = new MyHandler(this);
@@ -202,8 +205,8 @@
// Remove SimStatus and Imei for Secondary user as it access Phone b/19165700
// Also remove on Wi-Fi only devices.
//TODO: the bug above will surface in split system user mode.
- if (!UserManager.get(this).isAdminUser()
- || Utils.isWifiOnly(this)) {
+ if (!UserManager.get(getContext()).isAdminUser()
+ || Utils.isWifiOnly(getContext())) {
removePreferenceFromScreen(KEY_SIM_STATUS);
removePreferenceFromScreen(KEY_IMEI_INFO);
}
@@ -215,11 +218,12 @@
}
@Override
- protected void onResume() {
+ public void onResume() {
super.onResume();
- registerReceiver(mConnectivityReceiver, mConnectivityIntentFilter,
+ getContext().registerReceiver(mConnectivityReceiver, mConnectivityIntentFilter,
android.Manifest.permission.CHANGE_NETWORK_STATE, null);
- registerReceiver(mBatteryInfoReceiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
+ getContext().registerReceiver(mBatteryInfoReceiver,
+ new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
mHandler.sendEmptyMessage(EVENT_UPDATE_STATS);
}
@@ -227,8 +231,8 @@
public void onPause() {
super.onPause();
- unregisterReceiver(mBatteryInfoReceiver);
- unregisterReceiver(mConnectivityReceiver);
+ getContext().unregisterReceiver(mBatteryInfoReceiver);
+ getContext().unregisterReceiver(mConnectivityReceiver);
mHandler.removeMessages(EVENT_UPDATE_STATS);
}
diff --git a/src/com/android/settings/wifi/WifiAPITest.java b/src/com/android/settings/wifi/WifiAPITest.java
index e6bf6b8..6abf67d 100644
--- a/src/com/android/settings/wifi/WifiAPITest.java
+++ b/src/com/android/settings/wifi/WifiAPITest.java
@@ -16,6 +16,8 @@
package com.android.settings.wifi;
+import static android.content.Context.WIFI_SERVICE;
+
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.net.wifi.WifiManager;
@@ -25,15 +27,16 @@
import android.text.Editable;
import android.widget.EditText;
-import com.android.settings.PreferenceActivity;
+import com.android.internal.logging.MetricsProto.MetricsEvent;
import com.android.settings.R;
+import com.android.settings.SettingsPreferenceFragment;
/**
* Provide an interface for testing out the Wifi API
*/
-public class WifiAPITest extends PreferenceActivity implements
-Preference.OnPreferenceClickListener {
+public class WifiAPITest extends SettingsPreferenceFragment implements
+ Preference.OnPreferenceClickListener {
private static final String TAG = "WifiAPITest";
private int netid;
@@ -58,15 +61,14 @@
//============================
@Override
- protected void onCreate(Bundle savedInstanceState) {
+ public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- onCreatePreferences();
mWifiManager = (WifiManager) getSystemService(WIFI_SERVICE);
}
-
- private void onCreatePreferences() {
+ @Override
+ public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
addPreferencesFromResource(R.layout.wifi_api_test);
final PreferenceScreen preferenceScreen = getPreferenceScreen();
@@ -82,6 +84,11 @@
}
+ @Override
+ protected int getMetricsCategory() {
+ return MetricsEvent.TESTING;
+ }
+
//============================
// Preference callbacks
//============================
@@ -99,11 +106,11 @@
if (pref == mWifiDisconnect) {
mWifiManager.disconnect();
} else if (pref == mWifiDisableNetwork) {
- AlertDialog.Builder alert = new AlertDialog.Builder(this);
+ AlertDialog.Builder alert = new AlertDialog.Builder(getContext());
alert.setTitle("Input");
alert.setMessage("Enter Network ID");
// Set an EditText view to get user input
- final EditText input = new EditText(this);
+ final EditText input = new EditText(getPrefContext());
alert.setView(input);
alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
@@ -125,11 +132,11 @@
});
alert.show();
} else if (pref == mWifiEnableNetwork) {
- AlertDialog.Builder alert = new AlertDialog.Builder(this);
+ AlertDialog.Builder alert = new AlertDialog.Builder(getContext());
alert.setTitle("Input");
alert.setMessage("Enter Network ID");
// Set an EditText view to get user input
- final EditText input = new EditText(this);
+ final EditText input = new EditText(getPrefContext());
alert.setView(input);
alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
diff --git a/src/com/android/settings/wifi/WifiInfo.java b/src/com/android/settings/wifi/WifiInfo.java
index a431a82..373a587 100644
--- a/src/com/android/settings/wifi/WifiInfo.java
+++ b/src/com/android/settings/wifi/WifiInfo.java
@@ -18,19 +18,24 @@
import android.os.Bundle;
-import com.android.settings.PreferenceActivity;
+import com.android.internal.logging.MetricsProto.MetricsEvent;
import com.android.settings.R;
+import com.android.settings.SettingsPreferenceFragment;
/**
* Wifi information menu item on the diagnostic screen
*/
-public class WifiInfo extends PreferenceActivity {
+public class WifiInfo extends SettingsPreferenceFragment {
@Override
- protected void onCreate(Bundle savedInstanceState) {
+ public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.testing_wifi_settings);
}
+ @Override
+ protected int getMetricsCategory() {
+ return MetricsEvent.TESTING;
+ }
}