Ensure MP4 Gif vertical position updates as content slides.

This commit is contained in:
Alex Hart
2021-10-25 15:23:15 -03:00
committed by GitHub
parent 8f007a23cd
commit 5113f8b203
5 changed files with 25 additions and 13 deletions

View File

@@ -101,6 +101,7 @@ import org.thoughtcrime.securesms.database.model.MessageRecord;
import org.thoughtcrime.securesms.database.model.MmsMessageRecord;
import org.thoughtcrime.securesms.database.model.ReactionRecord;
import org.thoughtcrime.securesms.dependencies.ApplicationDependencies;
import org.thoughtcrime.securesms.giph.mp4.GiphyMp4ItemDecoration;
import org.thoughtcrime.securesms.giph.mp4.GiphyMp4Playable;
import org.thoughtcrime.securesms.giph.mp4.GiphyMp4PlaybackController;
import org.thoughtcrime.securesms.giph.mp4.GiphyMp4PlaybackPolicy;
@@ -366,6 +367,7 @@ public class ConversationFragment extends LoggingFragment implements Multiselect
GiphyMp4ProjectionRecycler callback = new GiphyMp4ProjectionRecycler(holders);
GiphyMp4PlaybackController.attach(list, callback, maxPlayback);
list.addItemDecoration(new GiphyMp4ItemDecoration(callback), 0);
return callback;
}

View File

@@ -1715,10 +1715,12 @@ public final class ConversationItem extends RelativeLayout implements BindableCo
public @NonNull Projection getGiphyMp4PlayableProjection(@NonNull ViewGroup recyclerView) {
if (mediaThumbnailStub != null && mediaThumbnailStub.isResolvable()) {
return Projection.relativeToParent(recyclerView, mediaThumbnailStub.require(), mediaThumbnailStub.require().getCorners())
.translateY(getTranslationY())
.translateX(bodyBubble.getTranslationX())
.translateX(getTranslationX());
} else {
return Projection.relativeToParent(recyclerView, bodyBubble, bodyBubbleCorners)
.translateY(getTranslationY())
.translateX(bodyBubble.getTranslationX())
.translateX(getTranslationX());
}