diff --git a/app/src/main/java/no/naiv/implausibly/ui/sites/SiteListScreen.kt b/app/src/main/java/no/naiv/implausibly/ui/sites/SiteListScreen.kt index d868bef..76a2e99 100644 --- a/app/src/main/java/no/naiv/implausibly/ui/sites/SiteListScreen.kt +++ b/app/src/main/java/no/naiv/implausibly/ui/sites/SiteListScreen.kt @@ -17,6 +17,7 @@ import androidx.compose.material.icons.automirrored.filled.ArrowBack import androidx.compose.material.icons.filled.Add import androidx.compose.material.icons.filled.Check import androidx.compose.material.icons.filled.Close +import androidx.compose.material.icons.filled.ContentCopy import androidx.compose.material.icons.filled.Delete import androidx.compose.material.icons.filled.Edit import androidx.compose.material.icons.filled.Language @@ -158,6 +159,12 @@ fun SiteListScreen( style = MaterialTheme.typography.titleMedium, modifier = Modifier.weight(1f) ) + IconButton(onClick = { viewModel.cloneSite(site.id) }) { + Icon( + Icons.Default.ContentCopy, + contentDescription = "Clone site" + ) + } IconButton(onClick = { viewModel.startEditing(site.id) }) { Icon( Icons.Default.Edit, diff --git a/app/src/main/java/no/naiv/implausibly/ui/sites/SiteListViewModel.kt b/app/src/main/java/no/naiv/implausibly/ui/sites/SiteListViewModel.kt index a1aeeb7..d6404d9 100644 --- a/app/src/main/java/no/naiv/implausibly/ui/sites/SiteListViewModel.kt +++ b/app/src/main/java/no/naiv/implausibly/ui/sites/SiteListViewModel.kt @@ -113,4 +113,8 @@ class SiteListViewModel @Inject constructor( fun cancelEdit() { _uiState.update { it.copy(editingSiteId = null, editSiteValue = "") } } + + fun cloneSite(siteId: String) { + _uiState.update { it.copy(newSiteId = siteId) } + } }