diff --git a/android/build.gradle.kts b/android/build.gradle.kts index 421a6ea..e8b7681 100644 --- a/android/build.gradle.kts +++ b/android/build.gradle.kts @@ -19,9 +19,11 @@ dependencies { implementation("com.google.accompanist:accompanist-systemuicontroller:0.25.1") implementation("androidx.lifecycle:lifecycle-viewmodel-compose:2.5.1") implementation("androidx.preference:preference:1.2.0") + implementation("androidx.compose.ui:ui-tooling-preview:1.2.1") androidTestImplementation("androidx.compose.ui:ui-test-junit4:1.2.1") debugImplementation("androidx.compose.ui:ui-test-manifest:1.2.1") + debugImplementation("androidx.compose.ui:ui-tooling:1.2.1") } android { diff --git a/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/PreferenceUtil.kt b/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/PreferenceUtil.kt index 0d7e763..03991ab 100644 --- a/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/PreferenceUtil.kt +++ b/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/PreferenceUtil.kt @@ -47,6 +47,6 @@ class PreferenceUtil { companion object { const val KEY_BOOKMARKS = "KEY_BOOKMARKS" const val KEY_DATABASE_VERSION = "DATABASE_VERSION" - const val CURRENT_DATABASE_VERSION = 1 + const val CURRENT_DATABASE_VERSION = 2 } } \ No newline at end of file diff --git a/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/bars/BottomBar.kt b/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/bars/BottomBar.kt index 8014e4d..c24adb2 100644 --- a/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/bars/BottomBar.kt +++ b/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/bars/BottomBar.kt @@ -1,7 +1,11 @@ package com.inspiredandroid.linuxcommandbibliotheca.ui.bars import androidx.compose.foundation.layout.size -import androidx.compose.material.* +import androidx.compose.material.BottomNavigation +import androidx.compose.material.BottomNavigationItem +import androidx.compose.material.Icon +import androidx.compose.material.MaterialTheme +import androidx.compose.material.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember diff --git a/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/bars/TopBar.kt b/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/bars/TopBar.kt index b6392c5..40f421b 100644 --- a/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/bars/TopBar.kt +++ b/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/bars/TopBar.kt @@ -2,13 +2,26 @@ package com.inspiredandroid.linuxcommandbibliotheca.ui.bars import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.padding -import androidx.compose.material.* +import androidx.compose.material.Icon +import androidx.compose.material.IconButton +import androidx.compose.material.LocalContentAlpha +import androidx.compose.material.LocalContentColor +import androidx.compose.material.MaterialTheme +import androidx.compose.material.OutlinedTextField +import androidx.compose.material.Text +import androidx.compose.material.TextFieldDefaults +import androidx.compose.material.TopAppBar import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.ArrowBack import androidx.compose.material.icons.filled.Close import androidx.compose.material.icons.filled.Info import androidx.compose.material.icons.filled.Search -import androidx.compose.runtime.* +import androidx.compose.runtime.Composable +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.MutableState +import androidx.compose.runtime.State +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember import androidx.compose.ui.Modifier import androidx.compose.ui.focus.FocusRequester import androidx.compose.ui.focus.focusRequester diff --git a/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/AppInfoDialog.kt b/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/AppInfoDialog.kt index f660b88..dd9cf79 100644 --- a/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/AppInfoDialog.kt +++ b/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/AppInfoDialog.kt @@ -12,13 +12,17 @@ import androidx.compose.material.MaterialTheme import androidx.compose.material.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.MutableState +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.platform.LocalUriHandler import androidx.compose.ui.res.stringResource +import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import androidx.compose.ui.window.Dialog import com.inspiredandroid.linuxcommandbibliotheca.R +import com.inspiredandroid.linuxcommandbibliotheca.ui.theme.LinuxTheme /* Copyright 2022 Simon Schubert * @@ -86,3 +90,14 @@ fun AppInfoDialog(showDialog: MutableState) { } } } + +@Preview +@Composable +fun AppInfoDialogPreview() { + val showDialog = remember { + mutableStateOf(true) + } + LinuxTheme { + AppInfoDialog(showDialog) + } +} \ No newline at end of file diff --git a/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/InitializeDatabaseScreen.kt b/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/InitializeDatabaseScreen.kt index 31dc8f5..9719b03 100644 --- a/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/InitializeDatabaseScreen.kt +++ b/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/InitializeDatabaseScreen.kt @@ -1,10 +1,18 @@ package com.inspiredandroid.linuxcommandbibliotheca.ui.screens import androidx.compose.foundation.Image -import androidx.compose.foundation.layout.* +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size import androidx.compose.material.LinearProgressIndicator import androidx.compose.material.Text -import androidx.compose.runtime.* +import androidx.compose.runtime.Composable +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.platform.LocalContext diff --git a/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/basicgroups/BasicGroupsScreen.kt b/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/basicgroups/BasicGroupsScreen.kt index 9df28dd..d938723 100644 --- a/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/basicgroups/BasicGroupsScreen.kt +++ b/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/basicgroups/BasicGroupsScreen.kt @@ -10,7 +10,11 @@ import androidx.compose.material.ExperimentalMaterialApi import androidx.compose.material.Icon import androidx.compose.material.ListItem import androidx.compose.material.Text -import androidx.compose.runtime.* +import androidx.compose.runtime.Composable +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue import androidx.compose.ui.Modifier import androidx.compose.ui.res.painterResource import androidx.compose.ui.unit.dp diff --git a/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/commanddetail/CommandDetailScreen.kt b/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/commanddetail/CommandDetailScreen.kt index 452da90..9515211 100644 --- a/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/commanddetail/CommandDetailScreen.kt +++ b/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/commanddetail/CommandDetailScreen.kt @@ -11,7 +11,11 @@ import androidx.compose.material.ExperimentalMaterialApi import androidx.compose.material.ListItem import androidx.compose.material.MaterialTheme import androidx.compose.material.Text -import androidx.compose.runtime.* +import androidx.compose.runtime.Composable +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.toArgb import androidx.compose.ui.text.font.FontWeight diff --git a/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/commandlist/CommandListScreen.kt b/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/commandlist/CommandListScreen.kt index 9f295ad..8c8730c 100644 --- a/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/commandlist/CommandListScreen.kt +++ b/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/commandlist/CommandListScreen.kt @@ -7,7 +7,11 @@ import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.lazy.LazyColumn import androidx.compose.foundation.lazy.items -import androidx.compose.material.* +import androidx.compose.material.ExperimentalMaterialApi +import androidx.compose.material.Icon +import androidx.compose.material.ListItem +import androidx.compose.material.MaterialTheme +import androidx.compose.material.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.remember import androidx.compose.ui.Alignment @@ -18,7 +22,9 @@ import androidx.compose.ui.text.SpanStyle import androidx.compose.ui.text.buildAnnotatedString import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.text.withStyle +import androidx.compose.ui.tooling.preview.Preview import com.inspiredandroid.linuxcommandbibliotheca.R +import com.inspiredandroid.linuxcommandbibliotheca.ui.theme.LinuxTheme import com.linuxcommandlibrary.shared.search import databases.Command @@ -127,4 +133,16 @@ fun HighlightedText(text: String, pattern: String) { softWrap = false, overflow = TextOverflow.Ellipsis ) +} + +@Preview +@Composable +fun CommandListScreenPreview() { + val commands = listOf( + Command(0L, 0L, "cowsay", "speaking cow"), + Command(1L, 0L, "cowthink", "thinking cow") + ) + LinuxTheme { + CommandListScreen(commands, "cow", listOf(0L)) {} + } } \ No newline at end of file diff --git a/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/tips/TipsScreen.kt b/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/tips/TipsScreen.kt index 9de80c7..a80a686 100644 --- a/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/tips/TipsScreen.kt +++ b/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/screens/tips/TipsScreen.kt @@ -2,7 +2,11 @@ package com.inspiredandroid.linuxcommandbibliotheca.ui.screens.tips -import androidx.compose.foundation.layout.* +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.width import androidx.compose.foundation.rememberScrollState import androidx.compose.foundation.verticalScroll import androidx.compose.material.Card diff --git a/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/shared/CommandView.kt b/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/shared/CommandView.kt index 29ef704..c018232 100644 --- a/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/shared/CommandView.kt +++ b/android/src/main/java/com/inspiredandroid/linuxcommandbibliotheca/ui/shared/CommandView.kt @@ -21,7 +21,11 @@ import androidx.compose.ui.text.buildAnnotatedString import androidx.compose.ui.text.withStyle import androidx.compose.ui.unit.dp import com.inspiredandroid.linuxcommandbibliotheca.R -import com.linuxcommandlibrary.shared.* +import com.linuxcommandlibrary.shared.CommandElement +import com.linuxcommandlibrary.shared.ManCommandElement +import com.linuxcommandlibrary.shared.TextCommandElement +import com.linuxcommandlibrary.shared.UrlCommandElement +import com.linuxcommandlibrary.shared.databaseHelper /* Copyright 2022 Simon Schubert * diff --git a/assets/database.db b/assets/database.db index 00e998c..119454b 100644 Binary files a/assets/database.db and b/assets/database.db differ diff --git a/build.gradle.kts b/build.gradle.kts index edeeb16..de45452 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -18,7 +18,7 @@ buildscript { } group = "org.example" -version = "3.0.4" +version = "3.0.5" allprojects { repositories { diff --git a/cli/src/jvmMain/resources/application.properties b/cli/src/jvmMain/resources/application.properties index 41ab7e6..4745ab0 100644 --- a/cli/src/jvmMain/resources/application.properties +++ b/cli/src/jvmMain/resources/application.properties @@ -1 +1 @@ -version=3.0.3 \ No newline at end of file +version=3.0.5 \ No newline at end of file