summaryrefslogtreecommitdiffhomepage
path: root/android/app/src
diff options
context:
space:
mode:
authorKalle Lindström <karl.lindstrom@mullvad.net>2024-11-07 17:19:26 +0100
committerDavid Göransson <david.goransson@mullvad.net>2024-11-12 14:35:30 +0100
commitc607b3c4b0f50f77cc15693cd24f8ad3f1bd43de (patch)
tree8f8ad61777f0baf1807d931c13304dec42149588 /android/app/src
parent5dcf5df15c8bb722849970992ddd62834ad63cb0 (diff)
downloadmullvadvpn-c607b3c4b0f50f77cc15693cd24f8ad3f1bd43de.tar.xz
mullvadvpn-c607b3c4b0f50f77cc15693cd24f8ad3f1bd43de.zip
Fix in app notification constraint layout
Diffstat (limited to 'android/app/src')
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/notificationbanner/NotificationBanner.kt27
1 files changed, 15 insertions, 12 deletions
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/notificationbanner/NotificationBanner.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/notificationbanner/NotificationBanner.kt
index f2b33c251e..538a746b99 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/notificationbanner/NotificationBanner.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/notificationbanner/NotificationBanner.kt
@@ -103,6 +103,7 @@ fun NotificationBanner(
}
@Composable
+@Suppress("LongMethod")
private fun Notification(notificationBannerData: NotificationData) {
val (title, message, statusLevel, action) = notificationBannerData
ConstraintLayout(
@@ -133,8 +134,16 @@ private fun Notification(notificationBannerData: NotificationData) {
Modifier.constrainAs(textTitle) {
top.linkTo(parent.top)
start.linkTo(status.end)
- bottom.linkTo(anchor = textMessage.top)
- end.linkTo(actionIcon.start)
+ if (message != null) {
+ bottom.linkTo(textMessage.top)
+ } else {
+ bottom.linkTo(parent.bottom)
+ }
+ if (action != null) {
+ end.linkTo(actionIcon.start)
+ } else {
+ end.linkTo(parent.end)
+ }
width = Dimension.fillToConstraints
}
.padding(start = Dimens.smallPadding),
@@ -150,7 +159,6 @@ private fun Notification(notificationBannerData: NotificationData) {
Modifier.constrainAs(textMessage) {
top.linkTo(textTitle.bottom)
start.linkTo(textTitle.start)
- bottom.linkTo(parent.bottom)
if (action != null) {
end.linkTo(actionIcon.start)
} else {
@@ -158,7 +166,7 @@ private fun Notification(notificationBannerData: NotificationData) {
}
width = Dimension.fillToConstraints
}
- .padding(start = Dimens.smallPadding),
+ .padding(start = Dimens.smallPadding, top = Dimens.tinyPadding),
color = MaterialTheme.colorScheme.onSurfaceVariant,
style = MaterialTheme.typography.labelMedium,
)
@@ -189,7 +197,7 @@ private fun NotificationDot(statusLevel: StatusLevel, modifier: Modifier) {
when (statusLevel) {
StatusLevel.Error -> MaterialTheme.colorScheme.error
StatusLevel.Warning -> MaterialTheme.colorScheme.warning
- StatusLevel.Info -> MaterialTheme.colorScheme.surfaceContainer
+ StatusLevel.Info -> MaterialTheme.colorScheme.tertiary
},
shape = CircleShape,
)
@@ -204,13 +212,8 @@ private fun NotificationAction(
onClick: () -> Unit,
modifier: Modifier = Modifier,
) {
- IconButton(
- modifier =
- modifier
- .testTag(NOTIFICATION_BANNER_ACTION)
- .padding(all = Dimens.notificationEndIconPadding),
- onClick = onClick,
- ) {
+
+ IconButton(modifier = modifier.testTag(NOTIFICATION_BANNER_ACTION), onClick = onClick) {
Icon(
modifier = Modifier.padding(Dimens.notificationIconPadding),
imageVector = imageVector,