Remove activity override in favour of alias down the road.

This commit is contained in:
Alex Hart
2025-05-05 09:40:49 -03:00
committed by Michelle Tang
parent 844dec06b1
commit a2a3dd28ee
3 changed files with 21 additions and 18 deletions

View File

@@ -103,7 +103,6 @@ import org.thoughtcrime.securesms.service.webrtc.AndroidTelecomUtil;
import org.thoughtcrime.securesms.storage.StorageSyncHelper;
import org.thoughtcrime.securesms.util.AppForegroundObserver;
import org.thoughtcrime.securesms.util.AppStartup;
import org.thoughtcrime.securesms.util.ConversationUtil;
import org.thoughtcrime.securesms.util.DynamicTheme;
import org.thoughtcrime.securesms.util.RemoteConfig;
import org.thoughtcrime.securesms.util.SignalLocalMetrics;
@@ -190,7 +189,6 @@ public class ApplicationContext extends Application implements AppForegroundObse
.addBlocking("tracer", this::initializeTracer)
.addNonBlocking(() -> RegistrationUtil.maybeMarkRegistrationComplete())
.addNonBlocking(() -> Glide.get(this))
.addNonBlocking(ConversationUtil::refreshRecipientShortcuts)
.addNonBlocking(this::cleanAvatarStorage)
.addNonBlocking(this::initializeRevealableMessageManager)
.addNonBlocking(this::initializePendingRetryReceiptManager)

View File

@@ -10,14 +10,11 @@ import androidx.annotation.MainThread;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import org.thoughtcrime.securesms.MainActivity;
import org.thoughtcrime.securesms.badges.models.Badge;
import org.thoughtcrime.securesms.conversation.colors.ChatColors;
import org.thoughtcrime.securesms.conversation.v2.ConversationActivity;
import org.thoughtcrime.securesms.database.SignalDatabase;
import org.thoughtcrime.securesms.database.ThreadTable;
import org.thoughtcrime.securesms.keyvalue.SignalStore;
import org.thoughtcrime.securesms.main.MainNavigationListLocation;
import org.thoughtcrime.securesms.mediasend.Media;
import org.thoughtcrime.securesms.mms.SlideFactory;
import org.thoughtcrime.securesms.recipients.Recipient;
@@ -36,7 +33,7 @@ import io.reactivex.rxjava3.core.Single;
import io.reactivex.rxjava3.schedulers.Schedulers;
public class ConversationIntents {
private static final String ACTION = "ConversationIntents.ViewConversation";
public static final String ACTION = "ConversationIntents.ViewConversation";
private static final String BUBBLE_AUTHORITY = "bubble";
private static final String NOTIFICATION_CUSTOM_SCHEME = "custom";
@@ -99,11 +96,7 @@ public class ConversationIntents {
*/
public static @NonNull Builder createBuilderSync(@NonNull Context context, @NonNull RecipientId recipientId, long threadId) {
Preconditions.checkArgument(threadId > 0, "threadId is invalid");
return new Builder(context, getConversationActivityClass(), recipientId, threadId, ConversationScreenType.NORMAL);
}
private static @NonNull Class<? extends Activity> getConversationActivityClass() {
return SignalStore.internal().getLargeScreenUi() ? MainActivity.class : ConversationActivity.class;
return new Builder(context, ConversationActivity.class, recipientId, threadId, ConversationScreenType.NORMAL);
}
static @Nullable Uri getIntentData(@NonNull Bundle bundle) {
@@ -403,13 +396,7 @@ public class ConversationIntents {
throw new IllegalStateException("Cannot have both sticker and media array");
}
final Intent intent;
if (MainActivity.class.equals(conversationActivityClass)) {
intent = MainActivity.clearTop(context);
} else {
intent = new Intent(context, conversationActivityClass);
}
Intent intent = new Intent(context, conversationActivityClass);
intent.setAction(ConversationIntents.ACTION);
if (conversationScreenType.isInBubble()) {

View File

@@ -11,6 +11,7 @@ import io.reactivex.rxjava3.subjects.PublishSubject
import io.reactivex.rxjava3.subjects.Subject
import org.signal.core.util.logging.Log
import org.signal.core.util.logging.Log.tag
import org.thoughtcrime.securesms.MainActivity
import org.thoughtcrime.securesms.PassphraseRequiredActivity
import org.thoughtcrime.securesms.R
import org.thoughtcrime.securesms.components.settings.app.subscription.GooglePayComponent
@@ -18,6 +19,8 @@ import org.thoughtcrime.securesms.components.settings.app.subscription.GooglePay
import org.thoughtcrime.securesms.components.voice.VoiceNoteMediaController
import org.thoughtcrime.securesms.components.voice.VoiceNoteMediaControllerOwner
import org.thoughtcrime.securesms.conversation.ConversationIntents
import org.thoughtcrime.securesms.jobs.ConversationShortcutUpdateJob
import org.thoughtcrime.securesms.keyvalue.SignalStore
import org.thoughtcrime.securesms.util.ConfigurationUtil
import org.thoughtcrime.securesms.util.Debouncer
import org.thoughtcrime.securesms.util.DynamicNoActionBarTheme
@@ -50,6 +53,21 @@ open class ConversationActivity : PassphraseRequiredActivity(), VoiceNoteMediaCo
}
override fun onCreate(savedInstanceState: Bundle?, ready: Boolean) {
if (SignalStore.internal.largeScreenUi) {
startActivity(
MainActivity.clearTop(this).apply {
action = ConversationIntents.ACTION
putExtras(intent)
}
)
if (!ConversationIntents.isConversationIntent(intent)) {
ConversationShortcutUpdateJob.enqueue()
}
finish()
}
enableSavedStateHandles()
supportPostponeEnterTransition()
transitionDebouncer.publish { supportStartPostponedEnterTransition() }