mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-20 00:29:11 +01:00
Enable key transparency for internal users.
This commit is contained in:
@@ -18,7 +18,9 @@ import androidx.compose.ui.res.painterResource
|
||||
import androidx.compose.ui.res.stringResource
|
||||
import androidx.compose.ui.text.style.TextAlign
|
||||
import androidx.compose.ui.unit.dp
|
||||
import androidx.core.os.bundleOf
|
||||
import androidx.fragment.app.FragmentManager
|
||||
import androidx.fragment.app.setFragmentResult
|
||||
import org.signal.core.ui.compose.BottomSheets
|
||||
import org.signal.core.ui.compose.Buttons
|
||||
import org.signal.core.ui.compose.DayNightPreviews
|
||||
@@ -27,6 +29,7 @@ import org.thoughtcrime.securesms.R
|
||||
import org.thoughtcrime.securesms.compose.ComposeBottomSheetDialogFragment
|
||||
import org.thoughtcrime.securesms.keyvalue.SignalStore
|
||||
import org.thoughtcrime.securesms.util.BottomSheetUtil
|
||||
import org.thoughtcrime.securesms.util.CommunicationActions
|
||||
|
||||
/**
|
||||
* Education sheet explaining that conversations now have auto verification
|
||||
@@ -37,6 +40,8 @@ class VerifyAutomaticallyEducationSheet : ComposeBottomSheetDialogFragment() {
|
||||
|
||||
companion object {
|
||||
|
||||
const val RESULT_KEY = "verify_result_key"
|
||||
|
||||
@JvmStatic
|
||||
fun show(fragmentManager: FragmentManager) {
|
||||
VerifyAutomaticallyEducationSheet().show(fragmentManager, BottomSheetUtil.STANDARD_BOTTOM_SHEET_FRAGMENT_TAG)
|
||||
@@ -51,8 +56,13 @@ class VerifyAutomaticallyEducationSheet : ComposeBottomSheetDialogFragment() {
|
||||
@Composable
|
||||
override fun SheetContent() {
|
||||
VerifyEducationSheet(
|
||||
onVerify = {}, // TODO(michelle): Plug in to verify fragment
|
||||
onLearnMore = {} // TODO(michelle): Update with support url
|
||||
onVerify = {
|
||||
setFragmentResult(RESULT_KEY, bundleOf(RESULT_KEY to true))
|
||||
dismissAllowingStateLoss()
|
||||
},
|
||||
onLearnMore = {
|
||||
CommunicationActions.openBrowserLink(requireContext(), getString(R.string.verify_display_fragment__link))
|
||||
}
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -75,7 +75,7 @@ class VerifyDisplayFragment : Fragment() {
|
||||
|
||||
updateVerifyButton(requireArguments().getBoolean(VERIFIED_STATE, false), false)
|
||||
|
||||
binding.automaticVerification.visible = RemoteConfig.keyTransparency && SignalStore.settings.automaticVerificationEnabled
|
||||
binding.automaticVerification.visible = RemoteConfig.internalUser && SignalStore.settings.automaticVerificationEnabled
|
||||
binding.safetyQrView.verifyButton.setOnClickListener { updateVerifyButton(!currentVerifiedState, true) }
|
||||
binding.toolbar.setNavigationOnClickListener { requireActivity().onBackPressed() }
|
||||
binding.toolbar.setTitle(R.string.AndroidManifest__verify_safety_number)
|
||||
@@ -119,18 +119,22 @@ class VerifyDisplayFragment : Fragment() {
|
||||
}
|
||||
|
||||
private fun animateStatus(status: AutomaticVerificationStatus) {
|
||||
binding.autoVerifyContainer.animate()
|
||||
.alpha(0f)
|
||||
.setDuration(FADE_TIME)
|
||||
.withEndAction {
|
||||
updateStatus(status)
|
||||
if (status == AutomaticVerificationStatus.NONE || status == AutomaticVerificationStatus.UNAVAILABLE_PERMANENT) {
|
||||
updateStatus(status)
|
||||
} else {
|
||||
binding.autoVerifyContainer.animate()
|
||||
.alpha(0f)
|
||||
.setDuration(FADE_TIME)
|
||||
.withEndAction {
|
||||
updateStatus(status)
|
||||
|
||||
binding.autoVerifyContainer.animate()
|
||||
.alpha(1f)
|
||||
.setDuration(FADE_TIME)
|
||||
.start()
|
||||
}
|
||||
.start()
|
||||
binding.autoVerifyContainer.animate()
|
||||
.alpha(1f)
|
||||
.setDuration(FADE_TIME)
|
||||
.start()
|
||||
}
|
||||
.start()
|
||||
}
|
||||
}
|
||||
|
||||
private fun updateStatus(status: AutomaticVerificationStatus) {
|
||||
|
||||
@@ -53,7 +53,7 @@ class VerifySafetyNumberViewModel(
|
||||
}
|
||||
|
||||
private fun checkAutomaticVerificationEligibility() {
|
||||
if (recipient.get().e164.isEmpty || recipient.get().aci.isEmpty) {
|
||||
if (recipient.get().e164.isEmpty || recipient.get().aci.isEmpty || SignalStore.misc.hasKeyTransparencyFailure) {
|
||||
automaticVerificationLiveData.postValue(AutomaticVerificationStatus.UNAVAILABLE_PERMANENT)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user