bug fixes

This commit is contained in:
X1nto 2020-08-08 14:59:56 +04:00
parent bce75c1b22
commit 4356584185
5 changed files with 40 additions and 39 deletions

View File

@ -104,7 +104,17 @@ class HomeFragment : Fragment(), View.OnClickListener {
when (v?.id) { when (v?.id) {
R.id.vanced_installbtn -> { R.id.vanced_installbtn -> {
if (!isInstallationRunning(requireActivity())) { if (!isInstallationRunning(requireActivity())) {
if (viewModel.microgInstalled.get()!!) { if (variant == "nonroot" && !viewModel.microgInstalled.get()!!) {
Snackbar.make(binding.homeRefresh, R.string.no_microg, Snackbar.LENGTH_LONG)
.setAction(R.string.install) {
requireActivity().startService(
Intent(
requireActivity(),
MicrogDownloadService::class.java
)
)
}.show()
} else {
if (prefs?.getBoolean("valuesModified", false)!!) { if (prefs?.getBoolean("valuesModified", false)!!) {
requireActivity().startService( requireActivity().startService(
Intent( Intent(
@ -115,16 +125,8 @@ class HomeFragment : Fragment(), View.OnClickListener {
} else { } else {
view?.findNavController()?.navigate(R.id.toInstallThemeFragment) view?.findNavController()?.navigate(R.id.toInstallThemeFragment)
} }
} else }
Snackbar.make(binding.homeRefresh, R.string.no_microg, Snackbar.LENGTH_LONG)
.setAction(R.string.install) {
requireActivity().startService(
Intent(
requireActivity(),
MicrogDownloadService::class.java
)
)
}.show()
} else } else
Toast.makeText(requireActivity(), R.string.installation_wait, Toast.LENGTH_SHORT) Toast.makeText(requireActivity(), R.string.installation_wait, Toast.LENGTH_SHORT)

View File

@ -23,7 +23,7 @@ class ManagerChangelogFragment : Fragment() {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) { override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState) super.onViewCreated(view, savedInstanceState)
CoroutineScope(Dispatchers.IO).launch { CoroutineScope(Dispatchers.Main).launch {
val changelog = InternetTools.getObjectFromJson("https://x1nto.github.io/VancedFiles/manager.json", "changelog") val changelog = InternetTools.getObjectFromJson("https://x1nto.github.io/VancedFiles/manager.json", "changelog")
view.findViewById<TextView>(R.id.manager_changelog).text = changelog view.findViewById<TextView>(R.id.manager_changelog).text = changelog
} }

View File

@ -24,7 +24,7 @@ class MicrogChangelogFragment : Fragment() {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) { override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState) super.onViewCreated(view, savedInstanceState)
CoroutineScope(Dispatchers.IO).launch { CoroutineScope(Dispatchers.Main).launch {
val baseUrl = PreferenceManager.getDefaultSharedPreferences(activity).getString("install_url", InternetTools.baseUrl) val baseUrl = PreferenceManager.getDefaultSharedPreferences(activity).getString("install_url", InternetTools.baseUrl)
view.findViewById<TextView>(R.id.microg_changelog).text = InternetTools.getObjectFromJson("$baseUrl/microg.json", "changelog") view.findViewById<TextView>(R.id.microg_changelog).text = InternetTools.getObjectFromJson("$baseUrl/microg.json", "changelog")
} }

View File

@ -24,7 +24,7 @@ class VancedChangelogFragment : Fragment() {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) { override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState) super.onViewCreated(view, savedInstanceState)
CoroutineScope(Dispatchers.IO).launch { CoroutineScope(Dispatchers.Main).launch {
val vancedVersion = activity?.let { InternetTools.getJsonString("vanced.json", "version", it).replace('.', '_') } val vancedVersion = activity?.let { InternetTools.getJsonString("vanced.json", "version", it).replace('.', '_') }
val baseUrl = PreferenceManager.getDefaultSharedPreferences(activity).getString("install_url", InternetTools.baseUrl) val baseUrl = PreferenceManager.getDefaultSharedPreferences(activity).getString("install_url", InternetTools.baseUrl)

View File

@ -25,7 +25,6 @@ import java.util.*
class VancedLanguageSelectionFragment : Fragment() { class VancedLanguageSelectionFragment : Fragment() {
private lateinit var langs: MutableList<String> private lateinit var langs: MutableList<String>
private lateinit var langcor: Deferred<Unit>
override fun onCreateView( override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?, inflater: LayoutInflater, container: ViewGroup?,
@ -38,10 +37,25 @@ class VancedLanguageSelectionFragment : Fragment() {
@ExperimentalStdlibApi @ExperimentalStdlibApi
override fun onViewCreated(view: View, savedInstanceState: Bundle?) { override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState) super.onViewCreated(view, savedInstanceState)
langcor = CoroutineScope(Dispatchers.IO).async { val langcor = CoroutineScope(Dispatchers.IO).async {
langs = getArrayFromJson("${PreferenceManager.getDefaultSharedPreferences(activity).getString("install_url", baseUrl)}/vanced.json", "langs") langs = getArrayFromJson("${PreferenceManager.getDefaultSharedPreferences(requireActivity()).getString("install_url", baseUrl)}/vanced.json", "langs")
}
CoroutineScope(Dispatchers.Main).launch {
langcor.await()
if (!langs.contains("null")) {
langs.forEach { lang ->
val loc = Locale(lang)
val box: MaterialCheckBox = MaterialCheckBox(requireActivity()).apply {
tag = lang
text = loc.getDisplayLanguage(loc).capitalize(Locale.ROOT)
textSize = 18F
typeface = ResourcesCompat.getFont(requireActivity(), R.font.exo_bold)
}
view.findViewById<LinearLayout>(R.id.lang_button_ll)
.addView(box, MATCH_PARENT, WRAP_CONTENT)
}
}
} }
loadBoxes(view.findViewById(R.id.lang_button_ll))
view.findViewById<MaterialButton>(R.id.vanced_install_finish).setOnClickListener { view.findViewById<MaterialButton>(R.id.vanced_install_finish).setOnClickListener {
val chosenLangs = mutableListOf("en") val chosenLangs = mutableListOf("en")
if (!langs.contains("null")) if (!langs.contains("null"))
@ -50,30 +64,15 @@ class VancedLanguageSelectionFragment : Fragment() {
chosenLangs.add(lang) chosenLangs.add(lang)
} }
} }
activity?.getSharedPreferences("installPrefs", Context.MODE_PRIVATE)?.edit()?.apply { with(requireActivity()) {
getSharedPreferences("installPrefs", Context.MODE_PRIVATE)?.edit()?.apply {
putString("lang", chosenLangs.joinToString())?.apply() putString("lang", chosenLangs.joinToString())?.apply()
putBoolean("valuesModified", true).apply() putBoolean("valuesModified", true).apply()
} }
activity?.startService(Intent(activity, VancedDownloadService::class.java)) startService(Intent(this, VancedDownloadService::class.java))
}
view.findNavController().navigate(R.id.action_installTo_homeFragment) view.findNavController().navigate(R.id.action_installTo_homeFragment)
} }
} }
@ExperimentalStdlibApi
private fun loadBoxes(ll: LinearLayout) = CoroutineScope(Dispatchers.Main).launch {
langcor.await()
if (!langs.contains("null")) {
langs.forEach { lang ->
val loc = Locale(lang)
val box: MaterialCheckBox = MaterialCheckBox(activity).apply {
tag = lang
text = loc.getDisplayLanguage(loc).capitalize(Locale.ROOT)
textSize = 18F
typeface = activity?.let { ResourcesCompat.getFont(it, R.font.exo_bold) }
}
ll.addView(box, MATCH_PARENT, WRAP_CONTENT)
}
}
}
} }