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() hideKeyboard()
views.waitingView.waitingStatusText.isGone = views.waitingView.waitingStatusText.text.isNullOrBlank() views.waitingView.waitingStatusText.isGone = views.waitingView.waitingStatusText.text.isNullOrBlank()
super.showWaitingView() super.showWaitingView(text)
} }
override fun hideWaitingView() { override fun hideWaitingView() {

View File

@ -24,6 +24,7 @@ import android.view.Menu
import android.view.MenuItem import android.view.MenuItem
import android.view.View import android.view.View
import android.view.WindowManager import android.view.WindowManager
import android.widget.TextView
import androidx.annotation.AttrRes import androidx.annotation.AttrRes
import androidx.annotation.CallSuper import androidx.annotation.CallSuper
import androidx.annotation.MainThread 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.observeNotNull
import im.vector.app.core.extensions.registerStartForActivityResult import im.vector.app.core.extensions.registerStartForActivityResult
import im.vector.app.core.extensions.restart 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.extensions.vectorComponent
import im.vector.app.core.utils.toast import im.vector.app.core.utils.toast
import im.vector.app.features.MainActivity import im.vector.app.features.MainActivity
@ -520,10 +522,13 @@ abstract class VectorBaseActivity<VB: ViewBinding> : AppCompatActivity(), HasScr
fun isWaitingViewVisible() = waitingView?.isVisible == true 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 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) { when (async) {
is Loading -> { is Loading -> {
// TODO Better handling progress // TODO Better handling progress
/* TODO BMA Yes, improve that vectorBaseActivity.showWaitingView(getString(R.string.joining_room))
vectorBaseActivity.showWaitingView()
vectorBaseActivity.waitingStatusText.visibility = View.VISIBLE
vectorBaseActivity.waitingStatusText.text = getString(R.string.joining_room)
*/
} }
is Success -> { is Success -> {
navigator.openRoom(vectorBaseActivity, async()) navigator.openRoom(vectorBaseActivity, async())