Moved pass prefs to preferences screen

This commit is contained in:
Arty Bishop committed 2020-10-10 16:54:40 +01:00
1 parent 46e92424d4
commit 6631f1e745
6 files changed
+56 -25

No files matched your search

@@ -35,10 +35,8 @@ class PrefsFragment : PreferenceFragmentCompat(),
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
setPreferencesFromResource(R.xml.preference, rootKey)
val provider = EditTextPreference.SimpleSummaryProvider.getInstance()
findPreference<EditTextPreference>(PrefsManager.keyLatitude)?.apply {
summaryProvider = provider
setOnBindEditTextListener {
it.inputType = InputType.TYPE_CLASS_NUMBER or
InputType.TYPE_NUMBER_FLAG_DECIMAL or
@@ -55,7 +53,6 @@ class PrefsFragment : PreferenceFragmentCompat(),
}
findPreference<EditTextPreference>(PrefsManager.keyLongitude)?.apply {
summaryProvider = provider
setOnBindEditTextListener {
it.inputType = InputType.TYPE_CLASS_NUMBER or
InputType.TYPE_NUMBER_FLAG_DECIMAL or
@@ -72,7 +69,6 @@ class PrefsFragment : PreferenceFragmentCompat(),
}
findPreference<EditTextPreference>(PrefsManager.keyAltitude)?.apply {
summaryProvider = provider
setOnBindEditTextListener {
it.inputType = InputType.TYPE_CLASS_NUMBER or
InputType.TYPE_NUMBER_FLAG_DECIMAL or
@@ -24,7 +24,6 @@ import android.location.LocationManager
import androidx.core.content.edit
import com.github.amsacode.predict4java.GroundStationPosition
import com.rtbishop.look4sat.data.PassPrefs
import com.rtbishop.look4sat.utility.Utilities.getDouble
import com.rtbishop.look4sat.utility.Utilities.putDouble
import com.rtbishop.look4sat.utility.Utilities.round
import javax.inject.Inject
@@ -34,6 +33,8 @@ class PrefsManager @Inject constructor(
private val locationManager: LocationManager
) {
companion object {
const val hoursAhead = "hoursAhead"
const val minimalElevation = "minimalElevation"
const val keyHoursAhead = "hoursAhead"
const val keyMinElevation = "minEl"
const val keyLatitude = "latitude"
@@ -41,15 +42,13 @@ class PrefsManager @Inject constructor(
const val keyAltitude = "altitude"
const val keyCompass = "compass"
const val keyTimeUtc = "timeUTC"
const val defaultHoursAhead = 8
const val defaultMinEl = 16.0
const val defaultGSP = "0.0"
const val keyIsFirstLaunch = "keyIsFirstLaunch"
}
fun getPassPrefs(): PassPrefs {
val hoursAhead = preferences.getInt(keyHoursAhead, defaultHoursAhead)
val minEl = preferences.getDouble(keyMinElevation, defaultMinEl)
val hoursAhead = preferences.getInt(hoursAhead, 8)
val minEl = preferences.getInt(minimalElevation, 16).toDouble()
return PassPrefs(hoursAhead, minEl)
}
+2 -2
View File
@@ -48,7 +48,7 @@
android:id="@+id/pref_et_hoursAhead"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:hint="@string/pref_hours_ahead_hint"
android:hint="@string/pref_hours_ahead"
android:importantForAutofill="no"
android:inputType="number"
app:layout_constraintEnd_toEndOf="@+id/pref_tv_hoursAhead"
@@ -69,7 +69,7 @@
android:id="@+id/pref_et_minEl"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:hint="@string/pref_min_el_hint"
android:hint="@string/pref_minimal_elevation"
android:importantForAutofill="no"
android:inputType="number|numberDecimal"
app:layout_constraintEnd_toEndOf="@+id/pref_tv_minEl"
+5 -4
View File
@@ -30,10 +30,11 @@
<string name="dialog_tle_sources">Управление источниками TLE</string>
<string name="dialog_entries_hint">ID / Имя</string>
<string name="pref_hours_ahead_hint">Количество часов</string>
<string name="pref_passes_preferences">Настройки пролетов</string>
<string name="pref_hours_ahead">Количество часов</string>
<string name="pref_hours_ahead_summary">Показать пролеты за след. Х часов</string>
<string name="pref_hours_ahead_input_error">Введите значение между 1ч и 168ч</string>
<string name="pref_min_el_hint">Минимальная элевация</string>
<string name="pref_minimal_elevation">Минимальная элевация</string>
<string name="pref_min_el_summary">Показать пролеты с элевацией более</string>
<string name="pref_min_el_input_error">Введите значение между 0° и 90°</string>
@@ -45,8 +46,8 @@
<string name="pref_alt_title">Высота, м</string>
<string name="pref_alt_input_error">Введите значение между -413м и 8850м</string>
<string name="pref_other_title">Другие настройки</string>
<string name="pref_compass_title">Использовать компас при отображении полярных координат</string>
<string name="pref_time_utc_title">Показывать время пролёта по UTC</string>
<string name="pref_compass_title">Использовать компас</string>
<string name="pref_time_utc_title">Показывать время пролета по UTC</string>
<string name="no_mode">Модуляция: нет</string>
<string name="no_uplink">Восход: нет</string>
+3 -2
View File
@@ -31,10 +31,11 @@
<string name="dialog_tle_sources">Manage TLE sources</string>
<string name="dialog_entries_hint">ID / Name</string>
<string name="pref_hours_ahead_hint">Hours ahead</string>
<string name="pref_passes_preferences">Passes preferences</string>
<string name="pref_hours_ahead">Hours ahead</string>
<string name="pref_hours_ahead_summary">Show passes that occur within X hours</string>
<string name="pref_hours_ahead_input_error">Set the value between 1h and 168h</string>
<string name="pref_min_el_hint">Minimum elevation</string>
<string name="pref_minimal_elevation">Minimal elevation</string>
<string name="pref_min_el_summary">Show passes with max elevation above</string>
<string name="pref_min_el_input_error">Set the value between 0° and 90°</string>
+42 -8
View File
@@ -17,29 +17,63 @@
~ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-->
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory android:title="@string/pref_gsp_title">
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<PreferenceCategory
android:title="@string/pref_gsp_title"
app:iconSpaceReserved="false">
<EditTextPreference
android:defaultValue="0.0"
android:key="latitude"
android:title="@string/pref_lat_title" />
android:title="@string/pref_lat_title"
app:iconSpaceReserved="false"
app:useSimpleSummaryProvider="true" />
<EditTextPreference
android:defaultValue="0.0"
android:key="longitude"
android:title="@string/pref_lon_title" />
android:title="@string/pref_lon_title"
app:iconSpaceReserved="false"
app:useSimpleSummaryProvider="true" />
<EditTextPreference
android:defaultValue="0.0"
android:key="altitude"
android:title="@string/pref_alt_title" />
android:title="@string/pref_alt_title"
app:iconSpaceReserved="false"
app:useSimpleSummaryProvider="true" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/pref_other_title">
<PreferenceCategory
android:title="@string/pref_passes_preferences"
app:iconSpaceReserved="false">
<SeekBarPreference
android:key="hoursAhead"
android:max="72"
android:title="@string/pref_hours_ahead"
app:defaultValue="8"
app:iconSpaceReserved="false"
app:min="1"
app:showSeekBarValue="true" />
<SeekBarPreference
android:key="minimalElevation"
android:max="72"
android:title="@string/pref_minimal_elevation"
app:adjustable="false"
app:defaultValue="16"
app:iconSpaceReserved="false"
app:min="0"
app:showSeekBarValue="true" />
</PreferenceCategory>
<PreferenceCategory
android:title="@string/pref_other_title"
app:iconSpaceReserved="false">
<SwitchPreference
android:defaultValue="false"
android:key="timeUTC"
android:title="@string/pref_time_utc_title" />
android:title="@string/pref_time_utc_title"
app:iconSpaceReserved="false" />
<SwitchPreference
android:defaultValue="true"
android:key="compass"
android:title="@string/pref_compass_title" />
android:title="@string/pref_compass_title"
app:iconSpaceReserved="false" />
</PreferenceCategory>
</PreferenceScreen>