From 7a22437bd5d50b46ebfde9400a70f60e562ef27a Mon Sep 17 00:00:00 2001 From: sathwikcs <85106054+sathwikcs@users.noreply.github.com> Date: Thu, 16 Jan 2025 14:53:31 +0530 Subject: [PATCH] AppUpdater --- .../ui/componets/AttendanceScreenContent.kt | 95 ++++++++++--------- 1 file changed, 50 insertions(+), 45 deletions(-) diff --git a/app/src/main/java/in/sminnovations/attendanceapp/screens/home/ui/componets/AttendanceScreenContent.kt b/app/src/main/java/in/sminnovations/attendanceapp/screens/home/ui/componets/AttendanceScreenContent.kt index 7144ec5..b6ef330 100644 --- a/app/src/main/java/in/sminnovations/attendanceapp/screens/home/ui/componets/AttendanceScreenContent.kt +++ b/app/src/main/java/in/sminnovations/attendanceapp/screens/home/ui/componets/AttendanceScreenContent.kt @@ -12,6 +12,7 @@ import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size +import androidx.compose.foundation.magnifier import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.ArrowBack import androidx.compose.material.icons.filled.Close @@ -34,8 +35,8 @@ import androidx.compose.ui.unit.sp import com.google.accompanist.permissions.ExperimentalPermissionsApi import com.google.accompanist.permissions.PermissionState import com.google.accompanist.permissions.isGranted - import `in`.sminnovations.attendanceapp.screens.home.viewModel.AttendanceUiState +import `in`.sminnovations.attendanceapp.screens.settings.ui.components.TopComponents @OptIn(ExperimentalPermissionsApi::class) @Composable @@ -46,41 +47,54 @@ internal fun AttendanceScreenContent( onQrCodeScanned: (String) -> Unit, modifier: Modifier = Modifier ) { + Box(modifier = modifier.fillMaxSize()) { - when { - !cameraPermissionState.status.isGranted -> { - RequestPermissionsContent(cameraPermissionState) - } - uiState.isScanning -> { - ScannerContent( - onQrCodeScanned = onQrCodeScanned, - onClose = onScannerToggle - ) - } - uiState.errorMessage != null -> { - ErrorContent( - errorMessage = uiState.errorMessage, - userName = uiState.userName, - checkedOutTime = uiState.checkedOutTime - ) - } - uiState.isCheckedIn -> { - AttendanceStatusCard( - title = "Checked In as", - userName = uiState.userName - ) - } - uiState.isCheckedOut -> { - AttendanceStatusCard( - title = "Checked Out as", - userName = uiState.userName - ) + + + Column { + when { + !cameraPermissionState.status.isGranted -> { + RequestPermissionsContent(cameraPermissionState) + } + + uiState.isScanning -> { + ScannerContent( + onQrCodeScanned = onQrCodeScanned, onClose = onScannerToggle + ) + } + + uiState.errorMessage != null -> { + ErrorContent( + errorMessage = uiState.errorMessage, + userName = uiState.userName, + checkedOutTime = uiState.checkedOutTime + ) + } + + uiState.isCheckedIn -> { + AttendanceStatusCard( + title = "Checked In as", userName = uiState.userName + ) + } + + uiState.isCheckedOut -> { + AttendanceStatusCard( + title = "Checked Out as", userName = uiState.userName + ) + } } } if (uiState.isLoading) { LoadingOverlay() } + if (!uiState.isScanning && uiState.errorMessage == null && !uiState.isCheckedIn && !uiState.isCheckedOut && cameraPermissionState.status.isGranted){ + Box(modifier =Modifier.align(Alignment.Center) ){ + TopComponents()} + } + if (!uiState.isScanning && uiState.errorMessage == null && !uiState.isCheckedIn && !uiState.isCheckedOut && !cameraPermissionState.status.isGranted){ + TopComponents() + } ScannerToggleButton( isScanning = uiState.isScanning, @@ -93,16 +107,12 @@ internal fun AttendanceScreenContent( @OptIn(ExperimentalMaterial3Api::class) @Composable private fun ScannerToggleButton( - isScanning: Boolean, - onClick: () -> Unit, - modifier: Modifier = Modifier + isScanning: Boolean, onClick: () -> Unit, modifier: Modifier = Modifier ) { OutlinedCard( - onClick = onClick, - colors = CardDefaults.cardColors( + onClick = onClick, colors = CardDefaults.cardColors( containerColor = MaterialTheme.colorScheme.primary - ), - modifier = modifier + ), modifier = modifier .fillMaxWidth() .padding(16.dp) ) { @@ -137,18 +147,15 @@ private fun LoadingOverlay() { contentAlignment = Alignment.Center ) { CircularProgressIndicator( - color = MaterialTheme.colorScheme.primary, - modifier = Modifier.size(48.dp) + color = MaterialTheme.colorScheme.primary, modifier = Modifier.size(48.dp) ) } } - @Composable private fun AttendanceStatusCard( - title: String, - userName: String? + title: String, userName: String? ) { Column(horizontalAlignment = Alignment.CenterHorizontally) { OutlinedCard { @@ -176,14 +183,12 @@ private fun AttendanceStatusCard( @Composable private fun ScannerContent( - onQrCodeScanned: (String) -> Unit, - onClose: () -> Unit + onQrCodeScanned: (String) -> Unit, onClose: () -> Unit ) { Box(modifier = Modifier.fillMaxSize()) { QRCodeScannerScreen(onQrCodeScanned) IconButton( - onClick = onClose, - modifier = Modifier + onClick = onClose, modifier = Modifier .align(Alignment.TopStart) .padding(16.dp) ) {