From 614dbab1fd2c37cd282830f4eae0494cdf2b1407 Mon Sep 17 00:00:00 2001 From: greenart7c3 Date: Fri, 15 Sep 2023 20:51:13 -0300 Subject: [PATCH] refactor some duplicated code --- .../amethyst/service/AmberUtils.kt | 85 +++++++------------ 1 file changed, 33 insertions(+), 52 deletions(-) diff --git a/app/src/main/java/com/vitorpamplona/amethyst/service/AmberUtils.kt b/app/src/main/java/com/vitorpamplona/amethyst/service/AmberUtils.kt index 59e0c9234..0e4a54ee0 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/service/AmberUtils.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/service/AmberUtils.kt @@ -29,10 +29,31 @@ object AmberUtils { var isActivityRunning: Boolean = false val cachedDecryptedContent = mutableMapOf() lateinit var account: Account - lateinit var activityResultLauncher: ActivityResultLauncher - lateinit var decryptResultLauncher: ActivityResultLauncher - lateinit var blockListResultLauncher: ActivityResultLauncher - lateinit var signEventResultLauncher: ActivityResultLauncher + private lateinit var activityResultLauncher: ActivityResultLauncher + private lateinit var decryptResultLauncher: ActivityResultLauncher + private lateinit var blockListResultLauncher: ActivityResultLauncher + private lateinit var signEventResultLauncher: ActivityResultLauncher + + @OptIn(DelicateCoroutinesApi::class) + fun requestRejectedToast() { + GlobalScope.launch(Dispatchers.Main) { + Toast.makeText( + Amethyst.instance, + "Sign request rejected", + Toast.LENGTH_SHORT + ).show() + } + } + + @OptIn(DelicateCoroutinesApi::class) + fun default() { + isActivityRunning = false + ServiceManager.shouldPauseService = true + GlobalScope.launch(Dispatchers.IO) { + isActivityRunning = false + ServiceManager.shouldPauseService = true + } + } @OptIn(DelicateCoroutinesApi::class) fun start(activity: MainActivity) { @@ -40,13 +61,7 @@ object AmberUtils { ActivityResultContracts.StartActivityForResult() ) { if (it.resultCode != Activity.RESULT_OK) { - GlobalScope.launch(Dispatchers.Main) { - Toast.makeText( - Amethyst.instance, - "Sign request rejected", - Toast.LENGTH_SHORT - ).show() - } + requestRejectedToast() } else { val json = it.data?.getStringExtra("event") ?: "" GlobalScope.launch(Dispatchers.IO) { @@ -57,21 +72,14 @@ object AmberUtils { } } } - isActivityRunning = false - ServiceManager.shouldPauseService = true + default() } activityResultLauncher = activity.registerForActivityResult( ActivityResultContracts.StartActivityForResult() ) { if (it.resultCode != Activity.RESULT_OK) { - GlobalScope.launch(Dispatchers.Main) { - Toast.makeText( - Amethyst.instance, - "Sign request rejected", - Toast.LENGTH_SHORT - ).show() - } + requestRejectedToast() } else { val event = it.data?.getStringExtra("signature") ?: "" val id = it.data?.getStringExtra("id") ?: "" @@ -79,25 +87,14 @@ object AmberUtils { content.put(id, event) } } - isActivityRunning = false - ServiceManager.shouldPauseService = true - GlobalScope.launch(Dispatchers.IO) { - isActivityRunning = false - ServiceManager.shouldPauseService = true - } + default() } decryptResultLauncher = activity.registerForActivityResult( ActivityResultContracts.StartActivityForResult() ) { if (it.resultCode != Activity.RESULT_OK) { - GlobalScope.launch(Dispatchers.Main) { - Toast.makeText( - Amethyst.instance, - "Sign request rejected", - Toast.LENGTH_SHORT - ).show() - } + requestRejectedToast() } else { val event = it.data?.getStringExtra("signature") ?: "" val id = it.data?.getStringExtra("id") ?: "" @@ -106,25 +103,14 @@ object AmberUtils { cachedDecryptedContent[id] = event } } - isActivityRunning = false - ServiceManager.shouldPauseService = true - GlobalScope.launch(Dispatchers.IO) { - isActivityRunning = false - ServiceManager.shouldPauseService = true - } + default() } blockListResultLauncher = activity.registerForActivityResult( ActivityResultContracts.StartActivityForResult() ) { if (it.resultCode != Activity.RESULT_OK) { - GlobalScope.launch(Dispatchers.Main) { - Toast.makeText( - Amethyst.instance, - "Sign request rejected", - Toast.LENGTH_SHORT - ).show() - } + requestRejectedToast() } else { val decryptedContent = it.data?.getStringExtra("signature") ?: "" val id = it.data?.getStringExtra("id") ?: "" @@ -133,12 +119,7 @@ object AmberUtils { account.live.invalidateData() } } - isActivityRunning = false - ServiceManager.shouldPauseService = true - GlobalScope.launch(Dispatchers.IO) { - isActivityRunning = false - ServiceManager.shouldPauseService = true - } + default() } }