Make thread related utility methods available for use in all modules.

This commit is contained in:
Cody Henthorne
2021-03-01 15:44:33 -05:00
parent 38caf1e2b7
commit dc9b8169c0
47 changed files with 228 additions and 224 deletions

View File

@@ -7,9 +7,9 @@ import androidx.lifecycle.MutableLiveData;
import androidx.lifecycle.ViewModel;
import androidx.lifecycle.ViewModelProvider;
import org.signal.core.util.ThreadUtil;
import org.thoughtcrime.securesms.recipients.Recipient;
import org.thoughtcrime.securesms.util.SingleLiveEvent;
import org.thoughtcrime.securesms.util.Util;
import java.util.ArrayList;
import java.util.LinkedHashSet;
@@ -34,7 +34,7 @@ class CameraContactSelectionViewModel extends ViewModel {
this.selected = new LinkedHashSet<>();
repository.getCameraContacts(cameraContacts -> {
Util.runOnMain(() -> {
ThreadUtil.runOnMain(() -> {
contacts.postValue(new ContactState(cameraContacts, new ArrayList<>(selected), currentQuery));
});
});
@@ -56,7 +56,7 @@ class CameraContactSelectionViewModel extends ViewModel {
this.currentQuery = query;
repository.getCameraContacts(query, cameraContacts -> {
Util.runOnMain(() -> {
ThreadUtil.runOnMain(() -> {
contacts.postValue(new ContactState(cameraContacts, new ArrayList<>(selected), query));
});
});
@@ -64,7 +64,7 @@ class CameraContactSelectionViewModel extends ViewModel {
void onRefresh() {
repository.getCameraContacts(cameraContacts -> {
Util.runOnMain(() -> {
ThreadUtil.runOnMain(() -> {
contacts.postValue(new ContactState(cameraContacts, new ArrayList<>(selected), currentQuery));
});
});

View File

@@ -15,6 +15,7 @@ import androidx.lifecycle.ViewModelProvider;
import com.annimon.stream.Stream;
import org.signal.core.util.ThreadUtil;
import org.signal.core.util.logging.Log;
import org.thoughtcrime.securesms.TransportOption;
import org.thoughtcrime.securesms.database.ThreadDatabase;
@@ -144,7 +145,7 @@ class MediaSendViewModel extends ViewModel {
}
repository.getPopulatedMedia(context, newMedia, populatedMedia -> {
Util.runOnMain(() -> {
ThreadUtil.runOnMain(() -> {
List<Media> filteredMedia = getFilteredMedia(context, populatedMedia, mediaConstraints);
if (filteredMedia.size() != newMedia.size()) {
@@ -196,7 +197,7 @@ class MediaSendViewModel extends ViewModel {
selectedMedia.setValue(Collections.singletonList(media));
repository.getPopulatedMedia(context, Collections.singletonList(media), populatedMedia -> {
Util.runOnMain(() -> {
ThreadUtil.runOnMain(() -> {
List<Media> filteredMedia = getFilteredMedia(context, populatedMedia, mediaConstraints);
if (filteredMedia.isEmpty()) {
@@ -654,7 +655,7 @@ class MediaSendViewModel extends ViewModel {
// XXX We must do this to avoid sending out messages to the same recipient with the same
// sentTimestamp. If we do this, they'll be considered dupes by the receiver.
Util.sleep(5);
ThreadUtil.sleep(5);
}
MessageSender.sendMediaBroadcast(application, messages, preUploadResults);