Disable quiet hours for Android 5.0+

Users should use Android's notification priority
pull/253/head
Alex Baker 9 years ago
parent 462276a8a6
commit f40941d71c

@ -27,10 +27,10 @@ android {
buildToolsVersion "22"
defaultConfig {
versionCode 350
versionCode 351
versionName "4.7.8"
minSdkVersion 7
targetSdkVersion 22
targetSdkVersion 21
}
signingConfigs {

@ -363,6 +363,10 @@ public class AndroidUtilities {
return !atLeastHoneycomb();
}
public static boolean preLollipop() {
return !atLeastLollipop();
}
public static boolean atLeastFroyo() {
return Build.VERSION.SDK_INT >= Build.VERSION_CODES.FROYO;
}

@ -6,7 +6,9 @@
package com.todoroo.astrid.reminders;
import android.content.res.Resources;
import android.os.Bundle;
import android.preference.Preference;
import android.preference.PreferenceScreen;
import com.todoroo.astrid.utility.TodorooPreferenceActivity;
@ -15,6 +17,8 @@ import org.tasks.R;
import java.text.DateFormat;
import static com.todoroo.andlib.utility.AndroidUtilities.atLeastLollipop;
/**
* Displays the preference screen for users to edit their preferences
*
@ -23,6 +27,19 @@ import java.text.DateFormat;
*/
public class ReminderPreferences extends TodorooPreferenceActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (atLeastLollipop()) {
Resources resources = getResources();
PreferenceScreen preferenceScreen = getPreferenceScreen();
preferenceScreen.removePreference(findPreference(resources.getString(R.string.p_rmd_enable_quiet)));
preferenceScreen.removePreference(findPreference(resources.getString(R.string.p_rmd_quietStart)));
preferenceScreen.removePreference(findPreference(resources.getString(R.string.p_rmd_quietEnd)));
}
}
@Override
public int getPreferenceResource() {
return R.xml.preferences_reminders;

@ -312,7 +312,7 @@ public final class ReminderService {
long quietHoursEnd = new DateTime().withMillisOfDay(preferences.getInt(R.string.p_rmd_quietEnd, 10 * MILLIS_PER_HOUR)).getMillis();
Date quietHoursEndDate = newDate(quietHoursEnd);
boolean quietHoursEnabled = preferences.getBoolean(R.string.p_rmd_enable_quiet, false);
boolean quietHoursEnabled = preferences.quietHoursEnabled();
long millisToQuiet;
long millisToEndOfDay = dueDate - getNowValue();

@ -81,7 +81,7 @@ public class ShowNotificationReceiver extends InjectingBroadcastReceiver {
* @return whether we're in quiet hours
*/
static boolean isQuietHours(Preferences preferences) {
boolean quietHoursEnabled = preferences.getBoolean(R.string.p_rmd_enable_quiet, false);
boolean quietHoursEnabled = preferences.quietHoursEnabled();
if (quietHoursEnabled) {
long quietHoursStart = new DateTime().withMillisOfDay(preferences.getInt(R.string.p_rmd_quietStart)).getMillis();
long quietHoursEnd = new DateTime().withMillisOfDay(preferences.getInt(R.string.p_rmd_quietEnd)).getMillis();

@ -27,6 +27,7 @@ import ch.qos.logback.core.rolling.RollingFileAppender;
import ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy;
import static android.content.SharedPreferences.Editor;
import static com.todoroo.andlib.utility.AndroidUtilities.preLollipop;
public class Preferences {
@ -51,6 +52,10 @@ public class Preferences {
publicPrefs = context.getSharedPreferences(AstridApiConstants.PUBLIC_PREFS, Context.MODE_WORLD_READABLE);
}
public boolean quietHoursEnabled() {
return preLollipop() && getBoolean(R.string.p_rmd_enable_quiet, false);
}
public boolean useDarkWidgetTheme(int widgetId) {
boolean legacySetting = getBoolean(R.string.p_use_dark_theme_widget, false);
return getBoolean(WidgetConfigActivity.PREF_DARK_THEME + widgetId, legacySetting);

@ -1,47 +1,45 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
<?xml version="1.0" encoding="utf-8"?><!--
** Copyright (c) 2012 Todoroo Inc
**
** See the file "LICENSE" for the full license governing this code.
-->
<PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android"
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
android:title="@string/rmd_EPr_alerts_header">
<CheckBoxPreference
android:defaultValue="false"
android:key="@string/p_rmd_enable_quiet"
android:title="@string/rmd_EPr_enable_quiet_title"
android:defaultValue="false"/>
android:title="@string/rmd_EPr_enable_quiet_title" />
<org.tasks.ui.TimePreference
android:key="@string/p_rmd_quietStart"
android:defaultValue="@integer/default_quiet_hours_start"
android:dependency="@string/p_rmd_enable_quiet"
android:title="@string/rmd_EPr_quiet_hours_start_title"/>
android:key="@string/p_rmd_quietStart"
android:title="@string/rmd_EPr_quiet_hours_start_title" />
<org.tasks.ui.TimePreference
android:key="@string/p_rmd_quietEnd"
android:defaultValue="@integer/default_quiet_hours_end"
android:dependency="@string/p_rmd_enable_quiet"
android:title="@string/rmd_EPr_quiet_hours_end_title"/>
<org.tasks.ui.TimePreference
android:key="@string/p_rmd_time"
android:defaultValue="@integer/default_remind_time"
android:title="@string/rmd_EPr_rmd_time_title"/>
<com.todoroo.astrid.ui.MultilineCheckboxPreference
android:key="@string/p_rmd_persistent"
android:title="@string/rmd_EPr_persistent_title"/>
<com.todoroo.astrid.ui.MultilineCheckboxPreference
android:key="@string/p_rmd_maxvolume"
android:title="@string/rmd_EPr_multiple_maxvolume_title"
android:defaultValue="false" />
<com.todoroo.astrid.ui.MultilineCheckboxPreference
android:key="@string/p_rmd_vibrate"
android:title="@string/rmd_EPr_vibrate_title"
android:defaultValue="true" />
<RingtonePreference
android:key="@string/p_rmd_ringtone"
android:title="@string/rmd_EPr_ringtone_title"
android:ringtoneType="notification"
android:showDefault="true"
android:showSilent="true" />
android:key="@string/p_rmd_quietEnd"
android:title="@string/rmd_EPr_quiet_hours_end_title" />
<org.tasks.ui.TimePreference
android:defaultValue="@integer/default_remind_time"
android:key="@string/p_rmd_time"
android:title="@string/rmd_EPr_rmd_time_title" />
<com.todoroo.astrid.ui.MultilineCheckboxPreference
android:key="@string/p_rmd_persistent"
android:title="@string/rmd_EPr_persistent_title" />
<com.todoroo.astrid.ui.MultilineCheckboxPreference
android:defaultValue="false"
android:key="@string/p_rmd_maxvolume"
android:title="@string/rmd_EPr_multiple_maxvolume_title" />
<com.todoroo.astrid.ui.MultilineCheckboxPreference
android:defaultValue="true"
android:key="@string/p_rmd_vibrate"
android:title="@string/rmd_EPr_vibrate_title" />
<RingtonePreference
android:key="@string/p_rmd_ringtone"
android:ringtoneType="notification"
android:showDefault="true"
android:showSilent="true"
android:title="@string/rmd_EPr_ringtone_title" />
</PreferenceScreen>

Loading…
Cancel
Save