Loading mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt +6 −0 Original line number Diff line number Diff line Loading @@ -174,6 +174,7 @@ import org.mozilla.fenix.compose.snackbar.Snackbar import org.mozilla.fenix.tor.UrlQuickLoadViewModel import org.mozilla.geckoview.TorAndroidIntegration import org.mozilla.geckoview.TorConnectStage import kotlin.system.exitProcess /** * The main activity of the application. The application is primarily a single Activity (this one) Loading Loading @@ -1528,6 +1529,11 @@ open class HomeActivity : LocaleAwareAppCompatActivity(), NavHostActivity, TorAn private const val PWA_RECENTLY_USED_THRESHOLD = DateUtils.DAY_IN_MILLIS * 30L } fun shutDown() : Nothing { finishAndRemoveTask() exitProcess(0) } override fun onBootstrapStateChange(state: String) = Unit override fun onBootstrapStageChange(stage: TorConnectStage) = Unit override fun onBootstrapProgress(progress: Double, hasWarnings: Boolean) = Unit Loading mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt +1 −2 Original line number Diff line number Diff line Loading @@ -1722,7 +1722,6 @@ class HomeFragment : Fragment(), UserInteractionHandler { } override fun onBackPressed(): Boolean { requireActivity().finish() return true (requireActivity() as HomeActivity).shutDown() } } mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistFragment.kt +3 −2 Original line number Diff line number Diff line Loading @@ -149,7 +149,7 @@ class TorConnectionAssistFragment : Fragment(), UserInteractionHandler { private fun setBackButton(screen: ConnectAssistUiState) { binding.backButton.visibility = if (screen.backButtonVisible) View.VISIBLE else View.INVISIBLE binding.backButton.setOnClickListener { torConnectionAssistViewModel.handleBackButtonPressed() onBackPressed() } } Loading Loading @@ -314,7 +314,8 @@ class TorConnectionAssistFragment : Fragment(), UserInteractionHandler { } override fun onBackPressed(): Boolean { return torConnectionAssistViewModel.handleBackButtonPressed() torConnectionAssistViewModel.handleBackButtonPressed(requireActivity() as HomeActivity) return true } } mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistViewModel.kt +4 −4 Original line number Diff line number Diff line Loading @@ -10,6 +10,7 @@ import androidx.lifecycle.AndroidViewModel import androidx.lifecycle.MutableLiveData import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.StateFlow import org.mozilla.fenix.HomeActivity import org.mozilla.fenix.ext.components class TorConnectionAssistViewModel( Loading Loading @@ -150,10 +151,10 @@ class TorConnectionAssistViewModel( return true } fun handleBackButtonPressed(): Boolean { fun handleBackButtonPressed(homeActivity: HomeActivity) { when (torConnectScreen.value) { ConnectAssistUiState.Splash -> return false ConnectAssistUiState.Configuring -> return false ConnectAssistUiState.Splash -> homeActivity.shutDown() ConnectAssistUiState.Configuring -> homeActivity.shutDown() ConnectAssistUiState.Connecting -> cancelTorBootstrap() ConnectAssistUiState.InternetError -> { _torController.lastKnownError = null Loading Loading @@ -191,6 +192,5 @@ class TorConnectionAssistViewModel( _torConnectScreen.value = ConnectAssistUiState.LocationCheck } } return true } } Loading
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt +6 −0 Original line number Diff line number Diff line Loading @@ -174,6 +174,7 @@ import org.mozilla.fenix.compose.snackbar.Snackbar import org.mozilla.fenix.tor.UrlQuickLoadViewModel import org.mozilla.geckoview.TorAndroidIntegration import org.mozilla.geckoview.TorConnectStage import kotlin.system.exitProcess /** * The main activity of the application. The application is primarily a single Activity (this one) Loading Loading @@ -1528,6 +1529,11 @@ open class HomeActivity : LocaleAwareAppCompatActivity(), NavHostActivity, TorAn private const val PWA_RECENTLY_USED_THRESHOLD = DateUtils.DAY_IN_MILLIS * 30L } fun shutDown() : Nothing { finishAndRemoveTask() exitProcess(0) } override fun onBootstrapStateChange(state: String) = Unit override fun onBootstrapStageChange(stage: TorConnectStage) = Unit override fun onBootstrapProgress(progress: Double, hasWarnings: Boolean) = Unit Loading
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt +1 −2 Original line number Diff line number Diff line Loading @@ -1722,7 +1722,6 @@ class HomeFragment : Fragment(), UserInteractionHandler { } override fun onBackPressed(): Boolean { requireActivity().finish() return true (requireActivity() as HomeActivity).shutDown() } }
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistFragment.kt +3 −2 Original line number Diff line number Diff line Loading @@ -149,7 +149,7 @@ class TorConnectionAssistFragment : Fragment(), UserInteractionHandler { private fun setBackButton(screen: ConnectAssistUiState) { binding.backButton.visibility = if (screen.backButtonVisible) View.VISIBLE else View.INVISIBLE binding.backButton.setOnClickListener { torConnectionAssistViewModel.handleBackButtonPressed() onBackPressed() } } Loading Loading @@ -314,7 +314,8 @@ class TorConnectionAssistFragment : Fragment(), UserInteractionHandler { } override fun onBackPressed(): Boolean { return torConnectionAssistViewModel.handleBackButtonPressed() torConnectionAssistViewModel.handleBackButtonPressed(requireActivity() as HomeActivity) return true } }
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistViewModel.kt +4 −4 Original line number Diff line number Diff line Loading @@ -10,6 +10,7 @@ import androidx.lifecycle.AndroidViewModel import androidx.lifecycle.MutableLiveData import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.StateFlow import org.mozilla.fenix.HomeActivity import org.mozilla.fenix.ext.components class TorConnectionAssistViewModel( Loading Loading @@ -150,10 +151,10 @@ class TorConnectionAssistViewModel( return true } fun handleBackButtonPressed(): Boolean { fun handleBackButtonPressed(homeActivity: HomeActivity) { when (torConnectScreen.value) { ConnectAssistUiState.Splash -> return false ConnectAssistUiState.Configuring -> return false ConnectAssistUiState.Splash -> homeActivity.shutDown() ConnectAssistUiState.Configuring -> homeActivity.shutDown() ConnectAssistUiState.Connecting -> cancelTorBootstrap() ConnectAssistUiState.InternetError -> { _torController.lastKnownError = null Loading Loading @@ -191,6 +192,5 @@ class TorConnectionAssistViewModel( _torConnectScreen.value = ConnectAssistUiState.LocationCheck } } return true } }