@@ -34,6 +34,7 @@ import androidx.compose.ui.ExperimentalComposeUiApi
3434import androidx.compose.ui.Modifier
3535import androidx.compose.ui.draw.alpha
3636import androidx.compose.ui.draw.scale
37+ import androidx.compose.ui.graphics.Color
3738import androidx.compose.ui.graphics.asImageBitmap
3839import androidx.compose.ui.layout.ContentScale
3940import androidx.compose.ui.platform.LocalContext
@@ -42,6 +43,8 @@ import androidx.compose.ui.res.stringResource
4243import androidx.compose.ui.text.style.TextAlign
4344import androidx.compose.ui.tooling.preview.Preview
4445import androidx.compose.ui.unit.dp
46+ import androidx.compose.ui.unit.isSpecified
47+ import androidx.compose.ui.unit.isUnspecified
4548import androidx.hilt.navigation.compose.hiltViewModel
4649import com.getcode.LocalTopBarPadding
4750import com.getcode.R
@@ -60,6 +63,8 @@ import com.getcode.ui.components.CodeButton
6063import com.getcode.ui.components.PermissionCheck
6164import com.getcode.ui.components.getPermissionLauncher
6265import com.getcode.ui.components.rememberSelectionState
66+ import com.getcode.ui.utils.addIf
67+ import com.getcode.ui.utils.debugBounds
6368
6469@OptIn(ExperimentalComposeUiApi ::class )
6570@Preview
@@ -145,16 +150,15 @@ fun AccessKey(
145150 .fillMaxSize()
146151 .padding(horizontal = CodeTheme .dimens.inset)
147152 .padding(vertical = CodeTheme .dimens.grid.x4)
148- .measured { buttonHeight = it.height },
149153 ) {
150- Column (modifier = Modifier
151- .align(Alignment .BottomCenter )
152- .measured { buttonHeight = it.height }) {
154+ Column (
155+ modifier = Modifier
156+ .align(Alignment .BottomCenter )
157+ .measured { buttonHeight = it.height },
158+ ) {
153159 CodeButton (
154160 modifier = Modifier .fillMaxWidth(),
155- onClick = {
156- onExportClick()
157- },
161+ onClick = onExportClick,
158162 text = stringResource(R .string.action_saveAccessKey),
159163 buttonState = ButtonState .Filled ,
160164 isLoading = dataState.isLoading,
@@ -191,7 +195,7 @@ fun AccessKey(
191195 .align(Alignment .TopCenter )
192196 .fillMaxHeight()
193197 .padding(LocalTopBarPadding .current)
194- .padding(bottom = buttonHeight + CodeTheme .dimens.grid.x4),
198+ .addIf(buttonHeight.isSpecified) { Modifier . padding(bottom = buttonHeight + CodeTheme .dimens.grid.x4) } ,
195199 horizontalAlignment = Alignment .CenterHorizontally
196200 ) {
197201 Column (
@@ -211,7 +215,6 @@ fun AccessKey(
211215 dataState.accessKeyCroppedBitmap?.let { bitmap ->
212216 Image (
213217 modifier = Modifier
214- .aspectRatio(0.607f , matchHeightConstraintsFirst = true )
215218 .fillMaxWidth()
216219 .weight(1f )
217220 .scale(selectionState.scale.value),
@@ -231,7 +234,7 @@ fun AccessKey(
231234 Text (
232235 modifier = Modifier
233236 .alpha(textAlpha)
234- .padding(vertical = CodeTheme .dimens.grid.x2 ),
237+ .padding(bottom = CodeTheme .dimens.grid.x6 ),
235238 style = CodeTheme .typography.body2.copy(textAlign = TextAlign .Center ),
236239 color = White ,
237240 text = stringResource(R .string.subtitle_accessKeyDescription)
0 commit comments