mirror of
https://github.com/rt-bishop/Look4Sat.git
synced 2026-10-02 03:15:37 +00:00
Fixed the "eternal refresh" bug & crash #18
This commit is contained in:
1 parent
bfefae84da
commit
f338a0501f
6 files changed
+18
-73
No files matched your search
@@ -173,7 +173,6 @@ class MainActivity : AppCompatActivity(), TleSourcesDialogFragment.SourcesSubmit
|
||||
val githubIntent = Intent(Intent.ACTION_VIEW, Uri.parse(gitHubUrl))
|
||||
startActivity(githubIntent)
|
||||
}
|
||||
drawerBinding.drawerBtnExit.setOnClickListener { finish() }
|
||||
}
|
||||
|
||||
override fun onSourcesSubmit(list: List<TleSource>) {
|
||||
|
||||
@@ -45,6 +45,7 @@ import com.rtbishop.look4sat.databinding.FragmentPassListBinding
|
||||
import com.rtbishop.look4sat.ui.MainActivity
|
||||
import com.rtbishop.look4sat.ui.SharedViewModel
|
||||
import com.rtbishop.look4sat.ui.adapters.SatPassAdapter
|
||||
import com.rtbishop.look4sat.utility.GeneralUtils.toast
|
||||
import kotlinx.coroutines.launch
|
||||
import java.util.*
|
||||
import java.util.concurrent.TimeUnit
|
||||
@@ -86,8 +87,11 @@ class PassListFragment : Fragment(R.layout.fragment_pass_list) {
|
||||
|
||||
setupObservers(binding)
|
||||
setupComponents(binding)
|
||||
}
|
||||
|
||||
if (satPassList.isEmpty()) {
|
||||
override fun onStart() {
|
||||
super.onStart()
|
||||
if (satPassAdapter.itemCount == 0) {
|
||||
viewModel.calculatePasses()
|
||||
}
|
||||
}
|
||||
@@ -135,10 +139,9 @@ class PassListFragment : Fragment(R.layout.fragment_pass_list) {
|
||||
lifecycleScope.launch {
|
||||
val list = viewModel.getAllEntries() as MutableList
|
||||
if (list.isEmpty()) {
|
||||
Toast.makeText(requireContext(), "Please, update TLE", Toast.LENGTH_SHORT)
|
||||
.show()
|
||||
getString(R.string.err_update_data).toast(mainActivity, Toast.LENGTH_SHORT)
|
||||
} else {
|
||||
showSelectSatDialog(list, binding)
|
||||
showSelectSatDialog(list)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -160,29 +163,23 @@ class PassListFragment : Fragment(R.layout.fragment_pass_list) {
|
||||
val elevation = elevationStr.toDouble()
|
||||
when {
|
||||
hours < 1 || hours > 168 -> {
|
||||
Toast.makeText(
|
||||
getString(R.string.pref_hours_ahead_input_error).toast(
|
||||
mainActivity,
|
||||
getString(R.string.pref_hours_ahead_input_error),
|
||||
Toast.LENGTH_SHORT
|
||||
).show()
|
||||
)
|
||||
}
|
||||
elevation < 0 || elevation > 90 -> {
|
||||
Toast.makeText(
|
||||
getString(R.string.pref_min_el_input_error).toast(
|
||||
mainActivity,
|
||||
getString(R.string.pref_min_el_input_error),
|
||||
Toast.LENGTH_SHORT
|
||||
).show()
|
||||
)
|
||||
}
|
||||
else -> {
|
||||
viewModel.setPassPrefs(hours, elevation)
|
||||
viewModel.calculatePasses()
|
||||
}
|
||||
}
|
||||
} else Toast.makeText(
|
||||
mainActivity,
|
||||
getString(R.string.err_enter_value),
|
||||
Toast.LENGTH_SHORT
|
||||
).show()
|
||||
} else getString(R.string.err_enter_value).toast(mainActivity, Toast.LENGTH_SHORT)
|
||||
|
||||
}
|
||||
setNegativeButton(getString(android.R.string.cancel)) { dialog, _ ->
|
||||
@@ -194,13 +191,9 @@ class PassListFragment : Fragment(R.layout.fragment_pass_list) {
|
||||
}
|
||||
}
|
||||
|
||||
private fun showSelectSatDialog(
|
||||
tleMainList: MutableList<SatEntry>,
|
||||
binding: FragmentPassListBinding
|
||||
) {
|
||||
private fun showSelectSatDialog(tleMainList: MutableList<SatEntry>) {
|
||||
val listener = object : SatEntryDialogFragment.EntriesSubmitListener {
|
||||
override fun onEntriesSubmit(catNumList: MutableList<Int>) {
|
||||
binding.refLayoutPassList.isRefreshing = true
|
||||
viewModel.updateEntriesSelection(catNumList)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,28 +0,0 @@
|
||||
<!--
|
||||
~ Look4Sat. Amateur radio and weather satellite tracker and passes predictor for Android.
|
||||
~ Copyright (C) 2019, 2020 Arty Bishop (bishop.arty@gmail.com)
|
||||
~
|
||||
~ This program is free software; you can redistribute it and/or modify
|
||||
~ it under the terms of the GNU General Public License as published by
|
||||
~ the Free Software Foundation; either version 2 of the License, or
|
||||
~ (at your option) any later version.
|
||||
~
|
||||
~ This program is distributed in the hope that it will be useful,
|
||||
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
~ GNU General Public License for more details.
|
||||
~
|
||||
~ You should have received a copy of the GNU General Public License along
|
||||
~ with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
~ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
-->
|
||||
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="32dp"
|
||||
android:height="32dp"
|
||||
android:viewportWidth="24.0"
|
||||
android:viewportHeight="24.0">
|
||||
<path
|
||||
android:fillColor="@color/themeIcon"
|
||||
android:pathData="M10.09,15.59L11.5,17l5,-5 -5,-5 -1.41,1.41L12.67,11H3v2h9.67l-2.58,2.59zM19,3H5c-1.11,0 -2,0.9 -2,2v4h2V5h14v14H5v-4H3v4c0,1.1 0.89,2 2,2h14c1.1,0 2,-0.9 2,-2V5c0,-1.1 -0.9,-2 -2,-2z" />
|
||||
</vector>
|
||||
@@ -127,35 +127,15 @@
|
||||
android:id="@+id/drawer_btn_github"
|
||||
style="@style/DrawerHeader.Button"
|
||||
android:layout_width="0dp"
|
||||
android:layout_marginEnd="1dp"
|
||||
android:drawableEnd="@drawable/ic_goto_github"
|
||||
android:text="@string/goto_github"
|
||||
app:layout_constraintBottom_toTopOf="@+id/guidelineBottom"
|
||||
app:layout_constraintEnd_toStartOf="@+id/guidelineCenter"
|
||||
app:layout_constraintEnd_toStartOf="@+id/guidelineRight"
|
||||
app:layout_constraintHorizontal_bias="0.5"
|
||||
app:layout_constraintHorizontal_chainStyle="spread_inside"
|
||||
app:layout_constraintStart_toStartOf="@+id/guidelineLeft"
|
||||
app:layout_constraintTop_toBottomOf="@+id/drawer_btn_tle_url" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatButton
|
||||
android:id="@+id/drawerBtnExit"
|
||||
style="@style/DrawerHeader.Button"
|
||||
android:layout_width="0dp"
|
||||
android:layout_marginStart="1dp"
|
||||
android:drawableEnd="@drawable/ic_exit_app"
|
||||
android:text="@string/exit_app"
|
||||
app:layout_constraintBaseline_toBaselineOf="@+id/drawer_btn_github"
|
||||
app:layout_constraintEnd_toStartOf="@+id/guidelineRight"
|
||||
app:layout_constraintHorizontal_bias="0.5"
|
||||
app:layout_constraintStart_toStartOf="@+id/guidelineCenter" />
|
||||
|
||||
<androidx.constraintlayout.widget.Guideline
|
||||
android:id="@+id/guidelineCenter"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintGuide_percent="0.5" />
|
||||
|
||||
<androidx.constraintlayout.widget.Barrier
|
||||
android:id="@+id/mainBarrier"
|
||||
android:layout_width="wrap_content"
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
<string name="import_data_web">Импорт данных по ссылке</string>
|
||||
<string name="import_data_success">Данные спутников обновлены</string>
|
||||
<string name="import_data_failure">Ошибка импорта данных</string>
|
||||
<string name="exit_app">Выход</string>
|
||||
<string name="goto_github">Ссылка на GitHub</string>
|
||||
|
||||
<string name="menu_pass_list">Список пролетов</string>
|
||||
<string name="menu_map_view">Карта мира</string>
|
||||
@@ -68,6 +68,7 @@
|
||||
<string name="no_trans">Не найдены трансиверы для этого спутника</string>
|
||||
|
||||
<string name="err_no_permissions">Отсутствуют необходимые разрешения</string>
|
||||
<string name="err_update_data">Пожалуйста, обновите данные спутников</string>
|
||||
<string name="err_enter_value">Пожалуйста, введите значение</string>
|
||||
<string name="err_no_sat_selected">Не выбраны спутники</string>
|
||||
|
||||
|
||||
@@ -32,8 +32,7 @@
|
||||
<string name="import_data_web">Import data from web</string>
|
||||
<string name="import_data_success">Satellite data was updated</string>
|
||||
<string name="import_data_failure">Satellite data import failed</string>
|
||||
<string name="goto_github" translatable="false">GitHub</string>
|
||||
<string name="exit_app">Exit</string>
|
||||
<string name="goto_github">Link to GitHub</string>
|
||||
|
||||
<string name="menu_pass_list">List of Passes</string>
|
||||
<string name="menu_polar_view" translatable="false">Polar View</string>
|
||||
@@ -79,6 +78,7 @@
|
||||
<string name="no_trans">No transceivers found for this satellite</string>
|
||||
|
||||
<string name="err_no_permissions">Missing permissions</string>
|
||||
<string name="err_update_data">Please, update satellite data</string>
|
||||
<string name="err_enter_value">Please, enter the value</string>
|
||||
<string name="err_no_sat_selected">No satellites selected</string>
|
||||
|
||||
|
||||
Reference in new issue
Block a user