From 9600ef84aeab02dc22937900f45f5e1a98585364 Mon Sep 17 00:00:00 2001 From: jonasgaudian <43753916+jonasgaudian@users.noreply.github.com> Date: Wed, 18 Feb 2026 01:10:25 +0100 Subject: [PATCH] update `DictionaryResultScreen` and `EtymologyResultScreen` top bars, refactor `CategoryDetailScreen` to use `AppCard`, and rename chart legend components --- .../view/dictionary/DictionaryResultScreen.kt | 10 ++++++---- .../view/dictionary/EtymologyResultScreen.kt | 2 +- .../view/vocabulary/CategoryDetailScreen.kt | 20 ++++++++----------- .../view/vocabulary/widgets/CategoryWidget.kt | 2 +- .../widgets/WeeklyActivityChartWidget.kt | 4 ++-- 5 files changed, 18 insertions(+), 20 deletions(-) diff --git a/app/src/main/java/eu/gaudian/translator/view/dictionary/DictionaryResultScreen.kt b/app/src/main/java/eu/gaudian/translator/view/dictionary/DictionaryResultScreen.kt index 8c23f8a..b1668e0 100644 --- a/app/src/main/java/eu/gaudian/translator/view/dictionary/DictionaryResultScreen.kt +++ b/app/src/main/java/eu/gaudian/translator/view/dictionary/DictionaryResultScreen.kt @@ -342,10 +342,12 @@ fun DictionarySimpleTopBar( languageName: String?, onNavigateBack: () -> Unit ) { - AppTopAppBar( - title = "TODO", - onNavigateBack = onNavigateBack - ) + word?.let { + AppTopAppBar( + title = it, + onNavigateBack = onNavigateBack + ) + } } @Composable diff --git a/app/src/main/java/eu/gaudian/translator/view/dictionary/EtymologyResultScreen.kt b/app/src/main/java/eu/gaudian/translator/view/dictionary/EtymologyResultScreen.kt index 9fe528f..ee3d537 100644 --- a/app/src/main/java/eu/gaudian/translator/view/dictionary/EtymologyResultScreen.kt +++ b/app/src/main/java/eu/gaudian/translator/view/dictionary/EtymologyResultScreen.kt @@ -93,7 +93,7 @@ fun EtymologyResultScreen( AppScaffold( topBar = { AppTopAppBar( - title = "TODO", + title = "Result", onNavigateBack = { navController.popBackStack() }, actions = { etymologyData?.let { data -> diff --git a/app/src/main/java/eu/gaudian/translator/view/vocabulary/CategoryDetailScreen.kt b/app/src/main/java/eu/gaudian/translator/view/vocabulary/CategoryDetailScreen.kt index f069efb..1113072 100644 --- a/app/src/main/java/eu/gaudian/translator/view/vocabulary/CategoryDetailScreen.kt +++ b/app/src/main/java/eu/gaudian/translator/view/vocabulary/CategoryDetailScreen.kt @@ -3,7 +3,6 @@ package eu.gaudian.translator.view.vocabulary import android.annotation.SuppressLint -import androidx.compose.foundation.BorderStroke import androidx.compose.foundation.background import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column @@ -14,9 +13,6 @@ import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.width import androidx.compose.foundation.lazy.rememberLazyListState -import androidx.compose.foundation.shape.RoundedCornerShape -import androidx.compose.material3.Card -import androidx.compose.material3.CardDefaults import androidx.compose.material3.CircularProgressIndicator import androidx.compose.material3.DropdownMenu import androidx.compose.material3.DropdownMenuItem @@ -50,6 +46,7 @@ import eu.gaudian.translator.model.TagCategory import eu.gaudian.translator.model.VocabularyFilter import eu.gaudian.translator.model.VocabularyItem import eu.gaudian.translator.utils.findActivity +import eu.gaudian.translator.view.composable.AppCard import eu.gaudian.translator.view.composable.AppIcons import eu.gaudian.translator.view.composable.AppScaffold import eu.gaudian.translator.view.composable.AppTopAppBar @@ -58,6 +55,7 @@ import eu.gaudian.translator.view.dialogs.DeleteCategoryDialog import eu.gaudian.translator.view.dialogs.DeleteItemsDialog import eu.gaudian.translator.view.dialogs.EditCategoryDialog import eu.gaudian.translator.view.vocabulary.widgets.CategoryProgressCircle +import eu.gaudian.translator.view.vocabulary.widgets.ChartLegend import eu.gaudian.translator.viewmodel.CategoryProgress import eu.gaudian.translator.viewmodel.CategoryViewModel import eu.gaudian.translator.viewmodel.ExportImportViewModel @@ -313,16 +311,10 @@ fun CategoryHeaderCard( onDeleteClick: () -> Unit, modifier: Modifier = Modifier ) { - Card( + AppCard( modifier = modifier .fillMaxWidth() .padding(horizontal = 16.dp, vertical = 16.dp), - shape = RoundedCornerShape(20.dp), - colors = CardDefaults.cardColors( - containerColor = MaterialTheme.colorScheme.primaryContainer.copy(alpha = 0.2f) - ), - border = BorderStroke(1.dp, MaterialTheme.colorScheme.primaryContainer.copy(alpha = 0.4f)), - elevation = CardDefaults.cardElevation(defaultElevation = 4.dp) ) { Column( modifier = Modifier @@ -343,6 +335,8 @@ fun CategoryHeaderCard( // Progress Circle - smaller size if (categoryProgress != null) { + + CategoryProgressCircle( totalItems = categoryProgress.totalItems, itemsCompleted = categoryProgress.itemsCompleted, @@ -350,7 +344,9 @@ fun CategoryHeaderCard( newItems = categoryProgress.newItems, circleSize = 100.dp, ) - Spacer(modifier = Modifier.height(20.dp)) + Spacer(modifier = Modifier.height(4.dp)) + ChartLegend() + Spacer(modifier = Modifier.height(16.dp)) } // Action Buttons diff --git a/app/src/main/java/eu/gaudian/translator/view/vocabulary/widgets/CategoryWidget.kt b/app/src/main/java/eu/gaudian/translator/view/vocabulary/widgets/CategoryWidget.kt index 8c54fb3..791401b 100644 --- a/app/src/main/java/eu/gaudian/translator/view/vocabulary/widgets/CategoryWidget.kt +++ b/app/src/main/java/eu/gaudian/translator/view/vocabulary/widgets/CategoryWidget.kt @@ -290,7 +290,7 @@ fun CategoryProgressCircle( } } @Composable -private fun ChartLegend() { +fun ChartLegend() { Row( modifier = Modifier .fillMaxWidth() diff --git a/app/src/main/java/eu/gaudian/translator/view/vocabulary/widgets/WeeklyActivityChartWidget.kt b/app/src/main/java/eu/gaudian/translator/view/vocabulary/widgets/WeeklyActivityChartWidget.kt index b908ba3..a0294ac 100644 --- a/app/src/main/java/eu/gaudian/translator/view/vocabulary/widgets/WeeklyActivityChartWidget.kt +++ b/app/src/main/java/eu/gaudian/translator/view/vocabulary/widgets/WeeklyActivityChartWidget.kt @@ -79,7 +79,7 @@ fun WeeklyActivityChartWidget( .fillMaxWidth() .padding(8.dp) ) { - ChartLegend() + WeeklyChartLegend() Spacer(modifier = Modifier.height(16.dp)) Row( @@ -164,7 +164,7 @@ private fun RowScope.Bar(value: Int, maxValue: Int, color: Color) { } @Composable -private fun ChartLegend() { +private fun WeeklyChartLegend() { Row( modifier = Modifier .fillMaxWidth()