mirror of
https://github.com/rt-bishop/Look4Sat.git
synced 2026-10-02 03:15:37 +00:00
Alterations to the pass filter dialog UI
This commit is contained in:
1 parent
dc680231ea
commit
6400d1d395
8 files changed
+159
-120
No files matched your search
+12
-11
@@ -8,45 +8,46 @@ import android.view.WindowManager
|
||||
import androidx.appcompat.app.AppCompatDialogFragment
|
||||
import com.rtbishop.look4sat.R
|
||||
import com.rtbishop.look4sat.data.ISettingsHandler
|
||||
import com.rtbishop.look4sat.databinding.DialogPassesBinding
|
||||
import com.rtbishop.look4sat.databinding.DialogFilterBinding
|
||||
import com.rtbishop.look4sat.presentation.setNavResult
|
||||
import dagger.hilt.android.AndroidEntryPoint
|
||||
import javax.inject.Inject
|
||||
|
||||
@AndroidEntryPoint
|
||||
class PassesPrefsDialog : AppCompatDialogFragment() {
|
||||
class FilterDialog : AppCompatDialogFragment() {
|
||||
|
||||
@Inject
|
||||
lateinit var preferences: ISettingsHandler
|
||||
|
||||
override fun onCreateView(inflater: LayoutInflater, group: ViewGroup?, state: Bundle?): View? {
|
||||
return inflater.inflate(R.layout.dialog_passes, group, false)
|
||||
return inflater.inflate(R.layout.dialog_filter, group, false)
|
||||
}
|
||||
|
||||
override fun onViewCreated(view: View, state: Bundle?) {
|
||||
super.onViewCreated(view, state)
|
||||
DialogPassesBinding.bind(view).apply {
|
||||
DialogFilterBinding.bind(view).apply {
|
||||
dialog?.window?.setBackgroundDrawableResource(R.color.transparent)
|
||||
dialog?.window?.setLayout(
|
||||
WindowManager.LayoutParams.MATCH_PARENT,
|
||||
(resources.displayMetrics.widthPixels * 0.94).toInt(),
|
||||
WindowManager.LayoutParams.WRAP_CONTENT
|
||||
)
|
||||
hoursAheadEdit.setText(preferences.getHoursAhead().toString())
|
||||
minElevEdit.setText(preferences.getMinElevation().toString())
|
||||
passPrefBtnPos.setOnClickListener {
|
||||
filterHoursEdit.setText(preferences.getHoursAhead().toString())
|
||||
filterElevEdit.setText(preferences.getMinElevation().toString())
|
||||
filterPosBtn.setOnClickListener {
|
||||
val hoursAhead = try {
|
||||
hoursAheadEdit.text.toString().toInt()
|
||||
filterHoursEdit.text.toString().toInt()
|
||||
} catch (exception: Exception) {
|
||||
8
|
||||
}
|
||||
val minElevation = try {
|
||||
minElevEdit.text.toString().toDouble()
|
||||
filterElevEdit.text.toString().toDouble()
|
||||
} catch (exception: Exception) {
|
||||
16.0
|
||||
}
|
||||
setNavResult("prefs", Pair(hoursAhead, minElevation))
|
||||
dismiss()
|
||||
}
|
||||
passPrefBtnNeg.setOnClickListener { dismiss() }
|
||||
filterNegBtn.setOnClickListener { dismiss() }
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -67,7 +67,7 @@ class PassesFragment : Fragment(R.layout.fragment_passes), PassesAdapter.PassesC
|
||||
}
|
||||
passesRefreshBtn.setOnClickListener { refreshPasses() }
|
||||
passesMapBtn.setOnClickListener { navigateToMap() }
|
||||
passesFilterBtn.setOnClickListener { navigateToPassPrefs() }
|
||||
passesFilterBtn.setOnClickListener { navigateToFilter() }
|
||||
passesFab.setOnClickListener { navigateToEntries() }
|
||||
passesSettingsBtn.setOnClickListener { navigateToSettings() }
|
||||
}
|
||||
@@ -136,8 +136,8 @@ class PassesFragment : Fragment(R.layout.fragment_passes), PassesAdapter.PassesC
|
||||
findNavController().navigate(direction)
|
||||
}
|
||||
|
||||
private fun navigateToPassPrefs() {
|
||||
val direction = PassesFragmentDirections.actionPassesToPassPrefs()
|
||||
private fun navigateToFilter() {
|
||||
val direction = PassesFragmentDirections.actionPassesToFilter()
|
||||
findNavController().navigate(direction)
|
||||
}
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
<com.google.android.material.switchmaterial.SwitchMaterial
|
||||
android:id="@+id/other_switch_utc"
|
||||
style="@style/SettingsText"
|
||||
android:layout_width="0dp"
|
||||
@@ -28,22 +28,24 @@
|
||||
android:layout_marginEnd="4dp"
|
||||
android:minHeight="48dp"
|
||||
android:text="@string/other_switch_utc"
|
||||
app:trackTint="@color/themeDisabled"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="@+id/other_title"
|
||||
app:layout_constraintTop_toBottomOf="@+id/other_title" />
|
||||
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
<com.google.android.material.switchmaterial.SwitchMaterial
|
||||
android:id="@+id/other_switch_sweep"
|
||||
style="@style/SettingsText"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:minHeight="48dp"
|
||||
android:text="@string/other_switch_sweep"
|
||||
app:trackTint="@color/themeDisabled"
|
||||
app:layout_constraintEnd_toEndOf="@+id/other_switch_utc"
|
||||
app:layout_constraintStart_toStartOf="@+id/other_switch_utc"
|
||||
app:layout_constraintTop_toBottomOf="@+id/other_switch_utc" />
|
||||
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
<com.google.android.material.switchmaterial.SwitchMaterial
|
||||
android:id="@+id/other_switch_sensors"
|
||||
style="@style/SettingsText"
|
||||
android:layout_width="0dp"
|
||||
@@ -51,6 +53,7 @@
|
||||
android:layout_marginBottom="8dp"
|
||||
android:minHeight="48dp"
|
||||
android:text="@string/other_switch_sensors"
|
||||
app:trackTint="@color/themeDisabled"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="@+id/other_switch_utc"
|
||||
app:layout_constraintStart_toStartOf="@+id/other_switch_sweep"
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<androidx.appcompat.widget.SwitchCompat
|
||||
<com.google.android.material.switchmaterial.SwitchMaterial
|
||||
android:id="@+id/tracking_switch"
|
||||
style="@style/SettingsText"
|
||||
android:layout_width="0dp"
|
||||
@@ -26,6 +26,7 @@
|
||||
android:layout_marginEnd="4dp"
|
||||
android:minHeight="48dp"
|
||||
android:text="@string/tracking_switch"
|
||||
app:trackTint="@color/themeDisabled"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="@+id/tracking_title"
|
||||
app:layout_constraintTop_toBottomOf="@+id/tracking_title" />
|
||||
|
||||
@@ -0,0 +1,131 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
style="@style/SurfaceCard"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/filter_title"
|
||||
style="@style/DialogTitle"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="4dp"
|
||||
android:minHeight="48dp"
|
||||
android:text="@string/dialog_filter_passes"
|
||||
app:layout_constraintBottom_toTopOf="@+id/filter_hours_text"
|
||||
app:layout_constraintEnd_toEndOf="@+id/filter_pos_btn"
|
||||
app:layout_constraintHorizontal_bias="0.5"
|
||||
app:layout_constraintStart_toStartOf="@+id/filter_neg_btn"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/filter_hours_text"
|
||||
style="@style/DialogText"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="8dp"
|
||||
android:layout_marginEnd="8dp"
|
||||
android:text="@string/pref_hours_ahead_summary"
|
||||
app:layout_constraintBottom_toTopOf="@+id/filter_hours_layout"
|
||||
app:layout_constraintEnd_toEndOf="@+id/filter_title"
|
||||
app:layout_constraintHorizontal_bias="0.5"
|
||||
app:layout_constraintStart_toStartOf="@+id/filter_title"
|
||||
app:layout_constraintTop_toBottomOf="@+id/filter_title" />
|
||||
|
||||
<com.google.android.material.textfield.TextInputLayout
|
||||
android:id="@+id/filter_hours_layout"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="8dp"
|
||||
android:hint="@string/pref_hours_ahead_hint"
|
||||
android:importantForAutofill="no"
|
||||
android:inputType="number"
|
||||
android:minHeight="48dp"
|
||||
app:endIconMode="clear_text"
|
||||
app:layout_constraintBottom_toTopOf="@+id/filter_elev_text"
|
||||
app:layout_constraintEnd_toEndOf="@+id/filter_hours_text"
|
||||
app:layout_constraintHorizontal_bias="0.5"
|
||||
app:layout_constraintStart_toStartOf="@+id/filter_hours_text"
|
||||
app:layout_constraintTop_toBottomOf="@+id/filter_hours_text">
|
||||
|
||||
<com.google.android.material.textfield.TextInputEditText
|
||||
android:id="@+id/filter_hours_edit"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:inputType="textUri" />
|
||||
|
||||
</com.google.android.material.textfield.TextInputLayout>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/filter_elev_text"
|
||||
style="@style/DialogText"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="12dp"
|
||||
android:text="@string/pref_min_el_summary"
|
||||
app:layout_constraintBottom_toTopOf="@+id/filter_elev_layout"
|
||||
app:layout_constraintEnd_toEndOf="@+id/filter_hours_text"
|
||||
app:layout_constraintHorizontal_bias="0.5"
|
||||
app:layout_constraintStart_toStartOf="@+id/filter_hours_text"
|
||||
app:layout_constraintTop_toBottomOf="@+id/filter_hours_layout" />
|
||||
|
||||
<com.google.android.material.textfield.TextInputLayout
|
||||
android:id="@+id/filter_elev_layout"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="8dp"
|
||||
android:hint="@string/pref_min_el_hint"
|
||||
android:importantForAutofill="no"
|
||||
android:inputType="number|numberDecimal"
|
||||
android:minHeight="48dp"
|
||||
app:endIconMode="clear_text"
|
||||
app:layout_constraintBottom_toTopOf="@+id/filter_neg_btn"
|
||||
app:layout_constraintEnd_toEndOf="@+id/filter_hours_layout"
|
||||
app:layout_constraintHorizontal_bias="0.5"
|
||||
app:layout_constraintStart_toStartOf="@+id/filter_hours_layout"
|
||||
app:layout_constraintTop_toBottomOf="@+id/filter_elev_text">
|
||||
|
||||
<com.google.android.material.textfield.TextInputEditText
|
||||
android:id="@+id/filter_elev_edit"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:inputType="textUri" />
|
||||
|
||||
</com.google.android.material.textfield.TextInputLayout>
|
||||
|
||||
<Button
|
||||
android:id="@+id/filter_neg_btn"
|
||||
style="@style/NormalButton"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="8dp"
|
||||
android:layout_marginTop="12dp"
|
||||
android:layout_marginBottom="8dp"
|
||||
android:text="@string/btn_cancel"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@+id/filter_pos_btn"
|
||||
app:layout_constraintHorizontal_bias="0.5"
|
||||
app:layout_constraintHorizontal_chainStyle="spread_inside"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/filter_elev_layout" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/filter_pos_btn"
|
||||
style="@style/NormalButton"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginEnd="8dp"
|
||||
android:text="@string/btn_accept"
|
||||
app:layout_constraintBaseline_toBaselineOf="@+id/filter_neg_btn"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintHorizontal_bias="0.5"
|
||||
app:layout_constraintStart_toEndOf="@+id/filter_neg_btn" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</androidx.cardview.widget.CardView>
|
||||
@@ -44,11 +44,9 @@
|
||||
android:layout_marginBottom="8dp"
|
||||
android:text="@string/btn_cancel"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@+id/modes_btn_pos"
|
||||
app:layout_constraintHorizontal_bias="0.5"
|
||||
app:layout_constraintHorizontal_chainStyle="spread_inside"
|
||||
app:layout_constraintStart_toEndOf="@+id/modes_btn_pos"
|
||||
app:layout_constraintStart_toStartOf="parent" />
|
||||
|
||||
<Button
|
||||
|
||||
@@ -1,95 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@color/surfaceCard">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/pass_pref_title"
|
||||
style="@style/DialogTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="16dp"
|
||||
android:layout_marginTop="12dp"
|
||||
android:text="@string/dialog_filter_passes"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/hours_ahead_text"
|
||||
style="@style/DialogText"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="16dp"
|
||||
android:layout_marginTop="12dp"
|
||||
android:layout_marginEnd="16dp"
|
||||
android:text="@string/pref_hours_ahead_summary"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/pass_pref_title" />
|
||||
|
||||
<EditText
|
||||
android:id="@+id/hours_ahead_edit"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="@string/pref_hours_ahead_hint"
|
||||
android:importantForAutofill="no"
|
||||
android:inputType="number"
|
||||
android:minHeight="48dp"
|
||||
app:layout_constraintEnd_toEndOf="@+id/hours_ahead_text"
|
||||
app:layout_constraintStart_toStartOf="@+id/hours_ahead_text"
|
||||
app:layout_constraintTop_toBottomOf="@+id/hours_ahead_text" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/min_elev_text"
|
||||
style="@style/DialogText"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="8dp"
|
||||
android:text="@string/pref_min_el_summary"
|
||||
app:layout_constraintEnd_toEndOf="@+id/hours_ahead_edit"
|
||||
app:layout_constraintStart_toStartOf="@+id/hours_ahead_edit"
|
||||
app:layout_constraintTop_toBottomOf="@+id/hours_ahead_edit" />
|
||||
|
||||
<EditText
|
||||
android:id="@+id/min_elev_edit"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="@string/pref_min_el_hint"
|
||||
android:importantForAutofill="no"
|
||||
android:inputType="number|numberDecimal"
|
||||
android:minHeight="48dp"
|
||||
app:layout_constraintEnd_toEndOf="@+id/min_elev_text"
|
||||
app:layout_constraintStart_toStartOf="@+id/min_elev_text"
|
||||
app:layout_constraintTop_toBottomOf="@+id/min_elev_text" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/pass_pref_btn_neg"
|
||||
style="@style/DialogButton"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="16dp"
|
||||
android:layout_marginTop="8dp"
|
||||
android:layout_marginBottom="16dp"
|
||||
android:text="@string/btn_cancel"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@+id/pass_pref_btn_pos"
|
||||
app:layout_constraintHorizontal_bias="0.5"
|
||||
app:layout_constraintHorizontal_chainStyle="spread_inside"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/min_elev_edit" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/pass_pref_btn_pos"
|
||||
style="@style/DialogButton"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginEnd="16dp"
|
||||
android:text="@string/btn_accept"
|
||||
app:layout_constraintBaseline_toBaselineOf="@+id/pass_pref_btn_neg"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintHorizontal_bias="0.5"
|
||||
app:layout_constraintStart_toEndOf="@+id/pass_pref_btn_neg" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@@ -17,13 +17,13 @@
|
||||
android:name="com.rtbishop.look4sat.presentation.passesScreen.PassesFragment"
|
||||
tools:layout="@layout/fragment_passes">
|
||||
<action
|
||||
android:id="@+id/action_passes_to_pass_prefs"
|
||||
app:destination="@id/nav_pass_prefs" />
|
||||
android:id="@+id/action_passes_to_filter"
|
||||
app:destination="@id/nav_dialog_filter" />
|
||||
</fragment>
|
||||
<dialog
|
||||
android:id="@+id/nav_pass_prefs"
|
||||
android:name="com.rtbishop.look4sat.presentation.passesScreen.PassesPrefsDialog"
|
||||
tools:layout="@layout/dialog_passes" />
|
||||
android:id="@+id/nav_dialog_filter"
|
||||
android:name="com.rtbishop.look4sat.presentation.passesScreen.FilterDialog"
|
||||
tools:layout="@layout/dialog_filter" />
|
||||
<fragment
|
||||
android:id="@+id/nav_radar"
|
||||
android:name="com.rtbishop.look4sat.presentation.radarScreen.RadarFragment"
|
||||
|
||||
Reference in new issue
Block a user