Skip to content

Commit 3cc3ec0

Browse files
committed
notif landscape fix
1 parent 821f72a commit 3cc3ec0

1 file changed

Lines changed: 67 additions & 20 deletions

File tree

‎app/src/main/java/org/thoughtcrime/securesms/onboarding/messagenotifications/MessageNotifications.kt‎

Lines changed: 67 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
package org.thoughtcrime.securesms.onboarding.messagenotifications
22

3+
import android.R.attr.checked
4+
import android.R.attr.onClick
5+
import android.content.res.Configuration
36
import androidx.annotation.StringRes
47
import androidx.compose.foundation.border
58
import androidx.compose.foundation.layout.Box
@@ -9,11 +12,14 @@ import androidx.compose.foundation.layout.Spacer
912
import androidx.compose.foundation.layout.fillMaxSize
1013
import androidx.compose.foundation.layout.height
1114
import androidx.compose.foundation.layout.padding
15+
import androidx.compose.foundation.rememberScrollState
16+
import androidx.compose.foundation.verticalScroll
1217
import androidx.compose.material3.MaterialTheme
1318
import androidx.compose.material3.Text
1419
import androidx.compose.runtime.Composable
1520
import androidx.compose.ui.Alignment
1621
import androidx.compose.ui.Modifier
22+
import androidx.compose.ui.platform.LocalConfiguration
1723
import androidx.compose.ui.res.stringResource
1824
import androidx.compose.ui.tooling.preview.Preview
1925
import androidx.compose.ui.tooling.preview.PreviewParameter
@@ -75,29 +81,70 @@ internal fun MessageNotificationsScreen(
7581
Spacer(Modifier.height(LocalDimensions.current.spacing))
7682
}
7783

78-
NotificationRadioButton(
79-
R.string.notificationsFastMode,
80-
if(BuildConfig.FLAVOR == "huawei") R.string.notificationsFastModeDescriptionHuawei
81-
else R.string.notificationsFastModeDescription,
82-
modifier = Modifier.qaTag(R.string.AccessibilityId_notificationsFastMode),
83-
tag = R.string.recommended,
84-
checked = state.pushEnabled,
85-
onClick = { setEnabled(true) }
86-
)
84+
// NotificationRadioButton(
85+
// R.string.notificationsFastMode,
86+
// if(BuildConfig.FLAVOR == "huawei") R.string.notificationsFastModeDescriptionHuawei
87+
// else R.string.notificationsFastModeDescription,
88+
// modifier = Modifier.qaTag(R.string.AccessibilityId_notificationsFastMode),
89+
// tag = R.string.recommended,
90+
// checked = state.pushEnabled,
91+
// onClick = { setEnabled(true) }
92+
// )
93+
//
94+
// // spacing between buttons is provided by ripple/downstate of NotificationRadioButton
95+
//
96+
// val explanationTxt = Phrase.from(stringResource(R.string.notificationsSlowModeDescription))
97+
// .put(APP_NAME_KEY, stringResource(R.string.app_name))
98+
// .format().toString()
99+
//
100+
// NotificationRadioButton(
101+
// stringResource(R.string.notificationsSlowMode),
102+
// explanationTxt,
103+
// modifier = Modifier.qaTag(R.string.AccessibilityId_notificationsSlowMode),
104+
// checked = state.pushDisabled,
105+
// onClick = { setEnabled(false) }
106+
// )
107+
108+
val isLandscape =
109+
LocalConfiguration.current.orientation == Configuration.ORIENTATION_LANDSCAPE
110+
val optionsScroll = rememberScrollState()
111+
112+
val optionsModifier = if (isLandscape) {
113+
Modifier
114+
.weight(1f)
115+
.verticalScroll(optionsScroll)
116+
} else {
117+
Modifier
118+
}
87119

88-
// spacing between buttons is provided by ripple/downstate of NotificationRadioButton
120+
Column(modifier = optionsModifier) {
121+
NotificationRadioButton(
122+
R.string.notificationsFastMode,
123+
if (BuildConfig.FLAVOR == "huawei")
124+
R.string.notificationsFastModeDescriptionHuawei
125+
else
126+
R.string.notificationsFastModeDescription,
127+
modifier = Modifier.qaTag(R.string.AccessibilityId_notificationsFastMode),
128+
tag = R.string.recommended,
129+
checked = state.pushEnabled,
130+
onClick = { setEnabled(true) }
131+
)
89132

90-
val explanationTxt = Phrase.from(stringResource(R.string.notificationsSlowModeDescription))
91-
.put(APP_NAME_KEY, stringResource(R.string.app_name))
92-
.format().toString()
133+
// spacing between buttons is provided by ripple/downstate of NotificationRadioButton
93134

94-
NotificationRadioButton(
95-
stringResource(R.string.notificationsSlowMode),
96-
explanationTxt,
97-
modifier = Modifier.qaTag(R.string.AccessibilityId_notificationsSlowMode),
98-
checked = state.pushDisabled,
99-
onClick = { setEnabled(false) }
100-
)
135+
val explanationTxt =
136+
Phrase.from(stringResource(R.string.notificationsSlowModeDescription))
137+
.put(APP_NAME_KEY, stringResource(R.string.app_name))
138+
.format().toString()
139+
140+
NotificationRadioButton(
141+
stringResource(R.string.notificationsSlowMode),
142+
explanationTxt,
143+
modifier = Modifier.qaTag(R.string.AccessibilityId_notificationsSlowMode),
144+
checked = state.pushDisabled,
145+
onClick = { setEnabled(false) }
146+
)
147+
}
101148

102149
Spacer(Modifier.weight(1f))
103150

0 commit comments

Comments
 (0)