Merge changes Ib59efe76,I316e3649
* changes: Move RadioButtonPreference to generic widget package Another attempt fix for account preference screen.
This commit is contained in:
@@ -17,15 +17,15 @@
|
|||||||
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
|
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:title="@string/location_mode_screen_title">
|
android:title="@string/location_mode_screen_title">
|
||||||
|
|
||||||
<com.android.settings.location.RadioButtonPreference
|
<com.android.settings.widget.RadioButtonPreference
|
||||||
android:key="high_accuracy"
|
android:key="high_accuracy"
|
||||||
android:title="@string/location_mode_high_accuracy_title"
|
android:title="@string/location_mode_high_accuracy_title"
|
||||||
android:summary="@string/location_mode_high_accuracy_description" />
|
android:summary="@string/location_mode_high_accuracy_description" />
|
||||||
<com.android.settings.location.RadioButtonPreference
|
<com.android.settings.widget.RadioButtonPreference
|
||||||
android:key="battery_saving"
|
android:key="battery_saving"
|
||||||
android:title="@string/location_mode_battery_saving_title"
|
android:title="@string/location_mode_battery_saving_title"
|
||||||
android:summary="@string/location_mode_battery_saving_description" />
|
android:summary="@string/location_mode_battery_saving_description" />
|
||||||
<com.android.settings.location.RadioButtonPreference
|
<com.android.settings.widget.RadioButtonPreference
|
||||||
android:key="sensors_only"
|
android:key="sensors_only"
|
||||||
android:title="@string/location_mode_sensors_only_title"
|
android:title="@string/location_mode_sensors_only_title"
|
||||||
android:summary="@string/location_mode_sensors_only_description" />
|
android:summary="@string/location_mode_sensors_only_description" />
|
||||||
|
|||||||
@@ -63,7 +63,6 @@ import java.util.List;
|
|||||||
import static android.content.Intent.EXTRA_USER;
|
import static android.content.Intent.EXTRA_USER;
|
||||||
import static android.os.UserManager.DISALLOW_MODIFY_ACCOUNTS;
|
import static android.os.UserManager.DISALLOW_MODIFY_ACCOUNTS;
|
||||||
import static android.os.UserManager.DISALLOW_REMOVE_MANAGED_PROFILE;
|
import static android.os.UserManager.DISALLOW_REMOVE_MANAGED_PROFILE;
|
||||||
import static android.os.UserManager.DISALLOW_REMOVE_USER;
|
|
||||||
import static android.provider.Settings.EXTRA_AUTHORITIES;
|
import static android.provider.Settings.EXTRA_AUTHORITIES;
|
||||||
|
|
||||||
public class AccountPreferenceController extends PreferenceController
|
public class AccountPreferenceController extends PreferenceController
|
||||||
@@ -405,7 +404,8 @@ public class AccountPreferenceController extends PreferenceController
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void updateAccountTypes(ProfileData profileData) {
|
private void updateAccountTypes(ProfileData profileData) {
|
||||||
if (mParent.getPreferenceManager() == null) {
|
if (mParent.getPreferenceManager() == null
|
||||||
|
|| profileData.preferenceGroup.getPreferenceManager() == null) {
|
||||||
// This could happen if activity is finishing
|
// This could happen if activity is finishing
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ import android.support.v7.preference.PreferenceScreen;
|
|||||||
|
|
||||||
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
|
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
|
import com.android.settings.widget.RadioButtonPreference;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A page with 3 radio buttons to choose the location mode.
|
* A page with 3 radio buttons to choose the location mode.
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 2013 The Android Open Source Project
|
* Copyright (C) 2017 The Android Open Source Project
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@@ -14,9 +14,10 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package com.android.settings.location;
|
package com.android.settings.widget;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.support.v4.content.res.TypedArrayUtils;
|
||||||
import android.support.v7.preference.CheckBoxPreference;
|
import android.support.v7.preference.CheckBoxPreference;
|
||||||
import android.support.v7.preference.PreferenceViewHolder;
|
import android.support.v7.preference.PreferenceViewHolder;
|
||||||
import android.util.AttributeSet;
|
import android.util.AttributeSet;
|
||||||
@@ -36,7 +37,7 @@ import com.android.settings.R;
|
|||||||
*/
|
*/
|
||||||
public class RadioButtonPreference extends CheckBoxPreference {
|
public class RadioButtonPreference extends CheckBoxPreference {
|
||||||
public interface OnClickListener {
|
public interface OnClickListener {
|
||||||
public abstract void onRadioButtonClicked(RadioButtonPreference emiter);
|
void onRadioButtonClicked(RadioButtonPreference emiter);
|
||||||
}
|
}
|
||||||
|
|
||||||
private OnClickListener mListener = null;
|
private OnClickListener mListener = null;
|
||||||
@@ -47,14 +48,16 @@ public class RadioButtonPreference extends CheckBoxPreference {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public RadioButtonPreference(Context context, AttributeSet attrs) {
|
public RadioButtonPreference(Context context, AttributeSet attrs) {
|
||||||
this(context, attrs, com.android.internal.R.attr.checkBoxPreferenceStyle);
|
this(context, attrs, TypedArrayUtils.getAttr(context,
|
||||||
|
android.support.v7.preference.R.attr.preferenceStyle,
|
||||||
|
android.R.attr.preferenceStyle));
|
||||||
}
|
}
|
||||||
|
|
||||||
public RadioButtonPreference(Context context) {
|
public RadioButtonPreference(Context context) {
|
||||||
this(context, null);
|
this(context, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
void setOnClickListener(OnClickListener listener) {
|
public void setOnClickListener(OnClickListener listener) {
|
||||||
mListener = listener;
|
mListener = listener;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -25,6 +25,7 @@ import android.os.UserManager;
|
|||||||
import android.support.v14.preference.PreferenceFragment;
|
import android.support.v14.preference.PreferenceFragment;
|
||||||
import android.support.v7.preference.Preference;
|
import android.support.v7.preference.Preference;
|
||||||
import android.support.v7.preference.PreferenceGroup;
|
import android.support.v7.preference.PreferenceGroup;
|
||||||
|
import android.support.v7.preference.PreferenceManager;
|
||||||
import android.support.v7.preference.PreferenceScreen;
|
import android.support.v7.preference.PreferenceScreen;
|
||||||
|
|
||||||
import com.android.settings.AccessiblePreferenceCategory;
|
import com.android.settings.AccessiblePreferenceCategory;
|
||||||
@@ -324,6 +325,7 @@ public class AccountPreferenceControllerTest {
|
|||||||
when(mAccountManager.getAuthenticatorTypesAsUser(anyInt())).thenReturn(authDescs);
|
when(mAccountManager.getAuthenticatorTypesAsUser(anyInt())).thenReturn(authDescs);
|
||||||
|
|
||||||
AccessiblePreferenceCategory preferenceGroup = mock(AccessiblePreferenceCategory.class);
|
AccessiblePreferenceCategory preferenceGroup = mock(AccessiblePreferenceCategory.class);
|
||||||
|
when(preferenceGroup.getPreferenceManager()).thenReturn(mock(PreferenceManager.class));
|
||||||
when(mAccountHelper.createAccessiblePreferenceCategory(any(Context.class))).thenReturn(
|
when(mAccountHelper.createAccessiblePreferenceCategory(any(Context.class))).thenReturn(
|
||||||
preferenceGroup);
|
preferenceGroup);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user