Channel settings updates
- Update master switch preference to store enabled state in case it's set before the view holder is bound - Update master switch preference to prevent disabled switches from being toggled - Show an importance summary for max importance - properly handle null notification sounds Change-Id: I395b95b76d2a3c1c94b41d1c2720bb0cf1cae917 Fixes: 36920159 Fixes: 37421928 Fixes: 36939825 Test: RunSettingsRoboTests & manual
This commit is contained in:
@@ -90,6 +90,19 @@ public class MasterSwitchPreferenceTest {
|
||||
assertThat(toggle.isEnabled()).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void setSwitchEnabled_shouldUpdateButtonEnabledState_beforeViewBound() {
|
||||
final MasterSwitchPreference preference = new MasterSwitchPreference(mContext);
|
||||
final PreferenceViewHolder holder = PreferenceViewHolder.createInstanceForTests(
|
||||
LayoutInflater.from(mContext).inflate(
|
||||
R.layout.preference_widget_master_switch, null));
|
||||
final Switch toggle = (Switch) holder.findViewById(R.id.switchWidget);
|
||||
|
||||
preference.setSwitchEnabled(false);
|
||||
preference.onBindViewHolder(holder);
|
||||
assertThat(toggle.isEnabled()).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void clickWidgetView_shouldToggleButton() {
|
||||
final MasterSwitchPreference preference = new MasterSwitchPreference(mContext);
|
||||
@@ -108,6 +121,22 @@ public class MasterSwitchPreferenceTest {
|
||||
assertThat(toggle.isChecked()).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void clickWidgetView_shouldNotToggleButtonIfDisabled() {
|
||||
final MasterSwitchPreference preference = new MasterSwitchPreference(mContext);
|
||||
final LayoutInflater inflater = LayoutInflater.from(mContext);
|
||||
final PreferenceViewHolder holder = PreferenceViewHolder.createInstanceForTests(
|
||||
inflater.inflate(R.layout.preference_two_target, null));
|
||||
final LinearLayout widgetView = holder.itemView.findViewById(android.R.id.widget_frame);
|
||||
inflater.inflate(R.layout.preference_widget_master_switch, widgetView, true);
|
||||
final Switch toggle = (Switch) holder.findViewById(R.id.switchWidget);
|
||||
preference.onBindViewHolder(holder);
|
||||
toggle.setEnabled(false);
|
||||
|
||||
widgetView.performClick();
|
||||
assertThat(toggle.isChecked()).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void clickWidgetView_shouldNotifyPreferenceChanged() {
|
||||
final MasterSwitchPreference preference = new MasterSwitchPreference(mContext);
|
||||
|
Reference in New Issue
Block a user