Alarm can end time-based rule.
Bug: 21069008 Change-Id: I83527f787b7daaf936029674202a27900550b652
This commit is contained in:
@@ -6094,6 +6094,12 @@
|
|||||||
<!-- [CHAR LIMIT=40] Zen mode settings: Downtime days option value, all days set -->
|
<!-- [CHAR LIMIT=40] Zen mode settings: Downtime days option value, all days set -->
|
||||||
<string name="zen_mode_schedule_rule_days_all">Every day</string>
|
<string name="zen_mode_schedule_rule_days_all">Every day</string>
|
||||||
|
|
||||||
|
<!-- [CHAR LIMIT=60] Zen mode settings: Downtime rule setting -->
|
||||||
|
<string name="zen_mode_schedule_alarm_title">Alarm can override end time</string>
|
||||||
|
|
||||||
|
<!-- [CHAR LIMIT=NONE] Zen mode settings: Downtime rule setting -->
|
||||||
|
<string name="zen_mode_schedule_alarm_summary">Stop at the end time or next alarm, whichever comes first</string>
|
||||||
|
|
||||||
<!-- [CHAR LIMIT=40] General divider text when concatenating multiple items in a text summary -->
|
<!-- [CHAR LIMIT=40] General divider text when concatenating multiple items in a text summary -->
|
||||||
<string name="summary_divider_text">,\u0020</string>
|
<string name="summary_divider_text">,\u0020</string>
|
||||||
|
|
||||||
|
@@ -32,6 +32,13 @@
|
|||||||
|
|
||||||
<!-- Start time/End time added and removed here! :-) -->
|
<!-- Start time/End time added and removed here! :-) -->
|
||||||
|
|
||||||
|
<!-- Exit DND mode with alarm -->
|
||||||
|
<SwitchPreference
|
||||||
|
android:key="exit_at_alarm"
|
||||||
|
android:title="@string/zen_mode_schedule_alarm_title"
|
||||||
|
android:summary="@string/zen_mode_schedule_alarm_summary"
|
||||||
|
android:order="99" />
|
||||||
|
|
||||||
<!-- Zen mode -->
|
<!-- Zen mode -->
|
||||||
<DropDownPreference
|
<DropDownPreference
|
||||||
android:key="zen_mode"
|
android:key="zen_mode"
|
||||||
|
@@ -29,6 +29,7 @@ import android.os.Bundle;
|
|||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
import android.service.notification.ZenModeConfig;
|
import android.service.notification.ZenModeConfig;
|
||||||
import android.service.notification.ZenModeConfig.ScheduleInfo;
|
import android.service.notification.ZenModeConfig.ScheduleInfo;
|
||||||
|
import android.support.v14.preference.SwitchPreference;
|
||||||
import android.support.v7.preference.Preference;
|
import android.support.v7.preference.Preference;
|
||||||
import android.support.v7.preference.Preference.OnPreferenceClickListener;
|
import android.support.v7.preference.Preference.OnPreferenceClickListener;
|
||||||
import android.support.v7.preference.PreferenceScreen;
|
import android.support.v7.preference.PreferenceScreen;
|
||||||
@@ -49,6 +50,7 @@ public class ZenModeScheduleRuleSettings extends ZenModeRuleSettingsBase {
|
|||||||
private static final String KEY_DAYS = "days";
|
private static final String KEY_DAYS = "days";
|
||||||
private static final String KEY_START_TIME = "start_time";
|
private static final String KEY_START_TIME = "start_time";
|
||||||
private static final String KEY_END_TIME = "end_time";
|
private static final String KEY_END_TIME = "end_time";
|
||||||
|
private static final String KEY_EXIT_AT_ALARM = "exit_at_alarm";
|
||||||
|
|
||||||
public static final String ACTION = Settings.ACTION_ZEN_MODE_SCHEDULE_RULE_SETTINGS;
|
public static final String ACTION = Settings.ACTION_ZEN_MODE_SCHEDULE_RULE_SETTINGS;
|
||||||
|
|
||||||
@@ -58,6 +60,7 @@ public class ZenModeScheduleRuleSettings extends ZenModeRuleSettingsBase {
|
|||||||
private Preference mDays;
|
private Preference mDays;
|
||||||
private TimePickerPreference mStart;
|
private TimePickerPreference mStart;
|
||||||
private TimePickerPreference mEnd;
|
private TimePickerPreference mEnd;
|
||||||
|
private SwitchPreference mExitAtAlarm;
|
||||||
|
|
||||||
private ScheduleInfo mSchedule;
|
private ScheduleInfo mSchedule;
|
||||||
|
|
||||||
@@ -137,6 +140,16 @@ public class ZenModeScheduleRuleSettings extends ZenModeRuleSettingsBase {
|
|||||||
});
|
});
|
||||||
root.addPreference(mEnd);
|
root.addPreference(mEnd);
|
||||||
mEnd.setDependency(mDays.getKey());
|
mEnd.setDependency(mDays.getKey());
|
||||||
|
|
||||||
|
mExitAtAlarm = (SwitchPreference) root.findPreference(KEY_EXIT_AT_ALARM);
|
||||||
|
mExitAtAlarm.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
|
||||||
|
@Override
|
||||||
|
public boolean onPreferenceChange(Preference preference, Object o) {
|
||||||
|
mSchedule.exitAtAlarm = (Boolean) o;
|
||||||
|
updateRule(ZenModeConfig.toScheduleConditionId(mSchedule));
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
private void updateDays() {
|
private void updateDays() {
|
||||||
@@ -181,6 +194,7 @@ public class ZenModeScheduleRuleSettings extends ZenModeRuleSettingsBase {
|
|||||||
updateDays();
|
updateDays();
|
||||||
mStart.setTime(mSchedule.startHour, mSchedule.startMinute);
|
mStart.setTime(mSchedule.startHour, mSchedule.startMinute);
|
||||||
mEnd.setTime(mSchedule.endHour, mSchedule.endMinute);
|
mEnd.setTime(mSchedule.endHour, mSchedule.endMinute);
|
||||||
|
mExitAtAlarm.setChecked(mSchedule.exitAtAlarm);
|
||||||
updateEndSummary();
|
updateEndSummary();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user