Add multi-device sync for viewed status of redeemed gift badge.

fork-5.53.8
Alex Hart 2022-05-04 16:31:34 -03:00
rodzic 964d214434
commit 1b1bbbab7a
4 zmienionych plików z 7 dodań i 3 usunięć

Wyświetl plik

@ -2,6 +2,7 @@ package org.thoughtcrime.securesms.badges.gifts.thanks
import android.os.Bundle import android.os.Bundle
import androidx.fragment.app.FragmentManager import androidx.fragment.app.FragmentManager
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
import org.signal.core.util.DimensionUnit import org.signal.core.util.DimensionUnit
import org.thoughtcrime.securesms.R import org.thoughtcrime.securesms.R
import org.thoughtcrime.securesms.badges.models.Badge import org.thoughtcrime.securesms.badges.models.Badge
@ -49,7 +50,7 @@ class GiftThanksSheet : DSLSettingsBottomSheetFragment() {
BadgePreview.register(adapter) BadgePreview.register(adapter)
lifecycleDisposable.bindTo(viewLifecycleOwner) lifecycleDisposable.bindTo(viewLifecycleOwner)
lifecycleDisposable += Recipient.observable(recipientId).subscribe { lifecycleDisposable += Recipient.observable(recipientId).observeOn(AndroidSchedulers.mainThread()).subscribe {
adapter.submitList(getConfiguration(it).toMappingModelList()) adapter.submitList(getConfiguration(it).toMappingModelList())
} }
} }

Wyświetl plik

@ -104,7 +104,7 @@ class ViewReceivedGiftBottomSheet : DSLSettingsBottomSheetFragment() {
onRedemptionError(donationError) onRedemptionError(donationError)
} }
lifecycleDisposable += viewModel.state.subscribe { state -> lifecycleDisposable += viewModel.state.observeOn(AndroidSchedulers.mainThread()).subscribe { state ->
adapter.submitList(getConfiguration(state).toMappingModelList()) adapter.submitList(getConfiguration(state).toMappingModelList())
} }
} }

Wyświetl plik

@ -3,6 +3,7 @@ package org.thoughtcrime.securesms.badges.gifts.viewgift.sent
import android.os.Bundle import android.os.Bundle
import androidx.fragment.app.FragmentManager import androidx.fragment.app.FragmentManager
import androidx.fragment.app.viewModels import androidx.fragment.app.viewModels
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
import org.signal.core.util.DimensionUnit import org.signal.core.util.DimensionUnit
import org.thoughtcrime.securesms.R import org.thoughtcrime.securesms.R
import org.thoughtcrime.securesms.badges.gifts.viewgift.ViewGiftRepository import org.thoughtcrime.securesms.badges.gifts.viewgift.ViewGiftRepository
@ -55,7 +56,7 @@ class ViewSentGiftBottomSheet : DSLSettingsBottomSheetFragment() {
BadgeDisplay112.register(adapter) BadgeDisplay112.register(adapter)
lifecycleDisposable.bindTo(viewLifecycleOwner) lifecycleDisposable.bindTo(viewLifecycleOwner)
lifecycleDisposable += viewModel.state.subscribe { state -> lifecycleDisposable += viewModel.state.observeOn(AndroidSchedulers.mainThread()).subscribe { state ->
adapter.submitList(getConfiguration(state).toMappingModelList()) adapter.submitList(getConfiguration(state).toMappingModelList())
} }
} }

Wyświetl plik

@ -24,6 +24,7 @@ import org.whispersystems.signalservice.internal.EmptyResponse;
import org.whispersystems.signalservice.internal.ServiceResponse; import org.whispersystems.signalservice.internal.ServiceResponse;
import java.io.IOException; import java.io.IOException;
import java.util.Collections;
import java.util.Objects; import java.util.Objects;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
@ -179,6 +180,7 @@ public class DonationReceiptRedemptionJob extends BaseJob {
markedMessageInfo.getSyncMessageId().getRecipientId(), markedMessageInfo.getSyncMessageId().getRecipientId(),
markedMessageInfo.getSyncMessageId().getTimetamp(), markedMessageInfo.getSyncMessageId().getTimetamp(),
markedMessageInfo.getMessageId())); markedMessageInfo.getMessageId()));
MultiDeviceViewedUpdateJob.enqueue(Collections.singletonList(markedMessageInfo.getSyncMessageId()));
} }
} }
} }