diff --git a/app/src/main/java/org/thoughtcrime/securesms/MediaPreviewActivity.java b/app/src/main/java/org/thoughtcrime/securesms/MediaPreviewActivity.java index 688905d7a..993edddc7 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/MediaPreviewActivity.java +++ b/app/src/main/java/org/thoughtcrime/securesms/MediaPreviewActivity.java @@ -553,6 +553,8 @@ public final class MediaPreviewActivity extends PassphraseRequiredActivity } cursor = Objects.requireNonNull(data.first); + viewModel.setCursor(this, cursor, leftIsRecent); + int mediaPosition = Objects.requireNonNull(data.second); CursorPagerAdapter oldAdapter = (CursorPagerAdapter) mediaPager.getAdapter(); @@ -565,13 +567,13 @@ public final class MediaPreviewActivity extends PassphraseRequiredActivity oldAdapter.setActive(true); } - viewModel.setCursor(this, cursor, leftIsRecent); + if (oldAdapter == null || restartItem >= 0) { + int item = restartItem >= 0 ? restartItem : mediaPosition; + mediaPager.setCurrentItem(item); - int item = restartItem >= 0 ? restartItem : mediaPosition; - mediaPager.setCurrentItem(item); - - if (item == 0) { - viewPagerListener.onPageSelected(0); + if (item == 0) { + viewPagerListener.onPageSelected(0); + } } } else { mediaNotAvailable();