diff --git a/app/src/main/java/com/rtbishop/look4sat/ui/adapters/PassesAdapter.kt b/app/src/main/java/com/rtbishop/look4sat/ui/adapters/PassesAdapter.kt index e90dc397..ed7dc344 100644 --- a/app/src/main/java/com/rtbishop/look4sat/ui/adapters/PassesAdapter.kt +++ b/app/src/main/java/com/rtbishop/look4sat/ui/adapters/PassesAdapter.kt @@ -108,19 +108,15 @@ class PassesAdapter(context: Context, private var shouldUseUTC: Boolean = false) fun bind(satPass: SatPass) { binding.apply { - if (satPass.active) passLeoImg.setImageResource(R.drawable.ic_pass_active) - else passLeoImg.setImageResource(R.drawable.ic_pass_inactive) - + if (shouldUseUTC) simpleDateFormat.timeZone = timeZoneUTC + val startTime = simpleDateFormat.format(satPass.pass.startTime) + val endTime = simpleDateFormat.format(satPass.pass.endTime) passLeoSatName.text = satPass.tle.name passLeoSatId.text = String.format(satIdFormat, satPass.tle.catnum) + passLeoAosAz.text = String.format(aosAzFormat, startTime, satPass.pass.aosAzimuth) passLeoMaxEl.text = String.format(elevFormat, satPass.pass.maxEl) - passLeoAosAz.text = String.format(aosAzFormat, satPass.pass.aosAzimuth) - passLeoLosAz.text = String.format(losAzFormat, satPass.pass.losAzimuth) + passLeoLosAz.text = String.format(losAzFormat, satPass.pass.losAzimuth, endTime) passLeoProgress.progress = satPass.progress - - if (shouldUseUTC) simpleDateFormat.timeZone = timeZoneUTC - passLeoAosTime.text = simpleDateFormat.format(satPass.pass.startTime) - passLeoLosTime.text = simpleDateFormat.format(satPass.pass.endTime) } itemView.setOnClickListener { diff --git a/app/src/main/java/com/rtbishop/look4sat/ui/fragments/PassesFragment.kt b/app/src/main/java/com/rtbishop/look4sat/ui/fragments/PassesFragment.kt index 62ad7993..f15354f6 100644 --- a/app/src/main/java/com/rtbishop/look4sat/ui/fragments/PassesFragment.kt +++ b/app/src/main/java/com/rtbishop/look4sat/ui/fragments/PassesFragment.kt @@ -22,8 +22,10 @@ package com.rtbishop.look4sat.ui.fragments import android.animation.ObjectAnimator import android.os.Bundle import android.view.View +import androidx.core.content.res.ResourcesCompat import androidx.fragment.app.Fragment import androidx.fragment.app.activityViewModels +import androidx.recyclerview.widget.DividerItemDecoration import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.SimpleItemAnimator import com.rtbishop.look4sat.R @@ -60,14 +62,11 @@ class PassesFragment : Fragment(R.layout.fragment_passes) { private fun setupObservers() { viewModel.getPasses().observe(viewLifecycleOwner, { result -> - when (result) { - is Result.Success -> { - animator.cancel() - passes = result.data - passesAdapter.setList(passes) - } - is Result.InProgress -> animator.start() - } + if (result is Result.Success) { + animator.cancel() + passes = result.data + passesAdapter.setList(passes) + } else if (result is Result.InProgress) animator.start() }) viewModel.getCurrentTimeMillis().observe(viewLifecycleOwner, { currentTime -> tickMainTimer(currentTime) @@ -79,10 +78,16 @@ class PassesFragment : Fragment(R.layout.fragment_passes) { passesAdapter = PassesAdapter(requireContext(), prefsManager.shouldUseUTC()) binding.apply { passesRecycler.apply { - layoutManager = LinearLayoutManager(requireContext()) + val linearLayoutMgr = LinearLayoutManager(requireContext()) + val divider = DividerItemDecoration(requireContext(), linearLayoutMgr.orientation) + val drawable = ResourcesCompat + .getDrawable(resources, R.drawable.rec_passes_divider, requireActivity().theme) + drawable?.let { divider.setDrawable(it) } + layoutManager = linearLayoutMgr adapter = passesAdapter isVerticalScrollBarEnabled = false (itemAnimator as SimpleItemAnimator).supportsChangeAnimations = false + addItemDecoration(divider) setHasFixedSize(true) } animator = passesFab.getRotationAnimator() diff --git a/app/src/main/res/drawable/rec_passes_divider.xml b/app/src/main/res/drawable/rec_passes_divider.xml new file mode 100644 index 00000000..b841a172 --- /dev/null +++ b/app/src/main/res/drawable/rec_passes_divider.xml @@ -0,0 +1,11 @@ + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 8eb778f3..98a3a6d0 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -20,7 +20,7 @@ android:id="@+id/nav_bottom" android:layout_width="match_parent" android:layout_height="48dp" - app:elevation="2dp" + app:elevation="1dp" app:itemIconTint="@color/nav_bottom_item" app:itemTextColor="@color/nav_bottom_item" app:labelVisibilityMode="labeled" diff --git a/app/src/main/res/layout/fragment_entries.xml b/app/src/main/res/layout/fragment_entries.xml index 96639107..0ca47e2c 100644 --- a/app/src/main/res/layout/fragment_entries.xml +++ b/app/src/main/res/layout/fragment_entries.xml @@ -31,7 +31,7 @@ android:layout_width="0dp" android:layout_height="48dp" app:cardCornerRadius="0dp" - app:cardElevation="2dp" + app:cardElevation="1dp" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> diff --git a/app/src/main/res/layout/fragment_passes.xml b/app/src/main/res/layout/fragment_passes.xml index 36eb6707..194ff81c 100644 --- a/app/src/main/res/layout/fragment_passes.xml +++ b/app/src/main/res/layout/fragment_passes.xml @@ -32,7 +32,7 @@ android:layout_width="0dp" android:layout_height="48dp" app:cardCornerRadius="0dp" - app:cardElevation="2dp" + app:cardElevation="1dp" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> @@ -55,7 +55,9 @@ android:id="@+id/passes_recycler" android:layout_width="0dp" android:layout_height="0dp" + android:layout_marginStart="2dp" android:layout_marginTop="2dp" + android:layout_marginEnd="2dp" android:layout_marginBottom="2dp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" diff --git a/app/src/main/res/layout/item_pass_leo.xml b/app/src/main/res/layout/item_pass_leo.xml index c779c379..d7ed4313 100644 --- a/app/src/main/res/layout/item_pass_leo.xml +++ b/app/src/main/res/layout/item_pass_leo.xml @@ -22,21 +22,19 @@ android:id="@+id/pass_leo_card" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_marginStart="4dp" - android:layout_marginTop="2dp" - android:layout_marginEnd="4dp" - android:layout_marginBottom="2dp" - app:cardElevation="1dp"> + app:cardCornerRadius="4dp"> + android:layout_height="match_parent"> + app:layout_constraintBaseline_toBaselineOf="@+id/pass_leo_aosAz" + app:layout_constraintEnd_toEndOf="@+id/pass_leo_satId" + app:layout_constraintHorizontal_bias="0.5" + app:layout_constraintStart_toEndOf="@+id/pass_leo_aosAz" /> + app:layout_constraintBaseline_toBaselineOf="@+id/pass_leo_satName" + app:layout_constraintEnd_toEndOf="parent" /> - - + app:layout_constraintBaseline_toBaselineOf="@+id/pass_leo_aosAz" + app:layout_constraintEnd_toEndOf="@+id/pass_leo_losAz" + app:layout_constraintStart_toStartOf="@+id/pass_leo_aosAz" /> + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" /> - - - - + app:layout_constraintStart_toStartOf="@+id/pass_leo_satName" + app:layout_constraintTop_toBottomOf="@+id/pass_leo_satName" /> + android:layout_marginBottom="2dp" + app:layout_constraintBottom_toBottomOf="@+id/pass_leo_bg" + app:layout_constraintEnd_toEndOf="@+id/pass_leo_losAz" + app:layout_constraintStart_toStartOf="@+id/pass_leo_aosAz" + app:layout_constraintTop_toBottomOf="@+id/pass_leo_aosAz" /> diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index e955ebde..d66cb961 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -53,9 +53,6 @@ Ошибка импорта спутников - НПС — %2d° - %2d° — КПС - Аз: %.1f° Элев: %.1f° Дист: %.0fкм diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 4da71b78..d7d988d8 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -22,7 +22,7 @@ #FFE082 #121212 #E0E0E0 - #242424 + #1d1d1d #B00020 #26FFE082 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 1e0098d4..021dc002 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -55,10 +55,10 @@ Error importing satellite data %s - ID: %d - AOS — %2d° - %2d° — LOS - dd MMM - HH:mm:ss + ID:%d + %s — %2d° + %2d° — %s + HH:mm:ss Az: %.1f° El: %.1f°