diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 6d24b59..b19013a 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -12,8 +12,8 @@ android { applicationId = "com.crsmthw.phase10tracker" minSdk = 35 targetSdk = 37 - versionCode = 5 - versionName = "3.0.1" + versionCode = 6 + versionName = "3.0.2" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" vectorDrawables { diff --git a/app/release/baselineProfiles/0/app-release.dm b/app/release/baselineProfiles/0/app-release.dm index be26e8f..b5f8993 100644 Binary files a/app/release/baselineProfiles/0/app-release.dm and b/app/release/baselineProfiles/0/app-release.dm differ diff --git a/app/release/baselineProfiles/1/app-release.dm b/app/release/baselineProfiles/1/app-release.dm index e0f9c2c..f7e2b7d 100644 Binary files a/app/release/baselineProfiles/1/app-release.dm and b/app/release/baselineProfiles/1/app-release.dm differ diff --git a/app/release/output-metadata.json b/app/release/output-metadata.json index 2c686f5..0ff5cd6 100644 --- a/app/release/output-metadata.json +++ b/app/release/output-metadata.json @@ -11,8 +11,8 @@ "type": "SINGLE", "filters": [], "attributes": [], - "versionCode": 5, - "versionName": "3.0.1", + "versionCode": 6, + "versionName": "3.0.2", "outputFile": "app-release.apk" } ], diff --git a/app/src/main/java/com/crsmthw/phase10tracker/ui/screens/RoundEntryScreen.kt b/app/src/main/java/com/crsmthw/phase10tracker/ui/screens/RoundEntryScreen.kt index a39ca4c..158c57c 100644 --- a/app/src/main/java/com/crsmthw/phase10tracker/ui/screens/RoundEntryScreen.kt +++ b/app/src/main/java/com/crsmthw/phase10tracker/ui/screens/RoundEntryScreen.kt @@ -61,23 +61,24 @@ fun RoundEntryScreen( }, bottomBar = { Surface(tonalElevation = 3.dp, shadowElevation = 8.dp) { - Button( - onClick = { - focusManager.clearFocus() - vm.submitRound() - }, - enabled = vm.isValid(), - modifier = Modifier - .fillMaxWidth() - .padding(horizontal = 16.dp) - .padding(top = 16.dp, bottom = 16.dp) - .navigationBarsPadding() - .height(56.dp), - shape = MaterialTheme.shapes.large - ) { - Icon(Icons.Filled.Check, null) - Spacer(Modifier.width(8.dp)) - Text("Submit Round", style = MaterialTheme.typography.titleMedium) + Column(modifier = Modifier.navigationBarsPadding()) { + Button( + onClick = { + focusManager.clearFocus() + vm.submitRound() + }, + enabled = vm.isValid(), + modifier = Modifier + .fillMaxWidth() + .padding(horizontal = 16.dp) + .padding(vertical = 16.dp) + .height(56.dp), + shape = MaterialTheme.shapes.large + ) { + Icon(Icons.Filled.Check, null) + Spacer(Modifier.width(8.dp)) + Text("Submit Round", style = MaterialTheme.typography.titleMedium) + } } } } @@ -86,7 +87,11 @@ fun RoundEntryScreen( modifier = Modifier .fillMaxSize() .padding(padding) - // This is the key fix: pushes content up when keyboard appears + // Tell Compose the Scaffold padding already consumed those insets, + // so imePadding() only adds the *extra* keyboard space — not the + // full keyboard height on top of the already-padded bottomBar height. + // Without this, the gap = bottomBar height (the double-count). + .consumeWindowInsets(padding) .imePadding(), contentPadding = PaddingValues(horizontal = 16.dp, vertical = 12.dp), verticalArrangement = Arrangement.spacedBy(12.dp) @@ -307,4 +312,4 @@ private fun CardValuesDialog(onDismiss: () -> Unit) { TextButton(onClick = onDismiss) { Text("Got it") } } ) -} +} \ No newline at end of file