Reverts the startup redirection because navController might not be ready in the onCreate
This commit is contained in:
@@ -17,7 +17,10 @@ import androidx.appcompat.app.AppCompatDelegate
|
|||||||
import androidx.compose.foundation.layout.fillMaxSize
|
import androidx.compose.foundation.layout.fillMaxSize
|
||||||
import androidx.compose.material.MaterialTheme
|
import androidx.compose.material.MaterialTheme
|
||||||
import androidx.compose.material.Surface
|
import androidx.compose.material.Surface
|
||||||
|
import androidx.compose.runtime.LaunchedEffect
|
||||||
import androidx.compose.runtime.getValue
|
import androidx.compose.runtime.getValue
|
||||||
|
import androidx.compose.runtime.mutableStateOf
|
||||||
|
import androidx.compose.runtime.remember
|
||||||
import androidx.compose.runtime.setValue
|
import androidx.compose.runtime.setValue
|
||||||
import androidx.compose.ui.Modifier
|
import androidx.compose.ui.Modifier
|
||||||
import androidx.core.os.LocaleListCompat
|
import androidx.core.os.LocaleListCompat
|
||||||
@@ -61,6 +64,9 @@ class MainActivity : AppCompatActivity() {
|
|||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
|
|
||||||
|
val uri = intent?.data?.toString()
|
||||||
|
val startingPage = uriToRoute(uri)
|
||||||
|
|
||||||
LocalPreferences.migrateSingleUserPrefs()
|
LocalPreferences.migrateSingleUserPrefs()
|
||||||
val language = LocalPreferences.getPreferredLanguage()
|
val language = LocalPreferences.getPreferredLanguage()
|
||||||
if (language.isNotBlank()) {
|
if (language.isNotBlank()) {
|
||||||
@@ -83,6 +89,17 @@ class MainActivity : AppCompatActivity() {
|
|||||||
AccountScreen(accountStateViewModel, themeViewModel, navController)
|
AccountScreen(accountStateViewModel, themeViewModel, navController)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var actionableNextPage by remember { mutableStateOf(startingPage) }
|
||||||
|
actionableNextPage?.let {
|
||||||
|
LaunchedEffect(it) {
|
||||||
|
navController.navigate(it) {
|
||||||
|
popUpTo(Route.Home.route)
|
||||||
|
launchSingleTop = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
actionableNextPage = null
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
val networkRequest = NetworkRequest.Builder()
|
val networkRequest = NetworkRequest.Builder()
|
||||||
@@ -95,15 +112,6 @@ class MainActivity : AppCompatActivity() {
|
|||||||
connectivityManager.requestNetwork(networkRequest, networkCallback)
|
connectivityManager.requestNetwork(networkRequest, networkCallback)
|
||||||
|
|
||||||
Client.lenient = true
|
Client.lenient = true
|
||||||
|
|
||||||
val uri = intent?.data?.toString()
|
|
||||||
val startingPage = uriToRoute(uri)
|
|
||||||
if (startingPage != null) {
|
|
||||||
navController.navigate(startingPage) {
|
|
||||||
popUpTo(Route.Home.route)
|
|
||||||
launchSingleTop = true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@OptIn(DelicateCoroutinesApi::class)
|
@OptIn(DelicateCoroutinesApi::class)
|
||||||
|
|||||||
Reference in New Issue
Block a user