From d493e3e87b6f8e59fca5012f712f431ecca39a87 Mon Sep 17 00:00:00 2001 From: Arty Bishop Date: Tue, 9 Mar 2021 09:17:21 +0000 Subject: [PATCH] Fixed IllegalArgException on pass to polar navigation. Triggering github actions on tags push. --- .github/workflows/main.yml | 17 +++++++++-------- .../ui/entriesScreen/EntriesFragment.kt | 12 ++++++------ .../look4sat/ui/passesScreen/PassesAdapter.kt | 5 +++-- .../look4sat/ui/prefsScreen/PrefsFragment.kt | 12 +++++------- .../metadata/android/en-US/changelogs/222.txt | 8 ++++++++ .../android/en-US/changelogs/whatsnew-en-US | 0 .../android/en-US/whatsnew/whatsnew-en-US | 8 ++++++++ 7 files changed, 39 insertions(+), 23 deletions(-) create mode 100644 fastlane/metadata/android/en-US/changelogs/222.txt delete mode 100644 fastlane/metadata/android/en-US/changelogs/whatsnew-en-US create mode 100644 fastlane/metadata/android/en-US/whatsnew/whatsnew-en-US diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 51217ae2..6ed20246 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -2,10 +2,11 @@ name: Look4Sat CI on: push: - branches: [ master ] + tags: + - '*' jobs: - release: + deploy: runs-on: ubuntu-latest steps: - name: Checkout latest commit @@ -54,13 +55,13 @@ jobs: serviceAccountJsonPlainText: ${{secrets.SERVICE_ACCOUNT_JSON}} packageName: com.rtbishop.look4sat track: production - whatsNewDirectory: fastlane/metadata/android/en-US/changelogs + whatsNewDirectory: fastlane/metadata/android/en-US/whatsnew releaseFiles: ${{steps.sign_release_bundle.outputs.signedReleaseFile}} - name: Upload files to action uses: actions/upload-artifact@v2 - with: - name: Look4Sat_files - path: | - ${{steps.sign_release_apk.outputs.signedReleaseFile}} - ${{steps.sign_release_bundle.outputs.signedReleaseFile}} \ No newline at end of file + with: + name: Look4Sat_files + path: | + ${{steps.sign_release_apk.outputs.signedReleaseFile}} + ${{steps.sign_release_bundle.outputs.signedReleaseFile}} \ No newline at end of file diff --git a/app/src/main/java/com/rtbishop/look4sat/ui/entriesScreen/EntriesFragment.kt b/app/src/main/java/com/rtbishop/look4sat/ui/entriesScreen/EntriesFragment.kt index 56bcf7be..ee278cc2 100644 --- a/app/src/main/java/com/rtbishop/look4sat/ui/entriesScreen/EntriesFragment.kt +++ b/app/src/main/java/com/rtbishop/look4sat/ui/entriesScreen/EntriesFragment.kt @@ -30,6 +30,7 @@ import com.rtbishop.look4sat.R import com.rtbishop.look4sat.databinding.FragmentEntriesBinding import com.rtbishop.look4sat.ui.SharedViewModel import com.rtbishop.look4sat.utility.RecyclerDivider +import com.rtbishop.look4sat.utility.navigateSafe import dagger.hilt.android.AndroidEntryPoint @AndroidEntryPoint @@ -38,9 +39,7 @@ class EntriesFragment : Fragment(R.layout.fragment_entries) { private val viewModel: SharedViewModel by activityViewModels() private val filePicker = registerForActivityResult(ActivityResultContracts.GetContent()) { uri -> - uri?.let { - viewModel.updateEntriesFromFile(uri) - } + uri?.let { viewModel.updateEntriesFromFile(uri) } } private var binding: FragmentEntriesBinding? = null private var entriesAdapter: EntriesAdapter? = null @@ -73,8 +72,9 @@ class EntriesFragment : Fragment(R.layout.fragment_entries) { private fun setupObservers() { setLoading() viewModel.getSatItems().observe(viewLifecycleOwner, { satItems -> - if (satItems.isNullOrEmpty()) setError() - else { + if (satItems.isNullOrEmpty()) { + setError() + } else { entriesAdapter?.setItems(satItems) setLoaded() } @@ -131,7 +131,7 @@ class EntriesFragment : Fragment(R.layout.fragment_entries) { val satItems = it.getItems() if (satItems.isNotEmpty()) { viewModel.updateItemsSelection(satItems) - requireView().findNavController().navigate(R.id.action_entries_to_passes) + requireView().findNavController().navigateSafe(R.id.action_entries_to_passes) } } } diff --git a/app/src/main/java/com/rtbishop/look4sat/ui/passesScreen/PassesAdapter.kt b/app/src/main/java/com/rtbishop/look4sat/ui/passesScreen/PassesAdapter.kt index 44b3cc07..8e8cbbbc 100644 --- a/app/src/main/java/com/rtbishop/look4sat/ui/passesScreen/PassesAdapter.kt +++ b/app/src/main/java/com/rtbishop/look4sat/ui/passesScreen/PassesAdapter.kt @@ -27,6 +27,7 @@ import com.rtbishop.look4sat.R import com.rtbishop.look4sat.data.SatPass import com.rtbishop.look4sat.databinding.ItemPassGeoBinding import com.rtbishop.look4sat.databinding.ItemPassLeoBinding +import com.rtbishop.look4sat.utility.navigateSafe import java.text.SimpleDateFormat import java.util.* @@ -131,7 +132,7 @@ class PassesAdapter(context: Context, private val shouldUseUTC: Boolean = false) itemView.setOnClickListener { if (satPass.progress < 100) { 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 { 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) } } } diff --git a/app/src/main/java/com/rtbishop/look4sat/ui/prefsScreen/PrefsFragment.kt b/app/src/main/java/com/rtbishop/look4sat/ui/prefsScreen/PrefsFragment.kt index e95c2453..3310d3e0 100644 --- a/app/src/main/java/com/rtbishop/look4sat/ui/prefsScreen/PrefsFragment.kt +++ b/app/src/main/java/com/rtbishop/look4sat/ui/prefsScreen/PrefsFragment.kt @@ -77,15 +77,13 @@ class PrefsFragment : PreferenceFragmentCompat() { } private fun setPositionFromQth(qthString: String): Boolean { - val loc = qthConverter.qthToLocation(qthString) - return if (loc == null) { - showSnack(getString(R.string.pref_pos_qth_error)) - false - } else { - prefsRepo.setStationPosition(loc.latitude, loc.longitude, loc.heightAMSL) + qthConverter.qthToLocation(qthString)?.let { gsp -> + prefsRepo.setStationPosition(gsp.latitude, gsp.longitude, gsp.heightAMSL) showSnack(getString(R.string.pref_pos_success)) - true + return true } + showSnack(getString(R.string.pref_pos_qth_error)) + return false } private fun setPositionFromGPS() { diff --git a/fastlane/metadata/android/en-US/changelogs/222.txt b/fastlane/metadata/android/en-US/changelogs/222.txt new file mode 100644 index 00000000..4f057a3b --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/222.txt @@ -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 \ No newline at end of file diff --git a/fastlane/metadata/android/en-US/changelogs/whatsnew-en-US b/fastlane/metadata/android/en-US/changelogs/whatsnew-en-US deleted file mode 100644 index e69de29b..00000000 diff --git a/fastlane/metadata/android/en-US/whatsnew/whatsnew-en-US b/fastlane/metadata/android/en-US/whatsnew/whatsnew-en-US new file mode 100644 index 00000000..4f057a3b --- /dev/null +++ b/fastlane/metadata/android/en-US/whatsnew/whatsnew-en-US @@ -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 \ No newline at end of file