diff --git a/app/src/androidTest/java/org/thoughtcrime/securesms/testing/InAppPaymentsRule.kt b/app/src/androidTest/java/org/thoughtcrime/securesms/testing/InAppPaymentsRule.kt index 807bc78f99..8518746645 100644 --- a/app/src/androidTest/java/org/thoughtcrime/securesms/testing/InAppPaymentsRule.kt +++ b/app/src/androidTest/java/org/thoughtcrime/securesms/testing/InAppPaymentsRule.kt @@ -8,9 +8,9 @@ package org.thoughtcrime.securesms.testing import androidx.test.platform.app.InstrumentationRegistry import io.mockk.every import org.junit.rules.ExternalResource +import org.signal.core.util.JsonUtils import org.signal.network.NetworkResult import org.thoughtcrime.securesms.dependencies.AppDependencies -import org.thoughtcrime.securesms.util.JsonUtils import org.whispersystems.signalservice.internal.push.SubscriptionsConfiguration /** diff --git a/app/src/androidTest/java/org/thoughtcrime/securesms/testing/incomingmessageobserver/IncomingMessageObserverDependencyProvider.kt b/app/src/androidTest/java/org/thoughtcrime/securesms/testing/incomingmessageobserver/IncomingMessageObserverDependencyProvider.kt index 45070e7e01..566ae7121c 100644 --- a/app/src/androidTest/java/org/thoughtcrime/securesms/testing/incomingmessageobserver/IncomingMessageObserverDependencyProvider.kt +++ b/app/src/androidTest/java/org/thoughtcrime/securesms/testing/incomingmessageobserver/IncomingMessageObserverDependencyProvider.kt @@ -2,13 +2,13 @@ package org.thoughtcrime.securesms.testing.incomingmessageobserver import android.app.Application import org.signal.benchmark.setup.NoOpJob +import org.signal.core.util.UptimeSleepTimer import org.signal.libsignal.net.Network import org.thoughtcrime.securesms.dependencies.AppDependencies import org.thoughtcrime.securesms.dependencies.ApplicationDependencyProvider import org.thoughtcrime.securesms.dependencies.InstrumentationApplicationDependencyProvider import org.thoughtcrime.securesms.jobmanager.JobManager import org.thoughtcrime.securesms.jobs.JobManagerFactories -import org.whispersystems.signalservice.api.util.UptimeSleepTimer import org.whispersystems.signalservice.api.websocket.SignalWebSocket import org.whispersystems.signalservice.internal.configuration.SignalServiceConfiguration import org.whispersystems.signalservice.internal.websocket.BenchmarkWebSocketConnection diff --git a/app/src/benchmark/java/org/thoughtcrime/securesms/BenchmarkApplicationContext.kt b/app/src/benchmark/java/org/thoughtcrime/securesms/BenchmarkApplicationContext.kt index ddd3ed5895..ab13a23203 100644 --- a/app/src/benchmark/java/org/thoughtcrime/securesms/BenchmarkApplicationContext.kt +++ b/app/src/benchmark/java/org/thoughtcrime/securesms/BenchmarkApplicationContext.kt @@ -7,13 +7,13 @@ package org.thoughtcrime.securesms import android.app.Application import org.signal.benchmark.setup.NoOpJob +import org.signal.core.util.UptimeSleepTimer import org.signal.libsignal.net.Network import org.thoughtcrime.securesms.dependencies.AppDependencies import org.thoughtcrime.securesms.dependencies.ApplicationDependencyProvider import org.thoughtcrime.securesms.jobmanager.JobManager import org.thoughtcrime.securesms.jobs.JobManagerFactories import org.thoughtcrime.securesms.net.DeviceTransferBlockingInterceptor -import org.whispersystems.signalservice.api.util.UptimeSleepTimer import org.whispersystems.signalservice.api.websocket.SignalWebSocket import org.whispersystems.signalservice.internal.configuration.SignalServiceConfiguration import org.whispersystems.signalservice.internal.websocket.BenchmarkWebSocketConnection diff --git a/app/src/benchmarkShared/java/org/whispersystems/signalservice/internal/websocket/BenchmarkWebSocketConnection.kt b/app/src/benchmarkShared/java/org/whispersystems/signalservice/internal/websocket/BenchmarkWebSocketConnection.kt index 3767c28795..0b894e274b 100644 --- a/app/src/benchmarkShared/java/org/whispersystems/signalservice/internal/websocket/BenchmarkWebSocketConnection.kt +++ b/app/src/benchmarkShared/java/org/whispersystems/signalservice/internal/websocket/BenchmarkWebSocketConnection.kt @@ -11,7 +11,7 @@ import io.reactivex.rxjava3.subjects.BehaviorSubject import org.signal.network.websocket.WebSocketRequestMessage import org.signal.network.websocket.WebSocketResponseMessage import org.signal.network.websocket.WebsocketResponse -import org.thoughtcrime.securesms.util.JsonUtils +import org.signal.core.util.JsonUtils import org.thoughtcrime.securesms.util.SignalTrace import org.whispersystems.signalservice.api.websocket.WebSocketConnectionState import org.whispersystems.signalservice.internal.push.SendMessageResponse diff --git a/app/src/main/java/org/thoughtcrime/securesms/ApplicationContext.java b/app/src/main/java/org/thoughtcrime/securesms/ApplicationContext.java index ffad47a8d9..dd6a02e9ab 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/ApplicationContext.java +++ b/app/src/main/java/org/thoughtcrime/securesms/ApplicationContext.java @@ -109,7 +109,7 @@ import org.thoughtcrime.securesms.service.webrtc.ActiveCallManager; import org.thoughtcrime.securesms.service.webrtc.CallingAssets; import org.thoughtcrime.securesms.service.webrtc.AndroidTelecomUtil; import org.thoughtcrime.securesms.storage.StorageSyncHelper; -import org.thoughtcrime.securesms.util.AppForegroundObserver; +import org.signal.core.util.AppForegroundObserver; import org.thoughtcrime.securesms.util.AppStartup; import org.thoughtcrime.securesms.util.DeviceProperties; import org.thoughtcrime.securesms.util.DynamicTheme; diff --git a/app/src/main/java/org/thoughtcrime/securesms/BaseActivity.java b/app/src/main/java/org/thoughtcrime/securesms/BaseActivity.java index aea7d4c298..a7bf8c21fa 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/BaseActivity.java +++ b/app/src/main/java/org/thoughtcrime/securesms/BaseActivity.java @@ -16,7 +16,7 @@ import androidx.core.app.ActivityOptionsCompat; import org.signal.core.util.logging.Log; import org.thoughtcrime.securesms.dependencies.AppDependencies; import org.thoughtcrime.securesms.util.AppStartup; -import org.thoughtcrime.securesms.util.ConfigurationUtil; +import org.signal.core.util.ConfigurationUtil; import org.thoughtcrime.securesms.util.WindowUtil; import org.thoughtcrime.securesms.util.dynamiclanguage.DynamicLanguageContextWrapper; diff --git a/app/src/main/java/org/thoughtcrime/securesms/BiometricDeviceAuthentication.kt b/app/src/main/java/org/thoughtcrime/securesms/BiometricDeviceAuthentication.kt index f6b2c8b760..799d4bf5b5 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/BiometricDeviceAuthentication.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/BiometricDeviceAuthentication.kt @@ -10,8 +10,8 @@ import androidx.activity.result.contract.ActivityResultContract import androidx.biometric.BiometricManager import androidx.biometric.BiometricPrompt import androidx.biometric.BiometricPrompt.PromptInfo +import org.signal.core.util.ServiceUtil import org.signal.core.util.logging.Log -import org.thoughtcrime.securesms.util.ServiceUtil /** * Authentication using phone biometric (face, fingerprint recognition) or device lock (pattern, pin or passphrase). diff --git a/app/src/main/java/org/thoughtcrime/securesms/MainActivity.kt b/app/src/main/java/org/thoughtcrime/securesms/MainActivity.kt index b895d2579b..33bc4b2b1c 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/MainActivity.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/MainActivity.kt @@ -87,6 +87,7 @@ import org.signal.core.ui.compose.Snackbars import org.signal.core.ui.compose.theme.SignalTheme import org.signal.core.ui.permissions.Permissions import org.signal.core.ui.rememberIsSplitPane +import org.signal.core.util.AppForegroundObserver import org.signal.core.util.Util import org.signal.core.util.concurrent.LifecycleDisposable import org.signal.core.util.getParcelableCompat @@ -179,7 +180,6 @@ import org.thoughtcrime.securesms.stories.Stories import org.thoughtcrime.securesms.stories.archive.StoryArchiveActivity import org.thoughtcrime.securesms.stories.landing.StoriesLandingFragment import org.thoughtcrime.securesms.stories.settings.StorySettingsActivity -import org.thoughtcrime.securesms.util.AppForegroundObserver import org.thoughtcrime.securesms.util.AppStartup import org.thoughtcrime.securesms.util.CachedInflater import org.thoughtcrime.securesms.util.CommunicationActions diff --git a/app/src/main/java/org/thoughtcrime/securesms/PassphraseRequiredActivity.java b/app/src/main/java/org/thoughtcrime/securesms/PassphraseRequiredActivity.java index f69f0e5540..ada95e41ec 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/PassphraseRequiredActivity.java +++ b/app/src/main/java/org/thoughtcrime/securesms/PassphraseRequiredActivity.java @@ -33,7 +33,7 @@ import org.thoughtcrime.securesms.registration.ui.RegistrationActivity; import org.thoughtcrime.securesms.util.Environment; import org.thoughtcrime.securesms.restore.RestoreActivity; import org.thoughtcrime.securesms.service.KeyCachingService; -import org.thoughtcrime.securesms.util.AppForegroundObserver; +import org.signal.core.util.AppForegroundObserver; import org.thoughtcrime.securesms.util.AppStartup; import org.thoughtcrime.securesms.util.TextSecurePreferences; diff --git a/app/src/main/java/org/thoughtcrime/securesms/apkupdate/ApkUpdateInstaller.kt b/app/src/main/java/org/thoughtcrime/securesms/apkupdate/ApkUpdateInstaller.kt index 67a4f6259f..a308535288 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/apkupdate/ApkUpdateInstaller.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/apkupdate/ApkUpdateInstaller.kt @@ -11,6 +11,7 @@ import android.content.Context import android.content.Intent import android.content.pm.PackageInstaller import android.os.Build +import org.signal.core.util.AppForegroundObserver import org.signal.core.util.PendingIntentFlags import org.signal.core.util.StreamUtil import org.signal.core.util.getDownloadManager @@ -18,7 +19,6 @@ import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.dependencies.AppDependencies import org.thoughtcrime.securesms.jobs.ApkUpdateJob import org.thoughtcrime.securesms.keyvalue.SignalStore -import org.thoughtcrime.securesms.util.AppForegroundObserver import org.thoughtcrime.securesms.util.FileUtils import java.io.FileInputStream import java.io.IOException diff --git a/app/src/main/java/org/thoughtcrime/securesms/apkupdate/ApkUpdateNotifications.kt b/app/src/main/java/org/thoughtcrime/securesms/apkupdate/ApkUpdateNotifications.kt index 2ecda5f622..78636f8c80 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/apkupdate/ApkUpdateNotifications.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/apkupdate/ApkUpdateNotifications.kt @@ -12,12 +12,12 @@ import android.content.Intent import androidx.core.app.NotificationCompat import androidx.core.content.ContextCompat import org.signal.core.util.PendingIntentFlags +import org.signal.core.util.ServiceUtil import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.MainActivity import org.thoughtcrime.securesms.R import org.thoughtcrime.securesms.notifications.NotificationChannels import org.thoughtcrime.securesms.notifications.NotificationIds -import org.thoughtcrime.securesms.util.ServiceUtil object ApkUpdateNotifications { diff --git a/app/src/main/java/org/thoughtcrime/securesms/attachments/Attachment.kt b/app/src/main/java/org/thoughtcrime/securesms/attachments/Attachment.kt index 0370ae022b..9207d12d34 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/attachments/Attachment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/attachments/Attachment.kt @@ -10,11 +10,11 @@ import android.os.Parcelable import androidx.core.os.ParcelCompat import org.signal.blurhash.BlurHash import org.signal.core.models.media.TransformProperties +import org.signal.core.util.ParcelUtil import org.signal.core.util.UuidUtil import org.thoughtcrime.securesms.audio.AudioHash import org.thoughtcrime.securesms.database.AttachmentTable import org.thoughtcrime.securesms.stickers.StickerLocator -import org.thoughtcrime.securesms.util.ParcelUtil import java.util.UUID import kotlin.time.Duration.Companion.days import kotlin.time.Duration.Companion.milliseconds diff --git a/app/src/main/java/org/thoughtcrime/securesms/attachments/DatabaseAttachment.kt b/app/src/main/java/org/thoughtcrime/securesms/attachments/DatabaseAttachment.kt index da7ed4455c..1ec6300ccd 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/attachments/DatabaseAttachment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/attachments/DatabaseAttachment.kt @@ -5,11 +5,11 @@ import android.os.Parcel import androidx.core.os.ParcelCompat import org.signal.blurhash.BlurHash import org.signal.core.models.media.TransformProperties +import org.signal.core.util.ParcelUtil import org.thoughtcrime.securesms.audio.AudioHash import org.thoughtcrime.securesms.database.AttachmentTable import org.thoughtcrime.securesms.mms.PartAuthority import org.thoughtcrime.securesms.stickers.StickerLocator -import org.thoughtcrime.securesms.util.ParcelUtil import java.util.UUID class DatabaseAttachment : Attachment { diff --git a/app/src/main/java/org/thoughtcrime/securesms/audio/AudioHash.java b/app/src/main/java/org/thoughtcrime/securesms/audio/AudioHash.java index 701a379361..8d15adfc79 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/audio/AudioHash.java +++ b/app/src/main/java/org/thoughtcrime/securesms/audio/AudioHash.java @@ -7,7 +7,7 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import org.thoughtcrime.securesms.database.model.databaseprotos.AudioWaveFormData; -import org.thoughtcrime.securesms.util.ParcelUtil; +import org.signal.core.util.ParcelUtil; import org.signal.core.util.Base64; import java.io.IOException; diff --git a/app/src/main/java/org/thoughtcrime/securesms/audio/AudioRecorderFocusManager.kt b/app/src/main/java/org/thoughtcrime/securesms/audio/AudioRecorderFocusManager.kt index 0b53ef6f54..7ea64843b1 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/audio/AudioRecorderFocusManager.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/audio/AudioRecorderFocusManager.kt @@ -7,7 +7,7 @@ import android.media.AudioManager import android.media.AudioManager.OnAudioFocusChangeListener import android.os.Build import androidx.annotation.RequiresApi -import org.thoughtcrime.securesms.util.ServiceUtil +import org.signal.core.util.ServiceUtil abstract class AudioRecorderFocusManager(val context: Context) { protected val audioManager: AudioManager = ServiceUtil.getAudioManager(context) diff --git a/app/src/main/java/org/thoughtcrime/securesms/backup/v2/ArchiveDatabaseExecutor.kt b/app/src/main/java/org/thoughtcrime/securesms/backup/v2/ArchiveDatabaseExecutor.kt index eb5560db42..c93dc3a94c 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/backup/v2/ArchiveDatabaseExecutor.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/backup/v2/ArchiveDatabaseExecutor.kt @@ -6,8 +6,8 @@ package org.thoughtcrime.securesms.backup.v2 import androidx.annotation.VisibleForTesting +import org.signal.core.util.ThrottledDebouncer import org.thoughtcrime.securesms.dependencies.AppDependencies -import org.thoughtcrime.securesms.util.ThrottledDebouncer import java.util.concurrent.ExecutionException import java.util.concurrent.Executors import kotlin.time.Duration.Companion.seconds diff --git a/app/src/main/java/org/thoughtcrime/securesms/backup/v2/BackupRepository.kt b/app/src/main/java/org/thoughtcrime/securesms/backup/v2/BackupRepository.kt index 8e9c77f615..fabad0906e 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/backup/v2/BackupRepository.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/backup/v2/BackupRepository.kt @@ -40,6 +40,7 @@ import org.signal.core.util.CursorUtil import org.signal.core.util.DiskUtil import org.signal.core.util.EventTimer import org.signal.core.util.PendingIntentFlags.cancelCurrent +import org.signal.core.util.ServiceUtil import org.signal.core.util.Stopwatch import org.signal.core.util.bytes import org.signal.core.util.concurrent.LimitedWorker @@ -147,7 +148,6 @@ import org.thoughtcrime.securesms.service.BackupMediaRestoreService import org.thoughtcrime.securesms.service.BackupProgressService import org.thoughtcrime.securesms.storage.StorageSyncHelper import org.thoughtcrime.securesms.util.RemoteConfig -import org.thoughtcrime.securesms.util.ServiceUtil import org.thoughtcrime.securesms.util.TextSecurePreferences import org.thoughtcrime.securesms.util.toMillis import org.whispersystems.signalservice.api.archive.ArchiveGetMediaItemsResponse diff --git a/app/src/main/java/org/thoughtcrime/securesms/backup/v2/exporters/ChatItemArchiveExporter.kt b/app/src/main/java/org/thoughtcrime/securesms/backup/v2/exporters/ChatItemArchiveExporter.kt index 7653f9407d..1565ff57ce 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/backup/v2/exporters/ChatItemArchiveExporter.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/backup/v2/exporters/ChatItemArchiveExporter.kt @@ -45,6 +45,7 @@ import org.signal.core.models.ServiceId import org.signal.core.util.Base64 import org.signal.core.util.EventTimer import org.signal.core.util.Hex +import org.signal.core.util.JsonUtils import org.signal.core.util.ParallelEventTimer import org.signal.core.util.StringUtil import org.signal.core.util.UuidUtil @@ -105,7 +106,6 @@ import org.thoughtcrime.securesms.payments.FailureReason import org.thoughtcrime.securesms.payments.State import org.thoughtcrime.securesms.polls.PollRecord import org.thoughtcrime.securesms.recipients.RecipientId -import org.thoughtcrime.securesms.util.JsonUtils import org.thoughtcrime.securesms.util.MediaUtil import org.thoughtcrime.securesms.util.mb import java.io.Closeable diff --git a/app/src/main/java/org/thoughtcrime/securesms/backup/v2/importer/ChatItemArchiveImporter.kt b/app/src/main/java/org/thoughtcrime/securesms/backup/v2/importer/ChatItemArchiveImporter.kt index 4b565e132e..c816cbacc9 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/backup/v2/importer/ChatItemArchiveImporter.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/backup/v2/importer/ChatItemArchiveImporter.kt @@ -27,6 +27,7 @@ import org.signal.archive.proto.ViewOnceMessage import org.signal.core.models.ServiceId import org.signal.core.util.Base64 import org.signal.core.util.Hex +import org.signal.core.util.JsonUtils import org.signal.core.util.SqlUtil import org.signal.core.util.UuidUtil import org.signal.core.util.asList @@ -81,7 +82,6 @@ import org.thoughtcrime.securesms.recipients.Recipient import org.thoughtcrime.securesms.recipients.RecipientId import org.thoughtcrime.securesms.stickers.StickerLocator import org.thoughtcrime.securesms.util.Environment -import org.thoughtcrime.securesms.util.JsonUtils import org.thoughtcrime.securesms.util.MessageUtil import org.whispersystems.signalservice.api.payments.Money import org.whispersystems.signalservice.internal.push.DataMessage diff --git a/app/src/main/java/org/thoughtcrime/securesms/backup/v2/ui/subscription/MessageBackupsTypeSelectionScreen.kt b/app/src/main/java/org/thoughtcrime/securesms/backup/v2/ui/subscription/MessageBackupsTypeSelectionScreen.kt index eb1289ab69..24da8a36c3 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/backup/v2/ui/subscription/MessageBackupsTypeSelectionScreen.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/backup/v2/ui/subscription/MessageBackupsTypeSelectionScreen.kt @@ -52,6 +52,7 @@ import org.signal.core.ui.compose.Previews import org.signal.core.ui.compose.Scaffolds import org.signal.core.ui.compose.SignalIcons import org.signal.core.ui.compose.theme.SignalTheme +import org.signal.core.util.ByteUnit import org.signal.core.util.billing.BillingResponseCode import org.signal.core.util.bytes import org.signal.core.util.money.FiatMoney @@ -60,7 +61,6 @@ import org.thoughtcrime.securesms.backup.v2.MessageBackupTier import org.thoughtcrime.securesms.fonts.SignalSymbols import org.thoughtcrime.securesms.fonts.SignalSymbols.signalSymbolText import org.thoughtcrime.securesms.payments.FiatMoneyUtil -import org.thoughtcrime.securesms.util.ByteUnit import java.math.BigDecimal import java.util.Currency import kotlin.time.Duration.Companion.days diff --git a/app/src/main/java/org/thoughtcrime/securesms/badges/gifts/flow/GiftFlowConfirmationFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/badges/gifts/flow/GiftFlowConfirmationFragment.kt index 11cf9b89fe..b5a7dee16f 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/badges/gifts/flow/GiftFlowConfirmationFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/badges/gifts/flow/GiftFlowConfirmationFragment.kt @@ -13,6 +13,7 @@ import com.google.android.material.button.MaterialButton import com.google.android.material.dialog.MaterialAlertDialogBuilder import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.subjects.PublishSubject +import org.signal.core.util.Debouncer import org.signal.core.util.concurrent.LifecycleDisposable import org.signal.core.util.getParcelableCompat import org.signal.core.util.money.FiatMoney @@ -39,7 +40,6 @@ import org.thoughtcrime.securesms.keyboard.emoji.EmojiKeyboardPageFragment import org.thoughtcrime.securesms.keyboard.emoji.search.EmojiSearchFragment import org.thoughtcrime.securesms.payments.FiatMoneyUtil import org.thoughtcrime.securesms.payments.currency.CurrencyUtil -import org.thoughtcrime.securesms.util.Debouncer import org.thoughtcrime.securesms.util.activityViewModel import org.thoughtcrime.securesms.util.adapter.mapping.MappingAdapter import org.thoughtcrime.securesms.util.navigation.safeNavigate diff --git a/app/src/main/java/org/thoughtcrime/securesms/banner/banners/DozeBanner.kt b/app/src/main/java/org/thoughtcrime/securesms/banner/banners/DozeBanner.kt index f83ca946ae..84627cbb30 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/banner/banners/DozeBanner.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/banner/banners/DozeBanner.kt @@ -14,13 +14,13 @@ import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.flowOf import org.signal.core.ui.compose.DayNightPreviews import org.signal.core.ui.compose.Previews +import org.signal.core.util.ServiceUtil import org.thoughtcrime.securesms.R import org.thoughtcrime.securesms.banner.Banner import org.thoughtcrime.securesms.banner.ui.compose.Action import org.thoughtcrime.securesms.banner.ui.compose.DefaultBanner import org.thoughtcrime.securesms.keyvalue.SignalStore import org.thoughtcrime.securesms.util.PowerManagerCompat -import org.thoughtcrime.securesms.util.ServiceUtil import org.thoughtcrime.securesms.util.TextSecurePreferences class DozeBanner(private val context: Context, private val onDismissListener: () -> Unit) : Banner() { diff --git a/app/src/main/java/org/thoughtcrime/securesms/calls/log/CallLogPeekHelper.kt b/app/src/main/java/org/thoughtcrime/securesms/calls/log/CallLogPeekHelper.kt index 957d0b9628..602f527a1c 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/calls/log/CallLogPeekHelper.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/calls/log/CallLogPeekHelper.kt @@ -9,14 +9,14 @@ import android.os.Bundle import android.os.ResultReceiver import androidx.lifecycle.DefaultLifecycleObserver import androidx.lifecycle.LifecycleOwner +import org.signal.core.util.ThrottledDebouncer +import org.signal.core.util.concurrent.SerialExecutor import org.signal.core.util.concurrent.SignalExecutors import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.dependencies.AppDependencies import org.thoughtcrime.securesms.recipients.RecipientId import org.thoughtcrime.securesms.service.webrtc.ActiveCallData import org.thoughtcrime.securesms.service.webrtc.links.CallLinkRoomId -import org.thoughtcrime.securesms.util.ThrottledDebouncer -import org.thoughtcrime.securesms.util.concurrent.SerialExecutor import java.util.concurrent.Executor import kotlin.time.Duration.Companion.days import kotlin.time.Duration.Companion.seconds diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/ContactFilterView.java b/app/src/main/java/org/thoughtcrime/securesms/components/ContactFilterView.java index bd866d492c..3a304f1c20 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/ContactFilterView.java +++ b/app/src/main/java/org/thoughtcrime/securesms/components/ContactFilterView.java @@ -21,7 +21,7 @@ import androidx.core.widget.TextViewCompat; import org.thoughtcrime.securesms.R; import org.thoughtcrime.securesms.util.EditTextExtensionsKt; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; import org.thoughtcrime.securesms.util.TextSecurePreferences; import org.thoughtcrime.securesms.util.ViewUtil; diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/FromTextView.java b/app/src/main/java/org/thoughtcrime/securesms/components/FromTextView.java index e2a6ff3244..bb51b3f77b 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/FromTextView.java +++ b/app/src/main/java/org/thoughtcrime/securesms/components/FromTextView.java @@ -13,7 +13,7 @@ import org.signal.core.util.ContextUtil; import org.thoughtcrime.securesms.R; import org.thoughtcrime.securesms.components.emoji.SimpleEmojiTextView; import org.thoughtcrime.securesms.recipients.Recipient; -import org.thoughtcrime.securesms.util.DrawableUtil; +import org.signal.core.util.DrawableUtil; import org.thoughtcrime.securesms.util.RemoteConfig; import org.thoughtcrime.securesms.util.SpanUtil; import org.thoughtcrime.securesms.util.ViewUtil; diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/InputAwareLayout.java b/app/src/main/java/org/thoughtcrime/securesms/components/InputAwareLayout.java index dae12efa93..e7cc25feb8 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/InputAwareLayout.java +++ b/app/src/main/java/org/thoughtcrime/securesms/components/InputAwareLayout.java @@ -8,7 +8,7 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import org.thoughtcrime.securesms.components.KeyboardAwareLinearLayout.OnKeyboardShownListener; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; public class InputAwareLayout extends KeyboardAwareLinearLayout implements OnKeyboardShownListener { private InputView current; diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/KeyboardAwareLinearLayout.java b/app/src/main/java/org/thoughtcrime/securesms/components/KeyboardAwareLinearLayout.java index 2bb1609e93..a97156b359 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/KeyboardAwareLinearLayout.java +++ b/app/src/main/java/org/thoughtcrime/securesms/components/KeyboardAwareLinearLayout.java @@ -30,7 +30,7 @@ import androidx.appcompat.widget.LinearLayoutCompat; import org.signal.core.util.logging.Log; import org.thoughtcrime.securesms.R; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; import org.signal.core.util.Util; import org.thoughtcrime.securesms.util.ViewUtil; diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/emoji/EmojiEditText.java b/app/src/main/java/org/thoughtcrime/securesms/components/emoji/EmojiEditText.java index 6fd9023e01..4f0d1ec346 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/emoji/EmojiEditText.java +++ b/app/src/main/java/org/thoughtcrime/securesms/components/emoji/EmojiEditText.java @@ -18,7 +18,7 @@ import org.thoughtcrime.securesms.R; import org.thoughtcrime.securesms.components.emoji.EmojiProvider.EmojiDrawable; import org.thoughtcrime.securesms.keyvalue.SignalStore; import org.thoughtcrime.securesms.util.EditTextExtensionsKt; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; import org.thoughtcrime.securesms.util.TextSecurePreferences; import org.signal.core.util.Util; diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/emoji/EmojiPageView.java b/app/src/main/java/org/thoughtcrime/securesms/components/emoji/EmojiPageView.java index a13d4e8cae..81c906226b 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/emoji/EmojiPageView.java +++ b/app/src/main/java/org/thoughtcrime/securesms/components/emoji/EmojiPageView.java @@ -20,7 +20,7 @@ import org.thoughtcrime.securesms.R; import org.thoughtcrime.securesms.components.emoji.EmojiPageViewGridAdapter.EmojiHeader; import org.thoughtcrime.securesms.components.emoji.EmojiPageViewGridAdapter.EmojiNoResultsModel; import org.thoughtcrime.securesms.components.emoji.EmojiPageViewGridAdapter.VariationSelectorListener; -import org.thoughtcrime.securesms.util.DrawableUtil; +import org.signal.core.util.DrawableUtil; import org.thoughtcrime.securesms.util.ViewUtil; import org.thoughtcrime.securesms.util.adapter.mapping.MappingModel; diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/emoji/RecentEmojiPageModel.java b/app/src/main/java/org/thoughtcrime/securesms/components/emoji/RecentEmojiPageModel.java index e63db3d42e..2fbcffb2b7 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/emoji/RecentEmojiPageModel.java +++ b/app/src/main/java/org/thoughtcrime/securesms/components/emoji/RecentEmojiPageModel.java @@ -16,7 +16,7 @@ import com.fasterxml.jackson.databind.type.TypeFactory; import org.signal.core.util.concurrent.SignalExecutors; import org.signal.core.util.logging.Log; import org.thoughtcrime.securesms.R; -import org.thoughtcrime.securesms.util.JsonUtils; +import org.signal.core.util.JsonUtils; import java.io.IOException; import java.util.ArrayList; diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/emoji/SimpleEmojiTextView.kt b/app/src/main/java/org/thoughtcrime/securesms/components/emoji/SimpleEmojiTextView.kt index bda9337983..a7577a0383 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/emoji/SimpleEmojiTextView.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/emoji/SimpleEmojiTextView.kt @@ -6,9 +6,9 @@ import android.text.Spanned import android.text.TextUtils import android.util.AttributeSet import androidx.appcompat.widget.AppCompatTextView +import org.signal.core.util.ThrottledDebouncer import org.thoughtcrime.securesms.components.spoiler.SpoilerRendererDelegate import org.thoughtcrime.securesms.keyvalue.SignalStore -import org.thoughtcrime.securesms.util.ThrottledDebouncer import java.util.Optional open class SimpleEmojiTextView @JvmOverloads constructor( diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/location/SignalPlace.java b/app/src/main/java/org/thoughtcrime/securesms/components/location/SignalPlace.java index 70035a073a..7a21ae775f 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/location/SignalPlace.java +++ b/app/src/main/java/org/thoughtcrime/securesms/components/location/SignalPlace.java @@ -13,7 +13,7 @@ import com.google.android.gms.maps.model.LatLng; import org.signal.core.util.logging.Log; import org.thoughtcrime.securesms.maps.AddressData; -import org.thoughtcrime.securesms.util.JsonUtils; +import org.signal.core.util.JsonUtils; import java.io.IOException; diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/mention/MentionRendererDelegate.java b/app/src/main/java/org/thoughtcrime/securesms/components/mention/MentionRendererDelegate.java index b69a4a69bc..8b83ef59f0 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/mention/MentionRendererDelegate.java +++ b/app/src/main/java/org/thoughtcrime/securesms/components/mention/MentionRendererDelegate.java @@ -14,7 +14,7 @@ import androidx.core.graphics.drawable.DrawableCompat; import org.signal.core.util.ContextUtil; import org.thoughtcrime.securesms.R; import org.thoughtcrime.securesms.components.spoiler.SpoilerAnnotation; -import org.thoughtcrime.securesms.util.DrawableUtil; +import org.signal.core.util.DrawableUtil; import org.signal.core.util.Util; import org.thoughtcrime.securesms.util.ViewUtil; diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/account/AccountSettingsFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/account/AccountSettingsFragment.kt index 1912f80cbc..637725e6ce 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/account/AccountSettingsFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/account/AccountSettingsFragment.kt @@ -45,6 +45,7 @@ import org.signal.core.ui.compose.Previews import org.signal.core.ui.compose.Rows import org.signal.core.ui.compose.Scaffolds import org.signal.core.ui.compose.Texts +import org.signal.core.util.ServiceUtil import org.thoughtcrime.securesms.R import org.thoughtcrime.securesms.compose.rememberStatusBarColorNestedScrollModifier import org.thoughtcrime.securesms.contactshare.SimpleTextWatcher @@ -56,7 +57,6 @@ import org.thoughtcrime.securesms.lock.v2.SvrConstants import org.thoughtcrime.securesms.pin.RegistrationLockV2Dialog import org.thoughtcrime.securesms.registration.ui.RegistrationActivity import org.thoughtcrime.securesms.util.PlayStoreUtil -import org.thoughtcrime.securesms.util.ServiceUtil import org.thoughtcrime.securesms.util.ViewUtil import org.thoughtcrime.securesms.util.navigation.safeNavigate import org.whispersystems.signalservice.api.kbs.PinHashUtil diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/account/export/ExportAccountDataRepository.kt b/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/account/export/ExportAccountDataRepository.kt index 0afcd372dc..692f521b24 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/account/export/ExportAccountDataRepository.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/account/export/ExportAccountDataRepository.kt @@ -5,10 +5,10 @@ import com.fasterxml.jackson.databind.JsonNode import com.fasterxml.jackson.databind.node.ObjectNode import io.reactivex.rxjava3.core.Single import io.reactivex.rxjava3.schedulers.Schedulers +import org.signal.core.util.JsonUtils import org.signal.network.NetworkResult import org.thoughtcrime.securesms.net.SignalNetwork import org.thoughtcrime.securesms.providers.BlobProvider -import org.thoughtcrime.securesms.util.JsonUtils class ExportAccountDataRepository { diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/chats/ChatsSettingsViewModel.kt b/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/chats/ChatsSettingsViewModel.kt index e11a3064fd..0d95b15cd6 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/chats/ChatsSettingsViewModel.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/chats/ChatsSettingsViewModel.kt @@ -8,6 +8,7 @@ import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.update import kotlinx.coroutines.launch +import org.signal.core.util.ThrottledDebouncer import org.thoughtcrime.securesms.backup.LocalExportProgress import org.thoughtcrime.securesms.components.settings.app.chats.folders.ChatFoldersRepository import org.thoughtcrime.securesms.dependencies.AppDependencies @@ -17,7 +18,6 @@ import org.thoughtcrime.securesms.util.BackupUtil import org.thoughtcrime.securesms.util.ConversationUtil import org.thoughtcrime.securesms.util.RemoteConfig import org.thoughtcrime.securesms.util.TextSecurePreferences -import org.thoughtcrime.securesms.util.ThrottledDebouncer class ChatsSettingsViewModel @JvmOverloads constructor( private val repository: ChatsSettingsRepository = ChatsSettingsRepository() diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/privacy/PrivacySettingsFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/privacy/PrivacySettingsFragment.kt index 0b9b5112a6..fc1bc1ea5a 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/privacy/PrivacySettingsFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/privacy/PrivacySettingsFragment.kt @@ -22,6 +22,7 @@ import androidx.navigation.fragment.navArgs import androidx.preference.PreferenceManager import com.google.android.material.dialog.MaterialAlertDialogBuilder import com.google.android.material.snackbar.Snackbar +import org.signal.core.util.ServiceUtil import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.BiometricDeviceAuthentication import org.thoughtcrime.securesms.BiometricDeviceLockContract @@ -41,7 +42,6 @@ import org.thoughtcrime.securesms.keyvalue.SignalStore import org.thoughtcrime.securesms.service.KeyCachingService import org.thoughtcrime.securesms.util.CommunicationActions import org.thoughtcrime.securesms.util.ExpirationUtil -import org.thoughtcrime.securesms.util.ServiceUtil import org.thoughtcrime.securesms.util.SpanUtil import org.thoughtcrime.securesms.util.TextSecurePreferences import org.thoughtcrime.securesms.util.adapter.mapping.LayoutFactory diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/settings/conversation/preferences/BioTextPreference.kt b/app/src/main/java/org/thoughtcrime/securesms/components/settings/conversation/preferences/BioTextPreference.kt index 7704556670..37048228d6 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/settings/conversation/preferences/BioTextPreference.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/settings/conversation/preferences/BioTextPreference.kt @@ -6,11 +6,11 @@ import android.text.SpannableStringBuilder import android.view.View import android.widget.TextView import android.widget.Toast +import org.signal.core.util.ServiceUtil import org.thoughtcrime.securesms.R import org.thoughtcrime.securesms.components.settings.PreferenceModel import org.thoughtcrime.securesms.fonts.SignalSymbols import org.thoughtcrime.securesms.recipients.Recipient -import org.thoughtcrime.securesms.util.ServiceUtil import org.thoughtcrime.securesms.util.adapter.mapping.LayoutFactory import org.thoughtcrime.securesms.util.adapter.mapping.MappingAdapter import org.thoughtcrime.securesms.util.adapter.mapping.MappingViewHolder diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/settings/conversation/sounds/custom/CustomNotificationsSettingsRepository.kt b/app/src/main/java/org/thoughtcrime/securesms/components/settings/conversation/sounds/custom/CustomNotificationsSettingsRepository.kt index 93b5945fda..9b10221de9 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/settings/conversation/sounds/custom/CustomNotificationsSettingsRepository.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/settings/conversation/sounds/custom/CustomNotificationsSettingsRepository.kt @@ -3,6 +3,7 @@ package org.thoughtcrime.securesms.components.settings.conversation.sounds.custo import android.content.Context import android.net.Uri import androidx.annotation.WorkerThread +import org.signal.core.util.concurrent.SerialExecutor import org.signal.core.util.concurrent.SignalExecutors import org.thoughtcrime.securesms.database.RecipientTable import org.thoughtcrime.securesms.database.SignalDatabase @@ -10,7 +11,6 @@ import org.thoughtcrime.securesms.keyvalue.SignalStore import org.thoughtcrime.securesms.notifications.NotificationChannels import org.thoughtcrime.securesms.recipients.Recipient import org.thoughtcrime.securesms.recipients.RecipientId -import org.thoughtcrime.securesms.util.concurrent.SerialExecutor class CustomNotificationsSettingsRepository(context: Context) { diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/spoiler/SpoilerRendererDelegate.kt b/app/src/main/java/org/thoughtcrime/securesms/components/spoiler/SpoilerRendererDelegate.kt index c5f2a6de7a..4717b9cc3e 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/spoiler/SpoilerRendererDelegate.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/spoiler/SpoilerRendererDelegate.kt @@ -11,9 +11,9 @@ import android.widget.TextView import androidx.core.content.ContextCompat import androidx.lifecycle.DefaultLifecycleObserver import androidx.lifecycle.LifecycleOwner +import org.signal.core.util.AccessibilityUtil import org.signal.core.util.dp import org.thoughtcrime.securesms.components.spoiler.SpoilerAnnotation.SpoilerClickableSpan -import org.thoughtcrime.securesms.util.AccessibilityUtil import org.thoughtcrime.securesms.util.getLifecycle import org.signal.core.ui.R as CoreUiR diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/transfercontrols/TransferControlView.kt b/app/src/main/java/org/thoughtcrime/securesms/components/transfercontrols/TransferControlView.kt index 1225f3b225..768b75d6c1 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/transfercontrols/TransferControlView.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/transfercontrols/TransferControlView.kt @@ -18,6 +18,7 @@ import org.greenrobot.eventbus.EventBus import org.greenrobot.eventbus.Subscribe import org.greenrobot.eventbus.ThreadMode import org.signal.core.util.ByteSize +import org.signal.core.util.ThrottledDebouncer import org.signal.core.util.bytes import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.R @@ -29,7 +30,6 @@ import org.thoughtcrime.securesms.databinding.TransferControlsViewBinding import org.thoughtcrime.securesms.events.PartProgressEvent import org.thoughtcrime.securesms.mms.Slide import org.thoughtcrime.securesms.util.MediaUtil -import org.thoughtcrime.securesms.util.ThrottledDebouncer import org.thoughtcrime.securesms.util.ViewUtil import org.thoughtcrime.securesms.util.visible import java.util.UUID diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/voice/VoiceNoteProximityWakeLockManager.kt b/app/src/main/java/org/thoughtcrime/securesms/components/voice/VoiceNoteProximityWakeLockManager.kt index fe8b4613ae..8a3f7bf8b7 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/voice/VoiceNoteProximityWakeLockManager.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/voice/VoiceNoteProximityWakeLockManager.kt @@ -14,9 +14,9 @@ import androidx.lifecycle.LifecycleOwner import androidx.media3.common.Player import androidx.media3.session.MediaController import androidx.media3.session.SessionCommand +import org.signal.core.util.ServiceUtil import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.dependencies.AppDependencies -import org.thoughtcrime.securesms.util.ServiceUtil import org.thoughtcrime.securesms.webrtc.audio.AudioManagerCompat import java.util.concurrent.TimeUnit diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/webrtc/v2/WebRtcCallActivity.kt b/app/src/main/java/org/thoughtcrime/securesms/components/webrtc/v2/WebRtcCallActivity.kt index 564c413eb9..b8fd8831fc 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/webrtc/v2/WebRtcCallActivity.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/webrtc/v2/WebRtcCallActivity.kt @@ -49,7 +49,9 @@ import org.greenrobot.eventbus.Subscribe import org.greenrobot.eventbus.ThreadMode import org.signal.core.ui.BottomSheetUtil import org.signal.core.ui.permissions.Permissions +import org.signal.core.util.EllapsedTimeFormatter import org.signal.core.util.ThreadUtil +import org.signal.core.util.ThrottledDebouncer import org.signal.core.util.concurrent.LifecycleDisposable import org.signal.core.util.concurrent.SignalExecutors import org.signal.core.util.isInMultiWindowModeCompat @@ -81,11 +83,9 @@ import org.thoughtcrime.securesms.safety.SafetyNumberBottomSheet import org.thoughtcrime.securesms.service.webrtc.CallLinkDisconnectReason import org.thoughtcrime.securesms.service.webrtc.SignalCallManager import org.thoughtcrime.securesms.sms.MessageSender -import org.thoughtcrime.securesms.util.EllapsedTimeFormatter import org.thoughtcrime.securesms.util.FullscreenHelper import org.thoughtcrime.securesms.util.RemoteConfig import org.thoughtcrime.securesms.util.TextSecurePreferences -import org.thoughtcrime.securesms.util.ThrottledDebouncer import org.thoughtcrime.securesms.util.VibrateUtil import org.thoughtcrime.securesms.webrtc.CallParticipantsViewState import org.thoughtcrime.securesms.webrtc.audio.SignalAudioManager diff --git a/app/src/main/java/org/thoughtcrime/securesms/contactshare/Contact.java b/app/src/main/java/org/thoughtcrime/securesms/contactshare/Contact.java index e0990c7cd2..1425df4dd1 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/contactshare/Contact.java +++ b/app/src/main/java/org/thoughtcrime/securesms/contactshare/Contact.java @@ -16,7 +16,7 @@ import org.thoughtcrime.securesms.attachments.Attachment; import org.thoughtcrime.securesms.attachments.AttachmentId; import org.thoughtcrime.securesms.attachments.UriAttachment; import org.thoughtcrime.securesms.database.AttachmentTable; -import org.thoughtcrime.securesms.util.JsonUtils; +import org.signal.core.util.JsonUtils; import org.thoughtcrime.securesms.util.MediaUtil; import java.io.IOException; diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationItemSwipeCallback.java b/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationItemSwipeCallback.java index dd6af68118..210200bf13 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationItemSwipeCallback.java +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationItemSwipeCallback.java @@ -13,8 +13,8 @@ import androidx.recyclerview.widget.ItemTouchHelper; import androidx.recyclerview.widget.RecyclerView; import org.thoughtcrime.securesms.conversation.v2.items.InteractiveConversationElement; -import org.thoughtcrime.securesms.util.AccessibilityUtil; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.AccessibilityUtil; +import org.signal.core.util.ServiceUtil; import java.util.Objects; diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationSearchViewModel.java b/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationSearchViewModel.java index ab3f125771..976237f983 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationSearchViewModel.java +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationSearchViewModel.java @@ -9,7 +9,7 @@ import androidx.lifecycle.ViewModelProvider; import org.signal.core.util.ThreadUtil; import org.thoughtcrime.securesms.search.MessageResult; import org.thoughtcrime.securesms.search.SearchRepository; -import org.thoughtcrime.securesms.util.Debouncer; +import org.signal.core.util.Debouncer; import java.util.Collections; import java.util.List; diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationTitleView.java b/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationTitleView.java index 25766b5e51..455a82e044 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationTitleView.java +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationTitleView.java @@ -23,7 +23,7 @@ import org.thoughtcrime.securesms.avatar.view.AvatarView; import org.thoughtcrime.securesms.badges.BadgeImageView; import org.thoughtcrime.securesms.database.model.StoryViewState; import org.thoughtcrime.securesms.recipients.Recipient; -import org.thoughtcrime.securesms.util.DrawableUtil; +import org.signal.core.util.DrawableUtil; import org.thoughtcrime.securesms.util.ExpirationUtil; import org.thoughtcrime.securesms.util.ViewUtil; diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationUpdateItem.java b/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationUpdateItem.java index af0be1b506..2813c7b07b 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationUpdateItem.java +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationUpdateItem.java @@ -56,7 +56,7 @@ import org.thoughtcrime.securesms.keyvalue.SignalStore; import org.thoughtcrime.securesms.recipients.LiveRecipient; import org.thoughtcrime.securesms.recipients.Recipient; import org.thoughtcrime.securesms.util.DateUtils; -import org.thoughtcrime.securesms.util.DrawableUtil; +import org.signal.core.util.DrawableUtil; import org.thoughtcrime.securesms.util.ExpirationUtil; import org.thoughtcrime.securesms.util.IdentityUtil; import org.thoughtcrime.securesms.util.MessageRecordUtil; diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/MarkReadHelper.java b/app/src/main/java/org/thoughtcrime/securesms/conversation/MarkReadHelper.java index 62d436b77e..691a86fe52 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/MarkReadHelper.java +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/MarkReadHelper.java @@ -24,7 +24,7 @@ import org.thoughtcrime.securesms.database.model.ReactionRecord; import org.thoughtcrime.securesms.dependencies.AppDependencies; import org.thoughtcrime.securesms.notifications.MarkReadReceiver; import org.thoughtcrime.securesms.notifications.v2.ConversationId; -import org.thoughtcrime.securesms.util.Debouncer; +import org.signal.core.util.Debouncer; import org.thoughtcrime.securesms.util.concurrent.SerialMonoLifoExecutor; import java.util.Collections; diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/ReenableScheduledMessagesDialogFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/conversation/ReenableScheduledMessagesDialogFragment.kt index 9967becbdd..0e3cc5d16a 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/ReenableScheduledMessagesDialogFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/ReenableScheduledMessagesDialogFragment.kt @@ -16,9 +16,9 @@ import androidx.core.os.bundleOf import androidx.fragment.app.FragmentManager import org.signal.core.ui.BottomSheetUtil import org.signal.core.ui.FixedRoundedCornerBottomSheetDialogFragment +import org.signal.core.util.ServiceUtil import org.thoughtcrime.securesms.R import org.thoughtcrime.securesms.keyvalue.SignalStore -import org.thoughtcrime.securesms.util.ServiceUtil import org.thoughtcrime.securesms.util.fragments.findListener /** diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/ScheduleMessageFtuxBottomSheetDialog.kt b/app/src/main/java/org/thoughtcrime/securesms/conversation/ScheduleMessageFtuxBottomSheetDialog.kt index cd0f2764ad..5a311ffb74 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/ScheduleMessageFtuxBottomSheetDialog.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/ScheduleMessageFtuxBottomSheetDialog.kt @@ -11,11 +11,11 @@ import android.view.ViewGroup import androidx.activity.result.ActivityResultLauncher import androidx.activity.result.contract.ActivityResultContracts import org.signal.core.ui.FixedRoundedCornerBottomSheetDialogFragment +import org.signal.core.util.ServiceUtil import org.thoughtcrime.securesms.R import org.thoughtcrime.securesms.components.ViewBinderDelegate import org.thoughtcrime.securesms.databinding.ScheduleMessageFtuxBottomSheetBinding import org.thoughtcrime.securesms.keyvalue.SignalStore -import org.thoughtcrime.securesms.util.ServiceUtil import org.thoughtcrime.securesms.util.fragments.findListener class ScheduleMessageFtuxBottomSheetDialog : FixedRoundedCornerBottomSheetDialogFragment() { diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/ui/error/SafetyNumberChangeAdapter.java b/app/src/main/java/org/thoughtcrime/securesms/conversation/ui/error/SafetyNumberChangeAdapter.java index 904f5a546a..dd412ddba3 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/ui/error/SafetyNumberChangeAdapter.java +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/ui/error/SafetyNumberChangeAdapter.java @@ -17,7 +17,7 @@ import org.thoughtcrime.securesms.R; import org.thoughtcrime.securesms.components.AvatarImageView; import org.thoughtcrime.securesms.components.FromTextView; import org.thoughtcrime.securesms.database.model.IdentityRecord; -import org.thoughtcrime.securesms.util.DrawableUtil; +import org.signal.core.util.DrawableUtil; import org.thoughtcrime.securesms.util.ViewUtil; import org.thoughtcrime.securesms.util.adapter.AlwaysChangedDiffUtil; diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationActivity.kt b/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationActivity.kt index 98a4c53f5c..bcc4d7e877 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationActivity.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationActivity.kt @@ -12,6 +12,8 @@ import androidx.lifecycle.lifecycleScope import io.reactivex.rxjava3.subjects.PublishSubject import io.reactivex.rxjava3.subjects.Subject import kotlinx.coroutines.launch +import org.signal.core.util.ConfigurationUtil +import org.signal.core.util.Debouncer import org.signal.core.util.logging.Log import org.signal.core.util.logging.Log.tag import org.thoughtcrime.securesms.MainActivity @@ -27,8 +29,6 @@ import org.thoughtcrime.securesms.jobs.ConversationShortcutUpdateJob import org.thoughtcrime.securesms.main.MainNavigationChatDetailRouter import org.thoughtcrime.securesms.main.MainNavigationDetailLocation import org.thoughtcrime.securesms.messagedetails.MessageDetailsFragment -import org.thoughtcrime.securesms.util.ConfigurationUtil -import org.thoughtcrime.securesms.util.Debouncer import org.thoughtcrime.securesms.util.DynamicNoActionBarTheme import java.util.concurrent.TimeUnit diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationFragment.kt index dac4300695..da05777b05 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationFragment.kt @@ -120,6 +120,8 @@ import org.signal.core.ui.permissions.Permissions import org.signal.core.ui.util.ThemeUtil import org.signal.core.ui.view.Stub import org.signal.core.util.ByteLimitInputFilter +import org.signal.core.util.Debouncer +import org.signal.core.util.DrawableUtil import org.signal.core.util.PendingIntentFlags import org.signal.core.util.Result import org.signal.core.util.ThreadUtil @@ -350,11 +352,9 @@ import org.thoughtcrime.securesms.util.BubbleUtil import org.thoughtcrime.securesms.util.CommunicationActions import org.thoughtcrime.securesms.util.ConversationUtil import org.thoughtcrime.securesms.util.DateUtils -import org.thoughtcrime.securesms.util.Debouncer import org.thoughtcrime.securesms.util.DeleteDialog import org.thoughtcrime.securesms.util.Dialogs import org.thoughtcrime.securesms.util.DoubleClickDebouncer -import org.thoughtcrime.securesms.util.DrawableUtil import org.thoughtcrime.securesms.util.FileProviderUtil import org.thoughtcrime.securesms.util.FullscreenHelper import org.thoughtcrime.securesms.util.MediaUtil diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationRepository.kt b/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationRepository.kt index de8826ca10..70ab7fadf5 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationRepository.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationRepository.kt @@ -24,6 +24,7 @@ import io.reactivex.rxjava3.core.Maybe import io.reactivex.rxjava3.core.Single import io.reactivex.rxjava3.core.SingleEmitter import io.reactivex.rxjava3.schedulers.Schedulers +import org.signal.core.util.DrawableUtil import org.signal.core.util.StreamUtil import org.signal.core.util.Util import org.signal.core.util.concurrent.MaybeCompat @@ -92,7 +93,7 @@ import org.thoughtcrime.securesms.recipients.RecipientUtil import org.thoughtcrime.securesms.sms.MessageSender import org.thoughtcrime.securesms.sms.MessageSender.PreUploadResult import org.thoughtcrime.securesms.transport.UndeliverableMessageException -import org.thoughtcrime.securesms.util.DrawableUtil +import org.thoughtcrime.securesms.util.AdaptiveBitmapMetrics import org.thoughtcrime.securesms.util.GroupUtil import org.thoughtcrime.securesms.util.MediaUtil import org.thoughtcrime.securesms.util.MessageUtil @@ -898,9 +899,9 @@ class ConversationRepository( override fun transformToFinalBitmap(): Single { return Single.create { val bitmap = if (Build.VERSION.SDK_INT <= 25) { - DrawableUtil.wrapBitmapForShortcutInfo(DrawableUtil.toBitmap(drawable, SHORTCUT_ICON_SIZE, SHORTCUT_ICON_SIZE)) + AdaptiveBitmapMetrics.wrapBitmap(DrawableUtil.toBitmap(drawable, SHORTCUT_ICON_SIZE, SHORTCUT_ICON_SIZE)) } else { - DrawableUtil.wrapBitmapForShortcutInfo(drawable.toBitmap(SHORTCUT_ICON_SIZE, SHORTCUT_ICON_SIZE)) + AdaptiveBitmapMetrics.wrapBitmap(drawable.toBitmap(SHORTCUT_ICON_SIZE, SHORTCUT_ICON_SIZE)) } it.setCancellable { bitmap.recycle() @@ -913,7 +914,7 @@ class ConversationRepository( class BitmapResult(private val bitmap: Bitmap) : ContactPhotoResult { override fun transformToFinalBitmap(): Single { return Single.create { - val bitmap = DrawableUtil.wrapBitmapForShortcutInfo(bitmap) + val bitmap = AdaptiveBitmapMetrics.wrapBitmap(bitmap) it.setCancellable { bitmap.recycle() } diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/VoiceMessageRecordingDelegate.kt b/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/VoiceMessageRecordingDelegate.kt index d44a03abda..a3f04c9a8a 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/VoiceMessageRecordingDelegate.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/VoiceMessageRecordingDelegate.kt @@ -16,6 +16,7 @@ import io.reactivex.rxjava3.core.SingleObserver import io.reactivex.rxjava3.disposables.CompositeDisposable import io.reactivex.rxjava3.disposables.Disposable import io.reactivex.rxjava3.schedulers.Schedulers +import org.signal.core.util.ServiceUtil import org.signal.core.util.concurrent.LifecycleDisposable import org.signal.core.util.concurrent.addTo import org.signal.core.util.logging.Log @@ -23,7 +24,6 @@ import org.thoughtcrime.securesms.R import org.thoughtcrime.securesms.audio.AudioRecorder import org.thoughtcrime.securesms.components.voice.VoiceNoteDraft import org.thoughtcrime.securesms.conversation.VoiceRecorderWakeLock -import org.thoughtcrime.securesms.util.ServiceUtil import java.util.concurrent.TimeUnit /** diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListFragment.java b/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListFragment.java index 7adde86f4d..7bda5541df 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListFragment.java +++ b/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListFragment.java @@ -157,13 +157,13 @@ import org.thoughtcrime.securesms.search.MessageResult; import org.thoughtcrime.securesms.search.SearchFilter; import org.thoughtcrime.securesms.search.SearchFilterBottomSheet; import org.thoughtcrime.securesms.sms.MessageSender; -import org.thoughtcrime.securesms.util.AppForegroundObserver; +import org.signal.core.util.AppForegroundObserver; import org.thoughtcrime.securesms.util.AppStartup; import org.signal.core.ui.BottomSheetUtil; import org.signal.core.ui.view.Stub; import org.thoughtcrime.securesms.util.CachedInflater; import org.thoughtcrime.securesms.util.ConversationUtil; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; import org.thoughtcrime.securesms.util.RemoteConfig; import org.thoughtcrime.securesms.util.SignalLocalMetrics; import org.thoughtcrime.securesms.util.SignalProxyUtil; diff --git a/app/src/main/java/org/thoughtcrime/securesms/crash/CrashConfig.kt b/app/src/main/java/org/thoughtcrime/securesms/crash/CrashConfig.kt index e4a24f1c65..9c63a7fdf0 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/crash/CrashConfig.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/crash/CrashConfig.kt @@ -8,10 +8,10 @@ package org.thoughtcrime.securesms.crash import androidx.annotation.VisibleForTesting import com.fasterxml.jackson.annotation.JsonProperty import org.signal.core.models.ServiceId +import org.signal.core.util.BucketingUtil +import org.signal.core.util.JsonUtils import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.keyvalue.SignalStore -import org.thoughtcrime.securesms.util.BucketingUtil -import org.thoughtcrime.securesms.util.JsonUtils import org.thoughtcrime.securesms.util.RemoteConfig import java.io.IOException diff --git a/app/src/main/java/org/thoughtcrime/securesms/crypto/AttachmentSecret.java b/app/src/main/java/org/thoughtcrime/securesms/crypto/AttachmentSecret.java index 7d16ec6f62..8987cf0378 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/crypto/AttachmentSecret.java +++ b/app/src/main/java/org/thoughtcrime/securesms/crypto/AttachmentSecret.java @@ -16,7 +16,7 @@ import com.fasterxml.jackson.databind.SerializerProvider; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import org.thoughtcrime.securesms.util.JsonUtils; +import org.signal.core.util.JsonUtils; import java.io.IOException; diff --git a/app/src/main/java/org/thoughtcrime/securesms/crypto/IdentityKeyParcelable.java b/app/src/main/java/org/thoughtcrime/securesms/crypto/IdentityKeyParcelable.java index c7827f26de..f117740366 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/crypto/IdentityKeyParcelable.java +++ b/app/src/main/java/org/thoughtcrime/securesms/crypto/IdentityKeyParcelable.java @@ -21,7 +21,7 @@ import android.os.Parcelable; import androidx.annotation.Nullable; -import org.thoughtcrime.securesms.util.ParcelUtil; +import org.signal.core.util.ParcelUtil; import org.signal.libsignal.protocol.IdentityKey; import org.signal.libsignal.protocol.InvalidKeyException; diff --git a/app/src/main/java/org/thoughtcrime/securesms/crypto/KeyStoreHelper.java b/app/src/main/java/org/thoughtcrime/securesms/crypto/KeyStoreHelper.java index ae3bd2b03f..669dca58c7 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/crypto/KeyStoreHelper.java +++ b/app/src/main/java/org/thoughtcrime/securesms/crypto/KeyStoreHelper.java @@ -20,7 +20,7 @@ import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import org.signal.core.util.logging.Log; -import org.thoughtcrime.securesms.util.JsonUtils; +import org.signal.core.util.JsonUtils; import java.io.IOException; import java.security.InvalidAlgorithmParameterException; diff --git a/app/src/main/java/org/thoughtcrime/securesms/database/DatabaseObserver.java b/app/src/main/java/org/thoughtcrime/securesms/database/DatabaseObserver.java index 1ae0684ef0..d5ca55cea6 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/database/DatabaseObserver.java +++ b/app/src/main/java/org/thoughtcrime/securesms/database/DatabaseObserver.java @@ -9,7 +9,7 @@ import org.thoughtcrime.securesms.database.model.MessageId; import org.thoughtcrime.securesms.recipients.Recipient; import org.thoughtcrime.securesms.recipients.RecipientId; import org.thoughtcrime.securesms.service.webrtc.links.CallLinkRoomId; -import org.thoughtcrime.securesms.util.concurrent.SerialExecutor; +import org.signal.core.util.concurrent.SerialExecutor; import java.util.Collection; import java.util.HashMap; diff --git a/app/src/main/java/org/thoughtcrime/securesms/database/MessageTable.kt b/app/src/main/java/org/thoughtcrime/securesms/database/MessageTable.kt index b136b950ff..c85cf09416 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/database/MessageTable.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/database/MessageTable.kt @@ -30,6 +30,7 @@ import org.json.JSONObject import org.signal.core.models.ServiceId import org.signal.core.util.Base64 import org.signal.core.util.CursorUtil +import org.signal.core.util.JsonUtils import org.signal.core.util.SqlUtil import org.signal.core.util.SqlUtil.buildArgs import org.signal.core.util.SqlUtil.buildSingleCollectionQuery @@ -141,7 +142,6 @@ import org.thoughtcrime.securesms.revealable.ViewOnceUtil import org.thoughtcrime.securesms.sms.GroupV2UpdateMessageUtil import org.thoughtcrime.securesms.stories.Stories.isFeatureEnabled import org.thoughtcrime.securesms.util.DateUtils -import org.thoughtcrime.securesms.util.JsonUtils import org.thoughtcrime.securesms.util.MediaUtil import org.thoughtcrime.securesms.util.MessageConstraintsUtil import org.thoughtcrime.securesms.util.RemoteConfig diff --git a/app/src/main/java/org/thoughtcrime/securesms/database/ThreadTable.kt b/app/src/main/java/org/thoughtcrime/securesms/database/ThreadTable.kt index 4676f921bb..91519cc78f 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/database/ThreadTable.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/database/ThreadTable.kt @@ -12,6 +12,8 @@ import org.json.JSONObject import org.jsoup.helper.StringUtil import org.signal.core.models.ServiceId import org.signal.core.util.CursorUtil +import org.signal.core.util.JsonUtils +import org.signal.core.util.JsonUtils.SaneJSONObject import org.signal.core.util.LRUCache import org.signal.core.util.SqlUtil import org.signal.core.util.Stopwatch @@ -68,8 +70,6 @@ import org.thoughtcrime.securesms.recipients.RecipientId import org.thoughtcrime.securesms.recipients.RecipientUtil import org.thoughtcrime.securesms.storage.StorageSyncHelper import org.thoughtcrime.securesms.util.ConversationUtil -import org.thoughtcrime.securesms.util.JsonUtils -import org.thoughtcrime.securesms.util.JsonUtils.SaneJSONObject import org.thoughtcrime.securesms.util.SignalTrace import org.thoughtcrime.securesms.util.TextSecurePreferences import org.thoughtcrime.securesms.util.isPoll diff --git a/app/src/main/java/org/thoughtcrime/securesms/database/helpers/migration/V149_LegacyMigrations.kt b/app/src/main/java/org/thoughtcrime/securesms/database/helpers/migration/V149_LegacyMigrations.kt index f080301565..51afc3a19b 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/database/helpers/migration/V149_LegacyMigrations.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/database/helpers/migration/V149_LegacyMigrations.kt @@ -17,6 +17,7 @@ import org.signal.core.models.ServiceId.ACI import org.signal.core.util.Base64 import org.signal.core.util.CursorUtil import org.signal.core.util.Hex +import org.signal.core.util.ServiceUtil import org.signal.core.util.SqlUtil import org.signal.core.util.Stopwatch import org.signal.core.util.Util @@ -39,7 +40,6 @@ import org.thoughtcrime.securesms.notifications.NotificationChannels import org.thoughtcrime.securesms.profiles.ProfileName import org.thoughtcrime.securesms.storage.StorageSyncHelper import org.thoughtcrime.securesms.util.FileUtils -import org.thoughtcrime.securesms.util.ServiceUtil import org.thoughtcrime.securesms.util.SignalE164Util import org.whispersystems.signalservice.api.push.DistributionId import java.io.File diff --git a/app/src/main/java/org/thoughtcrime/securesms/delete/DeleteAccountRepository.java b/app/src/main/java/org/thoughtcrime/securesms/delete/DeleteAccountRepository.java index 8611ca459b..3cdf67a257 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/delete/DeleteAccountRepository.java +++ b/app/src/main/java/org/thoughtcrime/securesms/delete/DeleteAccountRepository.java @@ -16,7 +16,7 @@ import org.thoughtcrime.securesms.database.model.InAppPaymentSubscriberRecord; import org.thoughtcrime.securesms.dependencies.AppDependencies; import org.thoughtcrime.securesms.groups.GroupManager; import org.thoughtcrime.securesms.net.SignalNetwork; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; import org.whispersystems.signalservice.api.NetworkResultUtil; import org.signal.network.exceptions.NonSuccessfulResponseCodeException; import org.whispersystems.signalservice.internal.EmptyResponse; diff --git a/app/src/main/java/org/thoughtcrime/securesms/dependencies/ApplicationDependencyProvider.java b/app/src/main/java/org/thoughtcrime/securesms/dependencies/ApplicationDependencyProvider.java index a8aad0a918..5cc9de31ff 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/dependencies/ApplicationDependencyProvider.java +++ b/app/src/main/java/org/thoughtcrime/securesms/dependencies/ApplicationDependencyProvider.java @@ -91,8 +91,8 @@ import org.thoughtcrime.securesms.service.webrtc.SignalCallManager; import org.thoughtcrime.securesms.shakereport.ShakeToReport; import org.thoughtcrime.securesms.stories.Stories; import org.thoughtcrime.securesms.util.AlarmSleepTimer; -import org.thoughtcrime.securesms.util.AppForegroundObserver; -import org.thoughtcrime.securesms.util.ByteUnit; +import org.signal.core.util.AppForegroundObserver; +import org.signal.core.util.ByteUnit; import org.thoughtcrime.securesms.util.EarlyMessageCache; import org.thoughtcrime.securesms.util.Environment; import org.thoughtcrime.securesms.util.FrameRateTracker; @@ -120,8 +120,8 @@ import org.whispersystems.signalservice.api.services.DonationsService; import org.whispersystems.signalservice.api.services.ProfileService; import org.whispersystems.signalservice.api.storage.StorageServiceApi; import org.whispersystems.signalservice.api.util.CredentialsProvider; -import org.whispersystems.signalservice.api.util.SleepTimer; -import org.whispersystems.signalservice.api.util.UptimeSleepTimer; +import org.signal.core.util.SleepTimer; +import org.signal.core.util.UptimeSleepTimer; import org.whispersystems.signalservice.api.websocket.SignalWebSocket; import org.whispersystems.signalservice.api.websocket.WebSocketFactory; import org.whispersystems.signalservice.api.websocket.WebSocketUnavailableException; diff --git a/app/src/main/java/org/thoughtcrime/securesms/gcm/FcmJobService.java b/app/src/main/java/org/thoughtcrime/securesms/gcm/FcmJobService.java index 8b71b4890e..8b600c0e21 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/gcm/FcmJobService.java +++ b/app/src/main/java/org/thoughtcrime/securesms/gcm/FcmJobService.java @@ -13,8 +13,8 @@ import org.signal.core.util.concurrent.SignalExecutors; import org.signal.core.util.logging.Log; import org.thoughtcrime.securesms.dependencies.AppDependencies; import org.thoughtcrime.securesms.messages.WebSocketDrainer; -import org.thoughtcrime.securesms.util.AppForegroundObserver; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.AppForegroundObserver; +import org.signal.core.util.ServiceUtil; /** * Pulls down messages. Used when we fail to pull down messages in {@link FcmReceiveService}. diff --git a/app/src/main/java/org/thoughtcrime/securesms/giph/model/GiphyImage.java b/app/src/main/java/org/thoughtcrime/securesms/giph/model/GiphyImage.java index 13a6859f2c..7cccf1c8d9 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/giph/model/GiphyImage.java +++ b/app/src/main/java/org/thoughtcrime/securesms/giph/model/GiphyImage.java @@ -8,7 +8,7 @@ import androidx.annotation.Nullable; import com.fasterxml.jackson.annotation.JsonProperty; -import org.thoughtcrime.securesms.util.ByteUnit; +import org.signal.core.util.ByteUnit; import org.thoughtcrime.securesms.util.adapter.mapping.MappingModel; public class GiphyImage implements MappingModel { diff --git a/app/src/main/java/org/thoughtcrime/securesms/giph/mp4/GiphyMp4PagedDataSource.java b/app/src/main/java/org/thoughtcrime/securesms/giph/mp4/GiphyMp4PagedDataSource.java index 7711feda52..e7c94207b0 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/giph/mp4/GiphyMp4PagedDataSource.java +++ b/app/src/main/java/org/thoughtcrime/securesms/giph/mp4/GiphyMp4PagedDataSource.java @@ -13,7 +13,7 @@ import org.thoughtcrime.securesms.dependencies.AppDependencies; import org.thoughtcrime.securesms.giph.model.GiphyImage; import org.thoughtcrime.securesms.giph.model.GiphyResponse; import org.thoughtcrime.securesms.net.ContentProxySelector; -import org.thoughtcrime.securesms.util.JsonUtils; +import org.signal.core.util.JsonUtils; import java.io.IOException; import java.util.LinkedList; diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobmanager/JobController.java b/app/src/main/java/org/thoughtcrime/securesms/jobmanager/JobController.java index 8e6cc032aa..98ec2b5743 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobmanager/JobController.java +++ b/app/src/main/java/org/thoughtcrime/securesms/jobmanager/JobController.java @@ -16,7 +16,7 @@ import org.thoughtcrime.securesms.jobmanager.persistence.FullSpec; import org.thoughtcrime.securesms.jobmanager.persistence.JobSpec; import org.thoughtcrime.securesms.jobmanager.persistence.JobStorage; import org.thoughtcrime.securesms.jobs.MinimalJobSpec; -import org.thoughtcrime.securesms.util.Debouncer; +import org.signal.core.util.Debouncer; import java.util.ArrayList; import java.util.Collection; diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobmanager/JobManager.java b/app/src/main/java/org/thoughtcrime/securesms/jobmanager/JobManager.java index a6e18090f8..5ce6848d81 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobmanager/JobManager.java +++ b/app/src/main/java/org/thoughtcrime/securesms/jobmanager/JobManager.java @@ -16,10 +16,10 @@ import org.thoughtcrime.securesms.jobmanager.impl.DefaultExecutorFactory; import org.thoughtcrime.securesms.jobmanager.persistence.JobSpec; import org.thoughtcrime.securesms.jobmanager.persistence.JobStorage; import org.thoughtcrime.securesms.jobs.MinimalJobSpec; -import org.thoughtcrime.securesms.util.Debouncer; +import org.signal.core.util.Debouncer; import org.thoughtcrime.securesms.util.TextSecurePreferences; import org.signal.core.util.Util; -import org.thoughtcrime.securesms.util.concurrent.FilteredExecutor; +import org.signal.core.util.concurrent.FilteredExecutor; import java.util.ArrayList; import java.util.Collection; diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobmanager/JsonJobData.java b/app/src/main/java/org/thoughtcrime/securesms/jobmanager/JsonJobData.java index 049d8f52b5..40026a8b52 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobmanager/JsonJobData.java +++ b/app/src/main/java/org/thoughtcrime/securesms/jobmanager/JsonJobData.java @@ -7,7 +7,7 @@ import com.fasterxml.jackson.annotation.JsonProperty; import org.signal.core.util.logging.Log; import org.signal.core.util.Base64; -import org.thoughtcrime.securesms.util.JsonUtils; +import org.signal.core.util.JsonUtils; import java.io.IOException; import java.nio.charset.StandardCharsets; diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobmanager/impl/CellServiceConstraintObserver.java b/app/src/main/java/org/thoughtcrime/securesms/jobmanager/impl/CellServiceConstraintObserver.java index 1790dc0371..3c7b8d4ea3 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobmanager/impl/CellServiceConstraintObserver.java +++ b/app/src/main/java/org/thoughtcrime/securesms/jobmanager/impl/CellServiceConstraintObserver.java @@ -15,7 +15,7 @@ import androidx.annotation.RequiresApi; import org.signal.core.util.concurrent.SignalExecutors; import org.signal.core.util.logging.Log; import org.thoughtcrime.securesms.jobmanager.ConstraintObserver; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; public class CellServiceConstraintObserver implements ConstraintObserver { diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobs/ApkUpdateJob.kt b/app/src/main/java/org/thoughtcrime/securesms/jobs/ApkUpdateJob.kt index 9f1944929d..4153c40fbc 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobs/ApkUpdateJob.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/jobs/ApkUpdateJob.kt @@ -9,6 +9,7 @@ import com.fasterxml.jackson.annotation.JsonProperty import okhttp3.OkHttpClient import okhttp3.Request import org.signal.core.util.Hex +import org.signal.core.util.JsonUtils import org.signal.core.util.forEach import org.signal.core.util.getDownloadManager import org.signal.core.util.logging.Log @@ -22,7 +23,6 @@ import org.thoughtcrime.securesms.jobmanager.impl.NetworkConstraint import org.thoughtcrime.securesms.keyvalue.SignalStore import org.thoughtcrime.securesms.util.Environment import org.thoughtcrime.securesms.util.FileUtils -import org.thoughtcrime.securesms.util.JsonUtils import java.io.FileInputStream import java.io.IOException import java.security.MessageDigest diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobs/AttachmentCopyJob.java b/app/src/main/java/org/thoughtcrime/securesms/jobs/AttachmentCopyJob.java index 07dd55dc8c..c38d4628bb 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobs/AttachmentCopyJob.java +++ b/app/src/main/java/org/thoughtcrime/securesms/jobs/AttachmentCopyJob.java @@ -8,7 +8,7 @@ import org.thoughtcrime.securesms.database.AttachmentTable; import org.thoughtcrime.securesms.database.SignalDatabase; import org.thoughtcrime.securesms.jobmanager.JsonJobData; import org.thoughtcrime.securesms.jobmanager.Job; -import org.thoughtcrime.securesms.util.JsonUtils; +import org.signal.core.util.JsonUtils; import java.io.IOException; import java.util.ArrayList; diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobs/AvatarGroupsV2DownloadJob.java b/app/src/main/java/org/thoughtcrime/securesms/jobs/AvatarGroupsV2DownloadJob.java index c12a40daca..4defdc6b18 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobs/AvatarGroupsV2DownloadJob.java +++ b/app/src/main/java/org/thoughtcrime/securesms/jobs/AvatarGroupsV2DownloadJob.java @@ -21,7 +21,7 @@ import org.thoughtcrime.securesms.jobmanager.Job; import org.thoughtcrime.securesms.jobmanager.impl.NetworkConstraint; import org.thoughtcrime.securesms.profiles.AvatarHelper; import org.thoughtcrime.securesms.recipients.Recipient; -import org.thoughtcrime.securesms.util.ByteUnit; +import org.signal.core.util.ByteUnit; import org.whispersystems.signalservice.api.SignalServiceMessageReceiver; import org.whispersystems.signalservice.api.groupsv2.GroupsV2Operations; import org.signal.network.exceptions.NonSuccessfulResponseCodeException; diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobs/DeprecatedNotificationJob.kt b/app/src/main/java/org/thoughtcrime/securesms/jobs/DeprecatedNotificationJob.kt index 7a51023915..1df34187dc 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobs/DeprecatedNotificationJob.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/jobs/DeprecatedNotificationJob.kt @@ -9,6 +9,7 @@ import android.app.PendingIntent import android.content.Intent import android.net.Uri import androidx.core.app.NotificationCompat +import org.signal.core.util.ServiceUtil import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.BuildConfig import org.thoughtcrime.securesms.R @@ -16,7 +17,6 @@ import org.thoughtcrime.securesms.dependencies.AppDependencies import org.thoughtcrime.securesms.jobmanager.Job import org.thoughtcrime.securesms.notifications.NotificationChannels import org.thoughtcrime.securesms.notifications.NotificationIds -import org.thoughtcrime.securesms.util.ServiceUtil import kotlin.time.Duration.Companion.days /** diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobs/ForegroundServiceUtil.kt b/app/src/main/java/org/thoughtcrime/securesms/jobs/ForegroundServiceUtil.kt index 1a5f7a5007..7abc2323d4 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobs/ForegroundServiceUtil.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/jobs/ForegroundServiceUtil.kt @@ -10,12 +10,12 @@ import android.os.Build import android.os.SystemClock import androidx.annotation.WorkerThread import androidx.core.content.ContextCompat +import org.signal.core.util.AppForegroundObserver import org.signal.core.util.PendingIntentFlags +import org.signal.core.util.ServiceUtil import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.service.GenericForegroundService import org.thoughtcrime.securesms.service.NotificationController -import org.thoughtcrime.securesms.util.AppForegroundObserver -import org.thoughtcrime.securesms.util.ServiceUtil import java.util.concurrent.CountDownLatch import java.util.concurrent.TimeUnit import java.util.concurrent.locks.ReentrantLock diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobs/MessageFetchJob.java b/app/src/main/java/org/thoughtcrime/securesms/jobs/MessageFetchJob.java index ab8b942b22..d9cb2c4eaf 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobs/MessageFetchJob.java +++ b/app/src/main/java/org/thoughtcrime/securesms/jobs/MessageFetchJob.java @@ -14,7 +14,7 @@ import org.thoughtcrime.securesms.jobmanager.impl.NetworkConstraint; import org.thoughtcrime.securesms.messages.WebSocketDrainer; import org.thoughtcrime.securesms.notifications.NotificationChannels; import org.thoughtcrime.securesms.service.GenericForegroundService; -import org.thoughtcrime.securesms.util.AppForegroundObserver; +import org.signal.core.util.AppForegroundObserver; import org.signal.network.exceptions.PushNetworkException; import java.io.IOException; diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobs/MultiDeviceContactUpdateJob.java b/app/src/main/java/org/thoughtcrime/securesms/jobs/MultiDeviceContactUpdateJob.java index f8a57fc894..439dd3335e 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobs/MultiDeviceContactUpdateJob.java +++ b/app/src/main/java/org/thoughtcrime/securesms/jobs/MultiDeviceContactUpdateJob.java @@ -31,7 +31,7 @@ import org.thoughtcrime.securesms.providers.BlobProvider; import org.thoughtcrime.securesms.recipients.Recipient; import org.thoughtcrime.securesms.recipients.RecipientId; import org.thoughtcrime.securesms.recipients.RecipientUtil; -import org.thoughtcrime.securesms.util.AppForegroundObserver; +import org.signal.core.util.AppForegroundObserver; import org.thoughtcrime.securesms.util.TextSecurePreferences; import org.whispersystems.signalservice.api.SignalServiceMessageSender; import org.whispersystems.signalservice.api.crypto.AttachmentCipherStreamUtil; diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobs/MultiDeviceReadUpdateJob.java b/app/src/main/java/org/thoughtcrime/securesms/jobs/MultiDeviceReadUpdateJob.java index 3378e00879..2aa09d495e 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobs/MultiDeviceReadUpdateJob.java +++ b/app/src/main/java/org/thoughtcrime/securesms/jobs/MultiDeviceReadUpdateJob.java @@ -21,7 +21,7 @@ import org.thoughtcrime.securesms.net.NotPushRegisteredException; import org.thoughtcrime.securesms.recipients.Recipient; import org.thoughtcrime.securesms.recipients.RecipientId; import org.thoughtcrime.securesms.recipients.RecipientUtil; -import org.thoughtcrime.securesms.util.JsonUtils; +import org.signal.core.util.JsonUtils; import org.whispersystems.signalservice.api.SignalServiceMessageSender; import org.whispersystems.signalservice.api.crypto.UntrustedIdentityException; import org.whispersystems.signalservice.api.messages.multidevice.ReadMessage; diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobs/MultiDeviceViewOnceOpenJob.java b/app/src/main/java/org/thoughtcrime/securesms/jobs/MultiDeviceViewOnceOpenJob.java index d3f5562ab9..81da522fa8 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobs/MultiDeviceViewOnceOpenJob.java +++ b/app/src/main/java/org/thoughtcrime/securesms/jobs/MultiDeviceViewOnceOpenJob.java @@ -17,7 +17,7 @@ import org.thoughtcrime.securesms.net.NotPushRegisteredException; import org.thoughtcrime.securesms.recipients.Recipient; import org.thoughtcrime.securesms.recipients.RecipientId; import org.thoughtcrime.securesms.recipients.RecipientUtil; -import org.thoughtcrime.securesms.util.JsonUtils; +import org.signal.core.util.JsonUtils; import org.thoughtcrime.securesms.util.TextSecurePreferences; import org.whispersystems.signalservice.api.SignalServiceMessageSender; import org.whispersystems.signalservice.api.crypto.UntrustedIdentityException; diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobs/MultiDeviceViewedUpdateJob.java b/app/src/main/java/org/thoughtcrime/securesms/jobs/MultiDeviceViewedUpdateJob.java index 28899840fe..f021e11352 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobs/MultiDeviceViewedUpdateJob.java +++ b/app/src/main/java/org/thoughtcrime/securesms/jobs/MultiDeviceViewedUpdateJob.java @@ -21,7 +21,7 @@ import org.thoughtcrime.securesms.net.NotPushRegisteredException; import org.thoughtcrime.securesms.recipients.Recipient; import org.thoughtcrime.securesms.recipients.RecipientId; import org.thoughtcrime.securesms.recipients.RecipientUtil; -import org.thoughtcrime.securesms.util.JsonUtils; +import org.signal.core.util.JsonUtils; import org.thoughtcrime.securesms.util.TextSecurePreferences; import org.whispersystems.signalservice.api.SignalServiceMessageSender; import org.whispersystems.signalservice.api.crypto.UntrustedIdentityException; diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobs/NewLinkedDeviceNotificationJob.kt b/app/src/main/java/org/thoughtcrime/securesms/jobs/NewLinkedDeviceNotificationJob.kt index 25fa46a482..16de0bb4cc 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobs/NewLinkedDeviceNotificationJob.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/jobs/NewLinkedDeviceNotificationJob.kt @@ -3,6 +3,7 @@ package org.thoughtcrime.securesms.jobs import android.app.PendingIntent import androidx.core.app.NotificationCompat import org.signal.core.util.PendingIntentFlags.cancelCurrent +import org.signal.core.util.ServiceUtil import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.R import org.thoughtcrime.securesms.components.settings.app.AppSettingsActivity @@ -15,7 +16,6 @@ import org.thoughtcrime.securesms.notifications.NotificationChannels import org.thoughtcrime.securesms.notifications.NotificationIds import org.thoughtcrime.securesms.recipients.Recipient import org.thoughtcrime.securesms.util.DateUtils -import org.thoughtcrime.securesms.util.ServiceUtil import java.util.Locale import kotlin.random.Random import kotlin.time.Duration.Companion.days diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobs/PushGroupSendJob.java b/app/src/main/java/org/thoughtcrime/securesms/jobs/PushGroupSendJob.java index 9c86c9a0c4..f70bae3c47 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobs/PushGroupSendJob.java +++ b/app/src/main/java/org/thoughtcrime/securesms/jobs/PushGroupSendJob.java @@ -43,7 +43,7 @@ import org.thoughtcrime.securesms.recipients.RecipientId; import org.thoughtcrime.securesms.recipients.RecipientUtil; import org.thoughtcrime.securesms.transport.RetryLaterException; import org.thoughtcrime.securesms.transport.UndeliverableMessageException; -import org.thoughtcrime.securesms.util.ByteUnit; +import org.signal.core.util.ByteUnit; import org.thoughtcrime.securesms.util.GroupUtil; import org.thoughtcrime.securesms.util.MessageUtil; import org.thoughtcrime.securesms.util.RecipientAccessList; diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobs/RefreshOwnProfileJob.kt b/app/src/main/java/org/thoughtcrime/securesms/jobs/RefreshOwnProfileJob.kt index f0440cf365..fde9a131d6 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobs/RefreshOwnProfileJob.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/jobs/RefreshOwnProfileJob.kt @@ -2,6 +2,7 @@ package org.thoughtcrime.securesms.jobs import android.text.TextUtils import org.signal.core.util.Base64 +import org.signal.core.util.ExpiringProfileCredentialUtil import org.signal.core.util.Util import org.signal.core.util.logging.Log import org.signal.libsignal.net.RequestResult @@ -33,7 +34,6 @@ import org.whispersystems.signalservice.api.crypto.InvalidCiphertextException import org.whispersystems.signalservice.api.crypto.ProfileCipher import org.whispersystems.signalservice.api.profiles.ProfileAndCredential import org.whispersystems.signalservice.api.profiles.SignalServiceProfile -import org.whispersystems.signalservice.api.util.ExpiringProfileCredentialUtil import java.io.IOException /** diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobs/RetrieveProfileJob.kt b/app/src/main/java/org/thoughtcrime/securesms/jobs/RetrieveProfileJob.kt index 923f49f9ad..d0dc0b4be9 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobs/RetrieveProfileJob.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/jobs/RetrieveProfileJob.kt @@ -5,6 +5,7 @@ import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.runBlocking import kotlinx.coroutines.withContext import org.signal.core.util.Base64.decode +import org.signal.core.util.ExpiringProfileCredentialUtil import org.signal.core.util.Stopwatch import org.signal.core.util.Util import org.signal.core.util.concurrent.SignalExecutors @@ -48,7 +49,6 @@ import org.whispersystems.signalservice.api.profiles.ProfileRepository.ProfileFe import org.whispersystems.signalservice.api.profiles.ProfileRepository.ProfileFetchResult import org.whispersystems.signalservice.api.profiles.ProfileRepository.SignalServiceProfileWithCredential import org.whispersystems.signalservice.api.profiles.SignalServiceProfile -import org.whispersystems.signalservice.api.util.ExpiringProfileCredentialUtil import java.io.IOException import java.util.concurrent.TimeUnit import kotlin.time.Duration.Companion.milliseconds diff --git a/app/src/main/java/org/thoughtcrime/securesms/keyboard/sticker/StickerKeyboardPageFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/keyboard/sticker/StickerKeyboardPageFragment.kt index 4c2c452796..4f07338831 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/keyboard/sticker/StickerKeyboardPageFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/keyboard/sticker/StickerKeyboardPageFragment.kt @@ -12,6 +12,7 @@ import androidx.recyclerview.widget.RecyclerView.SmoothScroller import com.bumptech.glide.Glide import com.google.android.material.appbar.AppBarLayout import org.signal.core.ui.logging.LoggingFragment +import org.signal.core.util.Throttler import org.thoughtcrime.securesms.R import org.thoughtcrime.securesms.database.DatabaseObserver import org.thoughtcrime.securesms.dependencies.AppDependencies @@ -21,7 +22,6 @@ import org.thoughtcrime.securesms.stickers.StickerRolloverTouchListener import org.thoughtcrime.securesms.stickers.StickerRolloverTouchListener.RolloverStickerRetriever import org.thoughtcrime.securesms.util.DeviceProperties import org.thoughtcrime.securesms.util.InsetItemDecoration -import org.thoughtcrime.securesms.util.Throttler import org.thoughtcrime.securesms.util.adapter.mapping.MappingModel import org.thoughtcrime.securesms.util.adapter.mapping.MappingModelList import org.thoughtcrime.securesms.util.fragments.findListener diff --git a/app/src/main/java/org/thoughtcrime/securesms/linkdevice/LinkDeviceViewModel.kt b/app/src/main/java/org/thoughtcrime/securesms/linkdevice/LinkDeviceViewModel.kt index 8466fe54e8..13f7cce342 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/linkdevice/LinkDeviceViewModel.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/linkdevice/LinkDeviceViewModel.kt @@ -11,6 +11,7 @@ import kotlinx.coroutines.flow.asStateFlow import kotlinx.coroutines.flow.update import kotlinx.coroutines.launch import org.signal.core.models.backup.MessageBackupKey +import org.signal.core.util.ServiceUtil import org.signal.core.util.Util import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.dependencies.AppDependencies @@ -25,7 +26,6 @@ import org.thoughtcrime.securesms.linkdevice.LinkDeviceSettingsState.QrCodeState import org.thoughtcrime.securesms.logsubmit.SubmitDebugLogRepository import org.thoughtcrime.securesms.notifications.NotificationIds import org.thoughtcrime.securesms.util.RemoteConfig -import org.thoughtcrime.securesms.util.ServiceUtil import org.whispersystems.signalservice.api.link.TransferArchiveError import org.whispersystems.signalservice.api.link.WaitForLinkedDeviceResponse import kotlin.jvm.optionals.getOrNull diff --git a/app/src/main/java/org/thoughtcrime/securesms/linkpreview/LinkPreview.java b/app/src/main/java/org/thoughtcrime/securesms/linkpreview/LinkPreview.java index 7b03d88c95..e6e555b0f9 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/linkpreview/LinkPreview.java +++ b/app/src/main/java/org/thoughtcrime/securesms/linkpreview/LinkPreview.java @@ -14,7 +14,7 @@ import com.fasterxml.jackson.annotation.JsonProperty; import org.thoughtcrime.securesms.attachments.Attachment; import org.thoughtcrime.securesms.attachments.AttachmentId; import org.thoughtcrime.securesms.attachments.DatabaseAttachment; -import org.thoughtcrime.securesms.util.JsonUtils; +import org.signal.core.util.JsonUtils; import java.io.IOException; import java.util.Optional; diff --git a/app/src/main/java/org/thoughtcrime/securesms/linkpreview/LinkPreviewRepository.java b/app/src/main/java/org/thoughtcrime/securesms/linkpreview/LinkPreviewRepository.java index 49ce86696b..4f0d355f0d 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/linkpreview/LinkPreviewRepository.java +++ b/app/src/main/java/org/thoughtcrime/securesms/linkpreview/LinkPreviewRepository.java @@ -50,7 +50,7 @@ import org.thoughtcrime.securesms.stickers.StickerRemoteUri; import org.thoughtcrime.securesms.stickers.StickerUrl; import org.thoughtcrime.securesms.util.AvatarUtil; import org.thoughtcrime.securesms.util.BitmapDecodingException; -import org.thoughtcrime.securesms.util.ByteUnit; +import org.signal.core.util.ByteUnit; import org.thoughtcrime.securesms.util.ImageCompressionUtil; import org.thoughtcrime.securesms.util.LinkUtil; import org.thoughtcrime.securesms.util.MediaUtil; diff --git a/app/src/main/java/org/thoughtcrime/securesms/linkpreview/LinkPreviewViewModel.java b/app/src/main/java/org/thoughtcrime/securesms/linkpreview/LinkPreviewViewModel.java index 3e8005b605..b63b01b9da 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/linkpreview/LinkPreviewViewModel.java +++ b/app/src/main/java/org/thoughtcrime/securesms/linkpreview/LinkPreviewViewModel.java @@ -16,7 +16,7 @@ import org.thoughtcrime.securesms.attachments.AttachmentId; import org.thoughtcrime.securesms.dependencies.AppDependencies; import org.thoughtcrime.securesms.keyvalue.SignalStore; import org.thoughtcrime.securesms.net.RequestController; -import org.thoughtcrime.securesms.util.Debouncer; +import org.signal.core.util.Debouncer; import java.util.Collections; import java.util.List; diff --git a/app/src/main/java/org/thoughtcrime/securesms/linkpreview/LinkPreviewViewModelV2.kt b/app/src/main/java/org/thoughtcrime/securesms/linkpreview/LinkPreviewViewModelV2.kt index dfa279a945..b35a5081f0 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/linkpreview/LinkPreviewViewModelV2.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/linkpreview/LinkPreviewViewModelV2.kt @@ -12,10 +12,10 @@ import io.reactivex.rxjava3.core.Flowable import io.reactivex.rxjava3.core.Single import io.reactivex.rxjava3.disposables.Disposable import io.reactivex.rxjava3.kotlin.subscribeBy +import org.signal.core.util.Debouncer import org.signal.core.util.Result import org.signal.core.util.isAbsent import org.thoughtcrime.securesms.keyvalue.SignalStore -import org.thoughtcrime.securesms.util.Debouncer import org.thoughtcrime.securesms.util.delegate import org.thoughtcrime.securesms.util.rx.RxStore import java.util.Optional diff --git a/app/src/main/java/org/thoughtcrime/securesms/lock/SignalPinReminderDialog.java b/app/src/main/java/org/thoughtcrime/securesms/lock/SignalPinReminderDialog.java index 1b1251e89f..69a256dcf0 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/lock/SignalPinReminderDialog.java +++ b/app/src/main/java/org/thoughtcrime/securesms/lock/SignalPinReminderDialog.java @@ -30,7 +30,7 @@ import org.thoughtcrime.securesms.contactshare.SimpleTextWatcher; import org.thoughtcrime.securesms.keyvalue.SignalStore; import org.thoughtcrime.securesms.lock.v2.CreateSvrPinActivity; import org.thoughtcrime.securesms.lock.v2.SvrConstants; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; import org.thoughtcrime.securesms.util.ViewUtil; import org.whispersystems.signalservice.api.kbs.PinHashUtil; diff --git a/app/src/main/java/org/thoughtcrime/securesms/logsubmit/LogSectionNotifications.java b/app/src/main/java/org/thoughtcrime/securesms/logsubmit/LogSectionNotifications.java index f46d4d62ab..7d5ac275db 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/logsubmit/LogSectionNotifications.java +++ b/app/src/main/java/org/thoughtcrime/securesms/logsubmit/LogSectionNotifications.java @@ -10,7 +10,7 @@ import androidx.annotation.RequiresApi; import org.thoughtcrime.securesms.keyvalue.SignalStore; import org.thoughtcrime.securesms.notifications.SlowNotificationHeuristics; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; final class LogSectionNotifications implements LogSection { diff --git a/app/src/main/java/org/thoughtcrime/securesms/logsubmit/LogSectionSystemInfo.kt b/app/src/main/java/org/thoughtcrime/securesms/logsubmit/LogSectionSystemInfo.kt index e295bd6e6f..ba0e5eebc1 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/logsubmit/LogSectionSystemInfo.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/logsubmit/LogSectionSystemInfo.kt @@ -12,6 +12,7 @@ import org.signal.core.ui.getWindowSizeClass import org.signal.core.util.BidiUtil import org.signal.core.util.DiskUtil import org.signal.core.util.FontUtil.canRenderEmojiAtFontSize +import org.signal.core.util.ServiceUtil import org.signal.core.util.Util import org.signal.core.util.bytes import org.signal.core.util.getAnimationScale @@ -29,7 +30,6 @@ import org.thoughtcrime.securesms.util.DeviceProperties import org.thoughtcrime.securesms.util.NetworkUtil import org.thoughtcrime.securesms.util.PowerManagerCompat import org.thoughtcrime.securesms.util.ScreenDensity -import org.thoughtcrime.securesms.util.ServiceUtil import org.thoughtcrime.securesms.util.TextSecurePreferences import org.thoughtcrime.securesms.util.VersionTracker.getDaysSinceFirstInstalled import java.util.Locale diff --git a/app/src/main/java/org/thoughtcrime/securesms/maps/LocationRetriever.java b/app/src/main/java/org/thoughtcrime/securesms/maps/LocationRetriever.java index 0183397c63..6c80f9d12c 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/maps/LocationRetriever.java +++ b/app/src/main/java/org/thoughtcrime/securesms/maps/LocationRetriever.java @@ -17,7 +17,7 @@ import androidx.lifecycle.DefaultLifecycleObserver; import androidx.lifecycle.LifecycleOwner; import org.signal.core.util.logging.Log; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; /** * A lifecycle-safe way to retrieve a single location update. If a cached location is available, diff --git a/app/src/main/java/org/thoughtcrime/securesms/mediapreview/MediaPreviewV2Fragment.kt b/app/src/main/java/org/thoughtcrime/securesms/mediapreview/MediaPreviewV2Fragment.kt index bde0aa8f6b..e81f9486c7 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/mediapreview/MediaPreviewV2Fragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/mediapreview/MediaPreviewV2Fragment.kt @@ -44,6 +44,7 @@ import kotlinx.coroutines.isActive import kotlinx.coroutines.launch import org.signal.core.models.media.Media import org.signal.core.ui.logging.LoggingFragment +import org.signal.core.util.Debouncer import org.signal.core.util.concurrent.LifecycleDisposable import org.signal.core.util.concurrent.addTo import org.signal.core.util.logging.Log @@ -72,7 +73,6 @@ import org.thoughtcrime.securesms.mms.PartAuthority import org.thoughtcrime.securesms.recipients.Recipient import org.thoughtcrime.securesms.sharing.v2.ShareActivity import org.thoughtcrime.securesms.util.DateUtils -import org.thoughtcrime.securesms.util.Debouncer import org.thoughtcrime.securesms.util.FullscreenHelper import org.thoughtcrime.securesms.util.MediaUtil import org.thoughtcrime.securesms.util.MessageConstraintsUtil diff --git a/app/src/main/java/org/thoughtcrime/securesms/mediasend/Camera1Fragment.java b/app/src/main/java/org/thoughtcrime/securesms/mediasend/Camera1Fragment.java index 2a61672e9e..e18f0563a4 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/mediasend/Camera1Fragment.java +++ b/app/src/main/java/org/thoughtcrime/securesms/mediasend/Camera1Fragment.java @@ -50,7 +50,7 @@ import org.thoughtcrime.securesms.mediasend.camerax.CameraXRemoteConfig; import org.thoughtcrime.securesms.mediasend.v2.MediaAnimations; import org.thoughtcrime.securesms.mediasend.v2.MediaCountIndicatorButton; import org.signal.glide.decryptableuri.DecryptableUri; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; import org.thoughtcrime.securesms.keyvalue.SignalStore; import org.thoughtcrime.securesms.util.ViewUtil; diff --git a/app/src/main/java/org/thoughtcrime/securesms/mediasend/MediaSendActivityResult.kt b/app/src/main/java/org/thoughtcrime/securesms/mediasend/MediaSendActivityResult.kt index 324389581a..703bf39a64 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/mediasend/MediaSendActivityResult.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/mediasend/MediaSendActivityResult.kt @@ -7,6 +7,7 @@ import kotlinx.parcelize.Parceler import kotlinx.parcelize.Parcelize import kotlinx.parcelize.TypeParceler import org.signal.core.models.media.Media +import org.signal.core.util.ParcelUtil import org.signal.core.util.getParcelableExtraCompat import org.thoughtcrime.securesms.conversation.MessageSendType import org.thoughtcrime.securesms.database.model.Mention @@ -14,7 +15,6 @@ import org.thoughtcrime.securesms.database.model.StoryType import org.thoughtcrime.securesms.database.model.databaseprotos.BodyRangeList import org.thoughtcrime.securesms.recipients.RecipientId import org.thoughtcrime.securesms.sms.MessageSender.PreUploadResult -import org.thoughtcrime.securesms.util.ParcelUtil /** * A class that lets us nicely format data that we'll send back to [ConversationActivity]. diff --git a/app/src/main/java/org/thoughtcrime/securesms/mediasend/VideoEditorFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/mediasend/VideoEditorFragment.kt index dd2e9a190c..836f259955 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/mediasend/VideoEditorFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/mediasend/VideoEditorFragment.kt @@ -9,6 +9,7 @@ import android.view.View import android.view.ViewGroup import androidx.fragment.app.Fragment import androidx.fragment.app.viewModels +import org.signal.core.util.Throttler import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.R import org.thoughtcrime.securesms.mediasend.v2.MediaSelectionViewModel @@ -16,7 +17,6 @@ import org.thoughtcrime.securesms.mediasend.v2.videos.VideoTrimData import org.thoughtcrime.securesms.mms.MediaConstraints import org.thoughtcrime.securesms.mms.VideoSlide import org.thoughtcrime.securesms.scribbles.VideoEditorPlayButtonLayout -import org.thoughtcrime.securesms.util.Throttler import org.thoughtcrime.securesms.util.visible import org.thoughtcrime.securesms.video.VideoPlayer import org.thoughtcrime.securesms.video.VideoPlayer.PlayerCallback diff --git a/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/MediaSelectionActivity.kt b/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/MediaSelectionActivity.kt index ee60c3c168..e488631c79 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/MediaSelectionActivity.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/MediaSelectionActivity.kt @@ -25,6 +25,7 @@ import com.google.android.material.animation.ArgbEvaluatorCompat import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import org.signal.core.models.media.Media import org.signal.core.util.BreakIteratorCompat +import org.signal.core.util.Debouncer import org.signal.core.util.OVERRIDE_TRANSITION_CLOSE_COMPAT import org.signal.core.util.concurrent.LifecycleDisposable import org.signal.core.util.getParcelableArrayListExtraCompat @@ -47,7 +48,6 @@ import org.thoughtcrime.securesms.mediasend.v2.text.send.TextStoryPostSendReposi import org.thoughtcrime.securesms.recipients.RecipientId import org.thoughtcrime.securesms.safety.SafetyNumberBottomSheet import org.thoughtcrime.securesms.stories.Stories -import org.thoughtcrime.securesms.util.Debouncer import org.thoughtcrime.securesms.util.FullscreenHelper import org.thoughtcrime.securesms.util.WindowUtil import org.thoughtcrime.securesms.util.navigation.safeNavigate diff --git a/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/MeteredConnectivity.kt b/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/MeteredConnectivity.kt index aa93fb8292..21f0935b1b 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/MeteredConnectivity.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/mediasend/v2/MeteredConnectivity.kt @@ -7,7 +7,7 @@ import android.content.IntentFilter import android.net.ConnectivityManager import androidx.core.net.ConnectivityManagerCompat import io.reactivex.rxjava3.core.Observable -import org.thoughtcrime.securesms.util.ServiceUtil +import org.signal.core.util.ServiceUtil @Suppress("DEPRECATION") object MeteredConnectivity { diff --git a/app/src/main/java/org/thoughtcrime/securesms/megaphone/Megaphones.java b/app/src/main/java/org/thoughtcrime/securesms/megaphone/Megaphones.java index c5d6b1e22c..f43dbff12f 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/megaphone/Megaphones.java +++ b/app/src/main/java/org/thoughtcrime/securesms/megaphone/Megaphones.java @@ -42,12 +42,12 @@ import org.thoughtcrime.securesms.profiles.manage.EditProfileActivity; import org.thoughtcrime.securesms.profiles.username.NewWaysToConnectDialogFragment; import org.thoughtcrime.securesms.recipients.Recipient; import org.thoughtcrime.securesms.storage.StorageSyncHelper; -import org.thoughtcrime.securesms.util.ByteUnit; +import org.signal.core.util.ByteUnit; import org.thoughtcrime.securesms.util.CommunicationActions; import org.thoughtcrime.securesms.util.DateUtils; import org.thoughtcrime.securesms.util.Environment; import org.thoughtcrime.securesms.util.RemoteConfig; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; import org.thoughtcrime.securesms.util.TextSecurePreferences; import org.thoughtcrime.securesms.util.VersionTracker; import org.thoughtcrime.securesms.util.dynamiclanguage.DynamicLanguageContextWrapper; diff --git a/app/src/main/java/org/thoughtcrime/securesms/messageprocessingalarm/RoutineMessageFetchReceiver.java b/app/src/main/java/org/thoughtcrime/securesms/messageprocessingalarm/RoutineMessageFetchReceiver.java index 0da78c94ab..f0a1d4103e 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/messageprocessingalarm/RoutineMessageFetchReceiver.java +++ b/app/src/main/java/org/thoughtcrime/securesms/messageprocessingalarm/RoutineMessageFetchReceiver.java @@ -18,7 +18,7 @@ import org.signal.core.util.logging.Log; import org.thoughtcrime.securesms.dependencies.AppDependencies; import org.thoughtcrime.securesms.jobmanager.JobTracker; import org.thoughtcrime.securesms.jobs.MessageFetchJob; -import org.thoughtcrime.securesms.util.AppForegroundObserver; +import org.signal.core.util.AppForegroundObserver; import org.thoughtcrime.securesms.util.RemoteConfig; import java.util.Locale; diff --git a/app/src/main/java/org/thoughtcrime/securesms/messagerequests/MessageRequestsBottomView.kt b/app/src/main/java/org/thoughtcrime/securesms/messagerequests/MessageRequestsBottomView.kt index 75aaceb488..207d198cbb 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/messagerequests/MessageRequestsBottomView.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/messagerequests/MessageRequestsBottomView.kt @@ -9,13 +9,13 @@ import android.widget.TextView import androidx.constraintlayout.widget.ConstraintLayout import androidx.core.text.HtmlCompat import com.google.android.material.button.MaterialButton +import org.signal.core.util.Debouncer import org.signal.core.util.dp import org.thoughtcrime.securesms.R import org.thoughtcrime.securesms.fonts.SignalSymbols import org.thoughtcrime.securesms.messagerequests.MessageRequestBarColorTheme.Companion.resolveTheme import org.thoughtcrime.securesms.recipients.Recipient import org.thoughtcrime.securesms.util.CommunicationActions -import org.thoughtcrime.securesms.util.Debouncer import org.thoughtcrime.securesms.util.padding import org.thoughtcrime.securesms.util.views.LearnMoreTextView import org.thoughtcrime.securesms.util.visible diff --git a/app/src/main/java/org/thoughtcrime/securesms/messages/IncomingMessageObserver.kt b/app/src/main/java/org/thoughtcrime/securesms/messages/IncomingMessageObserver.kt index 2f4c1b9134..65fe17882e 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/messages/IncomingMessageObserver.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/messages/IncomingMessageObserver.kt @@ -11,6 +11,9 @@ import io.reactivex.rxjava3.disposables.Disposable import io.reactivex.rxjava3.kotlin.subscribeBy import io.reactivex.rxjava3.schedulers.Schedulers import org.signal.core.models.ServiceId +import org.signal.core.util.AppForegroundObserver +import org.signal.core.util.SleepTimer +import org.signal.core.util.UptimeSleepTimer import org.signal.core.util.concurrent.SignalExecutors import org.signal.core.util.logging.Log import org.signal.storageservice.storage.protos.groups.local.DecryptedGroup @@ -37,15 +40,12 @@ import org.thoughtcrime.securesms.notifications.NotificationChannels import org.thoughtcrime.securesms.push.SignalServiceNetworkAccess.Companion.toApplicableSystemHttpProxy import org.thoughtcrime.securesms.recipients.RecipientId import org.thoughtcrime.securesms.util.AlarmSleepTimer -import org.thoughtcrime.securesms.util.AppForegroundObserver import org.thoughtcrime.securesms.util.Environment import org.thoughtcrime.securesms.util.SignalLocalMetrics import org.thoughtcrime.securesms.util.SignalTrace import org.thoughtcrime.securesms.util.TextSecurePreferences import org.thoughtcrime.securesms.util.asChain import org.whispersystems.signalservice.api.messages.EnvelopeResponse -import org.whispersystems.signalservice.api.util.SleepTimer -import org.whispersystems.signalservice.api.util.UptimeSleepTimer import org.whispersystems.signalservice.api.websocket.SignalWebSocket import org.whispersystems.signalservice.api.websocket.WebSocketConnectionState import org.whispersystems.signalservice.api.websocket.WebSocketUnavailableException diff --git a/app/src/main/java/org/thoughtcrime/securesms/messages/NetworkConnectionListener.kt b/app/src/main/java/org/thoughtcrime/securesms/messages/NetworkConnectionListener.kt index c9191cf5fa..baa3d95db4 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/messages/NetworkConnectionListener.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/messages/NetworkConnectionListener.kt @@ -16,9 +16,9 @@ import android.net.NetworkCapabilities import android.net.NetworkRequest import android.net.ProxyInfo import android.os.Build +import org.signal.core.util.ServiceUtil import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.jobmanager.impl.NetworkConstraint -import org.thoughtcrime.securesms.util.ServiceUtil /** * Backcompat listener for determining when the network connection is lost. diff --git a/app/src/main/java/org/thoughtcrime/securesms/messages/WebSocketDrainer.kt b/app/src/main/java/org/thoughtcrime/securesms/messages/WebSocketDrainer.kt index f005ab3bf3..5e071ab74d 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/messages/WebSocketDrainer.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/messages/WebSocketDrainer.kt @@ -3,6 +3,7 @@ package org.thoughtcrime.securesms.messages import android.os.PowerManager import androidx.annotation.AnyThread import androidx.annotation.WorkerThread +import org.signal.core.util.ServiceUtil import org.signal.core.util.Stopwatch import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.dependencies.AppDependencies @@ -13,7 +14,6 @@ import org.thoughtcrime.securesms.jobs.MarkerJob import org.thoughtcrime.securesms.jobs.PushProcessMessageJob import org.thoughtcrime.securesms.util.NetworkUtil import org.thoughtcrime.securesms.util.PowerManagerCompat -import org.thoughtcrime.securesms.util.ServiceUtil import org.thoughtcrime.securesms.util.WakeLockUtil import java.util.concurrent.CountDownLatch import java.util.concurrent.TimeUnit diff --git a/app/src/main/java/org/thoughtcrime/securesms/mms/AttachmentManager.java b/app/src/main/java/org/thoughtcrime/securesms/mms/AttachmentManager.java index 57595ca620..6fc86c5a89 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/mms/AttachmentManager.java +++ b/app/src/main/java/org/thoughtcrime/securesms/mms/AttachmentManager.java @@ -78,7 +78,7 @@ import org.thoughtcrime.securesms.util.MediaUtil; import org.thoughtcrime.securesms.util.ProfileUtil; import org.thoughtcrime.securesms.util.ViewUtil; import org.thoughtcrime.securesms.util.concurrent.AssertedSuccessListener; -import org.whispersystems.signalservice.api.util.ExpiringProfileCredentialUtil; +import org.signal.core.util.ExpiringProfileCredentialUtil; import java.io.IOException; import java.util.Collections; diff --git a/app/src/main/java/org/thoughtcrime/securesms/net/SignalWebSocketHealthMonitor.kt b/app/src/main/java/org/thoughtcrime/securesms/net/SignalWebSocketHealthMonitor.kt index aa3350e4ce..c1ba43fd72 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/net/SignalWebSocketHealthMonitor.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/net/SignalWebSocketHealthMonitor.kt @@ -13,12 +13,12 @@ import kotlinx.coroutines.Job import kotlinx.coroutines.SupervisorJob import kotlinx.coroutines.delay import kotlinx.coroutines.launch +import org.signal.core.util.AppForegroundObserver +import org.signal.core.util.SleepTimer import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.dependencies.AppDependencies import org.thoughtcrime.securesms.keyvalue.SignalStore -import org.thoughtcrime.securesms.util.AppForegroundObserver import org.thoughtcrime.securesms.util.TextSecurePreferences -import org.whispersystems.signalservice.api.util.SleepTimer import org.whispersystems.signalservice.api.websocket.HealthMonitor import org.whispersystems.signalservice.api.websocket.SignalWebSocket import org.whispersystems.signalservice.api.websocket.WebSocketConnectionState diff --git a/app/src/main/java/org/thoughtcrime/securesms/notifications/DeviceSpecificNotificationConfig.kt b/app/src/main/java/org/thoughtcrime/securesms/notifications/DeviceSpecificNotificationConfig.kt index d31ed0d093..39a59e59e6 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/notifications/DeviceSpecificNotificationConfig.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/notifications/DeviceSpecificNotificationConfig.kt @@ -3,8 +3,8 @@ package org.thoughtcrime.securesms.notifications import android.os.Build import androidx.annotation.VisibleForTesting import com.fasterxml.jackson.annotation.JsonProperty +import org.signal.core.util.JsonUtils import org.signal.core.util.logging.Log -import org.thoughtcrime.securesms.util.JsonUtils import org.thoughtcrime.securesms.util.RemoteConfig import java.io.IOException diff --git a/app/src/main/java/org/thoughtcrime/securesms/notifications/DoNotDisturbUtil.java b/app/src/main/java/org/thoughtcrime/securesms/notifications/DoNotDisturbUtil.java index 53d996b5f4..7eceb82c0e 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/notifications/DoNotDisturbUtil.java +++ b/app/src/main/java/org/thoughtcrime/securesms/notifications/DoNotDisturbUtil.java @@ -17,7 +17,7 @@ import org.thoughtcrime.securesms.database.RecipientTable; import org.thoughtcrime.securesms.database.SignalDatabase; import org.signal.core.ui.permissions.Permissions; import org.thoughtcrime.securesms.recipients.Recipient; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; import java.util.concurrent.TimeUnit; diff --git a/app/src/main/java/org/thoughtcrime/securesms/notifications/NotificationCancellationHelper.java b/app/src/main/java/org/thoughtcrime/securesms/notifications/NotificationCancellationHelper.java index cd043b9203..e52e3a9129 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/notifications/NotificationCancellationHelper.java +++ b/app/src/main/java/org/thoughtcrime/securesms/notifications/NotificationCancellationHelper.java @@ -17,7 +17,7 @@ import org.thoughtcrime.securesms.notifications.v2.DefaultMessageNotifier; import org.thoughtcrime.securesms.recipients.RecipientId; import org.thoughtcrime.securesms.util.BubbleUtil; import org.thoughtcrime.securesms.util.ConversationUtil; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; import java.util.Collections; import java.util.Objects; diff --git a/app/src/main/java/org/thoughtcrime/securesms/notifications/NotificationChannels.java b/app/src/main/java/org/thoughtcrime/securesms/notifications/NotificationChannels.java index ed90af1bfd..01bde34760 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/notifications/NotificationChannels.java +++ b/app/src/main/java/org/thoughtcrime/securesms/notifications/NotificationChannels.java @@ -35,7 +35,7 @@ import org.thoughtcrime.securesms.keyvalue.SignalStore; import org.thoughtcrime.securesms.recipients.Recipient; import org.thoughtcrime.securesms.recipients.RecipientId; import org.thoughtcrime.securesms.util.ConversationUtil; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; import org.thoughtcrime.securesms.util.TextSecurePreferences; import java.util.ArrayList; diff --git a/app/src/main/java/org/thoughtcrime/securesms/notifications/SlowNotificationHeuristics.kt b/app/src/main/java/org/thoughtcrime/securesms/notifications/SlowNotificationHeuristics.kt index 6598f51821..6c1359d077 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/notifications/SlowNotificationHeuristics.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/notifications/SlowNotificationHeuristics.kt @@ -7,12 +7,12 @@ package org.thoughtcrime.securesms.notifications import android.text.TextUtils import androidx.annotation.WorkerThread +import org.signal.core.util.JsonUtils import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.database.LocalMetricsDatabase import org.thoughtcrime.securesms.dependencies.AppDependencies import org.thoughtcrime.securesms.keyvalue.SignalStore import org.thoughtcrime.securesms.util.DeviceProperties -import org.thoughtcrime.securesms.util.JsonUtils import org.thoughtcrime.securesms.util.LocaleRemoteConfig import org.thoughtcrime.securesms.util.PowerManagerCompat import org.thoughtcrime.securesms.util.RemoteConfig diff --git a/app/src/main/java/org/thoughtcrime/securesms/notifications/v2/DefaultMessageNotifier.kt b/app/src/main/java/org/thoughtcrime/securesms/notifications/v2/DefaultMessageNotifier.kt index 1594730e64..35059e3ae7 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/notifications/v2/DefaultMessageNotifier.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/notifications/v2/DefaultMessageNotifier.kt @@ -13,6 +13,7 @@ import androidx.appcompat.view.ContextThemeWrapper import androidx.core.content.ContextCompat import me.leolin.shortcutbadger.ShortcutBadger import org.signal.core.util.PendingIntentFlags +import org.signal.core.util.ServiceUtil import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.R import org.thoughtcrime.securesms.database.SignalDatabase @@ -29,7 +30,6 @@ import org.thoughtcrime.securesms.preferences.widgets.NotificationPrivacyPrefere import org.thoughtcrime.securesms.recipients.Recipient import org.thoughtcrime.securesms.service.KeyCachingService import org.thoughtcrime.securesms.util.BubbleUtil.BubbleState -import org.thoughtcrime.securesms.util.ServiceUtil import org.whispersystems.signalservice.internal.util.Util import java.util.Optional import java.util.concurrent.ConcurrentHashMap diff --git a/app/src/main/java/org/thoughtcrime/securesms/notifications/v2/NotificationFactory.kt b/app/src/main/java/org/thoughtcrime/securesms/notifications/v2/NotificationFactory.kt index 7c5cd9be1c..74efb9190e 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/notifications/v2/NotificationFactory.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/notifications/v2/NotificationFactory.kt @@ -16,6 +16,7 @@ import androidx.core.app.NotificationCompat import androidx.core.app.NotificationManagerCompat import androidx.core.content.ContextCompat import org.signal.core.util.PendingIntentFlags +import org.signal.core.util.ServiceUtil import org.signal.core.util.concurrent.SignalExecutors import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.MainActivity @@ -35,7 +36,6 @@ import org.thoughtcrime.securesms.recipients.Recipient import org.thoughtcrime.securesms.stories.my.MyStoriesActivity import org.thoughtcrime.securesms.util.BubbleUtil import org.thoughtcrime.securesms.util.ConversationUtil -import org.thoughtcrime.securesms.util.ServiceUtil import org.thoughtcrime.securesms.util.TextSecurePreferences import kotlin.time.Duration import kotlin.time.Duration.Companion.seconds diff --git a/app/src/main/java/org/thoughtcrime/securesms/payments/Wallet.java b/app/src/main/java/org/thoughtcrime/securesms/payments/Wallet.java index 0528cb7aa5..7ed90c3de9 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/payments/Wallet.java +++ b/app/src/main/java/org/thoughtcrime/securesms/payments/Wallet.java @@ -39,8 +39,8 @@ import org.thoughtcrime.securesms.keyvalue.PaymentsValues; import org.thoughtcrime.securesms.keyvalue.SignalStore; import org.thoughtcrime.securesms.payments.proto.MobileCoinLedger; import org.whispersystems.signalservice.api.payments.Money; -import org.whispersystems.signalservice.api.util.Uint64RangeException; -import org.whispersystems.signalservice.api.util.Uint64Util; +import org.signal.core.util.Uint64RangeException; +import org.signal.core.util.Uint64Util; import org.whispersystems.signalservice.internal.push.AuthCredentials; import java.io.IOException; diff --git a/app/src/main/java/org/thoughtcrime/securesms/payments/backup/PaymentsRecoveryStartFragment.java b/app/src/main/java/org/thoughtcrime/securesms/payments/backup/PaymentsRecoveryStartFragment.java index f17632c498..ad03a90fcb 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/payments/backup/PaymentsRecoveryStartFragment.java +++ b/app/src/main/java/org/thoughtcrime/securesms/payments/backup/PaymentsRecoveryStartFragment.java @@ -21,7 +21,7 @@ import org.thoughtcrime.securesms.BiometricDeviceAuthentication; import org.thoughtcrime.securesms.BiometricDeviceLockContract; import org.thoughtcrime.securesms.R; import org.thoughtcrime.securesms.keyvalue.SignalStore; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; import org.thoughtcrime.securesms.util.navigation.SafeNavigation; import org.thoughtcrime.securesms.util.views.LearnMoreTextView; import org.whispersystems.signalservice.api.payments.PaymentsConstants; diff --git a/app/src/main/java/org/thoughtcrime/securesms/payments/backup/phrase/PaymentsRecoveryPhraseFragment.java b/app/src/main/java/org/thoughtcrime/securesms/payments/backup/phrase/PaymentsRecoveryPhraseFragment.java index 7d1b44fb4d..890a2104bf 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/payments/backup/phrase/PaymentsRecoveryPhraseFragment.java +++ b/app/src/main/java/org/thoughtcrime/securesms/payments/backup/phrase/PaymentsRecoveryPhraseFragment.java @@ -26,7 +26,7 @@ import org.signal.core.util.PendingIntentFlags; import org.thoughtcrime.securesms.R; import org.thoughtcrime.securesms.keyvalue.SignalStore; import org.thoughtcrime.securesms.payments.Mnemonic; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; import org.signal.core.util.Util; import org.thoughtcrime.securesms.util.navigation.SafeNavigation; diff --git a/app/src/main/java/org/thoughtcrime/securesms/payments/confirm/ConfirmPaymentFragment.java b/app/src/main/java/org/thoughtcrime/securesms/payments/confirm/ConfirmPaymentFragment.java index bccc6de7c3..767b36061e 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/payments/confirm/ConfirmPaymentFragment.java +++ b/app/src/main/java/org/thoughtcrime/securesms/payments/confirm/ConfirmPaymentFragment.java @@ -43,7 +43,7 @@ import org.thoughtcrime.securesms.payments.preferences.PaymentsHomeFragmentDirec import org.thoughtcrime.securesms.payments.preferences.RecipientHasNotEnabledPaymentsDialog; import org.thoughtcrime.securesms.recipients.Recipient; import org.signal.core.ui.BottomSheetUtil; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; import org.thoughtcrime.securesms.util.WindowUtil; import org.thoughtcrime.securesms.util.adapter.mapping.MappingModelList; import org.thoughtcrime.securesms.util.navigation.SafeNavigation; diff --git a/app/src/main/java/org/thoughtcrime/securesms/payments/preferences/PaymentRecipientSelectionFragment.java b/app/src/main/java/org/thoughtcrime/securesms/payments/preferences/PaymentRecipientSelectionFragment.java index 39ef048c83..168f809ea6 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/payments/preferences/PaymentRecipientSelectionFragment.java +++ b/app/src/main/java/org/thoughtcrime/securesms/payments/preferences/PaymentRecipientSelectionFragment.java @@ -26,7 +26,7 @@ import org.thoughtcrime.securesms.recipients.Recipient; import org.thoughtcrime.securesms.recipients.RecipientId; import org.thoughtcrime.securesms.util.ViewUtil; import org.thoughtcrime.securesms.util.navigation.SafeNavigation; -import org.whispersystems.signalservice.api.util.ExpiringProfileCredentialUtil; +import org.signal.core.util.ExpiringProfileCredentialUtil; import java.util.Optional; import java.util.function.Consumer; diff --git a/app/src/main/java/org/thoughtcrime/securesms/profiles/AvatarHelper.java b/app/src/main/java/org/thoughtcrime/securesms/profiles/AvatarHelper.java index f1e5d3d4f7..5ae1f15be1 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/profiles/AvatarHelper.java +++ b/app/src/main/java/org/thoughtcrime/securesms/profiles/AvatarHelper.java @@ -16,7 +16,7 @@ import org.thoughtcrime.securesms.database.model.ProfileAvatarFileDetails; import org.thoughtcrime.securesms.keyvalue.SignalStore; import org.thoughtcrime.securesms.recipients.Recipient; import org.thoughtcrime.securesms.recipients.RecipientId; -import org.thoughtcrime.securesms.util.ByteUnit; +import org.signal.core.util.ByteUnit; import org.thoughtcrime.securesms.util.MediaUtil; import org.whispersystems.signalservice.api.util.StreamDetails; diff --git a/app/src/main/java/org/thoughtcrime/securesms/recipients/LiveRecipientCache.java b/app/src/main/java/org/thoughtcrime/securesms/recipients/LiveRecipientCache.java index ea2f5c5e4b..3a575ad2e8 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/recipients/LiveRecipientCache.java +++ b/app/src/main/java/org/thoughtcrime/securesms/recipients/LiveRecipientCache.java @@ -23,7 +23,7 @@ import org.thoughtcrime.securesms.keyvalue.SignalStore; import org.signal.core.util.CursorUtil; import org.signal.core.util.LRUCache; import org.signal.core.util.Stopwatch; -import org.thoughtcrime.securesms.util.concurrent.FilteredExecutor; +import org.signal.core.util.concurrent.FilteredExecutor; import org.signal.core.models.ServiceId.ACI; import java.util.ArrayList; diff --git a/app/src/main/java/org/thoughtcrime/securesms/registration/fragments/SignalStrengthPhoneStateListener.java b/app/src/main/java/org/thoughtcrime/securesms/registration/fragments/SignalStrengthPhoneStateListener.java index 2b7f961a6d..2da4548a84 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/registration/fragments/SignalStrengthPhoneStateListener.java +++ b/app/src/main/java/org/thoughtcrime/securesms/registration/fragments/SignalStrengthPhoneStateListener.java @@ -17,7 +17,7 @@ import androidx.lifecycle.LifecycleOwner; import org.signal.core.util.logging.Log; import org.thoughtcrime.securesms.dependencies.AppDependencies; -import org.thoughtcrime.securesms.util.Debouncer; +import org.signal.core.util.Debouncer; // TODO [nicholas]: move to v2 package and make package-private. convert to Kotlin public final class SignalStrengthPhoneStateListener extends PhoneStateListener diff --git a/app/src/main/java/org/thoughtcrime/securesms/revealable/ViewOnceMessageView.java b/app/src/main/java/org/thoughtcrime/securesms/revealable/ViewOnceMessageView.java index 826d45082d..234b4d2f34 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/revealable/ViewOnceMessageView.java +++ b/app/src/main/java/org/thoughtcrime/securesms/revealable/ViewOnceMessageView.java @@ -26,7 +26,7 @@ import org.thoughtcrime.securesms.database.AttachmentTable; import org.thoughtcrime.securesms.database.model.MmsMessageRecord; import org.thoughtcrime.securesms.events.PartProgressEvent; import org.thoughtcrime.securesms.mms.Slide; -import org.thoughtcrime.securesms.util.DrawableUtil; +import org.signal.core.util.DrawableUtil; import org.thoughtcrime.securesms.util.MediaUtil; import org.thoughtcrime.securesms.util.MessageRecordUtil; diff --git a/app/src/main/java/org/thoughtcrime/securesms/s3/S3.kt b/app/src/main/java/org/thoughtcrime/securesms/s3/S3.kt index 305b56e970..e97135d77d 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/s3/S3.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/s3/S3.kt @@ -8,11 +8,11 @@ import okhttp3.Response import okio.HashingSink import okio.sink import org.signal.core.util.Hex +import org.signal.core.util.JsonUtils import org.signal.core.util.logging.Log import org.signal.network.exceptions.NonSuccessfulResponseCodeException import org.thoughtcrime.securesms.dependencies.AppDependencies import org.thoughtcrime.securesms.util.EncryptedStreamUtils -import org.thoughtcrime.securesms.util.JsonUtils import org.whispersystems.signalservice.internal.ServiceResponse import org.whispersystems.signalservice.internal.websocket.DefaultErrorMapper import org.whispersystems.signalservice.internal.websocket.DefaultResponseMapper diff --git a/app/src/main/java/org/thoughtcrime/securesms/scribbles/ImageEditorFragment.java b/app/src/main/java/org/thoughtcrime/securesms/scribbles/ImageEditorFragment.java index ce81c19f6a..79e9f98767 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/scribbles/ImageEditorFragment.java +++ b/app/src/main/java/org/thoughtcrime/securesms/scribbles/ImageEditorFragment.java @@ -64,10 +64,10 @@ import org.thoughtcrime.securesms.scribbles.stickers.DigitalClockStickerRenderer import org.thoughtcrime.securesms.scribbles.stickers.FeatureSticker; import org.thoughtcrime.securesms.scribbles.stickers.TappableRenderer; import org.thoughtcrime.securesms.util.MediaUtil; -import org.thoughtcrime.securesms.util.ParcelUtil; +import org.signal.core.util.ParcelUtil; import org.thoughtcrime.securesms.util.SaveAttachmentUtil; import org.thoughtcrime.securesms.util.TextSecurePreferences; -import org.thoughtcrime.securesms.util.ThrottledDebouncer; +import org.signal.core.util.ThrottledDebouncer; import org.thoughtcrime.securesms.util.ViewUtil; import org.thoughtcrime.securesms.util.views.SimpleProgressDialog; diff --git a/app/src/main/java/org/thoughtcrime/securesms/scribbles/ImageEditorHudV2.kt b/app/src/main/java/org/thoughtcrime/securesms/scribbles/ImageEditorHudV2.kt index 60b3feaacc..07fbeff1c3 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/scribbles/ImageEditorHudV2.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/scribbles/ImageEditorHudV2.kt @@ -19,6 +19,7 @@ import androidx.core.animation.doOnEnd import androidx.core.content.ContextCompat import com.airbnb.lottie.SimpleColorFilter import com.google.android.material.materialswitch.MaterialSwitch +import org.signal.core.util.Debouncer import org.thoughtcrime.securesms.R import org.thoughtcrime.securesms.components.TooltipPopup import org.thoughtcrime.securesms.keyvalue.SignalStore @@ -26,7 +27,6 @@ import org.thoughtcrime.securesms.mediasend.v2.MediaAnimations import org.thoughtcrime.securesms.scribbles.HSVColorSlider.getColor import org.thoughtcrime.securesms.scribbles.HSVColorSlider.setColor import org.thoughtcrime.securesms.scribbles.HSVColorSlider.setUpForColor -import org.thoughtcrime.securesms.util.Debouncer import org.thoughtcrime.securesms.util.ViewUtil import org.thoughtcrime.securesms.util.visible import org.signal.core.ui.R as CoreUiR diff --git a/app/src/main/java/org/thoughtcrime/securesms/scribbles/stickers/ScribbleStickersFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/scribbles/stickers/ScribbleStickersFragment.kt index 2f6f009c08..01730f9d63 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/scribbles/stickers/ScribbleStickersFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/scribbles/stickers/ScribbleStickersFragment.kt @@ -6,10 +6,10 @@ import android.os.Bundle import android.view.View import android.widget.ImageView import android.widget.TextView +import org.signal.core.util.Throttler import org.thoughtcrime.securesms.R import org.thoughtcrime.securesms.keyboard.sticker.KeyboardStickerListAdapter import org.thoughtcrime.securesms.keyboard.sticker.StickerKeyboardPageFragment -import org.thoughtcrime.securesms.util.Throttler import org.thoughtcrime.securesms.util.adapter.mapping.LayoutFactory import org.thoughtcrime.securesms.util.adapter.mapping.MappingModel import org.thoughtcrime.securesms.util.adapter.mapping.MappingModelList diff --git a/app/src/main/java/org/thoughtcrime/securesms/search/SearchRepository.java b/app/src/main/java/org/thoughtcrime/securesms/search/SearchRepository.java index 997e362656..242e938a42 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/search/SearchRepository.java +++ b/app/src/main/java/org/thoughtcrime/securesms/search/SearchRepository.java @@ -35,7 +35,7 @@ import org.thoughtcrime.securesms.dependencies.AppDependencies; import org.thoughtcrime.securesms.recipients.Recipient; import org.thoughtcrime.securesms.recipients.RecipientId; import org.signal.core.util.Util; -import org.thoughtcrime.securesms.util.concurrent.SerialExecutor; +import org.signal.core.util.concurrent.SerialExecutor; import java.util.ArrayList; import java.util.Arrays; diff --git a/app/src/main/java/org/thoughtcrime/securesms/service/KeyCachingService.java b/app/src/main/java/org/thoughtcrime/securesms/service/KeyCachingService.java index bc2db0c499..3535ffe9e4 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/service/KeyCachingService.java +++ b/app/src/main/java/org/thoughtcrime/securesms/service/KeyCachingService.java @@ -46,9 +46,9 @@ import org.thoughtcrime.securesms.dependencies.AppDependencies; import org.thoughtcrime.securesms.keyvalue.SignalStore; import org.thoughtcrime.securesms.migrations.ApplicationMigrations; import org.thoughtcrime.securesms.notifications.NotificationChannels; -import org.thoughtcrime.securesms.util.AppForegroundObserver; +import org.signal.core.util.AppForegroundObserver; import org.thoughtcrime.securesms.util.DynamicLanguage; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; import java.util.Objects; import java.util.concurrent.TimeUnit; diff --git a/app/src/main/java/org/thoughtcrime/securesms/service/PanicResponderListener.kt b/app/src/main/java/org/thoughtcrime/securesms/service/PanicResponderListener.kt index f50f21c029..708bdd0347 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/service/PanicResponderListener.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/service/PanicResponderListener.kt @@ -3,8 +3,8 @@ package org.thoughtcrime.securesms.service import android.content.BroadcastReceiver import android.content.Context import android.content.Intent +import org.signal.core.util.ServiceUtil import org.thoughtcrime.securesms.keyvalue.SignalStore -import org.thoughtcrime.securesms.util.ServiceUtil /** * Respond to a PanicKit trigger Intent by locking the app. PanicKit provides a diff --git a/app/src/main/java/org/thoughtcrime/securesms/service/TimedEventManager.java b/app/src/main/java/org/thoughtcrime/securesms/service/TimedEventManager.java index 18b68a1fc7..665af436e3 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/service/TimedEventManager.java +++ b/app/src/main/java/org/thoughtcrime/securesms/service/TimedEventManager.java @@ -19,7 +19,7 @@ import org.signal.core.util.PendingIntentFlags; import org.signal.core.util.ThreadUtil; import org.signal.core.util.logging.Log; import org.thoughtcrime.securesms.util.RemoteConfig; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; /** * Class to help manage scheduling events to happen in the future, whether the app is open or not. diff --git a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/CallSetupActionProcessorDelegate.java b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/CallSetupActionProcessorDelegate.java index 6eae821296..2aa4a31f8d 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/CallSetupActionProcessorDelegate.java +++ b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/CallSetupActionProcessorDelegate.java @@ -10,7 +10,7 @@ import org.thoughtcrime.securesms.events.WebRtcViewModel; import org.thoughtcrime.securesms.ringrtc.OutgoingVideoSourceRouter; import org.thoughtcrime.securesms.ringrtc.RemotePeer; import org.thoughtcrime.securesms.service.webrtc.state.WebRtcServiceState; -import org.thoughtcrime.securesms.util.AppForegroundObserver; +import org.signal.core.util.AppForegroundObserver; import org.thoughtcrime.securesms.webrtc.audio.SignalAudioManager; import org.thoughtcrime.securesms.webrtc.locks.LockManager; diff --git a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/IncomingCallActionProcessor.java b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/IncomingCallActionProcessor.java index b40308e25f..ff14185dc1 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/IncomingCallActionProcessor.java +++ b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/IncomingCallActionProcessor.java @@ -27,7 +27,7 @@ import org.thoughtcrime.securesms.ringrtc.RemotePeer; import org.thoughtcrime.securesms.service.webrtc.state.CallSetupState; import org.thoughtcrime.securesms.service.webrtc.state.VideoState; import org.thoughtcrime.securesms.service.webrtc.state.WebRtcServiceState; -import org.thoughtcrime.securesms.util.AppForegroundObserver; +import org.signal.core.util.AppForegroundObserver; import org.thoughtcrime.securesms.util.NetworkUtil; import org.signal.core.util.Util; import org.thoughtcrime.securesms.util.RemoteConfig; diff --git a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/IncomingGroupCallActionProcessor.java b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/IncomingGroupCallActionProcessor.java index 5ce19877fe..8147fe6eb5 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/IncomingGroupCallActionProcessor.java +++ b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/IncomingGroupCallActionProcessor.java @@ -25,7 +25,7 @@ import org.thoughtcrime.securesms.recipients.Recipient; import org.thoughtcrime.securesms.ringrtc.OutgoingVideoSourceRouter; import org.thoughtcrime.securesms.ringrtc.RemotePeer; import org.thoughtcrime.securesms.service.webrtc.state.WebRtcServiceState; -import org.thoughtcrime.securesms.util.AppForegroundObserver; +import org.signal.core.util.AppForegroundObserver; import org.thoughtcrime.securesms.util.NetworkUtil; import org.thoughtcrime.securesms.util.RemoteConfig; import org.thoughtcrime.securesms.webrtc.locks.LockManager; diff --git a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/SignalCallManager.java b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/SignalCallManager.java index 72ba0d1035..f8650d5374 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/SignalCallManager.java +++ b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/SignalCallManager.java @@ -68,7 +68,7 @@ import org.thoughtcrime.securesms.service.webrtc.links.CallLinkRoomId; import org.thoughtcrime.securesms.service.webrtc.links.SignalCallLinkManager; import org.thoughtcrime.securesms.service.webrtc.state.WebRtcEphemeralState; import org.thoughtcrime.securesms.service.webrtc.state.WebRtcServiceState; -import org.thoughtcrime.securesms.util.AppForegroundObserver; +import org.signal.core.util.AppForegroundObserver; import org.thoughtcrime.securesms.util.RecipientAccessList; import org.thoughtcrime.securesms.util.TextSecurePreferences; import org.thoughtcrime.securesms.util.rx.RxStore; diff --git a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/WebRtcActionProcessor.java b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/WebRtcActionProcessor.java index 35edda9aed..4c73954820 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/WebRtcActionProcessor.java +++ b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/WebRtcActionProcessor.java @@ -43,7 +43,7 @@ import org.thoughtcrime.securesms.service.webrtc.WebRtcData.ReceivedOfferMetadat import org.thoughtcrime.securesms.service.webrtc.state.WebRtcEphemeralState; import org.thoughtcrime.securesms.service.webrtc.state.WebRtcServiceState; import org.thoughtcrime.securesms.service.webrtc.state.WebRtcServiceStateBuilder; -import org.thoughtcrime.securesms.util.AppForegroundObserver; +import org.signal.core.util.AppForegroundObserver; import org.thoughtcrime.securesms.util.NetworkUtil; import org.thoughtcrime.securesms.util.TelephonyUtil; import org.thoughtcrime.securesms.webrtc.audio.SignalAudioManager; diff --git a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/WebRtcInteractor.java b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/WebRtcInteractor.java index d5d5f7a957..8e15a0d54a 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/WebRtcInteractor.java +++ b/app/src/main/java/org/thoughtcrime/securesms/service/webrtc/WebRtcInteractor.java @@ -16,7 +16,7 @@ import org.thoughtcrime.securesms.recipients.RecipientId; import org.thoughtcrime.securesms.ringrtc.CameraEventListener; import org.thoughtcrime.securesms.ringrtc.RemotePeer; import org.thoughtcrime.securesms.service.webrtc.state.WebRtcServiceState; -import org.thoughtcrime.securesms.util.AppForegroundObserver; +import org.signal.core.util.AppForegroundObserver; import org.thoughtcrime.securesms.webrtc.audio.AudioManagerCommand; import org.thoughtcrime.securesms.webrtc.audio.SignalAudioManager; import org.thoughtcrime.securesms.webrtc.locks.LockManager; diff --git a/app/src/main/java/org/thoughtcrime/securesms/shakereport/ShakeToReport.java b/app/src/main/java/org/thoughtcrime/securesms/shakereport/ShakeToReport.java index d311cd2dd3..c43431a6ed 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/shakereport/ShakeToReport.java +++ b/app/src/main/java/org/thoughtcrime/securesms/shakereport/ShakeToReport.java @@ -21,8 +21,8 @@ import org.thoughtcrime.securesms.dependencies.AppDependencies; import org.thoughtcrime.securesms.keyvalue.SignalStore; import org.thoughtcrime.securesms.logsubmit.SubmitDebugLogRepository; import org.thoughtcrime.securesms.sharing.MultiShareArgs; -import org.thoughtcrime.securesms.util.AppForegroundObserver; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.AppForegroundObserver; +import org.signal.core.util.ServiceUtil; import org.thoughtcrime.securesms.util.views.SimpleProgressDialog; import java.lang.ref.WeakReference; diff --git a/app/src/main/java/org/thoughtcrime/securesms/sharing/MultiShareArgs.java b/app/src/main/java/org/thoughtcrime/securesms/sharing/MultiShareArgs.java index ea4532cc94..be10b90a42 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/sharing/MultiShareArgs.java +++ b/app/src/main/java/org/thoughtcrime/securesms/sharing/MultiShareArgs.java @@ -20,7 +20,7 @@ import org.signal.core.models.media.Media; import org.thoughtcrime.securesms.stickers.StickerLocator; import org.thoughtcrime.securesms.stories.Stories; import org.thoughtcrime.securesms.util.MediaUtil; -import org.thoughtcrime.securesms.util.ParcelUtil; +import org.signal.core.util.ParcelUtil; import org.signal.core.util.Util; import java.io.IOException; diff --git a/app/src/main/java/org/thoughtcrime/securesms/sms/MessageSender.java b/app/src/main/java/org/thoughtcrime/securesms/sms/MessageSender.java index 598f14712d..1cb841a332 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/sms/MessageSender.java +++ b/app/src/main/java/org/thoughtcrime/securesms/sms/MessageSender.java @@ -65,7 +65,7 @@ import org.thoughtcrime.securesms.mms.OutgoingMessage; import org.thoughtcrime.securesms.recipients.Recipient; import org.thoughtcrime.securesms.recipients.RecipientId; import org.thoughtcrime.securesms.recipients.RecipientUtil; -import org.thoughtcrime.securesms.util.ParcelUtil; +import org.signal.core.util.ParcelUtil; import org.thoughtcrime.securesms.util.SignalLocalMetrics; import org.whispersystems.signalservice.api.push.DistributionId; import org.signal.network.util.Preconditions; diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/StoryTextPostModel.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/StoryTextPostModel.kt index e251313a18..5b1571a324 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/stories/StoryTextPostModel.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/stories/StoryTextPostModel.kt @@ -17,6 +17,7 @@ import com.bumptech.glide.load.ResourceDecoder import com.bumptech.glide.load.engine.Resource import com.bumptech.glide.load.resource.SimpleResource import org.signal.core.util.Base64 +import org.signal.core.util.ParcelUtil import org.signal.core.util.concurrent.safeBlockingGet import org.signal.core.util.readParcelableCompat import org.signal.glide.decryptableuri.DecryptableUri @@ -32,7 +33,6 @@ import org.thoughtcrime.securesms.fonts.TextFont import org.thoughtcrime.securesms.fonts.TextToScript import org.thoughtcrime.securesms.fonts.TypefaceCache import org.thoughtcrime.securesms.recipients.RecipientId -import org.thoughtcrime.securesms.util.ParcelUtil import java.io.IOException import java.security.MessageDigest diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/StoryVolumeBar.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/StoryVolumeBar.kt index 3e9e753b90..94213bf299 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/stories/StoryVolumeBar.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/stories/StoryVolumeBar.kt @@ -13,8 +13,8 @@ import androidx.core.content.ContextCompat import androidx.core.graphics.withClip import androidx.media.AudioManagerCompat import org.signal.core.util.DimensionUnit +import org.signal.core.util.ServiceUtil import org.thoughtcrime.securesms.R -import org.thoughtcrime.securesms.util.ServiceUtil /** * Displays a vertical volume bar. diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/StoryMutePolicy.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/StoryMutePolicy.kt index 632ca34345..068bc00399 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/StoryMutePolicy.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/StoryMutePolicy.kt @@ -1,6 +1,6 @@ package org.thoughtcrime.securesms.stories.viewer -import org.thoughtcrime.securesms.util.AppForegroundObserver +import org.signal.core.util.AppForegroundObserver /** * Stories are to start muted, and once unmuted, remain as such until the diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/StoryViewerActivity.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/StoryViewerActivity.kt index 598d31b77d..3916927806 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/StoryViewerActivity.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/StoryViewerActivity.kt @@ -15,6 +15,7 @@ import androidx.media.AudioManagerCompat import androidx.window.layout.WindowMetricsCalculator import com.bumptech.glide.Glide import com.bumptech.glide.MemoryCategory +import org.signal.core.util.ServiceUtil import org.signal.core.util.dp import org.signal.core.util.getParcelableCompat import org.signal.core.util.getParcelableExtraCompat @@ -26,7 +27,6 @@ import org.thoughtcrime.securesms.components.voice.VoiceNoteMediaControllerOwner import org.thoughtcrime.securesms.stories.StoryViewerArgs import org.thoughtcrime.securesms.stories.viewer.page.StoryViewStateCache import org.thoughtcrime.securesms.stories.viewer.page.StoryViewStateViewModel -import org.thoughtcrime.securesms.util.ServiceUtil import org.thoughtcrime.securesms.util.ViewUtil import kotlin.math.max import kotlin.math.min diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/page/StoryViewStateCache.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/page/StoryViewStateCache.kt index 34c4e7dd96..6defea174c 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/page/StoryViewStateCache.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/page/StoryViewStateCache.kt @@ -3,7 +3,7 @@ package org.thoughtcrime.securesms.stories.viewer.page import android.os.Parcel import android.os.Parcelable import kotlinx.parcelize.Parcelize -import org.thoughtcrime.securesms.util.ParcelUtil +import org.signal.core.util.ParcelUtil /** * Activity-bounds ViewModel which tracks the viewed state for stories. diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/page/StoryViewerPageFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/page/StoryViewerPageFragment.kt index 886faf3797..648cb1fb18 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/page/StoryViewerPageFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/page/StoryViewerPageFragment.kt @@ -49,7 +49,9 @@ import io.reactivex.rxjava3.kotlin.subscribeBy import kotlinx.coroutines.launch import org.signal.core.ui.BottomSheetUtil import org.signal.core.ui.permissions.Permissions +import org.signal.core.util.Debouncer import org.signal.core.util.DimensionUnit +import org.signal.core.util.ServiceUtil import org.signal.core.util.concurrent.LifecycleDisposable import org.signal.core.util.dp import org.signal.core.util.getParcelableCompat @@ -92,13 +94,11 @@ import org.thoughtcrime.securesms.stories.viewer.reply.tabs.StoryViewsAndReplies import org.thoughtcrime.securesms.stories.viewer.views.StoryViewsBottomSheetDialogFragment import org.thoughtcrime.securesms.util.AvatarUtil import org.thoughtcrime.securesms.util.DateUtils -import org.thoughtcrime.securesms.util.Debouncer import org.thoughtcrime.securesms.util.LinkUtil import org.thoughtcrime.securesms.util.Linkification import org.thoughtcrime.securesms.util.LongClickCopySpan import org.thoughtcrime.securesms.util.LongClickMovementMethod import org.thoughtcrime.securesms.util.Projection -import org.thoughtcrime.securesms.util.ServiceUtil import org.thoughtcrime.securesms.util.ViewUtil import org.thoughtcrime.securesms.util.fragments.requireListener import org.thoughtcrime.securesms.util.views.TouchInterceptingFrameLayout diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/reply/group/StoryGroupReplyFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/reply/group/StoryGroupReplyFragment.kt index b904f015b2..842b8cd779 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/reply/group/StoryGroupReplyFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/reply/group/StoryGroupReplyFragment.kt @@ -18,6 +18,7 @@ import com.google.android.material.dialog.MaterialAlertDialogBuilder import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.kotlin.subscribeBy import kotlinx.coroutines.launch +import org.signal.core.util.ServiceUtil import org.signal.core.util.concurrent.LifecycleDisposable import org.signal.core.util.concurrent.SignalExecutors import org.signal.core.util.getParcelableCompat @@ -57,7 +58,6 @@ import org.thoughtcrime.securesms.stories.viewer.reply.StoryViewsAndRepliesPager import org.thoughtcrime.securesms.stories.viewer.reply.StoryViewsAndRepliesPagerParent import org.thoughtcrime.securesms.stories.viewer.reply.composer.StoryReplyComposer import org.thoughtcrime.securesms.util.DeleteDialog -import org.thoughtcrime.securesms.util.ServiceUtil import org.thoughtcrime.securesms.util.ViewUtil import org.thoughtcrime.securesms.util.adapter.mapping.PagingMappingAdapter import org.thoughtcrime.securesms.util.fragments.findListener diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/AdaptiveBitmapMetrics.kt b/app/src/main/java/org/thoughtcrime/securesms/util/AdaptiveBitmapMetrics.kt index a4c1f5f5fb..75ac559105 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/AdaptiveBitmapMetrics.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/util/AdaptiveBitmapMetrics.kt @@ -5,6 +5,8 @@ package org.thoughtcrime.securesms.util +import android.graphics.Bitmap +import android.graphics.Canvas import org.signal.core.util.dp import kotlin.math.ceil import kotlin.math.floor @@ -35,4 +37,14 @@ object AdaptiveBitmapMetrics { @get:JvmStatic val padding = (outerWidth - innerWidth) / 2f + + @JvmStatic + fun wrapBitmap(toWrap: Bitmap): Bitmap { + val bitmap = Bitmap.createBitmap(outerWidth, outerWidth, Bitmap.Config.ARGB_8888) + val scaled = Bitmap.createScaledBitmap(toWrap, innerWidth, innerWidth, true) + + Canvas(bitmap).drawBitmap(scaled, padding, padding, null) + + return bitmap + } } diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/AlarmSleepTimer.java b/app/src/main/java/org/thoughtcrime/securesms/util/AlarmSleepTimer.java index 7fbbe91e6e..a31827a617 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/AlarmSleepTimer.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/AlarmSleepTimer.java @@ -14,9 +14,10 @@ import androidx.core.content.ContextCompat; import org.signal.core.util.PendingIntentFlags; import org.signal.core.util.logging.Log; -import org.whispersystems.signalservice.api.util.SleepTimer; +import org.signal.core.util.SleepTimer; import java.util.concurrent.ConcurrentSkipListSet; +import org.signal.core.util.ServiceUtil; /** * A sleep timer that is based on elapsed realtime, so that it works properly, even in low-power sleep modes. diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/AvatarUtil.java b/app/src/main/java/org/thoughtcrime/securesms/util/AvatarUtil.java index 0c4e32eb49..e897766921 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/AvatarUtil.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/AvatarUtil.java @@ -42,6 +42,7 @@ import java.util.concurrent.CountDownLatch; import java.util.concurrent.ExecutionException; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicReference; +import org.signal.core.util.DrawableUtil; public final class AvatarUtil { diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/BubbleUtil.java b/app/src/main/java/org/thoughtcrime/securesms/util/BubbleUtil.java index 8db6738684..1e906667e6 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/BubbleUtil.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/BubbleUtil.java @@ -29,6 +29,7 @@ import org.thoughtcrime.securesms.recipients.RecipientId; import java.util.stream.Stream; import static org.thoughtcrime.securesms.util.ConversationUtil.CONVERSATION_SUPPORT_VERSION; +import org.signal.core.util.ServiceUtil; /** * Bubble-related utility methods. diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/CachedInflater.java b/app/src/main/java/org/thoughtcrime/securesms/util/CachedInflater.java index 740a109f8d..7fffcda06c 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/CachedInflater.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/CachedInflater.java @@ -17,7 +17,7 @@ import org.signal.core.util.ThreadUtil; import org.signal.core.util.Util; import org.signal.core.util.concurrent.SignalExecutors; import org.signal.core.util.logging.Log; -import org.thoughtcrime.securesms.util.concurrent.SerialExecutor; +import org.signal.core.util.concurrent.SerialExecutor; import java.util.Collections; import java.util.HashMap; @@ -25,6 +25,7 @@ import java.util.LinkedList; import java.util.List; import java.util.Map; import java.util.concurrent.Executor; +import org.signal.core.util.ConfigurationUtil; /** * A class that can be used to pre-cache layouts. Usage flow: diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/ConnectivityWarning.kt b/app/src/main/java/org/thoughtcrime/securesms/util/ConnectivityWarning.kt index 95bdbda33d..dbcc8438c6 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/ConnectivityWarning.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/util/ConnectivityWarning.kt @@ -6,6 +6,8 @@ package org.thoughtcrime.securesms.util import com.fasterxml.jackson.annotation.JsonProperty +import org.signal.core.util.BucketingUtil +import org.signal.core.util.JsonUtils import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.keyvalue.SignalStore import java.io.IOException diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/ConversationShortcutPhoto.java b/app/src/main/java/org/thoughtcrime/securesms/util/ConversationShortcutPhoto.java index a538023151..648a3c78a4 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/ConversationShortcutPhoto.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/ConversationShortcutPhoto.java @@ -26,6 +26,7 @@ import org.thoughtcrime.securesms.recipients.Recipient; import java.security.MessageDigest; import java.util.Objects; import java.util.concurrent.ExecutionException; +import org.signal.core.util.DrawableUtil; public final class ConversationShortcutPhoto implements Key { @@ -155,7 +156,7 @@ public final class ConversationShortcutPhoto implements Key { } private @NonNull Bitmap getShortcutInfoBitmap(@NonNull Context context) throws ExecutionException, InterruptedException { - return DrawableUtil.wrapBitmapForShortcutInfo(AvatarUtil.loadIconBitmapSquareNoCache(context, + return AdaptiveBitmapMetrics.wrapBitmap(AvatarUtil.loadIconBitmapSquareNoCache(context, photo.recipient, AdaptiveBitmapMetrics.getInnerWidth(), AdaptiveBitmapMetrics.getInnerWidth())); @@ -165,7 +166,7 @@ public final class ConversationShortcutPhoto implements Key { Recipient recipient = photo.recipient; Bitmap toWrap = DrawableUtil.toBitmap(new FallbackAvatarDrawable(context, recipient.getFallbackAvatar()), ViewUtil.dpToPx(80), ViewUtil.dpToPx(80)); - Bitmap wrapped = DrawableUtil.wrapBitmapForShortcutInfo(toWrap); + Bitmap wrapped = AdaptiveBitmapMetrics.wrapBitmap(toWrap); toWrap.recycle(); diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/DeviceProperties.java b/app/src/main/java/org/thoughtcrime/securesms/util/DeviceProperties.java index bcb4804669..60968efd78 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/DeviceProperties.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/DeviceProperties.java @@ -12,6 +12,8 @@ import androidx.annotation.RequiresApi; import org.signal.core.util.logging.Log; import org.thoughtcrime.securesms.dependencies.AppDependencies; +import org.signal.core.util.ByteUnit; +import org.signal.core.util.ServiceUtil; /** diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/DynamicTheme.java b/app/src/main/java/org/thoughtcrime/securesms/util/DynamicTheme.java index c88e9450d6..e58338bee0 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/DynamicTheme.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/DynamicTheme.java @@ -13,6 +13,7 @@ import org.signal.core.util.logging.Log; import org.thoughtcrime.securesms.R; import org.thoughtcrime.securesms.keyvalue.SettingsValues.Theme; import org.thoughtcrime.securesms.keyvalue.SignalStore; +import org.signal.core.util.ConfigurationUtil; public class DynamicTheme { diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/FrameRateTracker.java b/app/src/main/java/org/thoughtcrime/securesms/util/FrameRateTracker.java index 7319b66422..06d06efd80 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/FrameRateTracker.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/FrameRateTracker.java @@ -11,6 +11,7 @@ import org.signal.core.util.logging.Log; import java.util.Locale; import java.util.concurrent.TimeUnit; +import org.signal.core.util.ServiceUtil; /** * Tracks the frame rate of the app and logs when things are bad. diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/InternetConnectionObserver.kt b/app/src/main/java/org/thoughtcrime/securesms/util/InternetConnectionObserver.kt index 6ca5ff8c6c..ff9a6dc87c 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/InternetConnectionObserver.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/util/InternetConnectionObserver.kt @@ -9,6 +9,7 @@ import android.net.Network import android.os.Build import androidx.annotation.RequiresApi import io.reactivex.rxjava3.core.Observable +import org.signal.core.util.ServiceUtil import org.thoughtcrime.securesms.dependencies.AppDependencies import org.thoughtcrime.securesms.jobmanager.impl.NetworkConstraint diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/LocaleRemoteConfig.java b/app/src/main/java/org/thoughtcrime/securesms/util/LocaleRemoteConfig.java index a4fcb59b8e..139044857c 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/LocaleRemoteConfig.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/LocaleRemoteConfig.java @@ -18,6 +18,7 @@ import java.util.List; import java.util.Map; import java.util.Optional; import java.util.stream.Collectors; +import org.signal.core.util.BucketingUtil; /** * Provide access to locale-specific values within remote config, following the locale CSV-Colon format. diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/NetworkUtil.java b/app/src/main/java/org/thoughtcrime/securesms/util/NetworkUtil.java index bb09ce1dda..341cc39d92 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/NetworkUtil.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/NetworkUtil.java @@ -13,6 +13,7 @@ import androidx.annotation.NonNull; import org.signal.ringrtc.CallManager; import org.thoughtcrime.securesms.keyvalue.SignalStore; import org.webrtc.PeerConnection; +import org.signal.core.util.ServiceUtil; public final class NetworkUtil { diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/OkHttpUtil.java b/app/src/main/java/org/thoughtcrime/securesms/util/OkHttpUtil.java index ab94936098..3051965574 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/OkHttpUtil.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/OkHttpUtil.java @@ -14,6 +14,7 @@ import java.util.regex.Pattern; import okhttp3.MediaType; import okhttp3.ResponseBody; +import org.signal.core.util.ByteUnit; public final class OkHttpUtil { diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/PowerManagerCompat.java b/app/src/main/java/org/thoughtcrime/securesms/util/PowerManagerCompat.java index 551aa7df12..066b9dba99 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/PowerManagerCompat.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/PowerManagerCompat.java @@ -7,6 +7,7 @@ import android.os.PowerManager; import android.provider.Settings; import androidx.annotation.NonNull; +import org.signal.core.util.ServiceUtil; public class PowerManagerCompat { diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/RemoteDeprecation.java b/app/src/main/java/org/thoughtcrime/securesms/util/RemoteDeprecation.java index 2f61f72522..99b09051ef 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/RemoteDeprecation.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/RemoteDeprecation.java @@ -14,6 +14,8 @@ import java.io.IOException; import java.util.Comparator; import java.util.Objects; import java.util.stream.Stream; +import org.signal.core.util.JsonUtils; +import org.signal.core.util.SemanticVersion; public final class RemoteDeprecation { diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/VibrateUtil.java b/app/src/main/java/org/thoughtcrime/securesms/util/VibrateUtil.java index 280af14c77..1d5666f9fc 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/VibrateUtil.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/VibrateUtil.java @@ -7,6 +7,7 @@ import android.os.Vibrator; import android.provider.Settings; import androidx.annotation.NonNull; +import org.signal.core.util.ServiceUtil; public final class VibrateUtil { diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/ViewUtil.java b/app/src/main/java/org/thoughtcrime/securesms/util/ViewUtil.java index 1e77e76631..6454c21370 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/ViewUtil.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/ViewUtil.java @@ -49,6 +49,7 @@ import androidx.lifecycle.Lifecycle; import org.signal.core.util.concurrent.ListenableFuture; import org.signal.core.util.concurrent.SettableFuture; import org.signal.core.ui.view.Stub; +import org.signal.core.util.ServiceUtil; public final class ViewUtil { diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/WakeLockUtil.java b/app/src/main/java/org/thoughtcrime/securesms/util/WakeLockUtil.java index 471ecaaed4..3a5f19bfbe 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/WakeLockUtil.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/WakeLockUtil.java @@ -8,6 +8,7 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import org.signal.core.util.logging.Log; +import org.signal.core.util.ServiceUtil; public class WakeLockUtil { diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/concurrent/SerialMonoLifoExecutor.java b/app/src/main/java/org/thoughtcrime/securesms/util/concurrent/SerialMonoLifoExecutor.java index 66d0f1716b..6504c4da63 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/concurrent/SerialMonoLifoExecutor.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/concurrent/SerialMonoLifoExecutor.java @@ -3,6 +3,7 @@ package org.thoughtcrime.securesms.util.concurrent; import androidx.annotation.NonNull; import java.util.concurrent.Executor; +import org.signal.core.util.concurrent.SerialExecutor; /** * Wraps another executor to make a new executor that only keeps around two tasks: diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/dualsim/SubscriptionManagerCompat.java b/app/src/main/java/org/thoughtcrime/securesms/util/dualsim/SubscriptionManagerCompat.java index 5a7c56d82e..8587ef96e3 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/dualsim/SubscriptionManagerCompat.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/dualsim/SubscriptionManagerCompat.java @@ -14,7 +14,7 @@ import androidx.core.content.ContextCompat; import org.signal.core.util.logging.Log; import org.thoughtcrime.securesms.R; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; import java.util.Collection; import java.util.Collections; diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/livedata/Store.java b/app/src/main/java/org/thoughtcrime/securesms/util/livedata/Store.java index 5cf6b01c24..babb695134 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/livedata/Store.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/livedata/Store.java @@ -10,7 +10,7 @@ import androidx.lifecycle.MediatorLiveData; import java.util.function.Function; import org.signal.core.util.concurrent.SignalExecutors; -import org.thoughtcrime.securesms.util.concurrent.SerialExecutor; +import org.signal.core.util.concurrent.SerialExecutor; import java.util.HashSet; import java.util.Set; diff --git a/app/src/main/java/org/thoughtcrime/securesms/verify/VerifyIdentityFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/verify/VerifyIdentityFragment.kt index f658475ae8..2cbe0e47b1 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/verify/VerifyIdentityFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/verify/VerifyIdentityFragment.kt @@ -8,6 +8,7 @@ import androidx.activity.addCallback import androidx.core.os.bundleOf import androidx.fragment.app.Fragment import org.signal.core.ui.permissions.Permissions +import org.signal.core.util.ServiceUtil import org.signal.core.util.ThreadUtil import org.signal.core.util.getParcelableCompat import org.signal.qr.kitkat.ScanListener @@ -17,7 +18,6 @@ import org.thoughtcrime.securesms.crypto.IdentityKeyParcelable import org.thoughtcrime.securesms.keyvalue.SignalStore import org.thoughtcrime.securesms.recipients.Recipient import org.thoughtcrime.securesms.recipients.RecipientId -import org.thoughtcrime.securesms.util.ServiceUtil /** * Fragment to assist user in verifying recipient identity utilizing keys. diff --git a/app/src/main/java/org/thoughtcrime/securesms/video/exo/SimpleExoPlayerPool.kt b/app/src/main/java/org/thoughtcrime/securesms/video/exo/SimpleExoPlayerPool.kt index 3e01f067cf..d8852b6211 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/video/exo/SimpleExoPlayerPool.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/video/exo/SimpleExoPlayerPool.kt @@ -12,10 +12,10 @@ import androidx.media3.exoplayer.ExoPlayer import androidx.media3.exoplayer.mediacodec.MediaCodecUtil import androidx.media3.exoplayer.source.DefaultMediaSourceFactory import androidx.media3.exoplayer.source.MediaSource +import org.signal.core.util.AppForegroundObserver import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.dependencies.AppDependencies import org.thoughtcrime.securesms.net.ContentProxySelector -import org.thoughtcrime.securesms.util.AppForegroundObserver import org.thoughtcrime.securesms.util.DeviceProperties import kotlin.time.Duration.Companion.seconds diff --git a/app/src/main/java/org/thoughtcrime/securesms/wallpaper/ChatWallpaperFragment.java b/app/src/main/java/org/thoughtcrime/securesms/wallpaper/ChatWallpaperFragment.java index 1b1a973d91..d5bd975c85 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/wallpaper/ChatWallpaperFragment.java +++ b/app/src/main/java/org/thoughtcrime/securesms/wallpaper/ChatWallpaperFragment.java @@ -28,7 +28,7 @@ import com.google.android.material.dialog.MaterialAlertDialogBuilder; import org.thoughtcrime.securesms.R; import org.thoughtcrime.securesms.components.AvatarImageView; import org.thoughtcrime.securesms.conversation.colors.ColorizerView; -import org.thoughtcrime.securesms.util.DisplayMetricsUtil; +import org.signal.core.util.DisplayMetricsUtil; import org.thoughtcrime.securesms.util.Projection; import org.signal.core.ui.util.ThemeUtil; import org.thoughtcrime.securesms.util.ViewUtil; diff --git a/app/src/main/java/org/thoughtcrime/securesms/wallpaper/ChatWallpaperRepository.java b/app/src/main/java/org/thoughtcrime/securesms/wallpaper/ChatWallpaperRepository.java index 8f8c7f75eb..00c8049a3f 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/wallpaper/ChatWallpaperRepository.java +++ b/app/src/main/java/org/thoughtcrime/securesms/wallpaper/ChatWallpaperRepository.java @@ -12,7 +12,7 @@ import org.thoughtcrime.securesms.database.SignalDatabase; import org.thoughtcrime.securesms.keyvalue.SignalStore; import org.thoughtcrime.securesms.recipients.Recipient; import org.thoughtcrime.securesms.recipients.RecipientId; -import org.thoughtcrime.securesms.util.concurrent.SerialExecutor; +import org.signal.core.util.concurrent.SerialExecutor; import java.util.ArrayList; import java.util.List; diff --git a/app/src/main/java/org/thoughtcrime/securesms/wallpaper/ChatWallpaperViewHolder.java b/app/src/main/java/org/thoughtcrime/securesms/wallpaper/ChatWallpaperViewHolder.java index 906c49f05a..097f72d117 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/wallpaper/ChatWallpaperViewHolder.java +++ b/app/src/main/java/org/thoughtcrime/securesms/wallpaper/ChatWallpaperViewHolder.java @@ -14,7 +14,7 @@ import androidx.recyclerview.widget.RecyclerView; import org.thoughtcrime.securesms.R; -import org.thoughtcrime.securesms.util.DisplayMetricsUtil; +import org.signal.core.util.DisplayMetricsUtil; import org.thoughtcrime.securesms.util.adapter.mapping.Factory; import org.thoughtcrime.securesms.util.adapter.mapping.LayoutFactory; import org.thoughtcrime.securesms.util.adapter.mapping.MappingViewHolder; diff --git a/app/src/main/java/org/thoughtcrime/securesms/webrtc/audio/AudioDeviceConfig.kt b/app/src/main/java/org/thoughtcrime/securesms/webrtc/audio/AudioDeviceConfig.kt index 845c326399..25f0cccd69 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/webrtc/audio/AudioDeviceConfig.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/webrtc/audio/AudioDeviceConfig.kt @@ -11,10 +11,10 @@ import android.media.audiofx.NoiseSuppressor import android.os.Build import androidx.annotation.VisibleForTesting import com.fasterxml.jackson.annotation.JsonProperty +import org.signal.core.util.JsonUtils import org.signal.core.util.logging.Log import org.signal.ringrtc.AudioConfig import org.thoughtcrime.securesms.dependencies.AppDependencies -import org.thoughtcrime.securesms.util.JsonUtils import org.thoughtcrime.securesms.util.RemoteConfig import java.io.IOException diff --git a/app/src/main/java/org/thoughtcrime/securesms/webrtc/audio/AudioManagerCommand.kt b/app/src/main/java/org/thoughtcrime/securesms/webrtc/audio/AudioManagerCommand.kt index 270d725b2d..d05ef88d29 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/webrtc/audio/AudioManagerCommand.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/webrtc/audio/AudioManagerCommand.kt @@ -3,10 +3,10 @@ package org.thoughtcrime.securesms.webrtc.audio import android.net.Uri import android.os.Parcel import android.os.Parcelable +import org.signal.core.util.ParcelUtil import org.signal.core.util.readParcelableCompat import org.signal.core.util.readSerializableCompat import org.thoughtcrime.securesms.recipients.RecipientId -import org.thoughtcrime.securesms.util.ParcelUtil /** * Commands that can be issued to [SignalAudioManager] to perform various tasks. diff --git a/app/src/main/java/org/thoughtcrime/securesms/webrtc/audio/AudioManagerCompat.java b/app/src/main/java/org/thoughtcrime/securesms/webrtc/audio/AudioManagerCompat.java index 490d46e429..da4ad86315 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/webrtc/audio/AudioManagerCompat.java +++ b/app/src/main/java/org/thoughtcrime/securesms/webrtc/audio/AudioManagerCompat.java @@ -19,7 +19,7 @@ import androidx.annotation.RequiresApi; import org.jetbrains.annotations.Nullable; import org.signal.core.util.logging.Log; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; import java.util.List; diff --git a/app/src/main/java/org/thoughtcrime/securesms/webrtc/audio/IncomingRinger.java b/app/src/main/java/org/thoughtcrime/securesms/webrtc/audio/IncomingRinger.java index ba2e5ac0b2..7c7ae0d2a9 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/webrtc/audio/IncomingRinger.java +++ b/app/src/main/java/org/thoughtcrime/securesms/webrtc/audio/IncomingRinger.java @@ -17,7 +17,7 @@ import androidx.annotation.Nullable; import org.signal.core.util.logging.Log; import org.thoughtcrime.securesms.util.RingtoneUtil; -import org.thoughtcrime.securesms.util.ServiceUtil; +import org.signal.core.util.ServiceUtil; import java.io.IOException; diff --git a/app/src/test/java/org/thoughtcrime/securesms/components/settings/app/account/export/ExportAccountDataTest.kt b/app/src/test/java/org/thoughtcrime/securesms/components/settings/app/account/export/ExportAccountDataTest.kt index 214f55300a..17ff8b4400 100644 --- a/app/src/test/java/org/thoughtcrime/securesms/components/settings/app/account/export/ExportAccountDataTest.kt +++ b/app/src/test/java/org/thoughtcrime/securesms/components/settings/app/account/export/ExportAccountDataTest.kt @@ -17,11 +17,11 @@ import org.junit.Test import org.junit.runner.RunWith import org.robolectric.RobolectricTestRunner import org.robolectric.annotation.Config +import org.signal.core.util.JsonUtils import org.signal.network.NetworkResult import org.thoughtcrime.securesms.net.SignalNetwork import org.thoughtcrime.securesms.providers.BlobProvider import org.thoughtcrime.securesms.testutil.MockAppDependenciesRule -import org.thoughtcrime.securesms.util.JsonUtils import java.io.IOException @RunWith(RobolectricTestRunner::class) diff --git a/app/src/test/java/org/thoughtcrime/securesms/jobmanager/JobControllerTest.kt b/app/src/test/java/org/thoughtcrime/securesms/jobmanager/JobControllerTest.kt index e640798054..1e0a1c5b98 100644 --- a/app/src/test/java/org/thoughtcrime/securesms/jobmanager/JobControllerTest.kt +++ b/app/src/test/java/org/thoughtcrime/securesms/jobmanager/JobControllerTest.kt @@ -13,10 +13,10 @@ import io.mockk.verify import org.junit.Before import org.junit.Ignore import org.junit.Test +import org.signal.core.util.Debouncer import org.thoughtcrime.securesms.jobmanager.persistence.DependencySpec import org.thoughtcrime.securesms.jobmanager.persistence.JobSpec import org.thoughtcrime.securesms.jobmanager.persistence.JobStorage -import org.thoughtcrime.securesms.util.Debouncer import kotlin.time.Duration.Companion.seconds @Ignore("When running tests in bulk, this causes the JVM to OOM, I think because we're creating lots of threads that don't get cleaned up, and I haven't figured out a nice way to fix it yet.") diff --git a/app/src/test/java/org/thoughtcrime/securesms/sms/UploadDependencyGraphTest.kt b/app/src/test/java/org/thoughtcrime/securesms/sms/UploadDependencyGraphTest.kt index ec005f72bc..80afb12e6c 100644 --- a/app/src/test/java/org/thoughtcrime/securesms/sms/UploadDependencyGraphTest.kt +++ b/app/src/test/java/org/thoughtcrime/securesms/sms/UploadDependencyGraphTest.kt @@ -10,6 +10,7 @@ import org.junit.runner.RunWith import org.robolectric.RobolectricTestRunner import org.robolectric.annotation.Config import org.signal.core.models.media.TransformProperties +import org.signal.core.util.JsonUtils import org.thoughtcrime.securesms.attachments.Attachment import org.thoughtcrime.securesms.attachments.AttachmentId import org.thoughtcrime.securesms.attachments.DatabaseAttachment @@ -25,7 +26,6 @@ import org.thoughtcrime.securesms.mms.OutgoingMessage import org.thoughtcrime.securesms.mms.SentMediaQuality import org.thoughtcrime.securesms.recipients.Recipient import org.thoughtcrime.securesms.testutil.UriAttachmentBuilder -import org.thoughtcrime.securesms.util.JsonUtils import org.thoughtcrime.securesms.util.MediaUtil import java.util.concurrent.atomic.AtomicLong diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/BucketingUtil.java b/core/util-jvm/src/main/java/org/signal/core/util/BucketingUtil.java similarity index 82% rename from app/src/main/java/org/thoughtcrime/securesms/util/BucketingUtil.java rename to core/util-jvm/src/main/java/org/signal/core/util/BucketingUtil.java index 2c61e74d6e..27232a3520 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/BucketingUtil.java +++ b/core/util-jvm/src/main/java/org/signal/core/util/BucketingUtil.java @@ -1,8 +1,6 @@ -package org.thoughtcrime.securesms.util; +package org.signal.core.util; -import androidx.annotation.NonNull; - -import org.thoughtcrime.securesms.recipients.Recipient; +import org.jetbrains.annotations.NotNull; import java.math.BigInteger; import java.nio.ByteBuffer; @@ -23,10 +21,10 @@ public final class BucketingUtil { * Calculate a user bucket for a given feature flag, uuid, and part per modulus. * * @param key Feature flag key (e.g., "research.megaphone.1") - * @param uuid Current user's UUID (see {@link Recipient#getServiceId()}) + * @param uuid Current user's UUID * @param modulus Drives the bucketing parts per N (e.g., passing 1,000,000 indicates bucketing into parts per million) */ - public static long bucket(@NonNull String key, @NonNull UUID uuid, long modulus) { + public static long bucket(@NotNull String key, @NotNull UUID uuid, long modulus) { MessageDigest digest; try { digest = MessageDigest.getInstance("SHA-256"); diff --git a/lib/libsignal-service/src/main/java/org/whispersystems/util/ByteArrayUtil.java b/core/util-jvm/src/main/java/org/signal/core/util/ByteArrayUtil.java similarity index 94% rename from lib/libsignal-service/src/main/java/org/whispersystems/util/ByteArrayUtil.java rename to core/util-jvm/src/main/java/org/signal/core/util/ByteArrayUtil.java index 460994391c..84b22ca052 100644 --- a/lib/libsignal-service/src/main/java/org/whispersystems/util/ByteArrayUtil.java +++ b/core/util-jvm/src/main/java/org/signal/core/util/ByteArrayUtil.java @@ -1,4 +1,4 @@ -package org.whispersystems.util; +package org.signal.core.util; public final class ByteArrayUtil { diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/ByteUnit.java b/core/util-jvm/src/main/java/org/signal/core/util/ByteUnit.java similarity index 97% rename from app/src/main/java/org/thoughtcrime/securesms/util/ByteUnit.java rename to core/util-jvm/src/main/java/org/signal/core/util/ByteUnit.java index 739419d98c..b04a7e6ff9 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/ByteUnit.java +++ b/core/util-jvm/src/main/java/org/signal/core/util/ByteUnit.java @@ -1,4 +1,4 @@ -package org.thoughtcrime.securesms.util; +package org.signal.core.util; /** * Just like {@link java.util.concurrent.TimeUnit}, but for bytes. diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/DelimiterUtil.java b/core/util-jvm/src/main/java/org/signal/core/util/DelimiterUtil.java similarity index 93% rename from app/src/main/java/org/thoughtcrime/securesms/util/DelimiterUtil.java rename to core/util-jvm/src/main/java/org/signal/core/util/DelimiterUtil.java index bf27f659cd..b8d267a638 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/DelimiterUtil.java +++ b/core/util-jvm/src/main/java/org/signal/core/util/DelimiterUtil.java @@ -1,4 +1,4 @@ -package org.thoughtcrime.securesms.util; +package org.signal.core.util; import java.util.regex.Pattern; diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/EllapsedTimeFormatter.java b/core/util-jvm/src/main/java/org/signal/core/util/EllapsedTimeFormatter.java similarity index 83% rename from app/src/main/java/org/thoughtcrime/securesms/util/EllapsedTimeFormatter.java rename to core/util-jvm/src/main/java/org/signal/core/util/EllapsedTimeFormatter.java index 843f80a3f7..97fffd1aca 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/EllapsedTimeFormatter.java +++ b/core/util-jvm/src/main/java/org/signal/core/util/EllapsedTimeFormatter.java @@ -1,7 +1,7 @@ -package org.thoughtcrime.securesms.util; +package org.signal.core.util; -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import java.util.Locale; @@ -17,7 +17,7 @@ public class EllapsedTimeFormatter { } @Override - public @NonNull String toString() { + public @NotNull String toString() { if (hours > 0) { return String.format(Locale.US, "%02d:%02d:%02d", hours, minutes, seconds); } else { diff --git a/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/util/ExpiringProfileCredentialUtil.java b/core/util-jvm/src/main/java/org/signal/core/util/ExpiringProfileCredentialUtil.java similarity index 91% rename from lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/util/ExpiringProfileCredentialUtil.java rename to core/util-jvm/src/main/java/org/signal/core/util/ExpiringProfileCredentialUtil.java index f25c8d1a96..80782afaae 100644 --- a/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/util/ExpiringProfileCredentialUtil.java +++ b/core/util-jvm/src/main/java/org/signal/core/util/ExpiringProfileCredentialUtil.java @@ -1,4 +1,4 @@ -package org.whispersystems.signalservice.api.util; +package org.signal.core.util; import org.signal.libsignal.zkgroup.profiles.ExpiringProfileKeyCredential; diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/SemanticVersion.java b/core/util-jvm/src/main/java/org/signal/core/util/SemanticVersion.java similarity index 92% rename from app/src/main/java/org/thoughtcrime/securesms/util/SemanticVersion.java rename to core/util-jvm/src/main/java/org/signal/core/util/SemanticVersion.java index fcd3e7709f..f1b3b132bc 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/SemanticVersion.java +++ b/core/util-jvm/src/main/java/org/signal/core/util/SemanticVersion.java @@ -1,8 +1,6 @@ -package org.thoughtcrime.securesms.util; +package org.signal.core.util; -import androidx.annotation.Nullable; - -import org.signal.core.util.Util; +import org.jetbrains.annotations.Nullable; import java.util.Comparator; import java.util.Objects; @@ -35,7 +33,7 @@ public final class SemanticVersion implements Comparable { } Matcher matcher = VERSION_PATTERN.matcher(value); - if (Util.isEmpty(value) || !matcher.matches()) { + if (value.isEmpty() || !matcher.matches()) { return null; } diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/ShortCodeUtil.java b/core/util-jvm/src/main/java/org/signal/core/util/ShortCodeUtil.java similarity index 89% rename from app/src/main/java/org/thoughtcrime/securesms/util/ShortCodeUtil.java rename to core/util-jvm/src/main/java/org/signal/core/util/ShortCodeUtil.java index 9621324f63..93e018e210 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/ShortCodeUtil.java +++ b/core/util-jvm/src/main/java/org/signal/core/util/ShortCodeUtil.java @@ -1,12 +1,11 @@ -package org.thoughtcrime.securesms.util; - -import androidx.annotation.NonNull; +package org.signal.core.util; import com.google.i18n.phonenumbers.NumberParseException; import com.google.i18n.phonenumbers.PhoneNumberUtil; import com.google.i18n.phonenumbers.Phonenumber; import com.google.i18n.phonenumbers.ShortNumberInfo; +import org.jetbrains.annotations.NotNull; import org.signal.core.util.logging.Log; import java.util.HashSet; @@ -23,7 +22,7 @@ public class ShortCodeUtil { add("AC"); }}; - public static boolean isShortCode(@NonNull String localNumber, @NonNull String number) { + public static boolean isShortCode(@NotNull String localNumber, @NotNull String number) { try { PhoneNumberUtil util = PhoneNumberUtil.getInstance(); Phonenumber.PhoneNumber localNumberObject = util.parse(localNumber, null); diff --git a/core/util-jvm/src/main/java/org/signal/core/util/SleepTimer.java b/core/util-jvm/src/main/java/org/signal/core/util/SleepTimer.java new file mode 100644 index 0000000000..6618ec4adc --- /dev/null +++ b/core/util-jvm/src/main/java/org/signal/core/util/SleepTimer.java @@ -0,0 +1,5 @@ +package org.signal.core.util; + +public interface SleepTimer { + void sleep(long millis) throws InterruptedException; +} diff --git a/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/util/Uint64RangeException.java b/core/util-jvm/src/main/java/org/signal/core/util/Uint64RangeException.java similarity index 71% rename from lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/util/Uint64RangeException.java rename to core/util-jvm/src/main/java/org/signal/core/util/Uint64RangeException.java index 9876373bdd..7838b71ef3 100644 --- a/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/util/Uint64RangeException.java +++ b/core/util-jvm/src/main/java/org/signal/core/util/Uint64RangeException.java @@ -1,4 +1,4 @@ -package org.whispersystems.signalservice.api.util; +package org.signal.core.util; public final class Uint64RangeException extends Exception { Uint64RangeException(String message) { diff --git a/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/util/Uint64Util.java b/core/util-jvm/src/main/java/org/signal/core/util/Uint64Util.java similarity index 95% rename from lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/util/Uint64Util.java rename to core/util-jvm/src/main/java/org/signal/core/util/Uint64Util.java index e89c6ad02b..00f9cb12b7 100644 --- a/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/util/Uint64Util.java +++ b/core/util-jvm/src/main/java/org/signal/core/util/Uint64Util.java @@ -1,4 +1,4 @@ -package org.whispersystems.signalservice.api.util; +package org.signal.core.util; import java.math.BigInteger; diff --git a/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/util/UptimeSleepTimer.java b/core/util-jvm/src/main/java/org/signal/core/util/UptimeSleepTimer.java similarity index 70% rename from lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/util/UptimeSleepTimer.java rename to core/util-jvm/src/main/java/org/signal/core/util/UptimeSleepTimer.java index ca015628bc..8db39cb97c 100644 --- a/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/util/UptimeSleepTimer.java +++ b/core/util-jvm/src/main/java/org/signal/core/util/UptimeSleepTimer.java @@ -1,10 +1,9 @@ -package org.whispersystems.signalservice.api.util; +package org.signal.core.util; /** - * A simle sleep timer. Since Thread.sleep is based on uptime + * A simple sleep timer. Since Thread.sleep is based on uptime * this will not work properly in low-power sleep modes, when * the CPU is suspended and uptime does not elapse. - * */ public class UptimeSleepTimer implements SleepTimer { @Override diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/concurrent/FilteredExecutor.java b/core/util-jvm/src/main/java/org/signal/core/util/concurrent/FilteredExecutor.java similarity index 74% rename from app/src/main/java/org/thoughtcrime/securesms/util/concurrent/FilteredExecutor.java rename to core/util-jvm/src/main/java/org/signal/core/util/concurrent/FilteredExecutor.java index 146d066f9a..ae81fe0226 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/concurrent/FilteredExecutor.java +++ b/core/util-jvm/src/main/java/org/signal/core/util/concurrent/FilteredExecutor.java @@ -1,6 +1,6 @@ -package org.thoughtcrime.securesms.util.concurrent; +package org.signal.core.util.concurrent; -import androidx.annotation.NonNull; +import org.jetbrains.annotations.NotNull; import java.util.concurrent.Executor; @@ -13,13 +13,13 @@ public final class FilteredExecutor implements Executor { private final Executor backgroundExecutor; private final Filter filter; - public FilteredExecutor(@NonNull Executor backgroundExecutor, @NonNull Filter filter) { + public FilteredExecutor(@NotNull Executor backgroundExecutor, @NotNull Filter filter) { this.backgroundExecutor = backgroundExecutor; this.filter = filter; } @Override - public void execute(@NonNull Runnable runnable) { + public void execute(@NotNull Runnable runnable) { if (filter.shouldRunOnExecutor()) { backgroundExecutor.execute(runnable); } else { diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/concurrent/SerialExecutor.java b/core/util-jvm/src/main/java/org/signal/core/util/concurrent/SerialExecutor.java similarity index 84% rename from app/src/main/java/org/thoughtcrime/securesms/util/concurrent/SerialExecutor.java rename to core/util-jvm/src/main/java/org/signal/core/util/concurrent/SerialExecutor.java index 5f62a1c83f..014721d4ef 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/concurrent/SerialExecutor.java +++ b/core/util-jvm/src/main/java/org/signal/core/util/concurrent/SerialExecutor.java @@ -1,6 +1,6 @@ -package org.thoughtcrime.securesms.util.concurrent; +package org.signal.core.util.concurrent; -import androidx.annotation.NonNull; +import org.jetbrains.annotations.NotNull; import java.util.ArrayDeque; import java.util.Queue; @@ -14,7 +14,7 @@ public final class SerialExecutor implements Executor { private final Executor executor; private Runnable active; - public SerialExecutor(@NonNull Executor executor) { + public SerialExecutor(@NotNull Executor executor) { this.executor = executor; } @@ -36,4 +36,4 @@ public final class SerialExecutor implements Executor { executor.execute(active); } } -} \ No newline at end of file +} diff --git a/app/src/test/java/org/thoughtcrime/securesms/util/BucketingUtilTest.java b/core/util-jvm/src/test/java/org/signal/core/util/BucketingUtilTest.java similarity index 85% rename from app/src/test/java/org/thoughtcrime/securesms/util/BucketingUtilTest.java rename to core/util-jvm/src/test/java/org/signal/core/util/BucketingUtilTest.java index e4b8f87ad5..a01f2c0314 100644 --- a/app/src/test/java/org/thoughtcrime/securesms/util/BucketingUtilTest.java +++ b/core/util-jvm/src/test/java/org/signal/core/util/BucketingUtilTest.java @@ -1,7 +1,6 @@ -package org.thoughtcrime.securesms.util; +package org.signal.core.util; import org.junit.Test; -import org.signal.core.util.UuidUtil; import java.util.UUID; diff --git a/app/src/test/java/org/thoughtcrime/securesms/util/DelimiterUtilTest.kt b/core/util-jvm/src/test/java/org/signal/core/util/DelimiterUtilTest.kt similarity index 75% rename from app/src/test/java/org/thoughtcrime/securesms/util/DelimiterUtilTest.kt rename to core/util-jvm/src/test/java/org/signal/core/util/DelimiterUtilTest.kt index aaae0f3eb5..a8d823d328 100644 --- a/app/src/test/java/org/thoughtcrime/securesms/util/DelimiterUtilTest.kt +++ b/core/util-jvm/src/test/java/org/signal/core/util/DelimiterUtilTest.kt @@ -1,29 +1,10 @@ -package org.thoughtcrime.securesms.util +package org.signal.core.util -import android.text.TextUtils -import io.mockk.every -import io.mockk.mockkStatic -import io.mockk.unmockkStatic -import org.junit.After import org.junit.Assert.assertArrayEquals import org.junit.Assert.assertEquals -import org.junit.Before import org.junit.Test class DelimiterUtilTest { - @Before - fun setup() { - mockkStatic(TextUtils::class) - every { TextUtils.isEmpty(any()) } answers { - (invocation.args.first() as? String)?.isEmpty() ?: true - } - } - - @After - fun cleanup() { - unmockkStatic(TextUtils::class) - } - @Test fun testEscape() { assertEquals("MTV\\ Music", DelimiterUtil.escape("MTV Music", ' ')) diff --git a/app/src/test/java/org/thoughtcrime/securesms/util/SemanticVersionTest_compareTo.java b/core/util-jvm/src/test/java/org/signal/core/util/SemanticVersionTest_compareTo.java similarity index 97% rename from app/src/test/java/org/thoughtcrime/securesms/util/SemanticVersionTest_compareTo.java rename to core/util-jvm/src/test/java/org/signal/core/util/SemanticVersionTest_compareTo.java index 1be7aece30..25dcb325b3 100644 --- a/app/src/test/java/org/thoughtcrime/securesms/util/SemanticVersionTest_compareTo.java +++ b/core/util-jvm/src/test/java/org/signal/core/util/SemanticVersionTest_compareTo.java @@ -1,4 +1,4 @@ -package org.thoughtcrime.securesms.util; +package org.signal.core.util; import org.junit.Test; import org.junit.runner.RunWith; diff --git a/app/src/test/java/org/thoughtcrime/securesms/util/SemanticVersionTest_parse.java b/core/util-jvm/src/test/java/org/signal/core/util/SemanticVersionTest_parse.java similarity index 96% rename from app/src/test/java/org/thoughtcrime/securesms/util/SemanticVersionTest_parse.java rename to core/util-jvm/src/test/java/org/signal/core/util/SemanticVersionTest_parse.java index e1f51192bc..a228dd8c1f 100644 --- a/app/src/test/java/org/thoughtcrime/securesms/util/SemanticVersionTest_parse.java +++ b/core/util-jvm/src/test/java/org/signal/core/util/SemanticVersionTest_parse.java @@ -1,4 +1,4 @@ -package org.thoughtcrime.securesms.util; +package org.signal.core.util; import org.junit.Test; import org.junit.runner.RunWith; diff --git a/app/src/test/java/org/thoughtcrime/securesms/util/ShortCodeUtilTest.java b/core/util-jvm/src/test/java/org/signal/core/util/ShortCodeUtilTest.java similarity index 97% rename from app/src/test/java/org/thoughtcrime/securesms/util/ShortCodeUtilTest.java rename to core/util-jvm/src/test/java/org/signal/core/util/ShortCodeUtilTest.java index eefdce3acf..82413c2e67 100644 --- a/app/src/test/java/org/thoughtcrime/securesms/util/ShortCodeUtilTest.java +++ b/core/util-jvm/src/test/java/org/signal/core/util/ShortCodeUtilTest.java @@ -1,4 +1,4 @@ -package org.thoughtcrime.securesms.util; +package org.signal.core.util; import org.junit.Test; diff --git a/lib/libsignal-service/src/test/java/org/whispersystems/signalservice/api/util/Uint64UtilTest.java b/core/util-jvm/src/test/java/org/signal/core/util/Uint64UtilTest.java similarity index 91% rename from lib/libsignal-service/src/test/java/org/whispersystems/signalservice/api/util/Uint64UtilTest.java rename to core/util-jvm/src/test/java/org/signal/core/util/Uint64UtilTest.java index 7976651ad9..9339f607b9 100644 --- a/lib/libsignal-service/src/test/java/org/whispersystems/signalservice/api/util/Uint64UtilTest.java +++ b/core/util-jvm/src/test/java/org/signal/core/util/Uint64UtilTest.java @@ -1,12 +1,12 @@ -package org.whispersystems.signalservice.api.util; +package org.signal.core.util; import org.junit.Test; import java.math.BigInteger; import static org.junit.Assert.assertEquals; -import static org.whispersystems.signalservice.api.util.Uint64Util.bigIntegerToUInt64; -import static org.whispersystems.signalservice.api.util.Uint64Util.uint64ToBigInteger; +import static org.signal.core.util.Uint64Util.bigIntegerToUInt64; +import static org.signal.core.util.Uint64Util.uint64ToBigInteger; public final class Uint64UtilTest { diff --git a/core/util/build.gradle.kts b/core/util/build.gradle.kts index 0ebcfa3d09..ae7c74b7c3 100644 --- a/core/util/build.gradle.kts +++ b/core/util/build.gradle.kts @@ -14,8 +14,10 @@ dependencies { implementation(libs.androidx.sqlite) implementation(libs.androidx.documentfile) + implementation(libs.androidx.lifecycle.process) implementation(libs.kotlinx.serialization.json) implementation(libs.jackson.core) + implementation(libs.jackson.module.kotlin) implementation(libs.google.libphonenumber) testImplementation(libs.androidx.sqlite.framework) diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/AccessibilityUtil.java b/core/util/src/main/java/org/signal/core/util/AccessibilityUtil.java similarity index 89% rename from app/src/main/java/org/thoughtcrime/securesms/util/AccessibilityUtil.java rename to core/util/src/main/java/org/signal/core/util/AccessibilityUtil.java index ebebade32c..482280ad21 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/AccessibilityUtil.java +++ b/core/util/src/main/java/org/signal/core/util/AccessibilityUtil.java @@ -1,4 +1,4 @@ -package org.thoughtcrime.securesms.util; +package org.signal.core.util; import android.content.Context; import android.provider.Settings; diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/AppForegroundObserver.kt b/core/util/src/main/java/org/signal/core/util/AppForegroundObserver.kt similarity index 96% rename from app/src/main/java/org/thoughtcrime/securesms/util/AppForegroundObserver.kt rename to core/util/src/main/java/org/signal/core/util/AppForegroundObserver.kt index 219c2e4e73..2436a1d63c 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/AppForegroundObserver.kt +++ b/core/util/src/main/java/org/signal/core/util/AppForegroundObserver.kt @@ -1,11 +1,10 @@ -package org.thoughtcrime.securesms.util +package org.signal.core.util import androidx.annotation.AnyThread import androidx.annotation.MainThread import androidx.lifecycle.DefaultLifecycleObserver import androidx.lifecycle.LifecycleOwner import androidx.lifecycle.ProcessLifecycleOwner -import org.signal.core.util.ThreadUtil import java.util.concurrent.CopyOnWriteArraySet import kotlin.concurrent.Volatile diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/ConfigurationUtil.java b/core/util/src/main/java/org/signal/core/util/ConfigurationUtil.java similarity index 95% rename from app/src/main/java/org/thoughtcrime/securesms/util/ConfigurationUtil.java rename to core/util/src/main/java/org/signal/core/util/ConfigurationUtil.java index 1eca39fd6c..129a2cdf50 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/ConfigurationUtil.java +++ b/core/util/src/main/java/org/signal/core/util/ConfigurationUtil.java @@ -1,4 +1,4 @@ -package org.thoughtcrime.securesms.util; +package org.signal.core.util; import android.content.Context; import android.content.res.Configuration; diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/Debouncer.java b/core/util/src/main/java/org/signal/core/util/Debouncer.java similarity index 96% rename from app/src/main/java/org/thoughtcrime/securesms/util/Debouncer.java rename to core/util/src/main/java/org/signal/core/util/Debouncer.java index 3c7bb40f38..f4bc85b9a4 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/Debouncer.java +++ b/core/util/src/main/java/org/signal/core/util/Debouncer.java @@ -1,4 +1,4 @@ -package org.thoughtcrime.securesms.util; +package org.signal.core.util; import android.os.Handler; import android.os.Looper; diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/DisplayMetricsUtil.java b/core/util/src/main/java/org/signal/core/util/DisplayMetricsUtil.java similarity index 93% rename from app/src/main/java/org/thoughtcrime/securesms/util/DisplayMetricsUtil.java rename to core/util/src/main/java/org/signal/core/util/DisplayMetricsUtil.java index 5113c4d590..3d4e7ae176 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/DisplayMetricsUtil.java +++ b/core/util/src/main/java/org/signal/core/util/DisplayMetricsUtil.java @@ -1,4 +1,4 @@ -package org.thoughtcrime.securesms.util; +package org.signal.core.util; import android.util.DisplayMetrics; import android.view.View; diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/DrawableUtil.java b/core/util/src/main/java/org/signal/core/util/DrawableUtil.java similarity index 62% rename from app/src/main/java/org/thoughtcrime/securesms/util/DrawableUtil.java rename to core/util/src/main/java/org/signal/core/util/DrawableUtil.java index 2c1b2208a3..a627204df9 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/DrawableUtil.java +++ b/core/util/src/main/java/org/signal/core/util/DrawableUtil.java @@ -1,4 +1,4 @@ -package org.thoughtcrime.securesms.util; +package org.signal.core.util; import android.graphics.Bitmap; import android.graphics.Canvas; @@ -22,16 +22,6 @@ public final class DrawableUtil { return bitmap; } - public static @NonNull Bitmap wrapBitmapForShortcutInfo(@NonNull Bitmap toWrap) { - Bitmap bitmap = Bitmap.createBitmap(AdaptiveBitmapMetrics.getOuterWidth(), AdaptiveBitmapMetrics.getOuterWidth(), Bitmap.Config.ARGB_8888); - Bitmap scaled = Bitmap.createScaledBitmap(toWrap, AdaptiveBitmapMetrics.getInnerWidth(), AdaptiveBitmapMetrics.getInnerWidth(), true); - - Canvas canvas = new Canvas(bitmap); - canvas.drawBitmap(scaled, AdaptiveBitmapMetrics.getPadding(), AdaptiveBitmapMetrics.getPadding(), null); - - return bitmap; - } - /** * Returns a new {@link Drawable} that safely wraps and tints the provided drawable. */ diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/IntentUtils.java b/core/util/src/main/java/org/signal/core/util/IntentUtils.java similarity index 89% rename from app/src/main/java/org/thoughtcrime/securesms/util/IntentUtils.java rename to core/util/src/main/java/org/signal/core/util/IntentUtils.java index 42ace3e6be..5bfc669cac 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/IntentUtils.java +++ b/core/util/src/main/java/org/signal/core/util/IntentUtils.java @@ -1,4 +1,4 @@ -package org.thoughtcrime.securesms.util; +package org.signal.core.util; import android.content.ComponentName; @@ -7,14 +7,11 @@ import android.content.Intent; import android.content.pm.LabeledIntent; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; -import android.widget.Toast; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import androidx.annotation.StringRes; import java.util.List; -import java.util.function.Consumer; public class IntentUtils { diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/JsonUtils.java b/core/util/src/main/java/org/signal/core/util/JsonUtils.java similarity index 97% rename from app/src/main/java/org/thoughtcrime/securesms/util/JsonUtils.java rename to core/util/src/main/java/org/signal/core/util/JsonUtils.java index 2fc1da0ac4..c7be82dc77 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/JsonUtils.java +++ b/core/util/src/main/java/org/signal/core/util/JsonUtils.java @@ -1,10 +1,11 @@ -package org.thoughtcrime.securesms.util; +package org.signal.core.util; import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.SerializationFeature; import com.fasterxml.jackson.databind.type.TypeFactory; +import org.jetbrains.annotations.Nullable; import org.json.JSONException; import org.json.JSONObject; @@ -13,8 +14,6 @@ import java.io.InputStream; import java.io.Reader; import java.util.List; -import javax.annotation.Nullable; - public class JsonUtils { private static final ObjectMapper objectMapper = new ObjectMapper(); diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/ParcelUtil.java b/core/util/src/main/java/org/signal/core/util/ParcelUtil.java similarity index 98% rename from app/src/main/java/org/thoughtcrime/securesms/util/ParcelUtil.java rename to core/util/src/main/java/org/signal/core/util/ParcelUtil.java index 4a16e22312..d75ed93819 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/ParcelUtil.java +++ b/core/util/src/main/java/org/signal/core/util/ParcelUtil.java @@ -1,4 +1,4 @@ -package org.thoughtcrime.securesms.util; +package org.signal.core.util; import android.os.Parcel; import android.os.Parcelable; diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/ServiceUtil.java b/core/util/src/main/java/org/signal/core/util/ServiceUtil.java similarity index 95% rename from app/src/main/java/org/thoughtcrime/securesms/util/ServiceUtil.java rename to core/util/src/main/java/org/signal/core/util/ServiceUtil.java index f94a689d23..e75f0d7507 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/ServiceUtil.java +++ b/core/util/src/main/java/org/signal/core/util/ServiceUtil.java @@ -1,4 +1,4 @@ -package org.thoughtcrime.securesms.util; +package org.signal.core.util; import android.app.Activity; import android.app.ActivityManager; @@ -29,8 +29,6 @@ import androidx.annotation.Nullable; import androidx.annotation.RequiresApi; import androidx.core.content.ContextCompat; -import org.jetbrains.annotations.NotNull; - public class ServiceUtil { public static InputMethodManager getInputMethodManager(Context context) { return (InputMethodManager)context.getSystemService(Context.INPUT_METHOD_SERVICE); @@ -106,11 +104,11 @@ public class ServiceUtil { return ContextCompat.getSystemService(context, LocationManager.class); } - public static KeyguardManager getKeyguardManager(@NotNull Context context) { + public static KeyguardManager getKeyguardManager(@NonNull Context context) { return ContextCompat.getSystemService(context, KeyguardManager.class); } - public static BluetoothManager getBluetoothManager(@NotNull Context context) { + public static BluetoothManager getBluetoothManager(@NonNull Context context) { return ContextCompat.getSystemService(context, BluetoothManager.class); } diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/ThrottledDebouncer.java b/core/util/src/main/java/org/signal/core/util/ThrottledDebouncer.java similarity index 98% rename from app/src/main/java/org/thoughtcrime/securesms/util/ThrottledDebouncer.java rename to core/util/src/main/java/org/signal/core/util/ThrottledDebouncer.java index 0951c5d336..5d4a42c237 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/ThrottledDebouncer.java +++ b/core/util/src/main/java/org/signal/core/util/ThrottledDebouncer.java @@ -1,4 +1,4 @@ -package org.thoughtcrime.securesms.util; +package org.signal.core.util; import android.os.Handler; import android.os.Looper; diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/Throttler.java b/core/util/src/main/java/org/signal/core/util/Throttler.java similarity index 96% rename from app/src/main/java/org/thoughtcrime/securesms/util/Throttler.java rename to core/util/src/main/java/org/signal/core/util/Throttler.java index 66ef9d70fe..434ba37c47 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/Throttler.java +++ b/core/util/src/main/java/org/signal/core/util/Throttler.java @@ -1,4 +1,4 @@ -package org.thoughtcrime.securesms.util; +package org.signal.core.util; import android.os.Handler; import android.os.Looper; diff --git a/demo/registration/src/main/java/org/signal/registration/sample/dependencies/DemoNetworkController.kt b/demo/registration/src/main/java/org/signal/registration/sample/dependencies/DemoNetworkController.kt index d79151a38e..856ec4515e 100644 --- a/demo/registration/src/main/java/org/signal/registration/sample/dependencies/DemoNetworkController.kt +++ b/demo/registration/src/main/java/org/signal/registration/sample/dependencies/DemoNetworkController.kt @@ -24,6 +24,7 @@ import org.signal.core.models.ServiceId import org.signal.core.models.backup.MessageBackupKey import org.signal.core.util.Base64 import org.signal.core.util.Hex +import org.signal.core.util.SleepTimer import org.signal.core.util.logging.Log import org.signal.libsignal.net.Network import org.signal.libsignal.net.RequestResult @@ -59,7 +60,6 @@ import org.whispersystems.signalservice.api.provisioning.ProvisioningSocket import org.whispersystems.signalservice.api.svr.SecureValueRecovery.BackupResponse import org.whispersystems.signalservice.api.svr.SecureValueRecovery.RestoreResponse import org.whispersystems.signalservice.api.svr.SecureValueRecoveryV2 -import org.whispersystems.signalservice.api.util.SleepTimer import org.whispersystems.signalservice.api.websocket.HealthMonitor import org.whispersystems.signalservice.api.websocket.SignalWebSocket import org.whispersystems.signalservice.api.websocket.WebSocketFactory diff --git a/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/SignalServiceMessageSender.java b/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/SignalServiceMessageSender.java index f162b79af3..425c3be6b8 100644 --- a/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/SignalServiceMessageSender.java +++ b/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/SignalServiceMessageSender.java @@ -95,8 +95,8 @@ import org.whispersystems.signalservice.api.push.exceptions.UnregisteredUserExce import org.whispersystems.signalservice.api.util.AttachmentPointerUtil; import org.whispersystems.signalservice.api.util.CredentialsProvider; import org.signal.network.util.Preconditions; -import org.whispersystems.signalservice.api.util.Uint64RangeException; -import org.whispersystems.signalservice.api.util.Uint64Util; +import org.signal.core.util.Uint64RangeException; +import org.signal.core.util.Uint64Util; import org.whispersystems.signalservice.api.websocket.WebSocketUnavailableException; import org.whispersystems.signalservice.internal.crypto.AttachmentDigest; import org.whispersystems.signalservice.internal.crypto.PaddingInputStream; diff --git a/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/crypto/HmacSIV.java b/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/crypto/HmacSIV.java index dc7fe4eb22..f0e0171345 100644 --- a/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/crypto/HmacSIV.java +++ b/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/crypto/HmacSIV.java @@ -4,8 +4,8 @@ import java.nio.charset.StandardCharsets; import java.util.Arrays; import static org.signal.core.util.CryptoUtil.hmacSha256; -import static org.whispersystems.util.ByteArrayUtil.concat; -import static org.whispersystems.util.ByteArrayUtil.xor; +import static org.signal.core.util.ByteArrayUtil.concat; +import static org.signal.core.util.ByteArrayUtil.xor; import static java.util.Arrays.copyOfRange; /** diff --git a/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/groupsv2/GroupCandidate.java b/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/groupsv2/GroupCandidate.java index e3f8d3fcc5..83cbc9a10f 100644 --- a/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/groupsv2/GroupCandidate.java +++ b/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/groupsv2/GroupCandidate.java @@ -2,7 +2,7 @@ package org.whispersystems.signalservice.api.groupsv2; import org.signal.libsignal.zkgroup.profiles.ExpiringProfileKeyCredential; import org.signal.core.models.ServiceId; -import org.whispersystems.signalservice.api.util.ExpiringProfileCredentialUtil; +import org.signal.core.util.ExpiringProfileCredentialUtil; import java.util.HashSet; import java.util.Optional; diff --git a/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/payments/Money.java b/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/payments/Money.java index bdac371dc1..8254d707cb 100644 --- a/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/payments/Money.java +++ b/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/payments/Money.java @@ -1,7 +1,7 @@ package org.whispersystems.signalservice.api.payments; -import org.whispersystems.signalservice.api.util.Uint64RangeException; -import org.whispersystems.signalservice.api.util.Uint64Util; +import org.signal.core.util.Uint64RangeException; +import org.signal.core.util.Uint64Util; import java.math.BigDecimal; import java.math.BigInteger; diff --git a/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/util/SleepTimer.java b/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/util/SleepTimer.java deleted file mode 100644 index e8a6ab8dce..0000000000 --- a/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/util/SleepTimer.java +++ /dev/null @@ -1,5 +0,0 @@ -package org.whispersystems.signalservice.api.util; - -public interface SleepTimer { - public void sleep(long millis) throws InterruptedException; -} diff --git a/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/websocket/SignalWebSocket.kt b/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/websocket/SignalWebSocket.kt index 74372178eb..37e0d7df05 100644 --- a/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/websocket/SignalWebSocket.kt +++ b/lib/libsignal-service/src/main/java/org/whispersystems/signalservice/api/websocket/SignalWebSocket.kt @@ -18,6 +18,7 @@ import kotlinx.coroutines.Job import kotlinx.coroutines.SupervisorJob import kotlinx.coroutines.delay import kotlinx.coroutines.launch +import org.signal.core.util.SleepTimer import org.signal.core.util.logging.Log import org.signal.core.util.orNull import org.signal.libsignal.internal.CompletableFuture @@ -31,7 +32,6 @@ import org.signal.network.websocket.WebSocketResponseMessage import org.signal.network.websocket.WebsocketResponse import org.whispersystems.signalservice.api.crypto.SealedSenderAccess import org.whispersystems.signalservice.api.messages.EnvelopeResponse -import org.whispersystems.signalservice.api.util.SleepTimer import org.whispersystems.signalservice.internal.push.Envelope import org.whispersystems.signalservice.internal.util.awaitRequest import org.whispersystems.signalservice.internal.websocket.WebSocketConnection diff --git a/lib/libsignal-service/src/test/java/org/whispersystems/signalservice/api/payments/MoneyTest_MobileCoin.java b/lib/libsignal-service/src/test/java/org/whispersystems/signalservice/api/payments/MoneyTest_MobileCoin.java index 6557b7624b..061518766d 100644 --- a/lib/libsignal-service/src/test/java/org/whispersystems/signalservice/api/payments/MoneyTest_MobileCoin.java +++ b/lib/libsignal-service/src/test/java/org/whispersystems/signalservice/api/payments/MoneyTest_MobileCoin.java @@ -1,7 +1,7 @@ package org.whispersystems.signalservice.api.payments; import org.junit.Test; -import org.whispersystems.signalservice.api.util.Uint64RangeException; +import org.signal.core.util.Uint64RangeException; import java.math.BigDecimal; import java.math.BigInteger;