diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index ae9f380e..51f8212c 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -35,7 +35,7 @@ diff --git a/app/src/main/java/ua/acclorite/book_story/presentation/screens/history/data/HistoryViewModel.kt b/app/src/main/java/ua/acclorite/book_story/presentation/screens/history/data/HistoryViewModel.kt index 7ec882fa..87c0ac75 100644 --- a/app/src/main/java/ua/acclorite/book_story/presentation/screens/history/data/HistoryViewModel.kt +++ b/app/src/main/java/ua/acclorite/book_story/presentation/screens/history/data/HistoryViewModel.kt @@ -329,8 +329,8 @@ class HistoryViewModel @Inject constructor( return } - val history = historyWithoutBooks.map { - val book = books.find { book -> book.id == it.bookId }!! + val history = historyWithoutBooks.mapNotNull { + val book = books.find { book -> book.id == it.bookId } ?: return@mapNotNull null it.copy( book = book ) @@ -340,8 +340,8 @@ class HistoryViewModel @Inject constructor( history .filter { - val book = books.find { book -> book.id == it.bookId }!! - book.title.lowercase().trim().contains(query.lowercase().trim()) + val book = books.find { book -> book.id == it.bookId } + book?.title?.lowercase()?.trim()?.contains(query.lowercase().trim()) == true }.groupBy { item -> val calendar = Calendar.getInstance().apply { timeInMillis = item.time diff --git a/app/src/main/java/ua/acclorite/book_story/presentation/screens/library/components/LibraryBookItem.kt b/app/src/main/java/ua/acclorite/book_story/presentation/screens/library/components/LibraryBookItem.kt index 07932412..a7dca315 100644 --- a/app/src/main/java/ua/acclorite/book_story/presentation/screens/library/components/LibraryBookItem.kt +++ b/app/src/main/java/ua/acclorite/book_story/presentation/screens/library/components/LibraryBookItem.kt @@ -21,7 +21,6 @@ import androidx.compose.material3.IconButtonDefaults import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text import androidx.compose.runtime.Composable -import androidx.compose.runtime.remember import androidx.compose.runtime.saveable.rememberSaveable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier @@ -55,18 +54,10 @@ fun LibraryBookItem( onLongClick: () -> Unit, onButtonClick: () -> Unit ) { - val primaryColor = MaterialTheme.colorScheme.primary - val onPrimaryColor = MaterialTheme.colorScheme.onPrimary - val onSurfaceColor = MaterialTheme.colorScheme.onSurface - - val backgroundColor = remember(book.second) { - if (book.second) primaryColor - else Color.Transparent - } - val fontColor = remember(book.second) { - if (book.second) onPrimaryColor - else onSurfaceColor - } + val backgroundColor = if (book.second) MaterialTheme.colorScheme.primary + else Color.Transparent + val fontColor = if (book.second) MaterialTheme.colorScheme.onPrimary + else MaterialTheme.colorScheme.onSurface val progress = rememberSaveable(book.first.progress) { "${book.first.progress.calculateProgress(1)}%"