Tweak bluetooth name preference

- remove accent color from device name
- remove useless ripple when tap

Change-Id: I7800523eb27bafa24f3a4549b1acf02c869ac8c8
Fix: 62891178
Test: robotests
This commit is contained in:
Fan Zhang
2017-07-21 11:34:39 -07:00
parent e4c9b7162d
commit 9218e3b7df
2 changed files with 5 additions and 18 deletions

View File

@@ -24,10 +24,8 @@ import android.content.IntentFilter;
import android.support.annotation.VisibleForTesting; import android.support.annotation.VisibleForTesting;
import android.support.v7.preference.Preference; import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen; import android.support.v7.preference.PreferenceScreen;
import android.text.Spannable; import android.text.BidiFormatter;
import android.text.SpannableString;
import android.text.TextUtils; import android.text.TextUtils;
import android.text.style.ForegroundColorSpan;
import android.util.Log; import android.util.Log;
import com.android.settings.R; import com.android.settings.R;
@@ -48,7 +46,6 @@ public class BluetoothDeviceNamePreferenceController extends PreferenceControlle
public static final String KEY_DEVICE_NAME = "device_name"; public static final String KEY_DEVICE_NAME = "device_name";
private final int mAccentColor;
@VisibleForTesting @VisibleForTesting
Preference mPreference; Preference mPreference;
@@ -70,7 +67,6 @@ public class BluetoothDeviceNamePreferenceController extends PreferenceControlle
@VisibleForTesting @VisibleForTesting
BluetoothDeviceNamePreferenceController(Context context, LocalBluetoothAdapter localAdapter) { BluetoothDeviceNamePreferenceController(Context context, LocalBluetoothAdapter localAdapter) {
super(context); super(context);
mAccentColor = com.android.settingslib.Utils.getColorAccent(context);
mLocalAdapter = localAdapter; mLocalAdapter = localAdapter;
} }
@@ -133,12 +129,10 @@ public class BluetoothDeviceNamePreferenceController extends PreferenceControlle
// TODO: show error message in preference subtitle // TODO: show error message in preference subtitle
return; return;
} }
final Spannable spannableName = new SpannableString(deviceName);
spannableName.setSpan(new ForegroundColorSpan(mAccentColor), 0,
spannableName.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
final CharSequence summary = TextUtils.expandTemplate( final CharSequence summary = TextUtils.expandTemplate(
mContext.getText(R.string.bluetooth_device_name_summary), spannableName); mContext.getText(R.string.bluetooth_device_name_summary),
BidiFormatter.getInstance().unicodeWrap(deviceName));
preference.setSelectable(false);
preference.setSummary(summary); preference.setSummary(summary);
} }

View File

@@ -26,8 +26,6 @@ import static org.mockito.Mockito.verify;
import android.content.Context; import android.content.Context;
import android.support.v7.preference.Preference; import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen; import android.support.v7.preference.PreferenceScreen;
import android.text.SpannableStringBuilder;
import android.text.style.ForegroundColorSpan;
import com.android.settings.TestConfig; import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner; import com.android.settings.testutils.SettingsRobolectricTestRunner;
@@ -74,14 +72,9 @@ public class BluetoothDeviceNamePreferenceControllerTest {
mController.updateDeviceName(mPreference, DEVICE_NAME); mController.updateDeviceName(mPreference, DEVICE_NAME);
final CharSequence summary = mPreference.getSummary(); final CharSequence summary = mPreference.getSummary();
final Object[] spans = ((SpannableStringBuilder) summary).getSpans(0, summary.length(),
Object.class);
assertThat(summary.toString()) assertThat(summary.toString())
.isEqualTo("Visible as 'Nightshade' to other devices"); .isEqualTo("Visible as 'Nightshade' to other devices");
assertThat(mPreference.isSelectable()).isFalse();
// Test summary only has one color span
assertThat(spans).asList().hasSize(1);
assertThat(spans[0]).isInstanceOf(ForegroundColorSpan.class);
} }
@Test @Test