From fbc6a1301830279d04d5c450b260a07e7cc22bbf Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Wed, 1 Jan 2025 12:05:14 +0700 Subject: [PATCH 1/2] Partial Revert "Do not show account selection dialog, if there is only 1 account" This reverts commit baa954eb20ddd454814dc93f598dd6296535d484. Reason for revert: If user has multiple accounts on microG but chooses to login using one of them, they will not be prompted again for selecting accounts again as Aurora Store can only see the permitted account from the first time. --- app/src/main/AndroidManifest.xml | 2 -- .../store/view/ui/splash/SplashFragment.kt | 24 ++++--------------- 2 files changed, 5 insertions(+), 21 deletions(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 499e4fbbe..e4f6f31d6 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -46,8 +46,6 @@ - - diff --git a/app/src/main/java/com/aurora/store/view/ui/splash/SplashFragment.kt b/app/src/main/java/com/aurora/store/view/ui/splash/SplashFragment.kt index c2c3b1f24..904e60023 100644 --- a/app/src/main/java/com/aurora/store/view/ui/splash/SplashFragment.kt +++ b/app/src/main/java/com/aurora/store/view/ui/splash/SplashFragment.kt @@ -29,15 +29,14 @@ import android.os.Looper import android.util.Base64 import android.util.Log import android.view.View +import androidx.core.view.isVisible import androidx.activity.result.contract.ActivityResultContracts import androidx.core.os.bundleOf -import androidx.core.view.isVisible import androidx.fragment.app.activityViewModels import androidx.lifecycle.lifecycleScope import androidx.navigation.fragment.findNavController import com.aurora.extensions.hide import com.aurora.extensions.isMAndAbove -import com.aurora.extensions.runOnUiThread import com.aurora.extensions.show import com.aurora.gplayapi.helpers.AuthHelper import com.aurora.store.R @@ -70,7 +69,7 @@ class SplashFragment : BaseFragment() { if (!accountName.isNullOrBlank()) { requestAuthTokenForGoogle(accountName) } else { - runOnUiThread { resetActions() } + resetActions() } } @@ -203,14 +202,6 @@ class SplashFragment : BaseFragment() { if (viewModel.authState.value != AuthState.Fetching) { binding.btnGoogle.updateProgress(true) if (isMAndAbove && PackageUtil.hasSupportedMicroG(requireContext())) { - val accounts = fetchGoogleAccounts() - - // Do not show selection dialog if there is only one account available - if (accounts.isNotEmpty() && accounts.size == 1) { - requestAuthTokenForGoogle(accounts.first().name) - return@addOnClickListener - } - Log.i(TAG, "Found supported microG, trying to request credentials") val accountIntent = AccountManager.newChooseAccountIntent( null, @@ -225,6 +216,7 @@ class SplashFragment : BaseFragment() { } else { findNavController().navigate(R.id.googleFragment) } + } } } @@ -242,8 +234,7 @@ class SplashFragment : BaseFragment() { } private fun navigateToDefaultTab() { - val defaultDestination = - Preferences.getInteger(requireContext(), PREFERENCE_DEFAULT_SELECTED_TAB) + val defaultDestination = Preferences.getInteger(requireContext(), PREFERENCE_DEFAULT_SELECTED_TAB) val directions = when (requireArguments().getInt("destinationId", defaultDestination)) { R.id.updatesFragment -> { @@ -271,11 +262,6 @@ class SplashFragment : BaseFragment() { } } - private fun fetchGoogleAccounts(): Array { - val accountManager = AccountManager.get(requireContext()) - return accountManager.getAccountsByType(GOOGLE_ACCOUNT_TYPE) - } - private fun requestAuthTokenForGoogle(accountName: String) { try { AccountManager.get(requireContext()) @@ -290,7 +276,7 @@ class SplashFragment : BaseFragment() { { viewModel.buildGoogleAuthData( accountName, - it.result.getString(AccountManager.KEY_AUTHTOKEN) ?: "", + it.result.getString(AccountManager.KEY_AUTHTOKEN)!!, AuthHelper.Token.AUTH ) }, From b7a18c7bdce32bfc7656f196534a386645b1cac8 Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Wed, 1 Jan 2025 14:24:38 +0700 Subject: [PATCH 2/2] fixup! SettingsFragment: Add preference for permissions fragment Signed-off-by: Aayush Gupta --- .../view/ui/onboarding/PermissionsFragment.kt | 5 +- .../fragment_onboarding_permissions.xml | 78 ++++++++++++------- 2 files changed, 50 insertions(+), 33 deletions(-) diff --git a/app/src/main/java/com/aurora/store/view/ui/onboarding/PermissionsFragment.kt b/app/src/main/java/com/aurora/store/view/ui/onboarding/PermissionsFragment.kt index 41ad637cb..8211c0618 100644 --- a/app/src/main/java/com/aurora/store/view/ui/onboarding/PermissionsFragment.kt +++ b/app/src/main/java/com/aurora/store/view/ui/onboarding/PermissionsFragment.kt @@ -57,9 +57,8 @@ class PermissionsFragment : BaseFragment() super.onViewCreated(view, savedInstanceState) // Headers are only visible if we are onboarding - binding.title?.isVisible = args.isOnboarding - binding.subtitle?.isVisible = args.isOnboarding - binding.toolbar?.apply { + binding.title.isVisible = args.isOnboarding + binding.toolbar.apply { isVisible = !args.isOnboarding setNavigationOnClickListener { findNavController().navigateUp() } } diff --git a/app/src/main/res/layout-land/fragment_onboarding_permissions.xml b/app/src/main/res/layout-land/fragment_onboarding_permissions.xml index f08b3278f..34513659e 100644 --- a/app/src/main/res/layout-land/fragment_onboarding_permissions.xml +++ b/app/src/main/res/layout-land/fragment_onboarding_permissions.xml @@ -20,43 +20,61 @@ --> + + + android:layout_height="wrap_content"> - + - + + + + + + - - - \ No newline at end of file +