diff --git a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/components/LabelCreationDialog.kt b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/components/LabelCreationDialog.kt new file mode 100644 index 000000000..242b31445 --- /dev/null +++ b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/components/LabelCreationDialog.kt @@ -0,0 +1,20 @@ +package app.omnivore.omnivore.ui.components + +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.material3.Surface +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import androidx.compose.ui.window.Dialog + +@Composable +fun LabelCreationDialog(onDismiss: () -> Unit, onSave: () -> Unit) { + Dialog(onDismissRequest = { onDismiss() }) { + Surface( + modifier = Modifier + .fillMaxSize() + ) { + Text("Add Label Dialog") + } + } +} diff --git a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/components/LabelsSelectionSheet.kt b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/components/LabelsSelectionSheet.kt index d55833ada..59709b8d1 100644 --- a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/components/LabelsSelectionSheet.kt +++ b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/components/LabelsSelectionSheet.kt @@ -13,18 +13,18 @@ import androidx.compose.material.icons.filled.AddCircle import androidx.compose.material.icons.filled.Check import androidx.compose.material.icons.filled.CheckCircle import androidx.compose.material3.* -import androidx.compose.runtime.Composable -import androidx.compose.runtime.getValue +import androidx.compose.runtime.* import androidx.compose.runtime.livedata.observeAsState -import androidx.compose.runtime.mutableStateOf -import androidx.compose.runtime.remember import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.unit.dp import androidx.compose.ui.window.Dialog import app.omnivore.omnivore.persistence.entities.SavedItemLabel import app.omnivore.omnivore.ui.library.LibraryViewModel +import app.omnivore.omnivore.ui.reader.WebPreferencesView +import app.omnivore.omnivore.ui.reader.WebReaderViewModel @Composable fun LabelsSelectionSheet(viewModel: LibraryViewModel) { @@ -82,6 +82,8 @@ fun LabelsSelectionSheetContent( ) { val listState = rememberLazyListState() val selectedLabels = remember { mutableStateOf(initialSelectedLabels) } + var showCreateLabelDialog by remember { mutableStateOf(false ) } + val titleText = if (isLibraryMode) "Filter by Label" else "Set Labels" Surface( @@ -90,6 +92,14 @@ fun LabelsSelectionSheetContent( .background(MaterialTheme.colorScheme.background), shape = RoundedCornerShape(16.dp) ) { + + if (showCreateLabelDialog) { + LabelCreationDialog( + onDismiss = { showCreateLabelDialog = false }, + onSave = { showCreateLabelDialog = false } + ) + } + Column( verticalArrangement = Arrangement.Top, horizontalAlignment = Alignment.CenterHorizontally, @@ -169,6 +179,7 @@ fun LabelsSelectionSheetContent( .fillMaxWidth() .clickable { Log.d("label", "add new label button tapped") + showCreateLabelDialog = true } .padding(horizontal = 6.dp) .padding(vertical = 12.dp) diff --git a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/reader/WebPreferencesDialog.kt b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/reader/WebPreferencesDialog.kt index f7ab439c5..1b6600a33 100644 --- a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/reader/WebPreferencesDialog.kt +++ b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/reader/WebPreferencesDialog.kt @@ -1,10 +1,8 @@ package app.omnivore.omnivore.ui.reader -import android.util.Log import androidx.compose.foundation.clickable import androidx.compose.foundation.isSystemInDarkTheme import androidx.compose.foundation.layout.* -import androidx.compose.foundation.lazy.LazyColumn import androidx.compose.foundation.rememberScrollState import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.foundation.verticalScroll @@ -14,8 +12,10 @@ import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.Check import androidx.compose.material.icons.filled.KeyboardArrowDown import androidx.compose.material.icons.filled.KeyboardArrowRight -import androidx.compose.material.icons.filled.KeyboardArrowUp -import androidx.compose.material3.* +import androidx.compose.material3.Divider +import androidx.compose.material3.Icon +import androidx.compose.material3.IconButton +import androidx.compose.material3.Surface import androidx.compose.runtime.Composable import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember