Fix date and time and apn editing
Bug: 27219773 Bug: 25822074 Change-Id: Iec5d56846bf5d3a875180e8907529518949a0d7e
This commit is contained in:
@@ -101,6 +101,10 @@
|
||||
<item name="android:widgetLayout">@layout/preference_widget_sync_toggle</item>
|
||||
</style>
|
||||
|
||||
<style name="EditTextPreference" parent="@*android:style/Preference.Material.DialogPreference.EditTextPreference">
|
||||
<item name="android:dialogLayout">@layout/preference_dialog_edittext</item>
|
||||
</style>
|
||||
|
||||
<style name="PreferenceHeaderPanelSinglePane">
|
||||
<item name="android:layout_marginStart">0dp</item>
|
||||
<item name="android:layout_marginEnd">0dp</item>
|
||||
|
@@ -102,6 +102,7 @@
|
||||
|
||||
<style name="PreferenceTheme" parent="@android:style/Theme.DeviceDefault.Settings">
|
||||
<item name="@android:preferenceStyle">@style/Preference</item>
|
||||
<item name="@android:editTextPreferenceStyle">@style/EditTextPreference</item>
|
||||
<item name="@dropdownPreferenceStyle">@style/Preference.DropDown.Material</item>
|
||||
<item name="@android:preferenceFragmentStyle">@style/PreferenceFragmentStyle</item>
|
||||
<item name="apnPreferenceStyle">@style/ApnPreference</item>
|
||||
|
@@ -21,7 +21,6 @@ import android.app.Dialog;
|
||||
import android.content.ContentUris;
|
||||
import android.content.ContentValues;
|
||||
import android.content.Intent;
|
||||
import android.content.SharedPreferences;
|
||||
import android.content.res.Resources;
|
||||
import android.database.Cursor;
|
||||
import android.net.Uri;
|
||||
@@ -40,15 +39,13 @@ import android.util.Log;
|
||||
import android.view.KeyEvent;
|
||||
import android.view.Menu;
|
||||
import android.view.MenuItem;
|
||||
|
||||
import com.android.internal.logging.MetricsProto.MetricsEvent;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
public class ApnEditor extends InstrumentedPreferenceActivity
|
||||
implements SharedPreferences.OnSharedPreferenceChangeListener,
|
||||
Preference.OnPreferenceChangeListener {
|
||||
implements Preference.OnPreferenceChangeListener {
|
||||
|
||||
private final static String TAG = ApnEditor.class.getSimpleName();
|
||||
|
||||
@@ -250,6 +247,10 @@ public class ApnEditor extends InstrumentedPreferenceActivity
|
||||
|
||||
mTelephonyManager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
|
||||
|
||||
for (int i = 0; i < getPreferenceScreen().getPreferenceCount(); i++) {
|
||||
getPreferenceScreen().getPreference(i).setOnPreferenceChangeListener(this);
|
||||
}
|
||||
|
||||
fillUi();
|
||||
}
|
||||
|
||||
@@ -261,14 +262,10 @@ public class ApnEditor extends InstrumentedPreferenceActivity
|
||||
@Override
|
||||
public void onResume() {
|
||||
super.onResume();
|
||||
getPreferenceScreen().getSharedPreferences()
|
||||
.registerOnSharedPreferenceChangeListener(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onPause() {
|
||||
getPreferenceScreen().getSharedPreferences()
|
||||
.unregisterOnSharedPreferenceChangeListener(this);
|
||||
super.onPause();
|
||||
}
|
||||
|
||||
@@ -521,6 +518,13 @@ public class ApnEditor extends InstrumentedPreferenceActivity
|
||||
mMvnoType.setValue((String) newValue);
|
||||
mMvnoType.setSummary(mvno);
|
||||
}
|
||||
if (preference.equals(mPassword)) {
|
||||
preference.setSummary(starify(newValue != null ? String.valueOf(newValue) : ""));
|
||||
} else if (preference.equals(mCarrierEnabled) || preference.equals(mBearerMulti)) {
|
||||
// do nothing
|
||||
} else {
|
||||
preference.setSummary(checkNull(newValue != null ? String.valueOf(newValue) : null));
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
@@ -765,16 +769,4 @@ public class ApnEditor extends InstrumentedPreferenceActivity
|
||||
}
|
||||
}
|
||||
|
||||
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
|
||||
Preference pref = findPreference(key);
|
||||
if (pref != null) {
|
||||
if (pref.equals(mPassword)){
|
||||
pref.setSummary(starify(sharedPreferences.getString(key, "")));
|
||||
} else if (pref.equals(mCarrierEnabled) || pref.equals(mBearerMulti)) {
|
||||
// do nothing
|
||||
} else {
|
||||
pref.setSummary(checkNull(sharedPreferences.getString(key, "")));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -19,9 +19,10 @@ package com.android.settings;
|
||||
import android.app.Activity;
|
||||
import android.app.AlarmManager;
|
||||
import android.app.DatePickerDialog;
|
||||
import android.app.DatePickerDialog.OnDateSetListener;
|
||||
import android.app.Dialog;
|
||||
import android.app.TimePickerDialog;
|
||||
import android.app.admin.DevicePolicyManager;
|
||||
import android.app.TimePickerDialog.OnTimeSetListener;
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
@@ -33,10 +34,10 @@ import android.provider.Settings;
|
||||
import android.provider.Settings.SettingNotFoundException;
|
||||
import android.support.v14.preference.SwitchPreference;
|
||||
import android.support.v7.preference.Preference;
|
||||
import android.support.v7.preference.Preference.OnPreferenceChangeListener;
|
||||
import android.text.format.DateFormat;
|
||||
import android.widget.DatePicker;
|
||||
import android.widget.TimePicker;
|
||||
|
||||
import com.android.internal.logging.MetricsProto.MetricsEvent;
|
||||
import com.android.settings.dashboard.SummaryLoader;
|
||||
import com.android.settingslib.RestrictedLockUtils;
|
||||
@@ -49,8 +50,7 @@ import java.util.Date;
|
||||
import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
|
||||
|
||||
public class DateTimeSettings extends SettingsPreferenceFragment
|
||||
implements OnSharedPreferenceChangeListener,
|
||||
TimePickerDialog.OnTimeSetListener, DatePickerDialog.OnDateSetListener {
|
||||
implements OnTimeSetListener, OnDateSetListener, OnPreferenceChangeListener {
|
||||
|
||||
private static final String HOURS_12 = "12";
|
||||
private static final String HOURS_24 = "24";
|
||||
@@ -94,6 +94,7 @@ public class DateTimeSettings extends SettingsPreferenceFragment
|
||||
boolean autoTimeZoneEnabled = getAutoState(Settings.Global.AUTO_TIME_ZONE);
|
||||
|
||||
mAutoTimePref = (RestrictedSwitchPreference) findPreference(KEY_AUTO_TIME);
|
||||
mAutoTimePref.setOnPreferenceChangeListener(this);
|
||||
EnforcedAdmin admin = RestrictedLockUtils.checkIfAutoTimeRequired(getActivity());
|
||||
mAutoTimePref.setDisabledByAdmin(admin);
|
||||
|
||||
@@ -106,6 +107,7 @@ public class DateTimeSettings extends SettingsPreferenceFragment
|
||||
// Settings.Global.AUTO_TIME to true. Note that this app listens to that change.
|
||||
mAutoTimePref.setChecked(autoTimeEnabled);
|
||||
mAutoTimeZonePref = (SwitchPreference) findPreference(KEY_AUTO_TIME_ZONE);
|
||||
mAutoTimeZonePref.setOnPreferenceChangeListener(this);
|
||||
// Override auto-timezone if it's a wifi-only device or if we're still in setup wizard.
|
||||
// TODO: Remove the wifiOnly test when auto-timezone is implemented based on wifi-location.
|
||||
if (Utils.isWifiOnly(getActivity()) || isFirstRun) {
|
||||
@@ -131,9 +133,6 @@ public class DateTimeSettings extends SettingsPreferenceFragment
|
||||
public void onResume() {
|
||||
super.onResume();
|
||||
|
||||
getPreferenceScreen().getSharedPreferences()
|
||||
.registerOnSharedPreferenceChangeListener(this);
|
||||
|
||||
((SwitchPreference)mTime24Pref).setChecked(is24Hour());
|
||||
|
||||
// Register for time ticks and other reasons for time change
|
||||
@@ -150,8 +149,6 @@ public class DateTimeSettings extends SettingsPreferenceFragment
|
||||
public void onPause() {
|
||||
super.onPause();
|
||||
getActivity().unregisterReceiver(mIntentReceiver);
|
||||
getPreferenceScreen().getSharedPreferences()
|
||||
.unregisterOnSharedPreferenceChangeListener(this);
|
||||
}
|
||||
|
||||
public void updateTimeAndDateDisplay(Context context) {
|
||||
@@ -190,19 +187,20 @@ public class DateTimeSettings extends SettingsPreferenceFragment
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onSharedPreferenceChanged(SharedPreferences preferences, String key) {
|
||||
if (key.equals(KEY_AUTO_TIME)) {
|
||||
boolean autoEnabled = preferences.getBoolean(key, true);
|
||||
public boolean onPreferenceChange(Preference preference, Object newValue) {
|
||||
if (preference.getKey().equals(KEY_AUTO_TIME)) {
|
||||
boolean autoEnabled = (Boolean) newValue;
|
||||
Settings.Global.putInt(getContentResolver(), Settings.Global.AUTO_TIME,
|
||||
autoEnabled ? 1 : 0);
|
||||
mTimePref.setEnabled(!autoEnabled);
|
||||
mDatePref.setEnabled(!autoEnabled);
|
||||
} else if (key.equals(KEY_AUTO_TIME_ZONE)) {
|
||||
boolean autoZoneEnabled = preferences.getBoolean(key, true);
|
||||
} else if (preference.getKey().equals(KEY_AUTO_TIME_ZONE)) {
|
||||
boolean autoZoneEnabled = (Boolean) newValue;
|
||||
Settings.Global.putInt(
|
||||
getContentResolver(), Settings.Global.AUTO_TIME_ZONE, autoZoneEnabled ? 1 : 0);
|
||||
mTimeZone.setEnabled(!autoZoneEnabled);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
Reference in New Issue
Block a user