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
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ import org.hogwarts.android.feature.announcements.navigation.announcementsScreen
import org.hogwarts.android.feature.exams.navigation.ExamCertificate
import org.hogwarts.android.feature.exams.navigation.ExamDetail
import org.hogwarts.android.feature.exams.navigation.ExamResults
import org.hogwarts.android.feature.exams.navigation.Exams
import org.hogwarts.android.feature.exams.navigation.examDetailScreen
import org.hogwarts.android.feature.exams.navigation.examsScreen
import org.hogwarts.android.feature.exams.navigation.quizScreen
Expand Down Expand Up @@ -84,6 +85,7 @@ import org.hogwarts.android.feature.admission.navigation.admissionFormEditScreen
import org.hogwarts.android.feature.admission.navigation.admissionStatusScreen
import org.hogwarts.android.feature.events.navigation.EventCalendar
import org.hogwarts.android.feature.events.navigation.EventDetail
import org.hogwarts.android.feature.events.navigation.EventsList
import org.hogwarts.android.feature.events.navigation.eventsListScreen
import org.hogwarts.android.feature.events.navigation.eventDetailScreen as eventsDetailScreen
import org.hogwarts.android.feature.events.navigation.eventCalendarScreen
Expand Down Expand Up @@ -255,7 +257,10 @@ fun HogwartsNavHost(
onNavigateToAtomStudio = { navController.navigate(AtomStudioRoute) },
onNavigateToAnnouncements = { navController.navigate(Announcements) },
onNavigateToLibrary = { navController.navigate(LibraryCatalog) },
onNavigateToProfile = { navController.navigate(Profile) }
onNavigateToProfile = { navController.navigate(Profile) },
onNavigateToNotifications = { navController.navigate(Notifications) },
onNavigateToExams = { navController.navigate(Exams) },
onNavigateToEvents = { navController.navigate(EventsList) }
)

atomStudioScreen(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,10 @@ fun NavGraphBuilder.dashboardScreen(
onNavigateToAtomStudio: () -> Unit,
onNavigateToAnnouncements: () -> Unit,
onNavigateToLibrary: () -> Unit,
onNavigateToProfile: () -> Unit
onNavigateToProfile: () -> Unit,
onNavigateToNotifications: () -> Unit,
onNavigateToExams: () -> Unit,
onNavigateToEvents: () -> Unit
) {
composable<Dashboard> {
DashboardScreen(
Expand All @@ -44,7 +47,10 @@ fun NavGraphBuilder.dashboardScreen(
onNavigateToAtomStudio = onNavigateToAtomStudio,
onNavigateToAnnouncements = onNavigateToAnnouncements,
onNavigateToLibrary = onNavigateToLibrary,
onNavigateToProfile = onNavigateToProfile
onNavigateToProfile = onNavigateToProfile,
onNavigateToNotifications = onNavigateToNotifications,
onNavigateToExams = onNavigateToExams,
onNavigateToEvents = onNavigateToEvents
)
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,10 @@ fun buildHomeTiles(
onNavigateToAtomStudio: () -> Unit,
onNavigateToAnnouncements: () -> Unit,
onNavigateToLibrary: () -> Unit,
onNavigateToProfile: () -> Unit
onNavigateToProfile: () -> Unit,
onNavigateToNotifications: () -> Unit,
onNavigateToExams: () -> Unit,
onNavigateToEvents: () -> Unit
): List<HomeTileSpec> = listOf(
// --- Top-right 2x2 cluster (next to widget) ---
HomeTileSpec(
Expand Down Expand Up @@ -111,15 +114,15 @@ fun buildHomeTiles(
labelRes = R.string.home_action_notifications,
icon = HogwartsIcons.Notifications,
background = AppleRed,
onClick = { /* TODO: notifications screen */ },
onClick = onNavigateToNotifications,
badgeCount = state.unreadNotifications,
iconRes = R.drawable.ic_tile_notifications
),
HomeTileSpec(
labelRes = R.string.home_action_exams,
icon = HogwartsIcons.Exams,
background = AppleIndigo,
onClick = { /* TODO: exams screen */ },
onClick = onNavigateToExams,
badgeCount = state.upcomingExams,
iconRes = R.drawable.ic_tile_exams
),
Expand All @@ -129,7 +132,11 @@ fun buildHomeTiles(
labelRes = R.string.home_action_assignments,
icon = HogwartsIcons.Document,
background = AppleOrange,
onClick = { /* TODO: assignments screen */ },
// No `feature/assignments` module exists yet — surface deferred to its
// own epic (folds into E14 grading/exams alongside teacher grade entry).
// Until then the tile is visually present but a no-op so the grid stays
// intact for Figma parity.
onClick = {},
badgeCount = state.pendingAssignments,
iconRes = R.drawable.ic_tile_assignments
),
Expand All @@ -144,7 +151,7 @@ fun buildHomeTiles(
labelRes = R.string.home_action_events,
icon = HogwartsIcons.Star,
background = ApplePink,
onClick = { /* TODO: events screen */ },
onClick = onNavigateToEvents,
iconRes = R.drawable.ic_tile_events
),
HomeTileSpec(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,9 @@ fun DashboardScreen(
onNavigateToAnnouncements: () -> Unit,
onNavigateToLibrary: () -> Unit,
onNavigateToProfile: () -> Unit,
onNavigateToNotifications: () -> Unit,
onNavigateToExams: () -> Unit,
onNavigateToEvents: () -> Unit,
viewModel: DashboardViewModel = hiltViewModel(),
modifier: Modifier = Modifier
) {
Expand All @@ -70,7 +73,9 @@ fun DashboardScreen(
) {
HomeSearchPill(
label = stringResource(R.string.home_search_hint),
onClick = { /* TODO: universal search screen */ }
// Universal search is E11.S02 (Phase 3 polish). Tap is a
// no-op for now so the pill keeps its layout slot.
onClick = {}
)
}
HomeDock(
Expand All @@ -93,7 +98,7 @@ fun DashboardScreen(
icon = HogwartsIcons.Notifications,
background = AppleRed,
contentDescription = stringResource(R.string.dashboard_tab_alerts),
onClick = { /* TODO: notifications screen */ },
onClick = onNavigateToNotifications,
iconRes = R.drawable.ic_tile_alerts
),
HomeDockItem(
Expand Down Expand Up @@ -133,6 +138,9 @@ fun DashboardScreen(
onNavigateToAnnouncements = onNavigateToAnnouncements,
onNavigateToLibrary = onNavigateToLibrary,
onNavigateToProfile = onNavigateToProfile,
onNavigateToNotifications = onNavigateToNotifications,
onNavigateToExams = onNavigateToExams,
onNavigateToEvents = onNavigateToEvents,
modifier = Modifier.padding(innerPadding)
)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,9 @@ fun HomeScreen(
onNavigateToAnnouncements: () -> Unit,
onNavigateToLibrary: () -> Unit,
onNavigateToProfile: () -> Unit,
onNavigateToNotifications: () -> Unit,
onNavigateToExams: () -> Unit,
onNavigateToEvents: () -> Unit,
modifier: Modifier = Modifier
) {
val tiles = buildHomeTiles(
Expand All @@ -44,7 +47,10 @@ fun HomeScreen(
onNavigateToAtomStudio = onNavigateToAtomStudio,
onNavigateToAnnouncements = onNavigateToAnnouncements,
onNavigateToLibrary = onNavigateToLibrary,
onNavigateToProfile = onNavigateToProfile
onNavigateToProfile = onNavigateToProfile,
onNavigateToNotifications = onNavigateToNotifications,
onNavigateToExams = onNavigateToExams,
onNavigateToEvents = onNavigateToEvents
)

HomeGrid(
Expand Down