Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @Composable
- fun HomeScreen(webviewCustomProxyConfig: MutableState<CustomProxyConfig?>, modifier: Modifier = Modifier) {
- var isLoading by remember { mutableStateOf(true) }
- lateinit var url: String
- val navController = rememberNavController()
- LaunchedEffect(Unit) {
- // Delay for 2 seconds to remove the loading screen
- delay(2000)
- isLoading = false
- }
- if(isLoading){
- LoadingScreen()
- }else {
- webviewCustomProxyConfig.value?.let { config ->
- val webViewConfig = CustomProxyConfig(config.url, config.ip, config.port)
- url = webViewConfig.url
- }
- val state = rememberWebViewState(url = url)
- val navigator = rememberWebViewNavigator()
- val webClient = remember {
- object : AccompanistWebViewClient() {
- override fun onPageStarted(
- view: WebView,
- url: String?,
- favicon: Bitmap?
- ) {
- super.onPageStarted(view, url, favicon)
- Log.d("Accompanist WebView", "Page started loading for $url")
- }
- }
- }
- NavHost(navController, startDestination = "home") {
- composable("home") {
- WebViewScreen(
- navController,
- url = url,
- department = "Staging",
- state,
- navigator,
- webClient
- )
- }
- composable("settings") {
- SettingScreen(navController)
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement