refactor: use isVisible instead visibility #113
5 changed files with 36 additions and 39 deletions
|
@ -16,6 +16,7 @@ import android.view.MenuItem
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.widget.ProgressBar
|
import android.widget.ProgressBar
|
||||||
import androidx.activity.enableEdgeToEdge
|
import androidx.activity.enableEdgeToEdge
|
||||||
|
import androidx.core.view.isVisible
|
||||||
import androidx.fragment.app.Fragment
|
import androidx.fragment.app.Fragment
|
||||||
import androidx.lifecycle.lifecycleScope
|
import androidx.lifecycle.lifecycleScope
|
||||||
import androidx.viewpager2.adapter.FragmentStateAdapter
|
import androidx.viewpager2.adapter.FragmentStateAdapter
|
||||||
|
@ -139,9 +140,9 @@ open class MainActivity : BaseEuiccAccessActivity(), OpenEuiccContextMarker {
|
||||||
|
|
||||||
private suspend fun init(fromUsbEvent: Boolean = false) {
|
private suspend fun init(fromUsbEvent: Boolean = false) {
|
||||||
refreshing = true // We don't check this here -- the check happens in refresh()
|
refreshing = true // We don't check this here -- the check happens in refresh()
|
||||||
loadingProgress.visibility = View.VISIBLE
|
loadingProgress.isVisible = true
|
||||||
viewPager.visibility = View.GONE
|
viewPager.isVisible = false
|
||||||
tabs.visibility = View.GONE
|
tabs.isVisible = false
|
||||||
// Prevent concurrent access with any running foreground task
|
// Prevent concurrent access with any running foreground task
|
||||||
euiccChannelManagerService.waitForForegroundTask()
|
euiccChannelManagerService.waitForForegroundTask()
|
||||||
|
|
||||||
|
@ -178,10 +179,10 @@ open class MainActivity : BaseEuiccAccessActivity(), OpenEuiccContextMarker {
|
||||||
UsbCcidReaderFragment()
|
UsbCcidReaderFragment()
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
viewPager.visibility = View.VISIBLE
|
viewPager.isVisible = true
|
||||||
|
|
||||||
if (newPages.size > 1) {
|
if (newPages.size > 1) {
|
||||||
tabs.visibility = View.VISIBLE
|
tabs.isVisible = true
|
||||||
} else if (newPages.isEmpty()) {
|
} else if (newPages.isEmpty()) {
|
||||||
newPages.add(Page(-1, "") {
|
newPages.add(Page(-1, "") {
|
||||||
appContainer.uiComponentFactory.createNoEuiccPlaceholderFragment()
|
appContainer.uiComponentFactory.createNoEuiccPlaceholderFragment()
|
||||||
|
@ -193,7 +194,7 @@ open class MainActivity : BaseEuiccAccessActivity(), OpenEuiccContextMarker {
|
||||||
pages.clear()
|
pages.clear()
|
||||||
pages.addAll(newPages)
|
pages.addAll(newPages)
|
||||||
|
|
||||||
loadingProgress.visibility = View.GONE
|
loadingProgress.isVisible = false
|
||||||
pagerAdapter.notifyDataSetChanged()
|
pagerAdapter.notifyDataSetChanged()
|
||||||
// Reset the adapter so that the current view actually gets cleared
|
// Reset the adapter so that the current view actually gets cleared
|
||||||
// notifyDataSetChanged() doesn't cause the current view to be removed.
|
// notifyDataSetChanged() doesn't cause the current view to be removed.
|
||||||
|
@ -219,9 +220,9 @@ open class MainActivity : BaseEuiccAccessActivity(), OpenEuiccContextMarker {
|
||||||
if (refreshing) return
|
if (refreshing) return
|
||||||
lifecycleScope.launch {
|
lifecycleScope.launch {
|
||||||
refreshing = true
|
refreshing = true
|
||||||
loadingProgress.visibility = View.VISIBLE
|
loadingProgress.isVisible = true
|
||||||
viewPager.visibility = View.GONE
|
viewPager.isVisible = false
|
||||||
tabs.visibility = View.GONE
|
tabs.isVisible = false
|
||||||
|
|
||||||
pages.clear()
|
pages.clear()
|
||||||
pagerAdapter.notifyDataSetChanged()
|
pagerAdapter.notifyDataSetChanged()
|
||||||
|
|
|
@ -8,6 +8,7 @@ import android.view.ViewGroup
|
||||||
import android.widget.ProgressBar
|
import android.widget.ProgressBar
|
||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
import androidx.appcompat.widget.Toolbar
|
import androidx.appcompat.widget.Toolbar
|
||||||
|
import androidx.core.view.isVisible
|
||||||
import androidx.lifecycle.lifecycleScope
|
import androidx.lifecycle.lifecycleScope
|
||||||
import com.google.android.material.textfield.TextInputLayout
|
import com.google.android.material.textfield.TextInputLayout
|
||||||
import im.angry.openeuicc.common.R
|
import im.angry.openeuicc.common.R
|
||||||
|
@ -90,7 +91,7 @@ class ProfileRenameFragment : BaseMaterialDialogFragment(), EuiccChannelFragment
|
||||||
|
|
||||||
renaming = true
|
renaming = true
|
||||||
progress.isIndeterminate = true
|
progress.isIndeterminate = true
|
||||||
progress.visibility = View.VISIBLE
|
progress.isVisible = true
|
||||||
|
|
||||||
lifecycleScope.launch {
|
lifecycleScope.launch {
|
||||||
ensureEuiccChannelManager()
|
ensureEuiccChannelManager()
|
||||||
|
|
|
@ -16,6 +16,7 @@ import android.view.ViewGroup
|
||||||
import android.widget.Button
|
import android.widget.Button
|
||||||
import android.widget.ProgressBar
|
import android.widget.ProgressBar
|
||||||
import android.widget.TextView
|
import android.widget.TextView
|
||||||
|
import androidx.core.view.isVisible
|
||||||
import androidx.fragment.app.Fragment
|
import androidx.fragment.app.Fragment
|
||||||
import androidx.fragment.app.commit
|
import androidx.fragment.app.commit
|
||||||
import androidx.lifecycle.lifecycleScope
|
import androidx.lifecycle.lifecycleScope
|
||||||
|
@ -134,22 +135,22 @@ class UsbCcidReaderFragment : Fragment(), OpenEuiccContextMarker {
|
||||||
}
|
}
|
||||||
|
|
||||||
private suspend fun tryLoadUsbChannel() {
|
private suspend fun tryLoadUsbChannel() {
|
||||||
text.visibility = View.GONE
|
text.isVisible = false
|
||||||
permissionButton.visibility = View.GONE
|
permissionButton.isVisible = false
|
||||||
loadingProgress.visibility = View.VISIBLE
|
loadingProgress.isVisible = true
|
||||||
|
|
||||||
val (device, canOpen) = withContext(Dispatchers.IO) {
|
val (device, canOpen) = withContext(Dispatchers.IO) {
|
||||||
euiccChannelManager.tryOpenUsbEuiccChannel()
|
euiccChannelManager.tryOpenUsbEuiccChannel()
|
||||||
}
|
}
|
||||||
|
|
||||||
loadingProgress.visibility = View.GONE
|
loadingProgress.isVisible = false
|
||||||
|
|
||||||
usbDevice = device
|
usbDevice = device
|
||||||
|
|
||||||
if (device != null && !canOpen && !usbManager.hasPermission(device)) {
|
if (device != null && !canOpen && !usbManager.hasPermission(device)) {
|
||||||
text.text = getString(R.string.usb_permission_needed)
|
text.text = getString(R.string.usb_permission_needed)
|
||||||
text.visibility = View.VISIBLE
|
text.isVisible = true
|
||||||
permissionButton.visibility = View.VISIBLE
|
permissionButton.isVisible = true
|
||||||
} else if (device != null && canOpen) {
|
} else if (device != null && canOpen) {
|
||||||
childFragmentManager.commit {
|
childFragmentManager.commit {
|
||||||
replace(
|
replace(
|
||||||
|
@ -162,8 +163,8 @@ class UsbCcidReaderFragment : Fragment(), OpenEuiccContextMarker {
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
text.text = getString(R.string.usb_failed)
|
text.text = getString(R.string.usb_failed)
|
||||||
text.visibility = View.VISIBLE
|
text.isVisible = true
|
||||||
permissionButton.visibility = View.GONE
|
permissionButton.isVisible = false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -8,6 +8,7 @@ import androidx.activity.OnBackPressedCallback
|
||||||
import androidx.activity.enableEdgeToEdge
|
import androidx.activity.enableEdgeToEdge
|
||||||
import androidx.core.view.ViewCompat
|
import androidx.core.view.ViewCompat
|
||||||
import androidx.core.view.WindowInsetsCompat
|
import androidx.core.view.WindowInsetsCompat
|
||||||
|
import androidx.core.view.isVisible
|
||||||
import androidx.core.view.updatePadding
|
import androidx.core.view.updatePadding
|
||||||
import androidx.fragment.app.Fragment
|
import androidx.fragment.app.Fragment
|
||||||
import im.angry.openeuicc.common.R
|
import im.angry.openeuicc.common.R
|
||||||
|
@ -155,7 +156,7 @@ class DownloadWizardActivity: BaseEuiccAccessActivity() {
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onInit() {
|
override fun onInit() {
|
||||||
progressBar.visibility = View.GONE
|
progressBar.isVisible = false
|
||||||
|
|
||||||
if (state.currentStepFragmentClassName != null) {
|
if (state.currentStepFragmentClassName != null) {
|
||||||
val clazz = Class.forName(state.currentStepFragmentClassName!!)
|
val clazz = Class.forName(state.currentStepFragmentClassName!!)
|
||||||
|
@ -179,16 +180,8 @@ class DownloadWizardActivity: BaseEuiccAccessActivity() {
|
||||||
|
|
||||||
private fun refreshButtons() {
|
private fun refreshButtons() {
|
||||||
currentFragment?.let {
|
currentFragment?.let {
|
||||||
nextButton.visibility = if (it.hasNext) {
|
nextButton.isVisible = it.hasNext
|
||||||
View.VISIBLE
|
prevButton.isVisible = it.hasPrev
|
||||||
} else {
|
|
||||||
View.GONE
|
|
||||||
}
|
|
||||||
prevButton.visibility = if (it.hasPrev) {
|
|
||||||
View.VISIBLE
|
|
||||||
} else {
|
|
||||||
View.GONE
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -211,12 +204,12 @@ class DownloadWizardActivity: BaseEuiccAccessActivity() {
|
||||||
}
|
}
|
||||||
|
|
||||||
protected fun hideProgressBar() {
|
protected fun hideProgressBar() {
|
||||||
(requireActivity() as DownloadWizardActivity).progressBar.visibility = View.GONE
|
(requireActivity() as DownloadWizardActivity).progressBar.isVisible = false
|
||||||
}
|
}
|
||||||
|
|
||||||
protected fun showProgressBar(progressValue: Int) {
|
protected fun showProgressBar(progressValue: Int) {
|
||||||
(requireActivity() as DownloadWizardActivity).progressBar.apply {
|
(requireActivity() as DownloadWizardActivity).progressBar.apply {
|
||||||
visibility = View.VISIBLE
|
isVisible = true
|
||||||
if (progressValue >= 0) {
|
if (progressValue >= 0) {
|
||||||
isIndeterminate = false
|
isIndeterminate = false
|
||||||
progress = progressValue
|
progress = progressValue
|
||||||
|
|
|
@ -7,6 +7,7 @@ import android.view.ViewGroup
|
||||||
import android.widget.ImageView
|
import android.widget.ImageView
|
||||||
import android.widget.ProgressBar
|
import android.widget.ProgressBar
|
||||||
import android.widget.TextView
|
import android.widget.TextView
|
||||||
|
import androidx.core.view.isVisible
|
||||||
import androidx.lifecycle.lifecycleScope
|
import androidx.lifecycle.lifecycleScope
|
||||||
import androidx.recyclerview.widget.DividerItemDecoration
|
import androidx.recyclerview.widget.DividerItemDecoration
|
||||||
import androidx.recyclerview.widget.LinearLayoutManager
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
|
@ -200,25 +201,25 @@ class DownloadWizardProgressFragment : DownloadWizardActivity.DownloadWizardStep
|
||||||
|
|
||||||
when (item.state) {
|
when (item.state) {
|
||||||
ProgressState.NotStarted -> {
|
ProgressState.NotStarted -> {
|
||||||
progressBar.visibility = View.GONE
|
progressBar.isVisible = false
|
||||||
icon.visibility = View.GONE
|
icon.isVisible = false
|
||||||
}
|
}
|
||||||
|
|
||||||
ProgressState.InProgress -> {
|
ProgressState.InProgress -> {
|
||||||
progressBar.visibility = View.VISIBLE
|
progressBar.isVisible = true
|
||||||
icon.visibility = View.GONE
|
icon.isVisible = false
|
||||||
}
|
}
|
||||||
|
|
||||||
ProgressState.Done -> {
|
ProgressState.Done -> {
|
||||||
progressBar.visibility = View.GONE
|
progressBar.isVisible = false
|
||||||
icon.setImageResource(R.drawable.ic_checkmark_outline)
|
icon.setImageResource(R.drawable.ic_checkmark_outline)
|
||||||
icon.visibility = View.VISIBLE
|
icon.isVisible = true
|
||||||
}
|
}
|
||||||
|
|
||||||
ProgressState.Error -> {
|
ProgressState.Error -> {
|
||||||
progressBar.visibility = View.GONE
|
progressBar.isVisible = false
|
||||||
icon.setImageResource(R.drawable.ic_error_outline)
|
icon.setImageResource(R.drawable.ic_error_outline)
|
||||||
icon.visibility = View.VISIBLE
|
icon.isVisible = true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue