diff --git a/app/src/main/java/come/stormborntales/notevault/MainActivity.kt b/app/src/main/java/come/stormborntales/notevault/MainActivity.kt index 81d157a..d8b9b17 100644 --- a/app/src/main/java/come/stormborntales/notevault/MainActivity.kt +++ b/app/src/main/java/come/stormborntales/notevault/MainActivity.kt @@ -71,7 +71,7 @@ class MainActivity : ComponentActivity() { NoteVaultTheme { val navController = rememberNavController() val viewModel: NoteViewModel = viewModel(factory = viewModelFactory) - val noteBrowserViewModelFactory: NoteBrowserViewModel = viewModel(factory = noteBrowserViewModelFactory) + val noteBrowserViewModel: NoteBrowserViewModel = viewModel(factory = noteBrowserViewModelFactory) var selectedUris by remember { mutableStateOf>(emptyList()) } var showDialog by remember { mutableStateOf(false) } var noteToEdit by remember { mutableStateOf(null) } @@ -213,7 +213,11 @@ class MainActivity : ComponentActivity() { composable("notes") { NotesScreen(collectionRepository, noteRepository, onImportNotes = { imagePickerLauncher.launch(arrayOf("image/*")) - }, noteBrowserViewModelFactory) + }, noteBrowserViewModel, + onEditNote = { + noteToEdit = it + showDialog = true + }) } } @@ -231,7 +235,7 @@ class MainActivity : ComponentActivity() { genre = genre, description = description, selectedUris = selectedUris, - collectionID = noteBrowserViewModelFactory.currentParentId.value, + collectionID = noteBrowserViewModel.currentParentId.value, onDone = { showDialog = false } ) } else { diff --git a/app/src/main/java/come/stormborntales/notevault/ui/screens/NotesBrowser.kt b/app/src/main/java/come/stormborntales/notevault/ui/screens/NotesBrowser.kt index 3f3a349..36838c9 100644 --- a/app/src/main/java/come/stormborntales/notevault/ui/screens/NotesBrowser.kt +++ b/app/src/main/java/come/stormborntales/notevault/ui/screens/NotesBrowser.kt @@ -270,7 +270,8 @@ fun NoteGrid( notes: List, onCollectionClick: (NoteCollection) -> Unit, onNoteClick: (NoteEntity) -> Unit, - onDeleteNote: (NoteEntity) -> Unit + onDeleteNote: (NoteEntity) -> Unit, + onEditNote: (NoteEntity) ->Unit ) { val columns = 2 // Anzahl Spalten, ggf. responsiv machen LazyVerticalGrid( @@ -309,7 +310,7 @@ fun NoteGrid( } items(notes) { note -> - NoteItem(note, onNoteClick = {}, onEditTitle = {}, onDeleteNote = {onDeleteNote(note)}) + NoteItem(note, onNoteClick = {}, onEditTitle = {onEditNote(note)}, onDeleteNote = {onDeleteNote(note)}) } } } @@ -318,7 +319,8 @@ fun NotesScreen( collectionRepository: CollectionRepository, noteRepository: NoteRepository, onImportNotes: (Int?) -> Unit, - viewModel: NoteBrowserViewModel + viewModel: NoteBrowserViewModel, + onEditNote: (NoteEntity) -> Unit ) { var menuExpanded by remember { mutableStateOf(false) } var showDialog by remember { mutableStateOf(false) } @@ -387,7 +389,8 @@ fun NotesScreen( onNoteClick = { /* TODO: Öffnen oder Bearbeiten */ }, onDeleteNote = { viewModel.removeNote(noteEntity = it) - } + }, + onEditNote = onEditNote ) }