diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/views/CircularProgressMaterialButton.kt b/app/src/main/java/org/thoughtcrime/securesms/util/views/CircularProgressMaterialButton.kt index b4aadffe7..2f77fcafd 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/views/CircularProgressMaterialButton.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/util/views/CircularProgressMaterialButton.kt @@ -12,8 +12,10 @@ import androidx.annotation.StringRes import androidx.core.animation.doOnEnd import androidx.core.content.withStyledAttributes import com.google.android.material.button.MaterialButton +import com.google.android.material.progressindicator.CircularProgressIndicator import com.google.android.material.theme.overlay.MaterialThemeOverlay import org.thoughtcrime.securesms.R +import org.thoughtcrime.securesms.util.visible import kotlin.math.max /** @@ -33,6 +35,7 @@ class CircularProgressMaterialButton @JvmOverloads constructor( private var animator: Animator? = null private val materialButton: MaterialButton = findViewById(R.id.button) + private val progressIndicator: CircularProgressIndicator = findViewById(R.id.progress_indicator) var text: CharSequence? get() = materialButton.text @@ -52,6 +55,12 @@ class CircularProgressMaterialButton @JvmOverloads constructor( materialButton.setText(resId) } + override fun setEnabled(enabled: Boolean) { + super.setEnabled(enabled) + materialButton.isEnabled = enabled + progressIndicator.visible = enabled + } + override fun onSaveInstanceState(): Parcelable { return Bundle().apply { putParcelable(SUPER_STATE, super.onSaveInstanceState())