Hide set button when disabled

This commit is contained in:
andrew
2023-09-21 00:27:10 +09:30
parent 7738b19760
commit c492a74014
3 changed files with 58 additions and 14 deletions

View File

@@ -67,7 +67,7 @@ fun DisappearingMessages(
}
}
OutlineButton(
if (state.showSetButton) OutlineButton(
stringResource(R.string.expiration_settings_set_button_title),
modifier = Modifier
.align(Alignment.CenterHorizontally)

View File

@@ -182,17 +182,27 @@ class ExpirationSettingsViewModel(
data class UiState(
val cards: List<CardModel> = emptyList(),
val showGroupFooter: Boolean = false
val showGroupFooter: Boolean = false,
val showSetButton: Boolean = true
) {
constructor(state: State): this(
cards = listOfNotNull(
typeOptions(state)?.let { CardModel(GetString(R.string.activity_expiration_settings_delete_type), it) },
timeOptions(state)?.let { CardModel(GetString(R.string.activity_expiration_settings_timer), it) }
),
showGroupFooter = state.isGroup && state.isNewConfigEnabled
showGroupFooter = state.isGroup && state.isNewConfigEnabled,
showSetButton = state.isSelfAdmin
)
constructor(showGroupFooter: Boolean, vararg cards: CardModel): this(cards.asList(), showGroupFooter)
constructor(
vararg cards: CardModel,
showGroupFooter: Boolean = false,
showSetButton: Boolean = true,
): this(
cards.asList(),
showGroupFooter,
showSetButton
)
}
data class CardModel(