From 28965e6aed42dcb32bec79efa0a83c92147678c0 Mon Sep 17 00:00:00 2001 From: Agzamus Date: Thu, 3 Sep 2026 22:54:49 +0300 Subject: [PATCH] Merge branch 'database-refactor' --- app/src/main/java/agzam/vyatsu/AppRoot.kt | 2 +- .../java/agzam/vyatsu/data/repository/GroupRepositoryImpl.kt | 3 --- .../java/agzam/vyatsu/domain/repository/GroupRepository.kt | 1 - app/src/main/java/agzam/vyatsu/ui/schedule/ScheduleScreen.kt | 4 ++-- 4 files changed, 3 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/agzam/vyatsu/AppRoot.kt b/app/src/main/java/agzam/vyatsu/AppRoot.kt index 90b21e2..337221b 100644 --- a/app/src/main/java/agzam/vyatsu/AppRoot.kt +++ b/app/src/main/java/agzam/vyatsu/AppRoot.kt @@ -41,5 +41,5 @@ private class SimpleFactory(private val create: () -> T) : ViewMo override fun create(modelClass: Class): T = create() as T } -private fun scheduleFactory(c: AppContainer): ViewModelProvider.Factory = SimpleFactory { ScheduleViewModel(c.scheduleRepository, c.preferencesRepository, c.groupRepository) } +private fun scheduleFactory(c: AppContainer): ViewModelProvider.Factory = SimpleFactory { ScheduleViewModel(c.scheduleRepository, c.preferencesRepository) } private fun groupPickerFactory(c: AppContainer): ViewModelProvider.Factory = SimpleFactory { GroupPickerViewModel(c.groupRepository) } diff --git a/app/src/main/java/agzam/vyatsu/data/repository/GroupRepositoryImpl.kt b/app/src/main/java/agzam/vyatsu/data/repository/GroupRepositoryImpl.kt index 86884b7..e588d78 100644 --- a/app/src/main/java/agzam/vyatsu/data/repository/GroupRepositoryImpl.kt +++ b/app/src/main/java/agzam/vyatsu/data/repository/GroupRepositoryImpl.kt @@ -23,9 +23,6 @@ class GroupRepositoryImpl( override suspend fun getGroups(): List = groupDao.observeAll().first().map { it.toDomain() } - override suspend fun getGroup(id: String): Group? = - groupDao.getById(id)?.toDomain() - override suspend fun getFaculties(): List = groupDao.getFaculties() override suspend fun refreshIfStale(): Boolean { diff --git a/app/src/main/java/agzam/vyatsu/domain/repository/GroupRepository.kt b/app/src/main/java/agzam/vyatsu/domain/repository/GroupRepository.kt index fee4418..3a19821 100644 --- a/app/src/main/java/agzam/vyatsu/domain/repository/GroupRepository.kt +++ b/app/src/main/java/agzam/vyatsu/domain/repository/GroupRepository.kt @@ -6,7 +6,6 @@ import kotlinx.coroutines.flow.Flow interface GroupRepository { fun observeGroups(): Flow> suspend fun getGroups(): List - suspend fun getGroup(id: String): Group? suspend fun getFaculties(): List suspend fun refreshIfStale(): Boolean suspend fun forceRefresh(): Boolean diff --git a/app/src/main/java/agzam/vyatsu/ui/schedule/ScheduleScreen.kt b/app/src/main/java/agzam/vyatsu/ui/schedule/ScheduleScreen.kt index 34067d4..2d20e04 100644 --- a/app/src/main/java/agzam/vyatsu/ui/schedule/ScheduleScreen.kt +++ b/app/src/main/java/agzam/vyatsu/ui/schedule/ScheduleScreen.kt @@ -47,7 +47,7 @@ fun ScheduleScreen(viewModel: ScheduleViewModel, onSwitchGroup: () -> Unit) { Column(Modifier.fillMaxSize()) { TopAppBar( - title = { Text(state.groupName ?: "Расписание", style = MaterialTheme.typography.titleMedium) }, + title = { Text("Расписание") }, actions = { TextButton(onClick = { onSwitchGroup() }) { Text("Сменить группу") @@ -56,7 +56,7 @@ fun ScheduleScreen(viewModel: ScheduleViewModel, onSwitchGroup: () -> Unit) { Icon(Icons.Default.Refresh, contentDescription = "Обновить") } }, - windowInsets = WindowInsets(0.dp) + windowInsets = WindowInsets.systemBars.only(androidx.compose.foundation.layout.WindowInsetsSides.Top) ) Column(Modifier.fillMaxSize().padding(horizontal = 16.dp, vertical = 0.dp)) { when {