Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .ideaBackup/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Default ignored files
/shelf/
/workspace.xml
1 change: 1 addition & 0 deletions .ideaBackup/.name
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
EnglishBender
26 changes: 26 additions & 0 deletions .ideaBackup/appInsightsSettings.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="AppInsightsSettings">
<option name="tabSettings">
<map>
<entry key="Firebase Crashlytics">
<value>
<InsightsFilterSettings>
<option name="connection">
<ConnectionSetting>
<option name="appId" value="PLACEHOLDER" />
<option name="mobileSdkAppId" value="" />
<option name="projectId" value="" />
<option name="projectNumber" value="" />
</ConnectionSetting>
</option>
<option name="signal" value="SIGNAL_UNSPECIFIED" />
<option name="timeIntervalDays" value="THIRTY_DAYS" />
<option name="visibilityType" value="ALL" />
</InsightsFilterSettings>
</value>
</entry>
</map>
</option>
</component>
</project>
6 changes: 6 additions & 0 deletions .ideaBackup/compiler.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<bytecodeTargetLevel target="17" />
</component>
</project>
10 changes: 10 additions & 0 deletions .ideaBackup/deploymentTargetDropDown.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="deploymentTargetDropDown">
<value>
<entry key="androidApp">
<State />
</entry>
</value>
</component>
</project>
20 changes: 20 additions & 0 deletions .ideaBackup/gradle.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="GradleMigrationSettings" migrationVersion="1" />
<component name="GradleSettings">
<option name="linkedExternalProjectsSettings">
<GradleProjectSettings>
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="gradleJvm" value="#GRADLE_LOCAL_JAVA_HOME" />
<option name="modules">
<set>
<option value="$PROJECT_DIR$" />
<option value="$PROJECT_DIR$/androidApp" />
<option value="$PROJECT_DIR$/shared" />
</set>
</option>
<option name="resolveExternalAnnotations" value="false" />
</GradleProjectSettings>
</option>
</component>
</project>
41 changes: 41 additions & 0 deletions .ideaBackup/inspectionProfiles/Project_Default.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
<inspection_tool class="PreviewAnnotationInFunctionWithParameters" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
<option name="previewFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewApiLevelMustBeValid" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
<option name="previewFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewDimensionRespectsLimit" enabled="true" level="WARNING" enabled_by_default="true">
<option name="composableFile" value="true" />
<option name="previewFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewFontScaleMustBeGreaterThanZero" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
<option name="previewFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewMultipleParameterProviders" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
<option name="previewFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewMustBeTopLevelFunction" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
<option name="previewFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewNeedsComposableAnnotation" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
<option name="previewFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewNotSupportedInUnitTestFiles" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
<option name="previewFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewPickerAnnotation" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
<option name="previewFile" value="true" />
</inspection_tool>
</profile>
</component>
6 changes: 6 additions & 0 deletions .ideaBackup/kotlinc.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="KotlinJpsPluginSettings">
<option name="version" value="1.9.21" />
</component>
</project>
10 changes: 10 additions & 0 deletions .ideaBackup/migrations.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectMigrations">
<option name="MigrateToGradleLocalJavaHome">
<set>
<option value="$PROJECT_DIR$" />
</set>
</option>
</component>
</project>
9 changes: 9 additions & 0 deletions .ideaBackup/misc.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<project version="4">
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="jbr-17" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" />
</component>
<component name="ProjectType">
<option name="id" value="Android" />
</component>
</project>
6 changes: 6 additions & 0 deletions .ideaBackup/vcs.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>
11 changes: 7 additions & 4 deletions androidApp/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@ android {
}
composeOptions {
// kotlinCompilerExtensionVersion = "1.4.0"
kotlinCompilerExtensionVersion = "1.4.8"
// kotlinCompilerExtensionVersion = "1.4.8"
kotlinCompilerExtensionVersion = "1.5.9"
}
packagingOptions {
resources {
Expand Down Expand Up @@ -50,8 +51,8 @@ android {
// }
}

val composeVersion = "1.6.0"
val material3Version = "1.1.2"
val composeVersion = "1.6.1"
val material3Version = "1.2.0"
val pagingRuntimeVersion = "3.1.1"
val pagingComposeVersion = "1.0.0-alpha18"
val koinCoreVersion = "3.4.0"
Expand Down Expand Up @@ -96,7 +97,7 @@ dependencies {
// SplashScreen
implementation("androidx.core:core-splashscreen:1.0.1")

implementation("androidx.navigation:navigation-compose:2.7.6")
implementation("androidx.navigation:navigation-compose:2.7.7")

// Color picker
implementation("com.github.skydoves:colorpicker-compose:1.0.5")
Expand All @@ -111,6 +112,8 @@ dependencies {

implementation("androidx.work:work-runtime-ktx:2.9.0")

implementation("com.wajahatkarim:flippable:1.5.4")

implementation("androidx.compose.ui:ui:1.5.0")
implementation("androidx.compose.ui:ui-tooling:1.5.0")
implementation("androidx.compose.ui:ui-tooling-preview:1.5.0")
Expand Down
1 change: 1 addition & 0 deletions androidApp/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.RECORD_AUDIO"/>

<application
android:name=".App"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import androidx.compose.runtime.getValue
import androidx.compose.runtime.remember
import androidx.compose.runtime.rememberCoroutineScope
import androidx.compose.ui.Modifier
import androidx.lifecycle.compose.collectAsStateWithLifecycle
import androidx.navigation.NavHostController
import androidx.navigation.NavType
import androidx.navigation.compose.NavHost
Expand All @@ -18,17 +19,22 @@ import androidx.navigation.compose.rememberNavController
import androidx.navigation.navArgument
import com.san.englishbender.android.ui.EBAppState
import com.san.englishbender.android.ui.common.AppDrawer
import com.san.englishbender.android.ui.flashcards.BoardScreen
import com.san.englishbender.android.ui.flashcards.BoardsScreen
import com.san.englishbender.android.ui.recordDetails.RecordDetailsScreen
import com.san.englishbender.android.ui.records.RecordsScreen
import com.san.englishbender.android.ui.stats.StatsScreen
import com.san.englishbender.core.navigation.Destinations
import com.san.englishbender.core.navigation.DestinationsArgs.BOARD_ID_ARG
import com.san.englishbender.core.navigation.DestinationsArgs.RECORD_ID_ARG
import com.san.englishbender.core.navigation.NavigationCommand
import com.san.englishbender.core.navigation.Navigator
import com.san.englishbender.core.navigation.Screens
import com.san.englishbender.ui.flashcards.BoardsViewModel
import kotlinx.coroutines.flow.launchIn
import kotlinx.coroutines.flow.onEach
import kotlinx.coroutines.launch
import org.koin.androidx.compose.getViewModel


@Composable
Expand Down Expand Up @@ -118,5 +124,42 @@ fun EBNavHost(
recordId
)
}

composable(route = Destinations.BOARDS_ROUTE) {
AppDrawer(
drawerState,
currentRoute,
navActions,
content = {
BoardsScreen(
onBoardClick = { boardId ->
val route = Screens.FLASHCARDS_SCREEN.let { route ->
boardId?.let { "$route?boardId=$it" } ?: route
}
navigator.navigateTo(route)
},
openDrawer = { coroutineScope.launch { drawerState.open() } }
)
}
)
}

composable(
route = Destinations.FLASHCARDS_ROUTE,
arguments = listOf(
navArgument(BOARD_ID_ARG) {
nullable = true
defaultValue = null
type = NavType.StringType
},
),
) { entry ->
val boardId = entry.arguments?.getString(BOARD_ID_ARG)

BoardScreen(
boardId,
onBackClick = { navigator.popBackStack() }
)
}
}
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package com.san.englishbender.android.navigation

import androidx.navigation.NavHostController
import com.san.englishbender.core.navigation.Destinations.BOARDS_ROUTE
import com.san.englishbender.core.navigation.Destinations.FLASHCARDS_ROUTE
import com.san.englishbender.core.navigation.Destinations.RECORD_DETAIL_ROUTE
import com.san.englishbender.core.navigation.Destinations.STATS_ROUTE
import com.san.englishbender.core.navigation.Screens.RECORDS_SCREEN
Expand All @@ -14,6 +16,14 @@ class EBNavigationActions(private val navController: NavHostController) {
navController.navigate(STATS_ROUTE)
}

fun navigateToBoards() {
navController.navigate(BOARDS_ROUTE)
}

fun navigateToFlashCards() {
navController.navigate(FLASHCARDS_ROUTE)
}

fun navigateToRecords() {
navController.navigate(RECORDS_SCREEN)
// navController.navigate(RECORDS_SCREEN) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,9 @@ import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.width
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.automirrored.filled.ViewList
import androidx.compose.material.icons.filled.Analytics
import androidx.compose.material.icons.filled.ViewList
import androidx.compose.material.icons.filled.ViewCarousel
import androidx.compose.material3.DrawerState
import androidx.compose.material3.Icon
import androidx.compose.material3.ModalDrawerSheet
Expand All @@ -34,16 +35,21 @@ data class DrawerNavOptions(
)

private val drawerNavOptions = listOf(
DrawerNavOptions(
name = "Records",
route = Destinations.RECORD_ROUTE,
icon = Icons.AutoMirrored.Filled.ViewList
),
DrawerNavOptions(
name = "Flash-cards",
route = Destinations.BOARDS_ROUTE,
icon = Icons.Default.ViewCarousel
),
DrawerNavOptions(
name = "Stats",
route = Destinations.STATS_ROUTE,
icon = Icons.Default.Analytics
),
DrawerNavOptions(
name = "Records",
route = Destinations.RECORD_ROUTE,
icon = Icons.Default.ViewList
),
)

@Composable
Expand Down Expand Up @@ -79,6 +85,8 @@ fun AppDrawer(
when (item.route) {
Destinations.STATS_ROUTE -> navActions.navigateToStats()
Destinations.RECORD_ROUTE -> navActions.navigateToRecords()
Destinations.BOARDS_ROUTE -> navActions.navigateToBoards()
Destinations.FLASHCARDS_ROUTE -> navActions.navigateToFlashCards()
}
// navController.navigate(item.route)
},
Expand Down
Loading