Fixed IllegalArgException on pass to polar navigation. Triggering github actions on tags push.

This commit is contained in:
Arty Bishop committed 2021-03-09 09:33:03 +00:00
1 parent c37537bd67
commit d493e3e87b
7 files changed
+34 -18

No files matched your search

+4 -3
View File
@@ -2,10 +2,11 @@ name: Look4Sat CI
on: on:
push: push:
branches: [ master ] tags:
- '*'
jobs: jobs:
release: deploy:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout latest commit - name: Checkout latest commit
@@ -54,7 +55,7 @@ jobs:
serviceAccountJsonPlainText: ${{secrets.SERVICE_ACCOUNT_JSON}} serviceAccountJsonPlainText: ${{secrets.SERVICE_ACCOUNT_JSON}}
packageName: com.rtbishop.look4sat packageName: com.rtbishop.look4sat
track: production track: production
whatsNewDirectory: fastlane/metadata/android/en-US/changelogs whatsNewDirectory: fastlane/metadata/android/en-US/whatsnew
releaseFiles: ${{steps.sign_release_bundle.outputs.signedReleaseFile}} releaseFiles: ${{steps.sign_release_bundle.outputs.signedReleaseFile}}
- name: Upload files to action - name: Upload files to action
@@ -30,6 +30,7 @@ import com.rtbishop.look4sat.R
import com.rtbishop.look4sat.databinding.FragmentEntriesBinding import com.rtbishop.look4sat.databinding.FragmentEntriesBinding
import com.rtbishop.look4sat.ui.SharedViewModel import com.rtbishop.look4sat.ui.SharedViewModel
import com.rtbishop.look4sat.utility.RecyclerDivider import com.rtbishop.look4sat.utility.RecyclerDivider
import com.rtbishop.look4sat.utility.navigateSafe
import dagger.hilt.android.AndroidEntryPoint import dagger.hilt.android.AndroidEntryPoint
@AndroidEntryPoint @AndroidEntryPoint
@@ -38,9 +39,7 @@ class EntriesFragment : Fragment(R.layout.fragment_entries) {
private val viewModel: SharedViewModel by activityViewModels() private val viewModel: SharedViewModel by activityViewModels()
private val filePicker = private val filePicker =
registerForActivityResult(ActivityResultContracts.GetContent()) { uri -> registerForActivityResult(ActivityResultContracts.GetContent()) { uri ->
uri?.let { uri?.let { viewModel.updateEntriesFromFile(uri) }
viewModel.updateEntriesFromFile(uri)
}
} }
private var binding: FragmentEntriesBinding? = null private var binding: FragmentEntriesBinding? = null
private var entriesAdapter: EntriesAdapter? = null private var entriesAdapter: EntriesAdapter? = null
@@ -73,8 +72,9 @@ class EntriesFragment : Fragment(R.layout.fragment_entries) {
private fun setupObservers() { private fun setupObservers() {
setLoading() setLoading()
viewModel.getSatItems().observe(viewLifecycleOwner, { satItems -> viewModel.getSatItems().observe(viewLifecycleOwner, { satItems ->
if (satItems.isNullOrEmpty()) setError() if (satItems.isNullOrEmpty()) {
else { setError()
} else {
entriesAdapter?.setItems(satItems) entriesAdapter?.setItems(satItems)
setLoaded() setLoaded()
} }
@@ -131,7 +131,7 @@ class EntriesFragment : Fragment(R.layout.fragment_entries) {
val satItems = it.getItems() val satItems = it.getItems()
if (satItems.isNotEmpty()) { if (satItems.isNotEmpty()) {
viewModel.updateItemsSelection(satItems) viewModel.updateItemsSelection(satItems)
requireView().findNavController().navigate(R.id.action_entries_to_passes) requireView().findNavController().navigateSafe(R.id.action_entries_to_passes)
} }
} }
} }
@@ -27,6 +27,7 @@ import com.rtbishop.look4sat.R
import com.rtbishop.look4sat.data.SatPass import com.rtbishop.look4sat.data.SatPass
import com.rtbishop.look4sat.databinding.ItemPassGeoBinding import com.rtbishop.look4sat.databinding.ItemPassGeoBinding
import com.rtbishop.look4sat.databinding.ItemPassLeoBinding import com.rtbishop.look4sat.databinding.ItemPassLeoBinding
import com.rtbishop.look4sat.utility.navigateSafe
import java.text.SimpleDateFormat import java.text.SimpleDateFormat
import java.util.* import java.util.*
@@ -131,7 +132,7 @@ class PassesAdapter(context: Context, private val shouldUseUTC: Boolean = false)
itemView.setOnClickListener { itemView.setOnClickListener {
if (satPass.progress < 100) { if (satPass.progress < 100) {
val bundle = bundleOf("index" to satPassList.indexOf(satPass)) val bundle = bundleOf("index" to satPassList.indexOf(satPass))
itemView.findNavController().navigate(R.id.action_passes_to_polar, bundle) itemView.findNavController().navigateSafe(R.id.action_passes_to_polar, bundle)
} }
} }
} }
@@ -152,7 +153,7 @@ class PassesAdapter(context: Context, private val shouldUseUTC: Boolean = false)
itemView.setOnClickListener { itemView.setOnClickListener {
val bundle = bundleOf("index" to satPassList.indexOf(satPass)) val bundle = bundleOf("index" to satPassList.indexOf(satPass))
itemView.findNavController().navigate(R.id.action_passes_to_polar, bundle) itemView.findNavController().navigateSafe(R.id.action_passes_to_polar, bundle)
} }
} }
} }
@@ -77,15 +77,13 @@ class PrefsFragment : PreferenceFragmentCompat() {
} }
private fun setPositionFromQth(qthString: String): Boolean { private fun setPositionFromQth(qthString: String): Boolean {
val loc = qthConverter.qthToLocation(qthString) qthConverter.qthToLocation(qthString)?.let { gsp ->
return if (loc == null) { prefsRepo.setStationPosition(gsp.latitude, gsp.longitude, gsp.heightAMSL)
showSnack(getString(R.string.pref_pos_qth_error))
false
} else {
prefsRepo.setStationPosition(loc.latitude, loc.longitude, loc.heightAMSL)
showSnack(getString(R.string.pref_pos_success)) showSnack(getString(R.string.pref_pos_success))
true return true
} }
showSnack(getString(R.string.pref_pos_qth_error))
return false
} }
private fun setPositionFromGPS() { private fun setPositionFromGPS() {
@@ -0,0 +1,8 @@
Fixed NullPointerException in EntriesFragment's update from file
Fixed IllegalArgumentException on passes navigate action
Fixed select all logic in Entries adapter
Now correctly popping back stack on PolarView pass end
Now using passes screen as a start destination
Added zipped TLE import from Mike McCants' web site
Added McCants' classified and integrated TLEs to default sources
Added privacy policy to info screen, switched to GPL v3 licence
Whitespace-only changes.
@@ -0,0 +1,8 @@
Fixed NullPointerException in EntriesFragment's update from file
Fixed IllegalArgumentException on passes navigate action
Fixed select all logic in Entries adapter
Now correctly popping back stack on PolarView pass end
Now using passes screen as a start destination
Added zipped TLE import from Mike McCants' web site
Added McCants' classified and integrated TLEs to default sources
Added privacy policy to info screen, switched to GPL v3 licence