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 8014e9c77..1d151fa86 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/dependencies/ApplicationDependencyProvider.java +++ b/app/src/main/java/org/thoughtcrime/securesms/dependencies/ApplicationDependencyProvider.java @@ -1,5 +1,6 @@ package org.thoughtcrime.securesms.dependencies; +import android.annotation.SuppressLint; import android.app.Application; import android.os.Handler; import android.os.HandlerThread; @@ -191,6 +192,7 @@ public class ApplicationDependencyProvider implements ApplicationDependencies.Pr return new FrameRateTracker(context); } + @SuppressLint("DiscouragedApi") public @NonNull MegaphoneRepository provideMegaphoneRepository() { return new MegaphoneRepository(context); } diff --git a/app/src/main/java/org/thoughtcrime/securesms/megaphone/MegaphoneRepository.java b/app/src/main/java/org/thoughtcrime/securesms/megaphone/MegaphoneRepository.java index eb817d3de..2a18a524c 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/megaphone/MegaphoneRepository.java +++ b/app/src/main/java/org/thoughtcrime/securesms/megaphone/MegaphoneRepository.java @@ -3,6 +3,7 @@ package org.thoughtcrime.securesms.megaphone; import android.app.Application; import androidx.annotation.AnyThread; +import androidx.annotation.Discouraged; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.annotation.WorkerThread; @@ -34,6 +35,7 @@ public class MegaphoneRepository { private boolean enabled; + @Discouraged(message = "Instances of MegaphoneRepository should be accessed via ApplicationDependencies.") public MegaphoneRepository(@NonNull Application context) { this.context = context; this.executor = SignalExecutors.SERIAL; diff --git a/app/src/main/java/org/thoughtcrime/securesms/profiles/manage/UsernameEducationFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/profiles/manage/UsernameEducationFragment.kt index 8532f69e3..96b3ed9af 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/profiles/manage/UsernameEducationFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/profiles/manage/UsernameEducationFragment.kt @@ -7,7 +7,9 @@ import androidx.navigation.fragment.findNavController import org.thoughtcrime.securesms.R import org.thoughtcrime.securesms.components.ViewBinderDelegate import org.thoughtcrime.securesms.databinding.UsernameEducationFragmentBinding +import org.thoughtcrime.securesms.dependencies.ApplicationDependencies import org.thoughtcrime.securesms.keyvalue.SignalStore +import org.thoughtcrime.securesms.megaphone.Megaphones import org.thoughtcrime.securesms.util.navigation.safeNavigate /** @@ -28,6 +30,7 @@ class UsernameEducationFragment : Fragment(R.layout.username_education_fragment) binding.continueButton.setOnClickListener { SignalStore.uiHints().markHasSeenUsernameEducation() + ApplicationDependencies.getMegaphoneRepository().markFinished(Megaphones.Event.SET_UP_YOUR_USERNAME) findNavController().safeNavigate(UsernameEducationFragmentDirections.actionUsernameEducationFragmentToUsernameManageFragment()) } }