Fix empty media send illegal state exception.
This commit is contained in:
parent
90d4069d0a
commit
e0e25da6a9
3 changed files with 8 additions and 7 deletions
|
@ -30,6 +30,8 @@ data class MediaSelectionState(
|
|||
MediaSendConstants.MAX_PUSH
|
||||
}
|
||||
|
||||
val canSend = !isSent && selectedMedia.isNotEmpty()
|
||||
|
||||
enum class ViewOnceToggleState(val code: Int) {
|
||||
INFINITE(0),
|
||||
ONCE(1);
|
||||
|
|
|
@ -17,15 +17,15 @@ object MediaReviewAnimatorController {
|
|||
return ObjectAnimator.ofFloat(view, "translationY", view.translationX, ViewUtil.dpToPx(48).toFloat())
|
||||
}
|
||||
|
||||
fun getFadeInAnimator(view: View): Animator {
|
||||
fun getFadeInAnimator(view: View, isEnabled: Boolean = true): Animator {
|
||||
view.visible = true
|
||||
view.isEnabled = true
|
||||
view.isEnabled = isEnabled
|
||||
|
||||
return ObjectAnimator.ofFloat(view, "alpha", view.alpha, 1f)
|
||||
}
|
||||
|
||||
fun getFadeOutAnimator(view: View): Animator {
|
||||
view.isEnabled = false
|
||||
fun getFadeOutAnimator(view: View, isEnabled: Boolean = false): Animator {
|
||||
view.isEnabled = isEnabled
|
||||
|
||||
val animator = ObjectAnimator.ofFloat(view, "alpha", view.alpha, 0f)
|
||||
|
||||
|
|
|
@ -199,7 +199,6 @@ class MediaReviewFragment : Fragment(R.layout.v2_media_review_fragment) {
|
|||
presentImageQualityToggle(state.quality)
|
||||
|
||||
viewOnceButton.displayedChild = if (state.viewOnceToggleState == MediaSelectionState.ViewOnceToggleState.ONCE) 1 else 0
|
||||
sendButton.isEnabled = !state.isSent && state.selectedMedia.isNotEmpty()
|
||||
|
||||
computeViewStateAndAnimate(state)
|
||||
}
|
||||
|
@ -396,11 +395,11 @@ class MediaReviewFragment : Fragment(R.layout.v2_media_review_fragment) {
|
|||
|
||||
return slideIn + if (state.isTouchEnabled) {
|
||||
listOf(
|
||||
MediaReviewAnimatorController.getFadeInAnimator(sendButton),
|
||||
MediaReviewAnimatorController.getFadeInAnimator(sendButton, state.canSend),
|
||||
)
|
||||
} else {
|
||||
listOf(
|
||||
MediaReviewAnimatorController.getFadeOutAnimator(sendButton),
|
||||
MediaReviewAnimatorController.getFadeOutAnimator(sendButton, state.canSend),
|
||||
)
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue