Skip to content

Commit

Permalink
Merge pull request #421 from SwissCovid/bugfix/language-switch
Browse files Browse the repository at this point in the history
Fix language switch in hibernate fragment
  • Loading branch information
simonroesch authored Mar 18, 2022
2 parents 32c0523 + 7e89d29 commit 1cb9e66
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 13 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ import ch.admin.bag.dp3t.R
import ch.admin.bag.dp3t.TabbarHostFragment
import ch.admin.bag.dp3t.databinding.FragmentHibernatingInfoBinding
import ch.admin.bag.dp3t.html.HtmlFragment
import ch.admin.bag.dp3t.networking.models.InfoBoxModel
import ch.admin.bag.dp3t.util.AssetUtil
import ch.admin.bag.dp3t.util.UrlUtil

Expand All @@ -37,13 +38,15 @@ class HibernatingInfoFragment : Fragment() {
}
}

viewModel.hibernatingInfoBox.observe(viewLifecycleOwner) {
title.text = it.title
text.text = it.msg
linkGroup.isVisible = it.urlTitle != null
linkText.text = it.urlTitle
linkGroup.setOnClickListener { v -> UrlUtil.openUrl(requireContext(), it.url) }

viewModel.hibernatingInfoBox.observe(viewLifecycleOwner) { infoBoxModelCollection ->
val infobox = infoBoxModelCollection?.getInfoBox(getString(R.string.language_key))
infobox?.let {
title.text = it.title
text.text = it.msg
linkGroup.isVisible = it.urlTitle != null
linkText.text = it.urlTitle
linkGroup.setOnClickListener { v -> UrlUtil.openUrl(requireContext(), it.url) }
}
}

}.root
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,9 @@ class HibernatingViewModel(application: Application) : AndroidViewModel(applicat
val isHibernatingModeEnabled: LiveData<Boolean> = isHibernatingModeEnabledMutable

private val secureStorage: SecureStorage by lazy { SecureStorage.getInstance(application) }
private val languageKey = application.getString(R.string.language_key)

private val hibernatingInfoboxMutable =
MutableLiveData<InfoBoxModel>(secureStorage.hibernatingInfoboxCollection?.getInfoBox(languageKey))
val hibernatingInfoBox: LiveData<InfoBoxModel> = hibernatingInfoboxMutable

private val hibernatingInfoboxMutable = MutableLiveData<InfoBoxModelCollection?>(secureStorage.hibernatingInfoboxCollection)
val hibernatingInfoBox: LiveData<InfoBoxModelCollection?> = hibernatingInfoboxMutable

init {
loadConfig()
Expand All @@ -47,7 +44,7 @@ class HibernatingViewModel(application: Application) : AndroidViewModel(applicat
ConfigWorker.loadConfig(getApplication())
if (secureStorage.isHibernating) {
isHibernatingModeEnabledMutable.value = true
hibernatingInfoboxMutable.value = secureStorage.hibernatingInfoboxCollection?.getInfoBox(languageKey)
hibernatingInfoboxMutable.value = secureStorage.hibernatingInfoboxCollection
} else {
MainApplication.initDP3T(getApplication())
FakeWorker.safeStartFakeWorker(getApplication())
Expand Down

0 comments on commit 1cb9e66

Please sign in to comment.