Loading res/values/strings.xml +3 −0 Original line number Diff line number Diff line Loading @@ -6870,6 +6870,9 @@ <!-- Do not disturb: Summary for the zen mode automation option Suggestion. [CHAR LIMIT=NONE] --> <string name="zen_mode_automation_suggestion_summary">Limit sounds & vibrations at certain times</string> <!-- Do not disturb: Switch toggle to toggle whether to use an automatic dnd rule or not [CHAR LIMIT=40] --> <string name="zen_mode_use_automatic_rule">Use rule</string> <!-- Do not disturb: Zen mode option: Important interruptions [CHAR LIMIT=60] --> <string name="zen_mode_option_important_interruptions">Priority only</string> res/xml/zen_mode_event_rule_settings.xml +0 −6 Original line number Diff line number Diff line Loading @@ -28,12 +28,6 @@ android:key="zen_automatic_rule_switch" android:layout="@layout/styled_switch_bar" /> <!-- Rule name --> <Preference android:key="rule_name" android:title="@string/zen_mode_rule_name" android:persistent="false" /> <!-- During events for --> <DropDownPreference android:key="calendar" Loading res/xml/zen_mode_schedule_rule_settings.xml +0 −6 Original line number Diff line number Diff line Loading @@ -28,12 +28,6 @@ android:key="zen_automatic_rule_switch" android:layout="@layout/styled_switch_bar" /> <!-- Rule name --> <Preference android:key="rule_name" android:title="@string/zen_mode_rule_name" android:persistent="false" /> <!-- Days --> <Preference android:key="days" Loading src/com/android/settings/notification/ZenAutomaticRuleHeaderPreferenceController.java +26 −2 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.settings.notification; import static com.android.settings.widget.EntityHeaderController.PREF_KEY_APP_HEADER; import android.app.AutomaticZenRule; import android.app.Fragment; import android.content.Context; import android.content.pm.ApplicationInfo; import android.content.pm.PackageManager; Loading @@ -28,6 +29,7 @@ import android.support.v7.preference.Preference; import android.util.Slog; import android.view.View; import com.android.internal.logging.nano.MetricsProto; import com.android.settings.R; import com.android.settings.applications.LayoutPreference; import com.android.settings.core.PreferenceControllerMixin; Loading @@ -40,6 +42,7 @@ public class ZenAutomaticRuleHeaderPreferenceController extends AbstractZenModeP private final String KEY = PREF_KEY_APP_HEADER; private final PreferenceFragment mFragment; private AutomaticZenRule mRule; private String mId; private EntityHeaderController mController; public ZenAutomaticRuleHeaderPreferenceController(Context context, PreferenceFragment fragment, Loading Loading @@ -70,6 +73,14 @@ public class ZenAutomaticRuleHeaderPreferenceController extends AbstractZenModeP mController = EntityHeaderController .newInstance(mFragment.getActivity(), mFragment, pref.findViewById(R.id.entity_header)); mController.setEditZenRuleNameListener(new View.OnClickListener() { @Override public void onClick(View v) { ZenRuleNameDialog.show(mFragment, mRule.getName(), null, new RuleNameChangeListener()); } }); } pref = mController.setIcon(getIcon()) Loading @@ -77,7 +88,7 @@ public class ZenAutomaticRuleHeaderPreferenceController extends AbstractZenModeP .setPackageName(mRule.getOwner().getPackageName()) .setUid(mContext.getUserId()) .setHasAppInfoLink(false) .setButtonActions(EntityHeaderController.ActionType.ACTION_NONE, .setButtonActions(EntityHeaderController.ActionType.ACTION_DND_RULE_PREFERENCE, EntityHeaderController.ActionType.ACTION_NONE) .done(mFragment.getActivity(), mContext); Loading @@ -98,7 +109,20 @@ public class ZenAutomaticRuleHeaderPreferenceController extends AbstractZenModeP return null; } protected void onResume(AutomaticZenRule rule) { protected void onResume(AutomaticZenRule rule, String id) { mRule = rule; mId = id; } public class RuleNameChangeListener implements ZenRuleNameDialog.PositiveClickListener { public RuleNameChangeListener() {} @Override public void onOk(String ruleName, Fragment parent) { mMetricsFeatureProvider.action(mContext, MetricsProto.MetricsEvent.ACTION_ZEN_MODE_RULE_NAME_CHANGE_OK); mRule.setName(ruleName); mBackend.setZenRule(mId, mRule); } } } src/com/android/settings/notification/ZenAutomaticRuleSwitchPreferenceController.java +22 −12 Original line number Diff line number Diff line Loading @@ -20,6 +20,7 @@ import android.app.AutomaticZenRule; import android.app.Fragment; import android.content.Context; import android.support.v7.preference.Preference; import android.support.v7.preference.PreferenceScreen; import android.widget.Switch; import android.widget.Toast; Loading @@ -37,6 +38,7 @@ public class ZenAutomaticRuleSwitchPreferenceController extends private String mId; private Toast mEnabledToast; private int mToastTextResource; private SwitchBar mSwitchBar; public ZenAutomaticRuleSwitchPreferenceController(Context context, Fragment parent, int toastTextResource, Lifecycle lifecycle) { Loading @@ -54,26 +56,34 @@ public class ZenAutomaticRuleSwitchPreferenceController extends return mRule != null && mId != null; } @Override public void displayPreference(PreferenceScreen screen) { super.displayPreference(screen); LayoutPreference pref = (LayoutPreference) screen.findPreference(KEY); mSwitchBar = pref.findViewById(R.id.switch_bar); if (mSwitchBar != null) { mSwitchBar.setSwitchBarText(R.string.zen_mode_use_automatic_rule, R.string.zen_mode_use_automatic_rule); try { mSwitchBar.addOnSwitchChangeListener(this); } catch (IllegalStateException e) { // an exception is thrown if you try to add the listener twice } mSwitchBar.show(); } } public void onResume(AutomaticZenRule rule, String id) { mRule = rule; mId = id; } public void updateState(Preference preference) { LayoutPreference pref = (LayoutPreference) preference; SwitchBar bar = pref.findViewById(R.id.switch_bar); if (mRule != null) { bar.setChecked(mRule.isEnabled()); } if (bar != null) { bar.show(); try { bar.addOnSwitchChangeListener(this); } catch (IllegalStateException e) { // an exception is thrown if you try to add the listener twice } mSwitchBar.setChecked(mRule.isEnabled()); } bar.show(); } @Override Loading Loading
res/values/strings.xml +3 −0 Original line number Diff line number Diff line Loading @@ -6870,6 +6870,9 @@ <!-- Do not disturb: Summary for the zen mode automation option Suggestion. [CHAR LIMIT=NONE] --> <string name="zen_mode_automation_suggestion_summary">Limit sounds & vibrations at certain times</string> <!-- Do not disturb: Switch toggle to toggle whether to use an automatic dnd rule or not [CHAR LIMIT=40] --> <string name="zen_mode_use_automatic_rule">Use rule</string> <!-- Do not disturb: Zen mode option: Important interruptions [CHAR LIMIT=60] --> <string name="zen_mode_option_important_interruptions">Priority only</string>
res/xml/zen_mode_event_rule_settings.xml +0 −6 Original line number Diff line number Diff line Loading @@ -28,12 +28,6 @@ android:key="zen_automatic_rule_switch" android:layout="@layout/styled_switch_bar" /> <!-- Rule name --> <Preference android:key="rule_name" android:title="@string/zen_mode_rule_name" android:persistent="false" /> <!-- During events for --> <DropDownPreference android:key="calendar" Loading
res/xml/zen_mode_schedule_rule_settings.xml +0 −6 Original line number Diff line number Diff line Loading @@ -28,12 +28,6 @@ android:key="zen_automatic_rule_switch" android:layout="@layout/styled_switch_bar" /> <!-- Rule name --> <Preference android:key="rule_name" android:title="@string/zen_mode_rule_name" android:persistent="false" /> <!-- Days --> <Preference android:key="days" Loading
src/com/android/settings/notification/ZenAutomaticRuleHeaderPreferenceController.java +26 −2 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.settings.notification; import static com.android.settings.widget.EntityHeaderController.PREF_KEY_APP_HEADER; import android.app.AutomaticZenRule; import android.app.Fragment; import android.content.Context; import android.content.pm.ApplicationInfo; import android.content.pm.PackageManager; Loading @@ -28,6 +29,7 @@ import android.support.v7.preference.Preference; import android.util.Slog; import android.view.View; import com.android.internal.logging.nano.MetricsProto; import com.android.settings.R; import com.android.settings.applications.LayoutPreference; import com.android.settings.core.PreferenceControllerMixin; Loading @@ -40,6 +42,7 @@ public class ZenAutomaticRuleHeaderPreferenceController extends AbstractZenModeP private final String KEY = PREF_KEY_APP_HEADER; private final PreferenceFragment mFragment; private AutomaticZenRule mRule; private String mId; private EntityHeaderController mController; public ZenAutomaticRuleHeaderPreferenceController(Context context, PreferenceFragment fragment, Loading Loading @@ -70,6 +73,14 @@ public class ZenAutomaticRuleHeaderPreferenceController extends AbstractZenModeP mController = EntityHeaderController .newInstance(mFragment.getActivity(), mFragment, pref.findViewById(R.id.entity_header)); mController.setEditZenRuleNameListener(new View.OnClickListener() { @Override public void onClick(View v) { ZenRuleNameDialog.show(mFragment, mRule.getName(), null, new RuleNameChangeListener()); } }); } pref = mController.setIcon(getIcon()) Loading @@ -77,7 +88,7 @@ public class ZenAutomaticRuleHeaderPreferenceController extends AbstractZenModeP .setPackageName(mRule.getOwner().getPackageName()) .setUid(mContext.getUserId()) .setHasAppInfoLink(false) .setButtonActions(EntityHeaderController.ActionType.ACTION_NONE, .setButtonActions(EntityHeaderController.ActionType.ACTION_DND_RULE_PREFERENCE, EntityHeaderController.ActionType.ACTION_NONE) .done(mFragment.getActivity(), mContext); Loading @@ -98,7 +109,20 @@ public class ZenAutomaticRuleHeaderPreferenceController extends AbstractZenModeP return null; } protected void onResume(AutomaticZenRule rule) { protected void onResume(AutomaticZenRule rule, String id) { mRule = rule; mId = id; } public class RuleNameChangeListener implements ZenRuleNameDialog.PositiveClickListener { public RuleNameChangeListener() {} @Override public void onOk(String ruleName, Fragment parent) { mMetricsFeatureProvider.action(mContext, MetricsProto.MetricsEvent.ACTION_ZEN_MODE_RULE_NAME_CHANGE_OK); mRule.setName(ruleName); mBackend.setZenRule(mId, mRule); } } }
src/com/android/settings/notification/ZenAutomaticRuleSwitchPreferenceController.java +22 −12 Original line number Diff line number Diff line Loading @@ -20,6 +20,7 @@ import android.app.AutomaticZenRule; import android.app.Fragment; import android.content.Context; import android.support.v7.preference.Preference; import android.support.v7.preference.PreferenceScreen; import android.widget.Switch; import android.widget.Toast; Loading @@ -37,6 +38,7 @@ public class ZenAutomaticRuleSwitchPreferenceController extends private String mId; private Toast mEnabledToast; private int mToastTextResource; private SwitchBar mSwitchBar; public ZenAutomaticRuleSwitchPreferenceController(Context context, Fragment parent, int toastTextResource, Lifecycle lifecycle) { Loading @@ -54,26 +56,34 @@ public class ZenAutomaticRuleSwitchPreferenceController extends return mRule != null && mId != null; } @Override public void displayPreference(PreferenceScreen screen) { super.displayPreference(screen); LayoutPreference pref = (LayoutPreference) screen.findPreference(KEY); mSwitchBar = pref.findViewById(R.id.switch_bar); if (mSwitchBar != null) { mSwitchBar.setSwitchBarText(R.string.zen_mode_use_automatic_rule, R.string.zen_mode_use_automatic_rule); try { mSwitchBar.addOnSwitchChangeListener(this); } catch (IllegalStateException e) { // an exception is thrown if you try to add the listener twice } mSwitchBar.show(); } } public void onResume(AutomaticZenRule rule, String id) { mRule = rule; mId = id; } public void updateState(Preference preference) { LayoutPreference pref = (LayoutPreference) preference; SwitchBar bar = pref.findViewById(R.id.switch_bar); if (mRule != null) { bar.setChecked(mRule.isEnabled()); } if (bar != null) { bar.show(); try { bar.addOnSwitchChangeListener(this); } catch (IllegalStateException e) { // an exception is thrown if you try to add the listener twice } mSwitchBar.setChecked(mRule.isEnabled()); } bar.show(); } @Override Loading