Add cancel button to backup and restore sheets

This commit is contained in:
MM20
2022-06-10 20:27:02 +02:00
parent 716a6e7af7
commit 02d45a63fc
2 changed files with 19 additions and 6 deletions
@@ -14,11 +14,8 @@ import androidx.compose.runtime.livedata.observeAsState
import androidx.compose.ui.Alignment import androidx.compose.ui.Alignment
import androidx.compose.ui.ExperimentalComposeUiApi import androidx.compose.ui.ExperimentalComposeUiApi
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.stringResource import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import androidx.lifecycle.viewmodel.compose.viewModel import androidx.lifecycle.viewmodel.compose.viewModel
import de.mm20.launcher2.backup.BackupCompatibility import de.mm20.launcher2.backup.BackupCompatibility
@@ -59,14 +56,23 @@ fun RestoreBackupSheet(
onClick = { viewModel.restore() }) { onClick = { viewModel.restore() }) {
Text(stringResource(R.string.preference_restore)) Text(stringResource(R.string.preference_restore))
} }
} else if (state == RestoreBackupState.InvalidFile || state == RestoreBackupState.Restored) { } else if (state == RestoreBackupState.InvalidFile || state == RestoreBackupState.Restored || state == RestoreBackupState.Ready) {
OutlinedButton( OutlinedButton(
onClick = onDismissRequest onClick = onDismissRequest
) { ) {
Text(stringResource(R.string.close)) Text(stringResource(R.string.close))
} }
} }
} },
dismissButton = if (state == RestoreBackupState.Ready && compatibility != BackupCompatibility.Incompatible) {
{
OutlinedButton(
onClick = onDismissRequest
) {
Text(stringResource(android.R.string.cancel))
}
}
} else null
) { ) {
when (state) { when (state) {
RestoreBackupState.Parsing -> { RestoreBackupState.Parsing -> {
@@ -74,7 +74,14 @@ fun CreateBackupSheet(
Text(stringResource(R.string.close)) Text(stringResource(R.string.close))
} }
} }
} },
dismissButton = if (state == CreateBackupState.Ready) {{
OutlinedButton(
onClick = onDismissRequest
) {
Text(stringResource(android.R.string.cancel))
}
}} else null
) { ) {
when (state) { when (state) {
CreateBackupState.Ready -> { CreateBackupState.Ready -> {