From d1289ec7bd200c62363bddb26d4ffd2c2f770062 Mon Sep 17 00:00:00 2001 From: Mikunj Date: Thu, 14 Nov 2019 12:00:46 +1100 Subject: [PATCH] Refactoring. --- .../securesms/ApplicationContext.java | 2 -- .../conversation/ConversationActivity.java | 19 +++++----------- .../jobs/MultiDeviceContactUpdateJob.java | 2 +- .../securesms/jobs/PushDecryptJob.java | 2 +- .../securesms/loki/FriendRequestHandler.kt | 1 - .../securesms/loki/LokiMessageSyncEvent.kt | 22 ------------------- .../securesms/loki/MultiDeviceUtilities.kt | 5 +++-- .../loki/PushBackgroundMessageSendJob.kt | 4 ---- .../push/MessageSenderEventListener.java | 1 - .../securesms/util/TextSecurePreferences.java | 2 +- 10 files changed, 12 insertions(+), 48 deletions(-) delete mode 100644 src/org/thoughtcrime/securesms/loki/LokiMessageSyncEvent.kt diff --git a/src/org/thoughtcrime/securesms/ApplicationContext.java b/src/org/thoughtcrime/securesms/ApplicationContext.java index 45d1ab5832..1a7af8b058 100644 --- a/src/org/thoughtcrime/securesms/ApplicationContext.java +++ b/src/org/thoughtcrime/securesms/ApplicationContext.java @@ -66,7 +66,6 @@ import org.thoughtcrime.securesms.logging.PersistentLogger; import org.thoughtcrime.securesms.logging.UncaughtExceptionLogger; import org.thoughtcrime.securesms.loki.BackgroundPollWorker; import org.thoughtcrime.securesms.loki.LokiAPIDatabase; -import org.thoughtcrime.securesms.loki.LokiMessageSyncEvent; import org.thoughtcrime.securesms.loki.LokiPublicChatManager; import org.thoughtcrime.securesms.loki.LokiRSSFeedPoller; import org.thoughtcrime.securesms.loki.LokiUserDatabase; @@ -82,7 +81,6 @@ import org.thoughtcrime.securesms.service.LocalBackupListener; import org.thoughtcrime.securesms.service.RotateSenderCertificateListener; import org.thoughtcrime.securesms.service.RotateSignedPreKeyListener; import org.thoughtcrime.securesms.service.UpdateApkRefreshListener; -import org.thoughtcrime.securesms.sms.MessageSender; import org.thoughtcrime.securesms.util.TextSecurePreferences; import org.thoughtcrime.securesms.util.dynamiclanguage.DynamicLanguageContextWrapper; import org.webrtc.PeerConnectionFactory; diff --git a/src/org/thoughtcrime/securesms/conversation/ConversationActivity.java b/src/org/thoughtcrime/securesms/conversation/ConversationActivity.java index bf967f8c03..6e761f90bc 100644 --- a/src/org/thoughtcrime/securesms/conversation/ConversationActivity.java +++ b/src/org/thoughtcrime/securesms/conversation/ConversationActivity.java @@ -3050,18 +3050,11 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity Address contact = DatabaseFactory.getThreadDatabase(this).getRecipientForThreadId(threadId).getAddress(); String contactPubKey = contact.toString(); - Context context = this; - AsyncTask.execute(() -> { - try { - MessageSender.sendBackgroundMessageToAllDevices(this, contactPubKey); - MessageSender.syncContact(this, contact); - DatabaseFactory.getLokiThreadDatabase(context).setFriendRequestStatus(threadId, LokiThreadFriendRequestStatus.FRIENDS); - lokiMessageDatabase.setFriendRequestStatus(friendRequest.id, LokiMessageFriendRequestStatus.REQUEST_ACCEPTED); - Util.runOnMain(this::updateInputPanel); - } catch (Exception e) { - Log.d("Loki", "Failed to send background message to: " + contactPubKey + "."); - } - }); + DatabaseFactory.getLokiThreadDatabase(this).setFriendRequestStatus(threadId, LokiThreadFriendRequestStatus.FRIENDS); + lokiMessageDatabase.setFriendRequestStatus(friendRequest.id, LokiMessageFriendRequestStatus.REQUEST_ACCEPTED); + MessageSender.sendBackgroundMessageToAllDevices(this, contactPubKey); + MessageSender.syncContact(this, contact); + updateInputPanel(); } @Override @@ -3077,7 +3070,7 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity } public boolean isNoteToSelf() { - return TextSecurePreferences.getLocalNumber(this).equalsIgnoreCase(recipient.getAddress().serialize()); + return TextSecurePreferences.getLocalNumber(this).equals(recipient.getAddress().serialize()); } // endregion } diff --git a/src/org/thoughtcrime/securesms/jobs/MultiDeviceContactUpdateJob.java b/src/org/thoughtcrime/securesms/jobs/MultiDeviceContactUpdateJob.java index 656a5718da..6479ef0b64 100644 --- a/src/org/thoughtcrime/securesms/jobs/MultiDeviceContactUpdateJob.java +++ b/src/org/thoughtcrime/securesms/jobs/MultiDeviceContactUpdateJob.java @@ -142,7 +142,7 @@ public class MultiDeviceContactUpdateJob extends BaseJob implements InjectableTy } if (address == null) generateFullContactUpdate(); - else if (!address.equalsIgnoreCase(TextSecurePreferences.getMasterHexEncodedPublicKey(context))) generateSingleContactUpdate(Address.fromSerialized(address)); + else if (!address.equals(TextSecurePreferences.getMasterHexEncodedPublicKey(context))) generateSingleContactUpdate(Address.fromSerialized(address)); } private void generateSingleContactUpdate(@NonNull Address address) diff --git a/src/org/thoughtcrime/securesms/jobs/PushDecryptJob.java b/src/org/thoughtcrime/securesms/jobs/PushDecryptJob.java index 5635f4332c..f72f9cf1a5 100644 --- a/src/org/thoughtcrime/securesms/jobs/PushDecryptJob.java +++ b/src/org/thoughtcrime/securesms/jobs/PushDecryptJob.java @@ -660,7 +660,7 @@ public class PushDecryptJob extends BaseJob implements InjectableType { // Check if we have the contact as a friend and that we're not trying to sync our own device String pubKey = deviceContact.getNumber(); Address address = Address.fromSerialized(pubKey); - if (!address.isPhone() || address.toPhoneString().equalsIgnoreCase(TextSecurePreferences.getLocalNumber(context))) { continue; } + if (!address.isPhone() || address.toPhoneString().equals(TextSecurePreferences.getLocalNumber(context))) { continue; } /* If we're not friends with the contact we received or our friend request expired then we should send them a friend request diff --git a/src/org/thoughtcrime/securesms/loki/FriendRequestHandler.kt b/src/org/thoughtcrime/securesms/loki/FriendRequestHandler.kt index a4ca3bd886..bb58f3dd88 100644 --- a/src/org/thoughtcrime/securesms/loki/FriendRequestHandler.kt +++ b/src/org/thoughtcrime/securesms/loki/FriendRequestHandler.kt @@ -5,7 +5,6 @@ import nl.komponents.kovenant.ui.successUi import org.thoughtcrime.securesms.database.DatabaseFactory import org.whispersystems.signalservice.loki.messaging.LokiMessageFriendRequestStatus import org.whispersystems.signalservice.loki.messaging.LokiThreadFriendRequestStatus -import java.lang.IllegalStateException object FriendRequestHandler { enum class ActionType { Sending, Sent, Failed } diff --git a/src/org/thoughtcrime/securesms/loki/LokiMessageSyncEvent.kt b/src/org/thoughtcrime/securesms/loki/LokiMessageSyncEvent.kt deleted file mode 100644 index 426154a3cd..0000000000 --- a/src/org/thoughtcrime/securesms/loki/LokiMessageSyncEvent.kt +++ /dev/null @@ -1,22 +0,0 @@ -package org.thoughtcrime.securesms.loki - -import android.content.Context -import android.content.Intent -import android.support.v4.content.LocalBroadcastManager - -object LokiMessageSyncEvent { - const val MESSAGE_SYNC_EVENT = "com.loki-network.messenger.MESSAGE_SYNC_EVENT" - const val MESSAGE_ID = "message_id" - const val TIMESTAMP = "timestamp" - const val SYNC_MESSAGE = "sync_message" - const val TTL = "ttl" - - fun broadcastSecurityUpdateEvent(context: Context, messageID: Long, timestamp: Long, message: ByteArray, ttl: Int) { - val intent = Intent(MESSAGE_SYNC_EVENT) - intent.putExtra(MESSAGE_ID, messageID) - intent.putExtra(TIMESTAMP, timestamp) - intent.putExtra(SYNC_MESSAGE, message) - intent.putExtra(TTL, ttl) - LocalBroadcastManager.getInstance(context).sendBroadcast(intent) - } -} \ No newline at end of file diff --git a/src/org/thoughtcrime/securesms/loki/MultiDeviceUtilities.kt b/src/org/thoughtcrime/securesms/loki/MultiDeviceUtilities.kt index 86da0c8082..257336de05 100644 --- a/src/org/thoughtcrime/securesms/loki/MultiDeviceUtilities.kt +++ b/src/org/thoughtcrime/securesms/loki/MultiDeviceUtilities.kt @@ -2,10 +2,11 @@ package org.thoughtcrime.securesms.loki import android.content.Context -import android.os.Handler -import nl.komponents.kovenant.* +import nl.komponents.kovenant.Promise +import nl.komponents.kovenant.all import nl.komponents.kovenant.functional.bind import nl.komponents.kovenant.functional.map +import nl.komponents.kovenant.toFailVoid import org.thoughtcrime.securesms.ApplicationContext import org.thoughtcrime.securesms.crypto.IdentityKeyUtil import org.thoughtcrime.securesms.database.Address diff --git a/src/org/thoughtcrime/securesms/loki/PushBackgroundMessageSendJob.kt b/src/org/thoughtcrime/securesms/loki/PushBackgroundMessageSendJob.kt index cca9031003..7533609185 100644 --- a/src/org/thoughtcrime/securesms/loki/PushBackgroundMessageSendJob.kt +++ b/src/org/thoughtcrime/securesms/loki/PushBackgroundMessageSendJob.kt @@ -2,21 +2,17 @@ package org.thoughtcrime.securesms.loki import org.thoughtcrime.securesms.ApplicationContext import org.thoughtcrime.securesms.database.DatabaseFactory -import org.thoughtcrime.securesms.dependencies.InjectableType import org.thoughtcrime.securesms.jobmanager.Data import org.thoughtcrime.securesms.jobmanager.Job import org.thoughtcrime.securesms.jobmanager.impl.NetworkConstraint import org.thoughtcrime.securesms.jobs.BaseJob import org.thoughtcrime.securesms.logging.Log import org.whispersystems.libsignal.util.guava.Optional -import org.whispersystems.signalservice.api.SignalServiceMessageSender import org.whispersystems.signalservice.api.crypto.UnidentifiedAccessPair -import org.whispersystems.signalservice.api.crypto.UntrustedIdentityException import org.whispersystems.signalservice.api.messages.SignalServiceDataMessage import org.whispersystems.signalservice.api.push.SignalServiceAddress import java.io.IOException import java.util.concurrent.TimeUnit -import javax.inject.Inject class PushBackgroundMessageSendJob private constructor( parameters: Parameters, diff --git a/src/org/thoughtcrime/securesms/push/MessageSenderEventListener.java b/src/org/thoughtcrime/securesms/push/MessageSenderEventListener.java index 6b492be25e..5cc2d886c1 100644 --- a/src/org/thoughtcrime/securesms/push/MessageSenderEventListener.java +++ b/src/org/thoughtcrime/securesms/push/MessageSenderEventListener.java @@ -4,7 +4,6 @@ import android.content.Context; import org.thoughtcrime.securesms.crypto.SecurityEvent; import org.thoughtcrime.securesms.loki.FriendRequestHandler; -import org.thoughtcrime.securesms.loki.LokiMessageSyncEvent; import org.thoughtcrime.securesms.sms.MessageSender; import org.whispersystems.signalservice.api.SignalServiceMessageSender; import org.whispersystems.signalservice.api.push.SignalServiceAddress; diff --git a/src/org/thoughtcrime/securesms/util/TextSecurePreferences.java b/src/org/thoughtcrime/securesms/util/TextSecurePreferences.java index bd72a58b59..8041fe10f4 100644 --- a/src/org/thoughtcrime/securesms/util/TextSecurePreferences.java +++ b/src/org/thoughtcrime/securesms/util/TextSecurePreferences.java @@ -1183,7 +1183,7 @@ public class TextSecurePreferences { } public static void setMasterHexEncodedPublicKey(Context context, String masterHexEncodedPublicKey) { - setStringPreference(context, "master_hex_encoded_public_key", masterHexEncodedPublicKey); + setStringPreference(context, "master_hex_encoded_public_key", masterHexEncodedPublicKey.toLowerCase()); } // endregion }