From 032a7124ecfc39dd96e8f02b78ee70df34519609 Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Thu, 10 Dec 2015 12:46:19 -0600 Subject: [PATCH] Add vibration pattern settings --- src/main/java/org/tasks/Notifier.java | 2 +- .../org/tasks/preferences/Preferences.java | 17 +++++++++ src/main/res/values-ar/strings.xml | 1 - src/main/res/values-bg-rBG/strings.xml | 1 - src/main/res/values-de/strings.xml | 1 - src/main/res/values-es/strings.xml | 1 - src/main/res/values-fa/strings.xml | 1 - src/main/res/values-fr/strings.xml | 1 - src/main/res/values-it/strings.xml | 1 - src/main/res/values-ja/strings.xml | 1 - src/main/res/values-ko/strings.xml | 1 - src/main/res/values-nl/strings.xml | 1 - src/main/res/values-pt/strings.xml | 1 - src/main/res/values-ru/strings.xml | 1 - src/main/res/values-sk/strings.xml | 1 - src/main/res/values/arrays.xml | 16 ++++++++ src/main/res/values/keys.xml | 9 ++++- src/main/res/values/strings.xml | 5 ++- src/main/res/xml/preferences_reminders.xml | 38 ++++++++++++++++--- 19 files changed, 79 insertions(+), 21 deletions(-) diff --git a/src/main/java/org/tasks/Notifier.java b/src/main/java/org/tasks/Notifier.java index c7c8a39dd..9f9aa0b8c 100644 --- a/src/main/java/org/tasks/Notifier.java +++ b/src/main/java/org/tasks/Notifier.java @@ -337,7 +337,7 @@ public class Notifier { } if (preferences.getBoolean(R.string.p_rmd_vibrate, true) && soundIntervalOk) { - notification.vibrate = new long[]{0, 1000, 500, 1000, 500, 1000}; + notification.vibrate = preferences.getVibrationPattern(); } else { notification.vibrate = null; } diff --git a/src/main/java/org/tasks/preferences/Preferences.java b/src/main/java/org/tasks/preferences/Preferences.java index 07a19a740..300497935 100644 --- a/src/main/java/org/tasks/preferences/Preferences.java +++ b/src/main/java/org/tasks/preferences/Preferences.java @@ -7,6 +7,7 @@ import android.os.Environment; import android.preference.PreferenceManager; import android.text.TextUtils; +import com.google.common.primitives.Longs; import com.todoroo.astrid.activity.BeastModePreferences; import com.todoroo.astrid.api.AstridApiConstants; import com.todoroo.astrid.core.SortHelper; @@ -21,6 +22,8 @@ import org.tasks.R; import org.tasks.injection.ForApplication; import java.io.File; +import java.util.ArrayList; +import java.util.List; import java.util.concurrent.atomic.AtomicReference; import javax.inject.Inject; @@ -409,4 +412,18 @@ public class Preferences { } return null; } + + public long[] getVibrationPattern() { + int vibrationCount = getIntegerFromString(R.string.p_vibrate_count, 3); + long vibrationDuration = getIntegerFromString(R.string.p_vibrate_duration, 1000); + long vibrationPause = getIntegerFromString(R.string.p_vibrate_pause, 500); + List pattern = new ArrayList<>(vibrationCount); + pattern.add(0L); + pattern.add(vibrationDuration); + for (int i = 1 ; i < vibrationCount ; i++) { + pattern.add(vibrationPause); + pattern.add(vibrationDuration); + } + return Longs.toArray(pattern); + } } diff --git a/src/main/res/values-ar/strings.xml b/src/main/res/values-ar/strings.xml index d3d8e681c..353b0c2ba 100644 --- a/src/main/res/values-ar/strings.xml +++ b/src/main/res/values-ar/strings.xml @@ -210,7 +210,6 @@ تنبيهات الصمت صوت - اهتزاز الساعات الهادئة التزامن تفعيل diff --git a/src/main/res/values-bg-rBG/strings.xml b/src/main/res/values-bg-rBG/strings.xml index 383b6cfeb..2ebae0ea2 100644 --- a/src/main/res/values-bg-rBG/strings.xml +++ b/src/main/res/values-bg-rBG/strings.xml @@ -346,7 +346,6 @@ Уведомления Безшумен Звук - Вибрация Тихи часове Директория за прикачени файлове Директория за резервни копия diff --git a/src/main/res/values-de/strings.xml b/src/main/res/values-de/strings.xml index e665cc21a..bc5f97309 100644 --- a/src/main/res/values-de/strings.xml +++ b/src/main/res/values-de/strings.xml @@ -326,7 +326,6 @@ Benachrichtigungen Ton Aus Ton - Vibrieren Ruhezeiten Anhängeordner Sicherungsordner diff --git a/src/main/res/values-es/strings.xml b/src/main/res/values-es/strings.xml index 07a74d5e5..906fe88f6 100644 --- a/src/main/res/values-es/strings.xml +++ b/src/main/res/values-es/strings.xml @@ -328,7 +328,6 @@ Notificaciones Silencioso Sonido - Vibrar Horario en silencio Directorio de archivos adjuntos Directorio de la copia de seguridad diff --git a/src/main/res/values-fa/strings.xml b/src/main/res/values-fa/strings.xml index 5a6ed6e21..af874f3e4 100644 --- a/src/main/res/values-fa/strings.xml +++ b/src/main/res/values-fa/strings.xml @@ -247,7 +247,6 @@ اعلان ها سکوت صدا - ویبره ساعات سکوت پشتیبان گیری از پوشه سایر diff --git a/src/main/res/values-fr/strings.xml b/src/main/res/values-fr/strings.xml index 049eb1790..b61c17363 100644 --- a/src/main/res/values-fr/strings.xml +++ b/src/main/res/values-fr/strings.xml @@ -329,7 +329,6 @@ Fond transparent Silencieux Son - Vibrer Heures de repos Dossier pour les fichiers attachés Dossier de sauvegarde diff --git a/src/main/res/values-it/strings.xml b/src/main/res/values-it/strings.xml index b5d146f3d..6b341e277 100644 --- a/src/main/res/values-it/strings.xml +++ b/src/main/res/values-it/strings.xml @@ -340,7 +340,6 @@ Se visualizzi questo errore più volte, ti consigliamo di cancellare tutti i dat Notifiche Silente Sonoro - Vibrazione Ore di quiete Cartella allegati Cartella di Backup diff --git a/src/main/res/values-ja/strings.xml b/src/main/res/values-ja/strings.xml index 3168f186d..f7fc10e43 100644 --- a/src/main/res/values-ja/strings.xml +++ b/src/main/res/values-ja/strings.xml @@ -345,7 +345,6 @@ 通知 サイレント サウンド - 振動 消音時間 添付ディレクトリ ディレクトリをバックアップ diff --git a/src/main/res/values-ko/strings.xml b/src/main/res/values-ko/strings.xml index 673bd3860..7d297eea9 100644 --- a/src/main/res/values-ko/strings.xml +++ b/src/main/res/values-ko/strings.xml @@ -347,7 +347,6 @@ Tasks의 백업에서 당신의 일정을 복구하시기 바랍니다. 알림 무음 소리 - 진동 무음 시간대 첨부파일 위치 백업 위치 diff --git a/src/main/res/values-nl/strings.xml b/src/main/res/values-nl/strings.xml index f62debaa7..fd7f311cf 100644 --- a/src/main/res/values-nl/strings.xml +++ b/src/main/res/values-nl/strings.xml @@ -341,7 +341,6 @@ Notificaties Stil Geluid - Trillen Rustperiode Bijlage directory Fouten loggen diff --git a/src/main/res/values-pt/strings.xml b/src/main/res/values-pt/strings.xml index 58f540f11..e37fecd0a 100644 --- a/src/main/res/values-pt/strings.xml +++ b/src/main/res/values-pt/strings.xml @@ -338,7 +338,6 @@ das tarefas através de um backup em Definições->Sincronização e backup-& Notificações Silêncio Som - Vibrar Horas de silêncio Diretório do anexo Diretório de backup diff --git a/src/main/res/values-ru/strings.xml b/src/main/res/values-ru/strings.xml index a0a96dacb..c07a17705 100644 --- a/src/main/res/values-ru/strings.xml +++ b/src/main/res/values-ru/strings.xml @@ -344,7 +344,6 @@ Уведомления Без звука Звук - Вибрация Тихие часы: Путь к вложениям Папка резервных копий diff --git a/src/main/res/values-sk/strings.xml b/src/main/res/values-sk/strings.xml index d3d1848fc..e406eda2b 100644 --- a/src/main/res/values-sk/strings.xml +++ b/src/main/res/values-sk/strings.xml @@ -330,7 +330,6 @@ Oznámenia Tichý Zvuk - Vybrácia Tiché hodiny Príloha adresára Zalóhovať adresár diff --git a/src/main/res/values/arrays.xml b/src/main/res/values/arrays.xml index 4813dc745..99eb259d4 100644 --- a/src/main/res/values/arrays.xml +++ b/src/main/res/values/arrays.xml @@ -1,5 +1,21 @@ + + + 1 + 2 + 3 + 4 + 5 + + + + 250 + 500 + 750 + 1000 + + 75 125 diff --git a/src/main/res/values/keys.xml b/src/main/res/values/keys.xml index 426be1283..0ab4fa791 100644 --- a/src/main/res/values/keys.xml +++ b/src/main/res/values/keys.xml @@ -43,7 +43,10 @@ notif_vibrate - + vibrate_count + vibrate_duration + vibrate_pause + notification_ringtone @@ -276,4 +279,8 @@ -1 + 3 + 1000 + 500 + diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml index ecd771216..0356f4be8 100644 --- a/src/main/res/values/strings.xml +++ b/src/main/res/values/strings.xml @@ -62,7 +62,7 @@ Notifications Silent Sound - Vibrate + Vibrations Quiet hours Attachment directory Backup directory @@ -126,6 +126,9 @@ Default Low Notification Priority + Number of vibrations + Length of each vibration (milliseconds) + Pause between vibrations (milliseconds) diff --git a/src/main/res/xml/preferences_reminders.xml b/src/main/res/xml/preferences_reminders.xml index 130d46cea..0fa966b45 100644 --- a/src/main/res/xml/preferences_reminders.xml +++ b/src/main/res/xml/preferences_reminders.xml @@ -33,11 +33,6 @@ android:showDefault="true" android:showSilent="true" android:title="@string/sound" /> - + + + + + + + + + +