From 3952fc90224afbbb80a5e84daebda125a72243e9 Mon Sep 17 00:00:00 2001 From: Mugurell Date: Tue, 29 Mar 2022 19:03:04 +0300 Subject: [PATCH] [fenix] For https://github.com/mozilla-mobile/fenix/issues/24897 - Move clickable handling to the parent in ExpandableListHeader ExpandableListHeader provides a consistent UX for similar usecases. Needed to update it to allow clicks to be handled by a parent and it not stealing the click or shown an improper Indication. --- .../fenix/compose/list/ExpandableListHeader.kt | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/org/mozilla/fenix/compose/list/ExpandableListHeader.kt b/app/src/main/java/org/mozilla/fenix/compose/list/ExpandableListHeader.kt index 7a3a15a876..87d79f81b6 100644 --- a/app/src/main/java/org/mozilla/fenix/compose/list/ExpandableListHeader.kt +++ b/app/src/main/java/org/mozilla/fenix/compose/list/ExpandableListHeader.kt @@ -46,16 +46,21 @@ fun ExpandableListHeader( expanded: Boolean? = null, expandActionContentDescription: String? = null, collapseActionContentDescription: String? = null, - onClick: () -> Unit = {}, + onClick: (() -> Unit)? = null, actions: @Composable () -> Unit = {}, ) { Row( - modifier = Modifier.fillMaxWidth(), + modifier = when (onClick != null) { + true -> Modifier.clickable { onClick() } + false -> Modifier + }.then( + Modifier.fillMaxWidth() + ), + verticalAlignment = Alignment.CenterVertically, ) { Row( modifier = Modifier .weight(1f) - .clickable(onClick = onClick) .padding(horizontal = 16.dp, vertical = 8.dp), verticalAlignment = Alignment.CenterVertically, ) {