diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml index 5b96814..0238414 100644 --- a/.idea/deploymentTargetDropDown.xml +++ b/.idea/deploymentTargetDropDown.xml @@ -4,18 +4,29 @@ + + + + + + + + + + + - + - + diff --git a/README.md b/README.md index 534c8eb..b80ff72 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,12 @@ # android_notes -Android note taking application. Build with Jetpack Compose. -[Click here to get apk][1] +Android note taking application. [Click here to get apk][1] + +Build with: +Jetpack Compose +Compose Navigation +Room +Hilt +MVVM diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 37d752a..83dfabf 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -14,7 +14,7 @@ android { minSdk = 26 targetSdk = 34 versionCode = 1 - versionName = "1.0" + versionName = "1.1" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" vectorDrawables { diff --git a/app/release/app-release.apk b/app/release/app-release.apk deleted file mode 100644 index 6cc96dc..0000000 Binary files a/app/release/app-release.apk and /dev/null differ diff --git a/app/release/baselineProfiles/0/app-release.dm b/app/release/baselineProfiles/0/app-release.dm index b3c58e1..3fdbe22 100644 Binary files a/app/release/baselineProfiles/0/app-release.dm and b/app/release/baselineProfiles/0/app-release.dm differ diff --git a/app/release/baselineProfiles/1/app-release.dm b/app/release/baselineProfiles/1/app-release.dm index 08339e2..96f8d88 100644 Binary files a/app/release/baselineProfiles/1/app-release.dm and b/app/release/baselineProfiles/1/app-release.dm differ diff --git a/app/src/main/java/com/kassaev/notes/pesentation/main_screen/MainScreenNavigationDrawer.kt b/app/src/main/java/com/kassaev/notes/pesentation/main_screen/MainScreenNavigationDrawer.kt index aefd653..e090e88 100644 --- a/app/src/main/java/com/kassaev/notes/pesentation/main_screen/MainScreenNavigationDrawer.kt +++ b/app/src/main/java/com/kassaev/notes/pesentation/main_screen/MainScreenNavigationDrawer.kt @@ -2,9 +2,11 @@ package com.kassaev.notes.pesentation.main_screen import androidx.compose.foundation.layout.requiredWidth import androidx.compose.material3.DrawerValue +import androidx.compose.material3.MaterialTheme import androidx.compose.material3.ModalDrawerSheet import androidx.compose.material3.ModalNavigationDrawer import androidx.compose.material3.NavigationDrawerItem +import androidx.compose.material3.NavigationDrawerItemDefaults import androidx.compose.material3.Text import androidx.compose.material3.rememberDrawerState import androidx.compose.runtime.Composable @@ -43,7 +45,12 @@ fun MainScreenNavigationDrawer( scope.launch { drawerState.close() } - } + }, + colors = NavigationDrawerItemDefaults.colors( + selectedContainerColor = MaterialTheme.colorScheme.primaryContainer, + selectedTextColor = MaterialTheme.colorScheme.primary, + unselectedTextColor = MaterialTheme.colorScheme.primary, + ) ) NavigationDrawerItem( label = { @@ -55,7 +62,12 @@ fun MainScreenNavigationDrawer( scope.launch { drawerState.close() } - } + }, + colors = NavigationDrawerItemDefaults.colors( + selectedContainerColor = MaterialTheme.colorScheme.primaryContainer, + selectedTextColor = MaterialTheme.colorScheme.primary, + unselectedTextColor = MaterialTheme.colorScheme.primary, + ) ) } } @@ -76,13 +88,4 @@ fun MainScreenNavigationDrawer( ) } } -} - -@Composable -fun String.toLocale(): String { - return when(this){ - "main" -> stringResource(R.string.app_name) - "recycle_bin" -> stringResource(R.string.recycle_bin) - else -> {""} - } -} +} \ No newline at end of file diff --git a/app/src/main/java/com/kassaev/notes/pesentation/main_screen/MainScreenScaffold.kt b/app/src/main/java/com/kassaev/notes/pesentation/main_screen/MainScreenScaffold.kt index 1909fea..d163eb2 100644 --- a/app/src/main/java/com/kassaev/notes/pesentation/main_screen/MainScreenScaffold.kt +++ b/app/src/main/java/com/kassaev/notes/pesentation/main_screen/MainScreenScaffold.kt @@ -14,12 +14,14 @@ import androidx.compose.material.icons.Icons import androidx.compose.material.icons.outlined.Add import androidx.compose.material.icons.outlined.Menu import androidx.compose.material3.Card +import androidx.compose.material3.CardDefaults import androidx.compose.material3.Divider import androidx.compose.material3.DrawerState import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.FloatingActionButton import androidx.compose.material3.Icon import androidx.compose.material3.IconButton +import androidx.compose.material3.IconButtonDefaults import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Scaffold import androidx.compose.material3.Text @@ -27,7 +29,6 @@ import androidx.compose.material3.TextButton import androidx.compose.material3.TopAppBar import androidx.compose.material3.TopAppBarDefaults import androidx.compose.runtime.Composable -import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.collectAsState import androidx.compose.runtime.getValue import androidx.compose.ui.Modifier @@ -67,7 +68,10 @@ fun MainScreenScaffold( scope.launch { drawerState.open() } - } + }, + colors = IconButtonDefaults.iconButtonColors( + contentColor = MaterialTheme.colorScheme.primary + ) ) { Icon( imageVector = Icons.Outlined.Menu, @@ -76,12 +80,14 @@ fun MainScreenScaffold( } }, colors = TopAppBarDefaults.topAppBarColors( - containerColor = MaterialTheme.colorScheme.primaryContainer + containerColor = MaterialTheme.colorScheme.primaryContainer, + titleContentColor = MaterialTheme.colorScheme.primary ), ) }, floatingActionButton = { FloatingActionButton( + contentColor = MaterialTheme.colorScheme.primary, onClick = { navController.navigate(Screen.MainScreenDetail.route) } @@ -125,7 +131,7 @@ fun MainScreenScaffold( end = 8.dp, bottom = 8.dp ), - text = noteEntity.date.toString(), + text = noteEntity.date, textAlign = TextAlign.End, fontSize = MaterialTheme.typography.bodyMedium.fontSize ) @@ -148,6 +154,10 @@ fun DeleteConfirmDialog(viewModel: MainViewModel) { Card( modifier = Modifier, shape = RoundedCornerShape(16.dp), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.primaryContainer, + contentColor = MaterialTheme.colorScheme.primary, + ) ) { Column { Text( diff --git a/app/src/main/java/com/kassaev/notes/pesentation/recycle_bin/RecycleBinScreenScaffold.kt b/app/src/main/java/com/kassaev/notes/pesentation/recycle_bin/RecycleBinScreenScaffold.kt index ebfa6d1..1f7f5d1 100644 --- a/app/src/main/java/com/kassaev/notes/pesentation/recycle_bin/RecycleBinScreenScaffold.kt +++ b/app/src/main/java/com/kassaev/notes/pesentation/recycle_bin/RecycleBinScreenScaffold.kt @@ -14,12 +14,14 @@ import androidx.compose.material.icons.Icons import androidx.compose.material.icons.outlined.Delete import androidx.compose.material.icons.outlined.Menu import androidx.compose.material3.Card +import androidx.compose.material3.CardDefaults import androidx.compose.material3.Divider import androidx.compose.material3.DrawerState import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.FloatingActionButton import androidx.compose.material3.Icon import androidx.compose.material3.IconButton +import androidx.compose.material3.IconButtonDefaults import androidx.compose.material3.LocalTextStyle import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Scaffold @@ -28,7 +30,6 @@ import androidx.compose.material3.TextButton import androidx.compose.material3.TopAppBar import androidx.compose.material3.TopAppBarDefaults import androidx.compose.runtime.Composable -import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.collectAsState import androidx.compose.runtime.getValue import androidx.compose.ui.Modifier @@ -65,6 +66,9 @@ fun RecycleBinScreenScaffold( }, navigationIcon = { IconButton( + colors = IconButtonDefaults.iconButtonColors( + contentColor = MaterialTheme.colorScheme.primary + ), onClick = { scope.launch { drawerState.open() @@ -78,12 +82,14 @@ fun RecycleBinScreenScaffold( } }, colors = TopAppBarDefaults.topAppBarColors( - containerColor = MaterialTheme.colorScheme.primaryContainer + containerColor = MaterialTheme.colorScheme.primaryContainer, + titleContentColor = MaterialTheme.colorScheme.primary ), ) }, floatingActionButton = { FloatingActionButton( + contentColor = MaterialTheme.colorScheme.primary, onClick = { if (noteList.isNotEmpty()){ viewModel.openDialogFAB() @@ -130,7 +136,7 @@ fun RecycleBinScreenScaffold( end = 8.dp, bottom = 8.dp ), - text = noteEntity.date.toString(), + text = noteEntity.date, textAlign = TextAlign.End, fontSize = MaterialTheme.typography.bodyMedium.fontSize ) @@ -153,6 +159,10 @@ fun RecycleBinDeleteConfirmDialog(viewModel: MainViewModel) { Card( modifier = Modifier, shape = RoundedCornerShape(16.dp), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.primaryContainer, + contentColor = MaterialTheme.colorScheme.primary, + ) ) { Column { Text( @@ -215,6 +225,10 @@ fun RecycleBinDeleteAllConfirmDialog(viewModel: MainViewModel) { Card( modifier = Modifier, shape = RoundedCornerShape(16.dp), + colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.primaryContainer, + contentColor = MaterialTheme.colorScheme.primary, + ) ) { Column { Text( diff --git a/app/src/main/java/com/kassaev/notes/ui/theme/Color.kt b/app/src/main/java/com/kassaev/notes/ui/theme/Color.kt index 8601bb2..86438fa 100644 --- a/app/src/main/java/com/kassaev/notes/ui/theme/Color.kt +++ b/app/src/main/java/com/kassaev/notes/ui/theme/Color.kt @@ -10,3 +10,10 @@ val Purple40 = Color(0xFF6650a4) val PurpleGrey40 = Color(0xFF625b71) val Pink40 = Color(0xFF7D5260) +//Pixel 8 PRO colors + +val Primary = Color(0xFF00668B) +val PrimaryDark = Color(0xFF76D1FF) + +val PrimaryContainer = Color(0xFFC1E8FF) +val PrimaryContainerDark = Color(0xFF004C69) diff --git a/app/src/main/java/com/kassaev/notes/ui/theme/Theme.kt b/app/src/main/java/com/kassaev/notes/ui/theme/Theme.kt index 90d39d2..ff2ebda 100644 --- a/app/src/main/java/com/kassaev/notes/ui/theme/Theme.kt +++ b/app/src/main/java/com/kassaev/notes/ui/theme/Theme.kt @@ -10,21 +10,24 @@ import androidx.compose.material3.dynamicLightColorScheme import androidx.compose.material3.lightColorScheme import androidx.compose.runtime.Composable import androidx.compose.runtime.SideEffect +import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.toArgb import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.platform.LocalView import androidx.core.view.WindowCompat private val DarkColorScheme = darkColorScheme( - primary = Purple80, - secondary = PurpleGrey80, - tertiary = Pink80 + primary = PrimaryDark, + secondary = PrimaryContainer, + tertiary = Pink80, + primaryContainer = PrimaryContainerDark, ) private val LightColorScheme = lightColorScheme( - primary = Purple40, - secondary = PurpleGrey40, - tertiary = Pink40 + primary = Primary, + secondary = Color.White, + tertiary = Pink40, + primaryContainer = PrimaryContainer /* Other default colors to override background = Color(0xFFFFFBFE),