From 26c16784d4ce94db4500bcc15ff2a87ad5db6f49 Mon Sep 17 00:00:00 2001 From: tomhsu Date: Mon, 18 Nov 2024 03:23:36 +0000 Subject: [PATCH] Make final confirmation of dialog only shows in-call state - Add a condition of in-call state to restrict dialog. Flag: EXEMPT bug fix Fix: b/374355096 Test: atest passed. Test: Manual test passed. Change-Id: I8d8505870973acbf57db8d3c5032619a31f9eb4d --- .../system/reset/ResetNetworkConfirm.kt | 23 ++++++++++++------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/src/com/android/settings/system/reset/ResetNetworkConfirm.kt b/src/com/android/settings/system/reset/ResetNetworkConfirm.kt index b353f69d9db..3412825b62d 100644 --- a/src/com/android/settings/system/reset/ResetNetworkConfirm.kt +++ b/src/com/android/settings/system/reset/ResetNetworkConfirm.kt @@ -21,6 +21,7 @@ import android.app.settings.SettingsEnums import android.content.DialogInterface import android.os.Bundle import android.os.Looper +import android.telecom.TelecomManager import android.telephony.SubscriptionManager import android.util.Log import android.view.LayoutInflater @@ -89,7 +90,12 @@ class ResetNetworkConfirm : InstrumentedFragment() { /** Configure the UI for the final confirmation interaction */ private fun View.establishFinalConfirmationState() { requireViewById(R.id.execute_reset_network).setOnClickListener { - showResetInternetDialog(); + val tm = context.getSystemService(TelecomManager::class.java) + if (tm != null && tm.isInCall) { + showResetInternetDialog(); + } else { + onResetClicked() + } } } @@ -138,9 +144,13 @@ class ResetNetworkConfirm : InstrumentedFragment() { * settings to its factory-default state. */ @VisibleForTesting - suspend fun onResetClicked() { - showProgressDialog() - resetNetwork() + fun onResetClicked() { + if (!Utils.isMonkeyRunning() && !resetStarted) { + resetStarted = true + viewLifecycleOwner.lifecycleScope.launch { + showProgressDialog() + resetNetwork() } + } } private fun showProgressDialog() { @@ -165,10 +175,7 @@ class ResetNetworkConfirm : InstrumentedFragment() { val builder = AlertDialog.Builder(requireContext()) val resetInternetClickListener = DialogInterface.OnClickListener { dialog, which -> - if (!Utils.isMonkeyRunning() && !resetStarted) { - resetStarted = true - viewLifecycleOwner.lifecycleScope.launch { onResetClicked() } - } + onResetClicked() } builder.setTitle(R.string.reset_your_internet_title)