From 585bd5f24c6e5c125f7b4d2bcd7dba8fe42ad5fa Mon Sep 17 00:00:00 2001 From: Greyson Parrelli Date: Thu, 22 Jan 2026 10:52:39 -0500 Subject: [PATCH] Fix width of dropdown menu items and add preview. --- .../signal/core/ui/compose/DropdownMenus.kt | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/core/ui/src/main/java/org/signal/core/ui/compose/DropdownMenus.kt b/core/ui/src/main/java/org/signal/core/ui/compose/DropdownMenus.kt index 65072e8a36..8480a912c6 100644 --- a/core/ui/src/main/java/org/signal/core/ui/compose/DropdownMenus.kt +++ b/core/ui/src/main/java/org/signal/core/ui/compose/DropdownMenus.kt @@ -9,9 +9,11 @@ import androidx.annotation.DrawableRes import androidx.annotation.StringRes import androidx.compose.foundation.background import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.ColumnScope import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.widthIn import androidx.compose.foundation.shape.RoundedCornerShape @@ -33,6 +35,7 @@ import androidx.compose.ui.res.dimensionResource import androidx.compose.ui.res.stringResource import androidx.compose.ui.res.vectorResource import androidx.compose.ui.unit.Dp +import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.DpOffset import androidx.compose.ui.unit.dp import org.signal.core.ui.R @@ -105,6 +108,7 @@ object DropdownMenus { Row( verticalAlignment = Alignment.CenterVertically, modifier = Modifier + .fillMaxWidth() .clickable(onClick = { onClick() menuController.hide() @@ -148,3 +152,23 @@ object DropdownMenus { fun isShown() = isMenuShown } } + +@Preview +@Composable +private fun ItemPreview() { + val controller = remember { DropdownMenus.MenuController().apply { show() } } + Previews.Preview { + Column { + DropdownMenus.Item( + text = { Text("Edit") }, + onClick = { } + ) + DropdownMenus.ItemWithIcon( + menuController = controller, + drawableResId = R.drawable.symbol_phone_24, + stringResId = android.R.string.ok, + onClick = { } + ) + } + } +}