rename CustomEventReminderDialog to CustomIntervalPickerDialog

This commit is contained in:
tibbi
2018-03-06 23:03:02 +01:00
parent 6c438b5cc1
commit 0c28d4f5ed
8 changed files with 54 additions and 119 deletions

View File

@@ -9,7 +9,7 @@ import android.os.Parcelable
import android.text.TextUtils import android.text.TextUtils
import com.simplemobiletools.calendar.BuildConfig import com.simplemobiletools.calendar.BuildConfig
import com.simplemobiletools.calendar.R import com.simplemobiletools.calendar.R
import com.simplemobiletools.calendar.dialogs.CustomEventReminderDialog import com.simplemobiletools.calendar.dialogs.CustomIntervalPickerDialog
import com.simplemobiletools.calendar.dialogs.SelectCalendarsDialog import com.simplemobiletools.calendar.dialogs.SelectCalendarsDialog
import com.simplemobiletools.calendar.extensions.* import com.simplemobiletools.calendar.extensions.*
import com.simplemobiletools.calendar.helpers.CalDAVHandler import com.simplemobiletools.calendar.helpers.CalDAVHandler
@@ -336,7 +336,7 @@ class SettingsActivity : SimpleActivity() {
var displayPastEvents = config.displayPastEvents var displayPastEvents = config.displayPastEvents
updatePastEventsText(displayPastEvents) updatePastEventsText(displayPastEvents)
settings_display_past_events_holder.setOnClickListener { settings_display_past_events_holder.setOnClickListener {
CustomEventReminderDialog(this, displayPastEvents) { CustomIntervalPickerDialog(this, displayPastEvents) {
displayPastEvents = it displayPastEvents = it
config.displayPastEvents = it config.displayPastEvents = it
updatePastEventsText(it) updatePastEventsText(it)

View File

@@ -3,7 +3,6 @@ package com.simplemobiletools.calendar.dialogs
import android.app.Activity import android.app.Activity
import android.support.v7.app.AlertDialog import android.support.v7.app.AlertDialog
import android.view.ViewGroup import android.view.ViewGroup
import android.view.WindowManager
import com.simplemobiletools.calendar.R import com.simplemobiletools.calendar.R
import com.simplemobiletools.calendar.helpers.DAY import com.simplemobiletools.calendar.helpers.DAY
import com.simplemobiletools.calendar.helpers.MONTH import com.simplemobiletools.calendar.helpers.MONTH
@@ -11,6 +10,7 @@ import com.simplemobiletools.calendar.helpers.WEEK
import com.simplemobiletools.calendar.helpers.YEAR import com.simplemobiletools.calendar.helpers.YEAR
import com.simplemobiletools.commons.extensions.hideKeyboard import com.simplemobiletools.commons.extensions.hideKeyboard
import com.simplemobiletools.commons.extensions.setupDialogStuff import com.simplemobiletools.commons.extensions.setupDialogStuff
import com.simplemobiletools.commons.extensions.showKeyboard
import com.simplemobiletools.commons.extensions.value import com.simplemobiletools.commons.extensions.value
import kotlinx.android.synthetic.main.dialog_custom_event_repeat_interval.view.* import kotlinx.android.synthetic.main.dialog_custom_event_repeat_interval.view.*
@@ -25,8 +25,9 @@ class CustomEventRepeatIntervalDialog(val activity: Activity, val callback: (sec
.setPositiveButton(R.string.ok, { dialogInterface, i -> confirmRepeatInterval() }) .setPositiveButton(R.string.ok, { dialogInterface, i -> confirmRepeatInterval() })
.setNegativeButton(R.string.cancel, null) .setNegativeButton(R.string.cancel, null)
.create().apply { .create().apply {
window!!.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE) activity.setupDialogStuff(view, this) {
activity.setupDialogStuff(view, this) showKeyboard(view.dialog_custom_repeat_interval_value)
}
} }
} }

View File

@@ -3,21 +3,22 @@ package com.simplemobiletools.calendar.dialogs
import android.app.Activity import android.app.Activity
import android.support.v7.app.AlertDialog import android.support.v7.app.AlertDialog
import android.view.ViewGroup import android.view.ViewGroup
import android.view.WindowManager
import com.simplemobiletools.calendar.R import com.simplemobiletools.calendar.R
import com.simplemobiletools.calendar.helpers.DAY_MINUTES
import com.simplemobiletools.commons.extensions.hideKeyboard import com.simplemobiletools.commons.extensions.hideKeyboard
import com.simplemobiletools.commons.extensions.setupDialogStuff import com.simplemobiletools.commons.extensions.setupDialogStuff
import com.simplemobiletools.commons.extensions.showKeyboard
import com.simplemobiletools.commons.extensions.value import com.simplemobiletools.commons.extensions.value
import kotlinx.android.synthetic.main.dialog_custom_event_reminder.view.* import kotlinx.android.synthetic.main.dialog_custom_event_reminder.view.*
class CustomEventReminderDialog(val activity: Activity, val selectedMinutes: Int = 0, val callback: (minutes: Int) -> Unit) { class CustomIntervalPickerDialog(val activity: Activity, val selectedMinutes: Int = 0, val callback: (minutes: Int) -> Unit) {
var dialog: AlertDialog var dialog: AlertDialog
var view = (activity.layoutInflater.inflate(R.layout.dialog_custom_event_reminder, null) as ViewGroup).apply { var view = (activity.layoutInflater.inflate(R.layout.dialog_custom_event_reminder, null) as ViewGroup).apply {
when { when {
selectedMinutes == 0 -> dialog_radio_view.check(R.id.dialog_radio_minutes) selectedMinutes == 0 -> dialog_radio_view.check(R.id.dialog_radio_minutes)
selectedMinutes % 1440 == 0 -> { selectedMinutes % DAY_MINUTES == 0 -> {
dialog_radio_view.check(R.id.dialog_radio_days) dialog_radio_view.check(R.id.dialog_radio_days)
dialog_custom_reminder_value.setText((selectedMinutes / 1440).toString()) dialog_custom_reminder_value.setText((selectedMinutes / DAY_MINUTES).toString())
} }
selectedMinutes % 60 == 0 -> { selectedMinutes % 60 == 0 -> {
dialog_radio_view.check(R.id.dialog_radio_hours) dialog_radio_view.check(R.id.dialog_radio_hours)
@@ -35,8 +36,9 @@ class CustomEventReminderDialog(val activity: Activity, val selectedMinutes: Int
.setPositiveButton(R.string.ok, { dialogInterface, i -> confirmReminder() }) .setPositiveButton(R.string.ok, { dialogInterface, i -> confirmReminder() })
.setNegativeButton(R.string.cancel, null) .setNegativeButton(R.string.cancel, null)
.create().apply { .create().apply {
window!!.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE) activity.setupDialogStuff(view, this) {
activity.setupDialogStuff(view, this) showKeyboard(view.dialog_custom_reminder_value)
}
} }
} }

View File

@@ -2,9 +2,9 @@ package com.simplemobiletools.calendar.dialogs
import android.support.v7.app.AlertDialog import android.support.v7.app.AlertDialog
import android.view.ViewGroup import android.view.ViewGroup
import android.view.WindowManager
import com.simplemobiletools.calendar.R import com.simplemobiletools.calendar.R
import com.simplemobiletools.calendar.activities.SimpleActivity import com.simplemobiletools.calendar.activities.SimpleActivity
import com.simplemobiletools.commons.extensions.hideKeyboard
import com.simplemobiletools.commons.extensions.setupDialogStuff import com.simplemobiletools.commons.extensions.setupDialogStuff
import kotlinx.android.synthetic.main.dialog_edit_repeating_event.view.* import kotlinx.android.synthetic.main.dialog_edit_repeating_event.view.*
@@ -20,7 +20,7 @@ class EditRepeatingEventDialog(val activity: SimpleActivity, val callback: (allO
dialog = AlertDialog.Builder(activity) dialog = AlertDialog.Builder(activity)
.create().apply { .create().apply {
activity.setupDialogStuff(view, this) { activity.setupDialogStuff(view, this) {
window!!.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN) hideKeyboard()
} }
} }
} }

View File

@@ -1,34 +0,0 @@
package com.simplemobiletools.calendar.dialogs
import android.support.v7.app.AlertDialog
import android.view.ViewGroup
import android.view.WindowManager
import com.simplemobiletools.calendar.R
import com.simplemobiletools.calendar.activities.SimpleActivity
import com.simplemobiletools.commons.extensions.setupDialogStuff
import com.simplemobiletools.commons.extensions.value
import kotlinx.android.synthetic.main.dialog_snooze_picker.view.*
class SnoozePickerDialog(val activity: SimpleActivity, val minutes: Int, val callback: (newMinutes: Int) -> Unit) {
init {
val view = (activity.layoutInflater.inflate(R.layout.dialog_snooze_picker, null) as ViewGroup).apply {
snooze_picker_label.text = snooze_picker_label.text.toString().capitalize()
snooze_picker.setText(minutes.toString())
}
AlertDialog.Builder(activity)
.setPositiveButton(R.string.ok, null)
.setNegativeButton(R.string.cancel, null)
.create().apply {
activity.setupDialogStuff(view, this) {
window!!.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE)
getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener {
val value = view.snooze_picker.value
val minutes = Integer.valueOf(if (value.isEmpty() || value == "0") "1" else value)
callback(minutes)
dismiss()
}
}
}
}
}

View File

@@ -2,17 +2,13 @@ package com.simplemobiletools.calendar.dialogs
import android.app.Activity import android.app.Activity
import android.support.v7.app.AlertDialog import android.support.v7.app.AlertDialog
import android.view.WindowManager
import android.widget.ImageView import android.widget.ImageView
import com.simplemobiletools.calendar.R import com.simplemobiletools.calendar.R
import com.simplemobiletools.calendar.extensions.config import com.simplemobiletools.calendar.extensions.config
import com.simplemobiletools.calendar.extensions.dbHelper import com.simplemobiletools.calendar.extensions.dbHelper
import com.simplemobiletools.calendar.models.EventType import com.simplemobiletools.calendar.models.EventType
import com.simplemobiletools.commons.dialogs.ColorPickerDialog import com.simplemobiletools.commons.dialogs.ColorPickerDialog
import com.simplemobiletools.commons.extensions.setBackgroundWithStroke import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.commons.extensions.setupDialogStuff
import com.simplemobiletools.commons.extensions.toast
import com.simplemobiletools.commons.extensions.value
import kotlinx.android.synthetic.main.dialog_event_type.view.* import kotlinx.android.synthetic.main.dialog_event_type.view.*
class UpdateEventTypeDialog(val activity: Activity, var eventType: EventType? = null, val callback: (eventType: EventType) -> Unit) { class UpdateEventTypeDialog(val activity: Activity, var eventType: EventType? = null, val callback: (eventType: EventType) -> Unit) {
@@ -44,8 +40,8 @@ class UpdateEventTypeDialog(val activity: Activity, var eventType: EventType? =
.setPositiveButton(R.string.ok, null) .setPositiveButton(R.string.ok, null)
.setNegativeButton(R.string.cancel, null) .setNegativeButton(R.string.cancel, null)
.create().apply { .create().apply {
window!!.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE)
activity.setupDialogStuff(view, this, if (isNewEvent) R.string.add_new_type else R.string.edit_type) { activity.setupDialogStuff(view, this, if (isNewEvent) R.string.add_new_type else R.string.edit_type) {
showKeyboard(view.type_title)
getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener { getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener {
val title = view.type_title.value val title = view.type_title.value
val eventIdWithTitle = activity.dbHelper.getEventTypeIdWithTitle(title) val eventIdWithTitle = activity.dbHelper.getEventTypeIdWithTitle(title)

View File

@@ -3,8 +3,8 @@ package com.simplemobiletools.calendar.extensions
import android.app.Activity import android.app.Activity
import com.simplemobiletools.calendar.BuildConfig import com.simplemobiletools.calendar.BuildConfig
import com.simplemobiletools.calendar.R import com.simplemobiletools.calendar.R
import com.simplemobiletools.calendar.dialogs.CustomEventReminderDialog
import com.simplemobiletools.calendar.dialogs.CustomEventRepeatIntervalDialog import com.simplemobiletools.calendar.dialogs.CustomEventRepeatIntervalDialog
import com.simplemobiletools.calendar.dialogs.CustomIntervalPickerDialog
import com.simplemobiletools.calendar.helpers.* import com.simplemobiletools.calendar.helpers.*
import com.simplemobiletools.commons.activities.BaseSimpleActivity import com.simplemobiletools.commons.activities.BaseSimpleActivity
import com.simplemobiletools.commons.dialogs.RadioGroupDialog import com.simplemobiletools.commons.dialogs.RadioGroupDialog
@@ -75,7 +75,7 @@ fun Activity.showEventReminderDialog(curMinutes: Int, isSnoozePicker: Boolean =
RadioGroupDialog(this, items, selectedIndex, showOKButton = isSnoozePicker, cancelCallback = cancelCallback) { RadioGroupDialog(this, items, selectedIndex, showOKButton = isSnoozePicker, cancelCallback = cancelCallback) {
if (it == -2) { if (it == -2) {
CustomEventReminderDialog(this) { CustomIntervalPickerDialog(this) {
callback(it) callback(it)
} }
} else { } else {

View File

@@ -1,30 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/snooze_picker_holder"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingLeft="@dimen/big_margin"
android:paddingRight="@dimen/big_margin"
android:paddingTop="@dimen/big_margin">
<com.simplemobiletools.commons.views.MyTextView
android:id="@+id/snooze_picker_label"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textCapSentences"
android:text="@string/minutes_raw"
android:textSize="@dimen/smaller_text_size"/>
<com.simplemobiletools.commons.views.MyEditText
android:id="@+id/snooze_picker"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="6"
android:inputType="number"
android:maxLength="5"
android:paddingTop="@dimen/normal_margin"
android:textSize="@dimen/normal_text_size"/>
</LinearLayout>