Only show record program button if it hasn't ended

This commit is contained in:
Damontecres 2025-10-22 12:43:14 -04:00
parent 36287be5d4
commit de22933766
No known key found for this signature in database
3 changed files with 55 additions and 47 deletions

View file

@ -147,6 +147,7 @@ fun DvrSchedule(
showDialog?.let { item -> showDialog?.let { item ->
ProgramDialog( ProgramDialog(
item = item, item = item,
canRecord = true,
loading = LoadingState.Success, loading = LoadingState.Success,
onDismissRequest = { onDismissRequest = {
showDialog = null showDialog = null

View file

@ -43,6 +43,7 @@ import java.time.ZoneId
@Composable @Composable
fun ProgramDialog( fun ProgramDialog(
item: BaseItem?, item: BaseItem?,
canRecord: Boolean,
loading: LoadingState, loading: LoadingState,
onDismissRequest: () -> Unit, onDismissRequest: () -> Unit,
onWatch: () -> Unit, onWatch: () -> Unit,
@ -138,6 +139,7 @@ fun ProgramDialog(
.padding(top = 8.dp) .padding(top = 8.dp)
.fillMaxWidth(), .fillMaxWidth(),
) { ) {
if (canRecord) {
Row( Row(
horizontalArrangement = Arrangement.spacedBy(16.dp), horizontalArrangement = Arrangement.spacedBy(16.dp),
) { ) {
@ -168,6 +170,8 @@ fun ProgramDialog(
} }
} }
} }
if (dto.endDate?.isAfter(LocalDateTime.now()) ?: true) {
// Only show program specific recording button if it hasn't finished yet
Button( Button(
onClick = { onClick = {
if (isRecording) { if (isRecording) {
@ -194,6 +198,8 @@ fun ProgramDialog(
} }
} }
} }
}
}
if (now.isAfter(dto.startDate!!) && now.isBefore(dto.endDate!!)) { if (now.isAfter(dto.startDate!!) && now.isBefore(dto.endDate!!)) {
Button( Button(
onClick = onWatch, onClick = onWatch,

View file

@ -143,6 +143,7 @@ fun TvGuideGrid(
val onDismissRequest = { showItemDialog = null } val onDismissRequest = { showItemDialog = null }
ProgramDialog( ProgramDialog(
item = fetchedItem, item = fetchedItem,
canRecord = true,
loading = loadingItem, loading = loadingItem,
onDismissRequest = onDismissRequest, onDismissRequest = onDismissRequest,
onWatch = { onWatch = {