Skip to content

Commit 9275eb3

Browse files
committed
Improve Token Migration loading indicator. Add app icon for AuthFlowTester.
1 parent 5fa7cf7 commit 9275eb3

9 files changed

Lines changed: 22 additions & 11 deletions

File tree

libs/SalesforceSDK/src/com/salesforce/androidsdk/ui/TokenMigrationActivity.kt

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -52,16 +52,12 @@ import androidx.compose.runtime.getValue
5252
import androidx.compose.ui.Modifier
5353
import androidx.compose.ui.graphics.Color
5454
import androidx.compose.ui.graphics.graphicsLayer
55-
import androidx.compose.ui.graphics.luminance
5655
import androidx.compose.ui.viewinterop.AndroidView
5756
import androidx.core.net.toUri
5857
import androidx.core.view.WindowCompat
5958
import androidx.lifecycle.lifecycleScope
60-
import androidx.lifecycle.viewmodel.compose.viewModel
6159
import com.salesforce.androidsdk.accounts.MigrationCallbackRegistry
62-
import com.salesforce.androidsdk.accounts.UserAccount
6360
import com.salesforce.androidsdk.accounts.UserAccountManager
64-
import com.salesforce.androidsdk.analytics.model.InstrumentationEvent
6561
import com.salesforce.androidsdk.app.SalesforceSDKManager
6662
import com.salesforce.androidsdk.app.SalesforceSDKManager.Theme.DARK
6763
import com.salesforce.androidsdk.auth.OAuth2.FRONTDOOR_URL_KEY
@@ -227,6 +223,9 @@ internal class TokenMigrationActivity : ComponentActivity() {
227223
val migrationFinished = url.startsWith(callbackUrl)
228224

229225
if (migrationFinished) {
226+
viewModel.authFinished.value = true
227+
viewModel.loading.value = true
228+
230229
val params = UriFragmentParser.parse(request.url)
231230
val error = params["error"]
232231
// Did we fail?
@@ -281,14 +280,17 @@ internal class TokenMigrationActivity : ComponentActivity() {
281280
}
282281

283282
override fun onPageFinished(view: WebView?, url: String?) {
284-
if (!viewModel.authFinished.value) {
285-
viewModel.loading.value = false
286-
}
287-
288283
view?.evaluateJavascript(BACKGROUND_COLOR_JAVASCRIPT) { result ->
289284
makeStatusBarVisible()
290-
viewModel.dynamicBackgroundColor.value = validateAndExtractBackgroundColor(result)
291-
?: return@evaluateJavascript
285+
validateAndExtractBackgroundColor(result)?.let { color ->
286+
viewModel.dynamicBackgroundColor.value = color
287+
288+
// This check is inside validateAndExtractBackgroundColor because we only
289+
// want to stop showing the spinner if WebView UI is actually displayed.
290+
if (!viewModel.authFinished.value) {
291+
viewModel.loading.value = false
292+
}
293+
}
292294
}
293295

294296
super.onPageFinished(view, url)

native/NativeSampleApps/AuthFlowTester/src/main/AndroidManifest.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
44

5-
<application android:icon="@drawable/sf__icon"
5+
<application android:icon="@mipmap/msdk_icon"
66
android:name=".AuthFlowTesterApplication"
77
android:label="@string/app_name"
88
android:manageSpaceActivity="com.salesforce.androidsdk.ui.ManageSpaceActivity">
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
3+
<background android:drawable="@color/msdk_icon_background"/>
4+
<foreground android:drawable="@mipmap/msdk_icon_foreground"/>
5+
</adaptive-icon>
4.28 KB
Loading
2.72 KB
Loading
6.38 KB
Loading
10.5 KB
Loading
15.8 KB
Loading
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<resources>
3+
<color name="msdk_icon_background">#414450</color>
4+
</resources>

0 commit comments

Comments
 (0)