Skip to content

Commit b37bca4

Browse files
committed
Refactoring: BackButton
1 parent ba7097c commit b37bca4

File tree

4 files changed

+14
-26
lines changed

4 files changed

+14
-26
lines changed

app/src/main/java/org/mydomain/myscan/view/AboutScreen.kt

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ import androidx.compose.foundation.layout.padding
2727
import androidx.compose.foundation.rememberScrollState
2828
import androidx.compose.foundation.verticalScroll
2929
import androidx.compose.material.icons.Icons
30-
import androidx.compose.material.icons.automirrored.filled.ArrowBack
3130
import androidx.compose.material.icons.filled.Close
3231
import androidx.compose.material3.ExperimentalMaterial3Api
3332
import androidx.compose.material3.HorizontalDivider
@@ -65,12 +64,7 @@ fun AboutScreen(onBack: () -> Unit, onViewLibraries: () -> Unit) {
6564
topBar = {
6665
TopAppBar(
6766
title = { Text(stringResource(R.string.about)) },
68-
navigationIcon = {
69-
IconButton(onClick = onBack) {
70-
Icon(Icons.AutoMirrored.Filled.ArrowBack,
71-
contentDescription = stringResource(R.string.back))
72-
}
73-
},
67+
navigationIcon = { BackButton(onBack) },
7468
)
7569
}
7670
) { paddingValues ->

app/src/main/java/org/mydomain/myscan/view/Buttons.kt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import androidx.compose.foundation.layout.Spacer
1818
import androidx.compose.foundation.layout.size
1919
import androidx.compose.foundation.layout.width
2020
import androidx.compose.material.icons.Icons
21+
import androidx.compose.material.icons.automirrored.filled.ArrowBack
2122
import androidx.compose.material.icons.outlined.Info
2223
import androidx.compose.material3.Button
2324
import androidx.compose.material3.FilledIconButton
@@ -72,6 +73,16 @@ fun SecondaryActionButton(
7273
}
7374
}
7475

76+
@Composable
77+
fun BackButton(onClick: () -> Unit) {
78+
IconButton(onClick = onClick) {
79+
Icon(
80+
Icons.AutoMirrored.Filled.ArrowBack,
81+
contentDescription = stringResource(R.string.back)
82+
)
83+
}
84+
}
85+
7586
@Composable
7687
fun AboutScreenNavButton(
7788
onClick: () -> Unit,

app/src/main/java/org/mydomain/myscan/view/DocumentScreen.kt

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -31,16 +31,13 @@ import androidx.compose.foundation.layout.padding
3131
import androidx.compose.foundation.layout.width
3232
import androidx.compose.foundation.shape.RoundedCornerShape
3333
import androidx.compose.material.icons.Icons
34-
import androidx.compose.material.icons.automirrored.filled.ArrowBack
3534
import androidx.compose.material.icons.filled.Add
3635
import androidx.compose.material.icons.filled.PictureAsPdf
3736
import androidx.compose.material.icons.filled.RestartAlt
3837
import androidx.compose.material.icons.outlined.Delete
3938
import androidx.compose.material3.AlertDialog
4039
import androidx.compose.material3.BottomAppBar
4140
import androidx.compose.material3.ExperimentalMaterial3Api
42-
import androidx.compose.material3.Icon
43-
import androidx.compose.material3.IconButton
4441
import androidx.compose.material3.MaterialTheme
4542
import androidx.compose.material3.Scaffold
4643
import androidx.compose.material3.Text
@@ -105,12 +102,7 @@ fun DocumentScreen(
105102
titleContentColor = MaterialTheme.colorScheme.onSurface,
106103
),
107104
title = { Text(stringResource(R.string.document)) },
108-
navigationIcon = {
109-
IconButton(onClick = navigation.toCameraScreen) {
110-
Icon(Icons.AutoMirrored.Filled.ArrowBack,
111-
contentDescription = stringResource(R.string.back))
112-
}
113-
},
105+
navigationIcon = { BackButton(navigation.back) },
114106
actions = {
115107
AboutScreenNavButton(onClick = navigation.toAboutScreen)
116108
}

app/src/main/java/org/mydomain/myscan/view/LibrariesScreen.kt

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,7 @@ package org.mydomain.myscan.view
1616

1717
import androidx.compose.foundation.layout.fillMaxSize
1818
import androidx.compose.foundation.layout.padding
19-
import androidx.compose.material.icons.Icons
20-
import androidx.compose.material.icons.automirrored.filled.ArrowBack
2119
import androidx.compose.material3.ExperimentalMaterial3Api
22-
import androidx.compose.material3.Icon
23-
import androidx.compose.material3.IconButton
2420
import androidx.compose.material3.MaterialTheme
2521
import androidx.compose.material3.Scaffold
2622
import androidx.compose.material3.Surface
@@ -42,12 +38,7 @@ fun LibrariesScreen(onBack: () -> Unit) {
4238
topBar = {
4339
TopAppBar(
4440
title = { Text(stringResource(R.string.libraries_open_source)) },
45-
navigationIcon = {
46-
IconButton(onClick = onBack) {
47-
Icon(Icons.AutoMirrored.Default.ArrowBack,
48-
contentDescription = stringResource(R.string.back))
49-
}
50-
}
41+
navigationIcon = { BackButton(onClick = onBack) }
5142
)
5243
}
5344
) { padding ->

0 commit comments

Comments
 (0)