Always update ViewOnceState before rendering hud.
This commit is contained in:
parent
3a151b30ac
commit
b3041ab6e0
1 changed files with 13 additions and 6 deletions
|
@ -236,12 +236,8 @@ class MediaSendViewModel extends ViewModel {
|
|||
captionVisible = getSelectedMediaOrDefault().size() > 1 || (getSelectedMediaOrDefault().size() > 0 && getSelectedMediaOrDefault().get(0).getCaption().isPresent());
|
||||
buttonState = (recipient != null) ? ButtonState.SEND : ButtonState.CONTINUE;
|
||||
|
||||
if (viewOnceState == ViewOnceState.GONE && viewOnceSupported()) {
|
||||
viewOnceState = ViewOnceState.DISABLED;
|
||||
showViewOnceTooltipIfNecessary(viewOnceState);
|
||||
} else if (!viewOnceSupported()) {
|
||||
viewOnceState = ViewOnceState.GONE;
|
||||
}
|
||||
updateViewOnceState();
|
||||
showViewOnceTooltipIfNecessary(viewOnceState);
|
||||
|
||||
railState = !isSms && viewOnceState != ViewOnceState.ENABLED ? RailState.INTERACTIVE : RailState.GONE;
|
||||
composeVisible = viewOnceState != ViewOnceState.ENABLED;
|
||||
|
@ -590,6 +586,15 @@ class MediaSendViewModel extends ViewModel {
|
|||
return mediaConstraints;
|
||||
}
|
||||
|
||||
private void updateViewOnceState() {
|
||||
if (viewOnceState == ViewOnceState.GONE && viewOnceSupported()) {
|
||||
showViewOnceTooltipIfNecessary(viewOnceState);
|
||||
viewOnceState = ViewOnceState.DISABLED;
|
||||
} else if (!viewOnceSupported()) {
|
||||
viewOnceState = ViewOnceState.GONE;
|
||||
}
|
||||
}
|
||||
|
||||
private @NonNull List<Media> getSelectedMediaOrDefault() {
|
||||
return selectedMedia.getValue() == null ? Collections.emptyList()
|
||||
: selectedMedia.getValue();
|
||||
|
@ -613,6 +618,8 @@ class MediaSendViewModel extends ViewModel {
|
|||
ButtonState updatedButtonState = buttonState == ButtonState.COUNT && selectionCount == 0 ? ButtonState.GONE : buttonState;
|
||||
boolean updatedCaptionVisible = captionVisible && (selectedMedia.size() > 1 || (selectedMedia.size() > 0 && selectedMedia.get(0).getCaption().isPresent()));
|
||||
|
||||
updateViewOnceState();
|
||||
|
||||
return new HudState(hudVisible, composeVisible, updatedCaptionVisible, selectionCount, updatedButtonState, railState, viewOnceState);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue