From 91c7b597cea0dc74b68dd50f4385dbd3676f2720 Mon Sep 17 00:00:00 2001 From: ganfra Date: Thu, 6 Nov 2025 10:50:46 +0100 Subject: [PATCH] design: improve PreferenceDropdown --- .../components/preferences/PreferenceDropdown.kt | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/components/preferences/PreferenceDropdown.kt b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/components/preferences/PreferenceDropdown.kt index 389dc6c15b..fd76ef4c28 100644 --- a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/components/preferences/PreferenceDropdown.kt +++ b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/components/preferences/PreferenceDropdown.kt @@ -10,8 +10,10 @@ package io.element.android.libraries.designsystem.components.preferences import androidx.annotation.DrawableRes +import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.runtime.Composable @@ -22,6 +24,8 @@ import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.vector.ImageVector +import androidx.compose.ui.text.style.TextAlign +import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import io.element.android.compound.theme.ElementTheme @@ -87,6 +91,7 @@ fun PreferenceDropdown( onSelectOption = onSelectOption, expanded = isDropdownExpanded, onExpandedChange = { isDropdownExpanded = it }, + modifier = Modifier.fillMaxSize(0.3f) ) } ), @@ -117,12 +122,16 @@ private fun DropdownTrailingContent( Row( modifier = modifier, verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.End, ) { Text( text = selectedOption?.getText().orEmpty(), maxLines = 1, style = ElementTheme.typography.fontBodyMdRegular, color = ElementTheme.colors.textSecondary, + overflow = TextOverflow.Ellipsis, + textAlign = TextAlign.End, + modifier = Modifier.weight(1f), ) Icon( imageVector = CompoundIcons.ChevronDown(),