adding the default event reminder buttons in the app settings

This commit is contained in:
tibbi
2018-09-22 10:49:50 +02:00
parent 0a778762c1
commit 43ca59544e
33 changed files with 227 additions and 29 deletions

View File

@@ -63,6 +63,10 @@ class SettingsActivity : SimpleActivity() {
setupUseSameSnooze()
setupLoopReminders()
setupSnoozeTime()
setupDefaultReminder()
setupDefaultReminder1()
setupDefaultReminder2()
setupDefaultReminder3()
setupDisplayPastEvents()
setupFontSize()
setupCustomizeWidgetColors()
@@ -387,6 +391,52 @@ class SettingsActivity : SimpleActivity() {
settings_snooze_time.text = formatMinutesToTimeString(config.snoozeTime)
}
private fun setupDefaultReminder() {
settings_use_default_reminder.isChecked = config.useDefaultReminder
toggleDefaultRemindersVisibility(!config.useDefaultReminder)
settings_use_default_reminder_holder.setOnClickListener {
settings_use_default_reminder.toggle()
config.useDefaultReminder = settings_use_default_reminder.isChecked
toggleDefaultRemindersVisibility(!settings_use_default_reminder.isChecked)
}
}
private fun setupDefaultReminder1() {
settings_default_reminder_1.text = getFormattedMinutes(config.defaultReminder1)
settings_default_reminder_1_holder.setOnClickListener {
showPickSecondsDialogHelper(config.defaultReminder1) {
config.defaultReminder1 = if (it <= 0) it else it / 60
settings_default_reminder_1.text = getFormattedMinutes(config.defaultReminder1)
}
}
}
private fun setupDefaultReminder2() {
settings_default_reminder_2.text = getFormattedMinutes(config.defaultReminder2)
settings_default_reminder_2_holder.setOnClickListener {
showPickSecondsDialogHelper(config.defaultReminder2) {
config.defaultReminder2 = if (it <= 0) it else it / 60
settings_default_reminder_2.text = getFormattedMinutes(config.defaultReminder2)
}
}
}
private fun setupDefaultReminder3() {
settings_default_reminder_3.text = getFormattedMinutes(config.defaultReminder3)
settings_default_reminder_3_holder.setOnClickListener {
showPickSecondsDialogHelper(config.defaultReminder3) {
config.defaultReminder3 = if (it <= 0) it else it / 60
settings_default_reminder_3.text = getFormattedMinutes(config.defaultReminder3)
}
}
}
private fun toggleDefaultRemindersVisibility(show: Boolean) {
arrayOf(settings_default_reminder_1_holder, settings_default_reminder_2_holder, settings_default_reminder_3_holder).forEach {
it.beVisibleIf(show)
}
}
private fun getHoursString(hours: Int) = String.format("%02d:00", hours)
private fun setupDisplayPastEvents() {

View File

@@ -142,4 +142,20 @@ class Config(context: Context) : BaseConfig(context) {
private fun getSmallFontSize() = getMediumFontSize() - 3f
private fun getMediumFontSize() = context.resources.getDimension(R.dimen.day_text_size) / context.resources.displayMetrics.density
private fun getLargeFontSize() = getMediumFontSize() + 3f
var useDefaultReminder: Boolean
get() = prefs.getBoolean(USE_DEFAULT_REMINDER, true)
set(useDefaultReminder) = prefs.edit().putBoolean(USE_DEFAULT_REMINDER, useDefaultReminder).apply()
var defaultReminder1: Int
get() = prefs.getInt(DEFAULT_REMINDER_1, 10)
set(defaultReminder1) = prefs.edit().putInt(DEFAULT_REMINDER_1, defaultReminder1).apply()
var defaultReminder2: Int
get() = prefs.getInt(DEFAULT_REMINDER_2, REMINDER_OFF)
set(defaultReminder2) = prefs.edit().putInt(DEFAULT_REMINDER_2, defaultReminder2).apply()
var defaultReminder3: Int
get() = prefs.getInt(DEFAULT_REMINDER_3, REMINDER_OFF)
set(defaultReminder3) = prefs.edit().putInt(DEFAULT_REMINDER_3, defaultReminder3).apply()
}

View File

@@ -58,6 +58,10 @@ const val DIM_PAST_EVENTS = "dim_past_events"
const val LAST_SOUND_URI = "last_sound_uri"
const val LAST_REMINDER_CHANNEL_ID = "last_reminder_channel_ID"
const val REMINDER_AUDIO_STREAM = "reminder_audio_stream"
const val USE_DEFAULT_REMINDER = "use_default_reminder"
const val DEFAULT_REMINDER_1 = "default_reminder_1"
const val DEFAULT_REMINDER_2 = "default_reminder_2"
const val DEFAULT_REMINDER_3 = "default_reminder_3"
// repeat_rule for monthly and yearly repetition
const val REPEAT_SAME_DAY = 1 // i.e. 25th every month, or 3rd june (if yearly repetition)

View File

@@ -360,6 +360,134 @@
</RelativeLayout>
<RelativeLayout
android:id="@+id/settings_use_default_reminder_holder"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/medium_margin"
android:background="?attr/selectableItemBackground"
android:paddingBottom="@dimen/activity_margin"
android:paddingLeft="@dimen/normal_margin"
android:paddingRight="@dimen/normal_margin"
android:paddingTop="@dimen/activity_margin">
<com.simplemobiletools.commons.views.MySwitchCompat
android:id="@+id/settings_use_default_reminder"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@null"
android:clickable="false"
android:paddingLeft="@dimen/medium_margin"
android:paddingStart="@dimen/medium_margin"
android:text="@string/use_default_reminder"/>
</RelativeLayout>
<RelativeLayout
android:id="@+id/settings_default_reminder_1_holder"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/medium_margin"
android:background="?attr/selectableItemBackground"
android:paddingBottom="@dimen/bigger_margin"
android:paddingLeft="@dimen/normal_margin"
android:paddingRight="@dimen/normal_margin"
android:paddingTop="@dimen/bigger_margin">
<com.simplemobiletools.commons.views.MyTextView
android:id="@+id/settings_default_reminder_1_label"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toLeftOf="@+id/settings_default_reminder_1"
android:layout_toStartOf="@+id/settings_default_reminder_1"
android:paddingLeft="@dimen/medium_margin"
android:paddingRight="@dimen/medium_margin"
android:text="@string/default_reminder_1"/>
<com.simplemobiletools.commons.views.MyTextView
android:id="@+id/settings_default_reminder_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_marginEnd="@dimen/small_margin"
android:layout_marginRight="@dimen/small_margin"
android:background="@null"
android:clickable="false"/>
</RelativeLayout>
<RelativeLayout
android:id="@+id/settings_default_reminder_2_holder"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/medium_margin"
android:background="?attr/selectableItemBackground"
android:paddingBottom="@dimen/bigger_margin"
android:paddingLeft="@dimen/normal_margin"
android:paddingRight="@dimen/normal_margin"
android:paddingTop="@dimen/bigger_margin">
<com.simplemobiletools.commons.views.MyTextView
android:id="@+id/settings_default_reminder_2_label"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toLeftOf="@+id/settings_default_reminder_2"
android:layout_toStartOf="@+id/settings_default_reminder_2"
android:paddingLeft="@dimen/medium_margin"
android:paddingRight="@dimen/medium_margin"
android:text="@string/default_reminder_2"/>
<com.simplemobiletools.commons.views.MyTextView
android:id="@+id/settings_default_reminder_2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_marginEnd="@dimen/small_margin"
android:layout_marginRight="@dimen/small_margin"
android:background="@null"
android:clickable="false"/>
</RelativeLayout>
<RelativeLayout
android:id="@+id/settings_default_reminder_3_holder"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/medium_margin"
android:background="?attr/selectableItemBackground"
android:paddingBottom="@dimen/bigger_margin"
android:paddingLeft="@dimen/normal_margin"
android:paddingRight="@dimen/normal_margin"
android:paddingTop="@dimen/bigger_margin">
<com.simplemobiletools.commons.views.MyTextView
android:id="@+id/settings_default_reminder_3_label"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toLeftOf="@+id/settings_default_reminder_3"
android:layout_toStartOf="@+id/settings_default_reminder_3"
android:paddingLeft="@dimen/medium_margin"
android:paddingRight="@dimen/medium_margin"
android:text="@string/default_reminder_3"/>
<com.simplemobiletools.commons.views.MyTextView
android:id="@+id/settings_default_reminder_3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_marginEnd="@dimen/small_margin"
android:layout_marginRight="@dimen/small_margin"
android:background="@null"
android:clickable="false"/>
</RelativeLayout>
<View
android:id="@+id/caldav_divider"
android:layout_width="match_parent"

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Zəng</string>
<string name="notification_stream">Bildiriş</string>
<string name="ring_stream">Zəng səsi</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Alarm</string>
<string name="notification_stream">Notification</string>
<string name="ring_stream">Ring</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Budík</string>
<string name="notification_stream">Notifikace</string>
<string name="ring_stream">Zvonek</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Alarm</string>
<string name="notification_stream">Notifikation</string>
<string name="ring_stream">Ring</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Wecker</string>
<string name="notification_stream">Benachrichtigung</string>
<string name="ring_stream">Klingelton</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Αφύπνιση</string>
<string name="notification_stream">Ειδοποίηση</string>
<string name="ring_stream">Κουδούνισμα</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Alarm</string>
<string name="notification_stream">Notification</string>
<string name="ring_stream">Ring</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Alarme</string>
<string name="notification_stream">Notification</string>
<string name="ring_stream">Ring</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Alarm</string>
<string name="notification_stream">Notification</string>
<string name="ring_stream">Ring</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -165,7 +165,7 @@
<string name="alarm_stream">Alarm</string>
<string name="notification_stream">Notification</string>
<string name="ring_stream">Ring</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Alarm</string>
<string name="notification_stream">Obavijest</string>
<string name="ring_stream">Ring</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Alarm</string>
<string name="notification_stream">Notification</string>
<string name="ring_stream">Ring</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Alarm</string>
<string name="notification_stream">Notification</string>
<string name="ring_stream">Ring</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -165,7 +165,7 @@
<string name="alarm_stream">Alarm</string>
<string name="notification_stream">Notification</string>
<string name="ring_stream">Ring</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Alarm</string>
<string name="notification_stream">Notification</string>
<string name="ring_stream">Ring</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Alarm</string>
<string name="notification_stream">Notification</string>
<string name="ring_stream">Ring</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Alarm</string>
<string name="notification_stream">Notification</string>
<string name="ring_stream">Ring</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Alarm</string>
<string name="notification_stream">Varsel</string>
<string name="ring_stream">Ringetone</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Alarm</string>
<string name="notification_stream">Notificatie</string>
<string name="ring_stream">Beltoon</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Alarm</string>
<string name="notification_stream">Notification</string>
<string name="ring_stream">Ring</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Alarm</string>
<string name="notification_stream">Powiadomienie</string>
<string name="ring_stream">Dzwonek</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Alarme</string>
<string name="notification_stream">Notificação</string>
<string name="ring_stream">Toque</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Alarme</string>
<string name="notification_stream">Notificação</string>
<string name="ring_stream">Toque</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Будильник</string>
<string name="notification_stream">Уведомление</string>
<string name="ring_stream">Звонок</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Výstražný</string>
<string name="notification_stream">Pripomienkový</string>
<string name="ring_stream">Zvoniaci</string>
<string name="default_event_reminder">Použiť pripomienky poslednej udalosti ako predvolené pre novú udalosť</string>
<string name="use_default_reminder">Použiť pripomienky poslednej udalosti ako predvolené pre novú udalosť</string>
<string name="default_reminder_1">Predvolená pripomienka 1</string>
<string name="default_reminder_2">Predvolená pripomienka 2</string>
<string name="default_reminder_3">Predvolená pripomienka 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Alarm</string>
<string name="notification_stream">Avisering</string>
<string name="ring_stream">Ring</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Alarm</string>
<string name="notification_stream">Bildirim</string>
<string name="ring_stream">Zil sesi</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">鬧鐘</string>
<string name="notification_stream">通知</string>
<string name="ring_stream">鈴聲</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>

View File

@@ -164,7 +164,7 @@
<string name="alarm_stream">Alarm</string>
<string name="notification_stream">Notification</string>
<string name="ring_stream">Ring</string>
<string name="default_event_reminder">Use the last events\' reminders as the default for new event</string>
<string name="use_default_reminder">Use the last events\' reminders as the default for new event</string>
<string name="default_reminder_1">Default reminder 1</string>
<string name="default_reminder_2">Default reminder 2</string>
<string name="default_reminder_3">Default reminder 3</string>