Restore waiting view management

This commit is contained in:
Benoit Marty 2020-12-16 13:32:49 +01:00
parent 4ddc8e706d
commit aa0a851b35
3 changed files with 10 additions and 9 deletions

View file

@ -74,10 +74,10 @@ abstract class SimpleFragmentActivity : VectorBaseActivity<ActivityBinding>() {
}
}
override fun showWaitingView() {
override fun showWaitingView(text: String?) {
hideKeyboard()
views.waitingView.waitingStatusText.isGone = views.waitingView.waitingStatusText.text.isNullOrBlank()
super.showWaitingView()
super.showWaitingView(text)
}
override fun hideWaitingView() {

View file

@ -24,6 +24,7 @@ import android.view.Menu
import android.view.MenuItem
import android.view.View
import android.view.WindowManager
import android.widget.TextView
import androidx.annotation.AttrRes
import androidx.annotation.CallSuper
import androidx.annotation.MainThread
@ -56,6 +57,7 @@ import im.vector.app.core.extensions.observeEvent
import im.vector.app.core.extensions.observeNotNull
import im.vector.app.core.extensions.registerStartForActivityResult
import im.vector.app.core.extensions.restart
import im.vector.app.core.extensions.setTextOrHide
import im.vector.app.core.extensions.vectorComponent
import im.vector.app.core.utils.toast
import im.vector.app.features.MainActivity
@ -520,10 +522,13 @@ abstract class VectorBaseActivity<VB: ViewBinding> : AppCompatActivity(), HasScr
fun isWaitingViewVisible() = waitingView?.isVisible == true
/**
* Show the waiting view
* Show the waiting view, and set text if not null.
*/
open fun showWaitingView() {
open fun showWaitingView(text: String? = null) {
waitingView?.isVisible = true
if (text != null) {
waitingView?.findViewById<TextView>(R.id.waitingStatusText)?.setTextOrHide(text)
}
}
/**

View file

@ -1294,11 +1294,7 @@ class RoomDetailFragment @Inject constructor(
when (async) {
is Loading -> {
// TODO Better handling progress
/* TODO BMA Yes, improve that
vectorBaseActivity.showWaitingView()
vectorBaseActivity.waitingStatusText.visibility = View.VISIBLE
vectorBaseActivity.waitingStatusText.text = getString(R.string.joining_room)
*/
vectorBaseActivity.showWaitingView(getString(R.string.joining_room))
}
is Success -> {
navigator.openRoom(vectorBaseActivity, async())