From ba7f3f432ebba2f2c0af18099548f088156d45db Mon Sep 17 00:00:00 2001 From: Arty Bishop Date: Fri, 3 Jan 2020 14:09:40 +0000 Subject: [PATCH] Added PassPrefs dialog entered values sanity check --- .../com/rtbishop/look4sat/ui/SkyFragment.kt | 18 ++++++++++++++++-- app/src/main/res/layout/sat_pass_pref.xml | 2 +- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/rtbishop/look4sat/ui/SkyFragment.kt b/app/src/main/java/com/rtbishop/look4sat/ui/SkyFragment.kt index 8cb8f35f..c642806f 100644 --- a/app/src/main/java/com/rtbishop/look4sat/ui/SkyFragment.kt +++ b/app/src/main/java/com/rtbishop/look4sat/ui/SkyFragment.kt @@ -132,8 +132,22 @@ class SkyFragment : Fragment() { .setPositiveButton(getString(R.string.btn_ok)) { _, _ -> val hoursAhead = etHoursAhead.text.toString().toInt() val minEl = etMinEl.text.toString().toDouble() - viewModel.setPassPrefs(hoursAhead, minEl) - calculatePasses() + if (hoursAhead < 1 || hoursAhead > 168) { + Toast.makeText( + mainActivity, + "Value should be within 1-168 hours", + Toast.LENGTH_SHORT + ).show() + } else if (minEl < 0 || minEl > 90) { + Toast.makeText( + mainActivity, + "Value should be within 0-90 deg", + Toast.LENGTH_SHORT + ).show() + } else { + viewModel.setPassPrefs(hoursAhead, minEl) + calculatePasses() + } } .setNegativeButton(getString(R.string.btn_cancel)) { dialog, _ -> dialog.cancel() diff --git a/app/src/main/res/layout/sat_pass_pref.xml b/app/src/main/res/layout/sat_pass_pref.xml index 2c5322f9..aecfe8aa 100644 --- a/app/src/main/res/layout/sat_pass_pref.xml +++ b/app/src/main/res/layout/sat_pass_pref.xml @@ -42,7 +42,7 @@ android:layout_height="wrap_content" android:hint="@string/pref_min_el_hint" android:importantForAutofill="no" - android:inputType="number" + android:inputType="number|numberDecimal" app:layout_constraintEnd_toEndOf="@+id/pref_min_el_tv" app:layout_constraintStart_toStartOf="@+id/pref_min_el_tv" app:layout_constraintTop_toBottomOf="@+id/pref_min_el_tv" />