diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 735faf14..ae77761e 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -26,6 +26,7 @@ android { defaultConfig { applicationId = "org.andbootmgr.app" minSdk = 26 + //noinspection ExpiredTargetSdkVersion targetSdk = 32 versionCode = 3001 versionName = "0.3.0-m0" @@ -93,8 +94,8 @@ android { composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } - applicationVariants.forEach { - tasks["merge${it.name.replaceFirstChar(Char::titlecase)}Assets"].dependsOn(tasks["setAssetTs"]) + applicationVariants.configureEach { + tasks["merge${name.replaceFirstChar(Char::titlecase)}Assets"].dependsOn(tasks["setAssetTs"]) } } diff --git a/app/src/main/java/org/andbootmgr/app/DroidBootFlow.kt b/app/src/main/java/org/andbootmgr/app/DroidBootFlow.kt index 26b2b341..8a3ee47c 100644 --- a/app/src/main/java/org/andbootmgr/app/DroidBootFlow.kt +++ b/app/src/main/java/org/andbootmgr/app/DroidBootFlow.kt @@ -2,6 +2,8 @@ package org.andbootmgr.app import android.content.Intent import android.net.Uri +import android.os.Handler +import android.os.Looper import android.util.Log import android.widget.Toast import androidx.compose.foundation.layout.* @@ -147,7 +149,9 @@ fun SelectDroidBoot(vm: WizardActivityState) { vm.flashes[flashType] = Uri.parse(url) nextButtonAvailable.value = true } catch (e: Exception) { - Toast.makeText(ctx, R.string.dl_error, Toast.LENGTH_LONG).show() + Handler(Looper.getMainLooper()).post { + Toast.makeText(ctx, R.string.dl_error, Toast.LENGTH_LONG).show() + } Log.e("ABM droidboot json", Log.getStackTraceString(e)) } }.start() diff --git a/app/src/main/java/org/andbootmgr/app/MainActivity.kt b/app/src/main/java/org/andbootmgr/app/MainActivity.kt index 797eda67..36a47201 100644 --- a/app/src/main/java/org/andbootmgr/app/MainActivity.kt +++ b/app/src/main/java/org/andbootmgr/app/MainActivity.kt @@ -11,8 +11,6 @@ import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.* -import androidx.compose.foundation.layout.FlowColumnScopeInstance.align -import androidx.compose.foundation.layout.FlowRowScopeInstance.alignBy import androidx.compose.foundation.rememberScrollState import androidx.compose.foundation.verticalScroll import androidx.compose.material.icons.Icons @@ -238,27 +236,33 @@ private fun AppContent(vm: MainActivityState, view: @Composable (PaddingValues) // A surface container using the 'background' color from the theme Surface(modifier = Modifier.fillMaxSize(), color = MaterialTheme.colorScheme.background) { ModalNavigationDrawer(drawerContent = { - Button( - modifier = Modifier - .align() - .padding(top = 16.dp), - onClick = { scope.launch { - vm.navController!!.navigate("start") - drawerState.close() - } }, - content = { Text(stringResource(R.string.home)) } - ) - Button( - modifier = Modifier - //.align(Alignment.CenterHorizontally) - .padding(top = 16.dp), - onClick = { if (vm.isOk) scope.launch { - vm.navController!!.navigate("settings") - drawerState.close() - } }, - enabled = vm.isOk, - content = { Text(stringResource(R.string.settings)) } - ) + Box { + Button( + modifier = Modifier + .align(Alignment.Center) + .padding(top = 16.dp), + onClick = { + scope.launch { + vm.navController!!.navigate("start") + drawerState.close() + } + }, + content = { Text(stringResource(R.string.home)) } + ) + Button( + modifier = Modifier + .align(Alignment.Center) + .padding(top = 16.dp), + onClick = { + if (vm.isOk) scope.launch { + vm.navController!!.navigate("settings") + drawerState.close() + } + }, + enabled = vm.isOk, + content = { Text(stringResource(R.string.settings)) } + ) + } }, drawerState = drawerState, content = {