diff --git a/app/build.gradle b/app/build.gradle index e360f950..932822a2 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -12,7 +12,7 @@ android { defaultConfig { applicationId "com.rtbishop.look4sat" minSdkVersion 21 - resConfigs "en,ru" + resConfigs 'en,ru' targetSdkVersion 31 versionCode 260 versionName "2.6.0" diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 25a7bb20..916af975 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -8,7 +8,6 @@ + viewModel.satData.observe(viewLifecycleOwner) { satData -> handleSatData(satData, binding, adapter) - }) + } } private fun handleSatData( @@ -88,6 +88,7 @@ class EntriesFragment : Fragment(R.layout.fragment_entries) { val message = getString(R.string.entries_update_error) Snackbar.make(requireView(), message, Snackbar.LENGTH_SHORT).show() } + DataState.Handled -> {} } } diff --git a/app/src/main/java/com/rtbishop/look4sat/presentation/mapScreen/MapFragment.kt b/app/src/main/java/com/rtbishop/look4sat/presentation/mapScreen/MapFragment.kt index 12620cfa..643d7ca8 100644 --- a/app/src/main/java/com/rtbishop/look4sat/presentation/mapScreen/MapFragment.kt +++ b/app/src/main/java/com/rtbishop/look4sat/presentation/mapScreen/MapFragment.kt @@ -38,9 +38,11 @@ import org.osmdroid.tileprovider.tilesource.TileSourceFactory import org.osmdroid.util.GeoPoint import org.osmdroid.views.CustomZoomButtonsController import org.osmdroid.views.MapView -import org.osmdroid.views.overlay.* +import org.osmdroid.views.overlay.FolderOverlay +import org.osmdroid.views.overlay.Marker +import org.osmdroid.views.overlay.Polygon +import org.osmdroid.views.overlay.Polyline import timber.log.Timber -import java.util.* import javax.inject.Inject @AndroidEntryPoint @@ -91,11 +93,11 @@ class MapFragment : Fragment(R.layout.fragment_map) { private fun setupObservers(binding: FragmentMapBinding) { viewModel.selectDefaultSatellite(arguments?.getInt("catNum")) - viewModel.stationPosLiveData.observe(viewLifecycleOwner, { renderStationPos(it, binding) }) - viewModel.satPositions.observe(viewLifecycleOwner, { renderSatPositions(it, binding) }) - viewModel.satTrack.observe(viewLifecycleOwner, { renderSatTrack(it, binding) }) - viewModel.satFootprint.observe(viewLifecycleOwner, { renderSatFootprint(it, binding) }) - viewModel.mapData.observe(viewLifecycleOwner, { renderSatData(it, binding) }) + viewModel.stationPosLiveData.observe(viewLifecycleOwner) { renderStationPos(it, binding) } + viewModel.satPositions.observe(viewLifecycleOwner) { renderSatPositions(it, binding) } + viewModel.satTrack.observe(viewLifecycleOwner) { renderSatTrack(it, binding) } + viewModel.satFootprint.observe(viewLifecycleOwner) { renderSatFootprint(it, binding) } + viewModel.mapData.observe(viewLifecycleOwner) { renderSatData(it, binding) } } private fun renderStationPos(stationPos: GeoPos, binding: FragmentMapBinding) { diff --git a/app/src/main/java/com/rtbishop/look4sat/presentation/passesScreen/PassesFragment.kt b/app/src/main/java/com/rtbishop/look4sat/presentation/passesScreen/PassesFragment.kt index 5220f203..1a20cefa 100644 --- a/app/src/main/java/com/rtbishop/look4sat/presentation/passesScreen/PassesFragment.kt +++ b/app/src/main/java/com/rtbishop/look4sat/presentation/passesScreen/PassesFragment.kt @@ -35,7 +35,6 @@ import com.rtbishop.look4sat.presentation.getNavResult import com.rtbishop.look4sat.presentation.navigateSafe import com.rtbishop.look4sat.presentation.toTimerString import dagger.hilt.android.AndroidEntryPoint -import java.util.* @AndroidEntryPoint class PassesFragment : Fragment(R.layout.fragment_passes), PassesAdapter.PassesClickListener { @@ -75,9 +74,9 @@ class PassesFragment : Fragment(R.layout.fragment_passes), PassesAdapter.PassesC passesSettings.setOnClickListener { findNavController().navigate(R.id.nav_settings) } passesFab.setOnClickListener { findNavController().navigate(R.id.nav_satellites) } } - passesViewModel.passes.observe(viewLifecycleOwner, { passesResult -> + passesViewModel.passes.observe(viewLifecycleOwner) { passesResult -> handleNewPasses(passesResult, adapter, binding) - }) + } getNavResult>(R.id.nav_passes, "prefs") { prefs -> passesViewModel.forceCalculation(prefs.first, prefs.second) } diff --git a/app/src/main/java/com/rtbishop/look4sat/presentation/radarScreen/RadarFragment.kt b/app/src/main/java/com/rtbishop/look4sat/presentation/radarScreen/RadarFragment.kt index 1e953260..1fa496a9 100644 --- a/app/src/main/java/com/rtbishop/look4sat/presentation/radarScreen/RadarFragment.kt +++ b/app/src/main/java/com/rtbishop/look4sat/presentation/radarScreen/RadarFragment.kt @@ -78,12 +78,12 @@ class RadarFragment : Fragment(R.layout.fragment_radar) { setScanning(preferences.getShowSweep()) } binding.radarCard.addView(radarView) - viewModel.radarData.observe(viewLifecycleOwner, { passData -> + viewModel.radarData.observe(viewLifecycleOwner) { passData -> radarView?.setPosition(passData.satPos) radarView?.setPositions(passData.satTrack) setPassText(pass, passData.satPos, binding) - }) - viewModel.transmitters.observe(viewLifecycleOwner, { list -> + } + viewModel.transmitters.observe(viewLifecycleOwner) { list -> if (list.isNotEmpty()) { transmittersAdapter.submitList(list) binding.radarRecyclerMsg.text = getString(R.string.trans_data) @@ -91,14 +91,14 @@ class RadarFragment : Fragment(R.layout.fragment_radar) { binding.radarRecyclerMsg.text = getString(R.string.trans_no_data) } radarView?.invalidate() - }) - viewModel.orientation.observe(viewLifecycleOwner, { orientation -> + } + viewModel.orientation.observe(viewLifecycleOwner) { orientation -> radarView?.setOrientation( orientation.first, orientation.second, orientation.third ) - }) + } binding.radarMap.setOnClickListener { val bundle = bundleOf("catNum" to pass.catNum) findNavController().navigateSafe(R.id.action_radar_to_map, bundle) diff --git a/app/src/main/res/layout/fragment_entries.xml b/app/src/main/res/layout/fragment_entries.xml index f8bcf67b..e8a299c5 100644 --- a/app/src/main/res/layout/fragment_entries.xml +++ b/app/src/main/res/layout/fragment_entries.xml @@ -88,7 +88,7 @@ android:text="@string/entries_select_all" android:textAllCaps="false" android:textSize="@dimen/text_size_medium" - app:cornerRadius="8dp" + app:cornerRadius="@dimen/card_corner_high" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toStartOf="@+id/entries_accept" app:layout_constraintHorizontal_bias="0.5" @@ -105,7 +105,7 @@ android:text="@string/btn_accept" android:textAllCaps="false" android:textSize="@dimen/text_size_medium" - app:cornerRadius="8dp" + app:cornerRadius="@dimen/card_corner_high" app:layout_constraintBaseline_toBaselineOf="@+id/entries_select_all" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.5" diff --git a/app/src/main/res/layout/fragment_map.xml b/app/src/main/res/layout/fragment_map.xml index 7db5264e..8d89651d 100644 --- a/app/src/main/res/layout/fragment_map.xml +++ b/app/src/main/res/layout/fragment_map.xml @@ -151,7 +151,7 @@ android:id="@+id/map_btn_prev" android:layout_width="48dp" android:layout_height="48dp" - android:layout_marginStart="8dp" + android:layout_marginStart="12dp" android:layout_marginBottom="2dp" android:backgroundTint="@color/surfaceToolbar" android:rotation="180" @@ -164,7 +164,7 @@ android:id="@+id/map_btn_next" android:layout_width="48dp" android:layout_height="48dp" - android:layout_marginEnd="8dp" + android:layout_marginEnd="12dp" android:backgroundTint="@color/surfaceToolbar" android:src="@drawable/ic_arrow" android:tint="@color/themeLight" diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index e8eacd63..0639f353 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -3,7 +3,7 @@ 0dp 8dp 0dp - 8dp + 12dp 13sp 15sp 16sp diff --git a/build.gradle b/build.gradle index 7e1d6b43..b8631b88 100644 --- a/build.gradle +++ b/build.gradle @@ -1,6 +1,6 @@ buildscript { ext { - gradle_version = '7.0.4' + gradle_version = '7.1.0' kotlin_version = '1.6.10' coroutines_version = '1.6.0-native-mt' splash_screen_version = '1.0.0-alpha01' @@ -14,7 +14,7 @@ buildscript { osmdroid_version = '6.1.11' timber_version = '5.0.1' junit_version = '4.13.2' - mockito_version = '4.2.0' + mockito_version = '4.3.1' leak_canary_version = '2.8.1' } repositories {