Skip to content

Commit a1b720b

Browse files
Query watch next programs directly
1 parent 335cd0e commit a1b720b

File tree

3 files changed

+8
-10
lines changed

3 files changed

+8
-10
lines changed

app/src/main/kotlin/nl/ndat/tvlauncher/data/repository/ChannelRepository.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,5 +123,5 @@ class ChannelRepository(
123123
fun getChannels() = database.channels.getAll().executeAsListFlow()
124124
fun getFavoriteAppChannels() = database.channels.getFavoriteAppChannels(::Channel).executeAsListFlow()
125125
fun getProgramsByChannel(channel: Channel) = database.channelPrograms.getByChannel(channel.id).executeAsListFlow()
126-
fun getWatchNextPrograms() = database.channels.getById(ChannelResolver.CHANNEL_ID_WATCH_NEXT).executeAsListFlow()
126+
fun getWatchNextPrograms() = database.channelPrograms.getByChannel(ChannelResolver.CHANNEL_ID_WATCH_NEXT).executeAsListFlow()
127127
}

app/src/main/kotlin/nl/ndat/tvlauncher/ui/tab/home/HomeTab.kt

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import androidx.compose.ui.Modifier
1212
import androidx.compose.ui.res.stringResource
1313
import androidx.compose.ui.unit.dp
1414
import nl.ndat.tvlauncher.R
15+
import nl.ndat.tvlauncher.data.resolver.ChannelResolver
1516
import nl.ndat.tvlauncher.ui.tab.home.row.AppCardRow
1617
import nl.ndat.tvlauncher.ui.tab.home.row.ChannelProgramCardRow
1718
import org.koin.androidx.compose.koinViewModel
@@ -23,7 +24,7 @@ fun HomeTab(
2324
val viewModel = koinViewModel<HomeTabViewModel>()
2425
val apps by viewModel.apps.collectAsState()
2526
val channels by viewModel.channels.collectAsState()
26-
val watchNext by viewModel.watchNext.collectAsState()
27+
val watchNextPrograms by viewModel.watchNextPrograms.collectAsState()
2728

2829
LazyColumn(
2930
verticalArrangement = Arrangement.spacedBy(8.dp),
@@ -36,15 +37,12 @@ fun HomeTab(
3637
)
3738
}
3839

39-
items(
40-
items = watchNext,
41-
key = { channel -> channel.id }
42-
) { channel ->
43-
val programs by viewModel.channelPrograms(channel).collectAsState(initial = emptyList())
44-
40+
item(
41+
key = ChannelResolver.CHANNEL_ID_WATCH_NEXT
42+
) {
4543
ChannelProgramCardRow(
4644
title = stringResource(R.string.channel_watch_next),
47-
programs = programs,
45+
programs = watchNextPrograms,
4846
)
4947
}
5048

app/src/main/kotlin/nl/ndat/tvlauncher/ui/tab/home/HomeTabViewModel.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ class HomeTabViewModel(
2020
val channels = channelRepository.getFavoriteAppChannels()
2121
.stateIn(viewModelScope, SharingStarted.Eagerly, emptyList())
2222

23-
val watchNext = channelRepository.getWatchNextPrograms()
23+
val watchNextPrograms = channelRepository.getWatchNextPrograms()
2424
.stateIn(viewModelScope, SharingStarted.Eagerly, emptyList())
2525

2626
fun channelPrograms(channel: Channel) = channelRepository.getProgramsByChannel(channel)

0 commit comments

Comments
 (0)