mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-26 03:40:56 +01:00
Add internal preference for large screen UI.
This commit is contained in:
@@ -163,6 +163,17 @@ class InternalSettingsFragment : DSLSettingsFragment(R.string.preferences__inter
|
||||
)
|
||||
dividerPref()
|
||||
|
||||
sectionHeaderPref(DSLSettingsText.from("App UI"))
|
||||
|
||||
switchPref(
|
||||
title = DSLSettingsText.from("Enable new split pane UI."),
|
||||
summary = DSLSettingsText.from("Warning: Some bugs and non functional buttons are expected."),
|
||||
isChecked = state.largeScreenUi,
|
||||
onClick = {
|
||||
viewModel.setUseLargeScreenUi(!state.largeScreenUi)
|
||||
}
|
||||
)
|
||||
|
||||
sectionHeaderPref(DSLSettingsText.from("Playgrounds"))
|
||||
|
||||
clickPref(
|
||||
|
||||
@@ -25,5 +25,6 @@ data class InternalSettingsState(
|
||||
val useConversationItemV2ForMedia: Boolean,
|
||||
val hasPendingOneTimeDonation: Boolean,
|
||||
val hevcEncoding: Boolean,
|
||||
val newCallingUi: Boolean
|
||||
val newCallingUi: Boolean,
|
||||
val largeScreenUi: Boolean
|
||||
)
|
||||
|
||||
@@ -166,7 +166,8 @@ class InternalSettingsViewModel(private val repository: InternalSettingsReposito
|
||||
useConversationItemV2ForMedia = SignalStore.internal.useConversationItemV2Media,
|
||||
hasPendingOneTimeDonation = SignalStore.inAppPayments.getPendingOneTimeDonation() != null,
|
||||
hevcEncoding = SignalStore.internal.hevcEncoding,
|
||||
newCallingUi = SignalStore.internal.newCallingUi
|
||||
newCallingUi = SignalStore.internal.newCallingUi,
|
||||
largeScreenUi = SignalStore.internal.largeScreenUi
|
||||
)
|
||||
|
||||
fun onClearOnboardingState() {
|
||||
@@ -182,6 +183,11 @@ class InternalSettingsViewModel(private val repository: InternalSettingsReposito
|
||||
refresh()
|
||||
}
|
||||
|
||||
fun setUseLargeScreenUi(largeScreenUi: Boolean) {
|
||||
SignalStore.internal.largeScreenUi = largeScreenUi
|
||||
refresh()
|
||||
}
|
||||
|
||||
class Factory(private val repository: InternalSettingsRepository) : ViewModelProvider.Factory {
|
||||
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||
return requireNotNull(modelClass.cast(InternalSettingsViewModel(repository)))
|
||||
|
||||
Reference in New Issue
Block a user