Factorize nav button to AboutScreen

This commit is contained in:
Pierre-Yves Nicolas
2025-07-06 19:45:01 +02:00
parent ec35bea989
commit 898bbaec77
3 changed files with 22 additions and 18 deletions

View File

@@ -17,9 +17,12 @@ package org.mydomain.myscan.view
import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.size import androidx.compose.foundation.layout.size
import androidx.compose.foundation.layout.width import androidx.compose.foundation.layout.width
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.outlined.Info
import androidx.compose.material3.Button import androidx.compose.material3.Button
import androidx.compose.material3.FilledIconButton import androidx.compose.material3.FilledIconButton
import androidx.compose.material3.Icon import androidx.compose.material3.Icon
import androidx.compose.material3.IconButton
import androidx.compose.material3.IconButtonDefaults import androidx.compose.material3.IconButtonDefaults
import androidx.compose.material3.MaterialTheme import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Text import androidx.compose.material3.Text
@@ -66,3 +69,19 @@ fun SecondaryActionButton(
) )
} }
} }
@Composable
fun AboutScreenNavButton(
onClick: () -> Unit,
modifier: Modifier = Modifier
) {
IconButton(
onClick = onClick,
modifier = modifier
) {
Icon(
imageVector = Icons.Outlined.Info,
contentDescription = "About",
tint = MaterialTheme.colorScheme.onSurface.copy(alpha = 0.6f))
}
}

View File

@@ -45,10 +45,7 @@ import androidx.compose.foundation.shape.CircleShape
import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material.icons.Icons import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.Done import androidx.compose.material.icons.filled.Done
import androidx.compose.material.icons.outlined.Info
import androidx.compose.material3.BottomAppBar import androidx.compose.material3.BottomAppBar
import androidx.compose.material3.Icon
import androidx.compose.material3.IconButton
import androidx.compose.material3.MaterialTheme import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Scaffold import androidx.compose.material3.Scaffold
import androidx.compose.material3.Surface import androidx.compose.material3.Surface
@@ -207,15 +204,10 @@ private fun CameraScreenScaffold(
Box( Box(
modifier = Modifier.fillMaxSize().padding(innerPadding) modifier = Modifier.fillMaxSize().padding(innerPadding)
) { ) {
IconButton( AboutScreenNavButton(
onClick = toAboutScreen, onClick = toAboutScreen,
modifier = Modifier.align(Alignment.TopEnd) modifier = Modifier.align(Alignment.TopEnd)
) { )
Icon(
imageVector = Icons.Outlined.Info,
contentDescription = "About",
tint = MaterialTheme.colorScheme.onSurface.copy(alpha = 0.6f))
}
} }
CameraPreviewWithOverlay(cameraPreview, cameraUiState, Modifier.align(Alignment.BottomCenter)) CameraPreviewWithOverlay(cameraPreview, cameraUiState, Modifier.align(Alignment.BottomCenter))
if (cameraUiState.isDebugMode) { if (cameraUiState.isDebugMode) {

View File

@@ -19,7 +19,6 @@ import android.graphics.BitmapFactory
import androidx.activity.compose.BackHandler import androidx.activity.compose.BackHandler
import androidx.compose.foundation.Image import androidx.compose.foundation.Image
import androidx.compose.foundation.background import androidx.compose.foundation.background
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Column
@@ -37,7 +36,6 @@ import androidx.compose.material.icons.filled.Add
import androidx.compose.material.icons.filled.PictureAsPdf import androidx.compose.material.icons.filled.PictureAsPdf
import androidx.compose.material.icons.filled.RestartAlt import androidx.compose.material.icons.filled.RestartAlt
import androidx.compose.material.icons.outlined.Delete import androidx.compose.material.icons.outlined.Delete
import androidx.compose.material.icons.outlined.Info
import androidx.compose.material3.AlertDialog import androidx.compose.material3.AlertDialog
import androidx.compose.material3.BottomAppBar import androidx.compose.material3.BottomAppBar
import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.ExperimentalMaterial3Api
@@ -111,12 +109,7 @@ fun DocumentScreen(
} }
}, },
actions = { actions = {
IconButton(onClick = navigation.toAboutScreen) { AboutScreenNavButton(onClick = navigation.toAboutScreen)
Icon(
imageVector = Icons.Outlined.Info,
contentDescription = "About",
tint = MaterialTheme.colorScheme.onSurface.copy(alpha = 0.6f))
}
} }
) )
}, },