From 2e66baaf08db7213e91469f5c7e09b8adce8bc43 Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Mon, 25 Oct 2021 01:26:18 +0530 Subject: [PATCH] common: correctly dispatch click events on save button --- .../claw/common/posts/LobstersItem.kt | 24 +++++++------------ 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/common/src/commonMain/kotlin/dev/msfjarvis/claw/common/posts/LobstersItem.kt b/common/src/commonMain/kotlin/dev/msfjarvis/claw/common/posts/LobstersItem.kt index 06356594..00fb4594 100644 --- a/common/src/commonMain/kotlin/dev/msfjarvis/claw/common/posts/LobstersItem.kt +++ b/common/src/commonMain/kotlin/dev/msfjarvis/claw/common/posts/LobstersItem.kt @@ -3,6 +3,7 @@ package dev.msfjarvis.claw.common.posts import androidx.compose.animation.Crossfade import androidx.compose.foundation.ExperimentalFoundationApi import androidx.compose.foundation.background +import androidx.compose.foundation.clickable import androidx.compose.foundation.combinedClickable import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Box @@ -18,7 +19,6 @@ import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material.Card import androidx.compose.material.ExperimentalMaterialApi import androidx.compose.material.Icon -import androidx.compose.material.IconToggleButton import androidx.compose.material.MaterialTheme import androidx.compose.material.Text import androidx.compose.material.primarySurface @@ -62,7 +62,7 @@ fun LobstersCard( ) { SaveButton( isSaved = isSaved, - onClick = { postActions.toggleSave(post) }, + modifier = Modifier.clickable { postActions.toggleSave(post) }, ) Spacer( modifier = Modifier.width(8.dp), @@ -158,21 +158,15 @@ fun SubmitterNameText( @Composable fun SaveButton( isSaved: Boolean, - onClick: () -> Unit, modifier: Modifier = Modifier, ) { - IconToggleButton( - checked = isSaved, - onCheckedChange = { onClick.invoke() }, - modifier = modifier.requiredSize(32.dp), - ) { - Crossfade(targetState = isSaved) { saved -> - Icon( - painter = if (saved) heartIcon else heartBorderIcon, - tint = MaterialTheme.colors.secondary, - contentDescription = if (saved) "Remove from saved posts" else "Add to saved posts", - ) - } + Crossfade(targetState = isSaved) { saved -> + Icon( + painter = if (saved) heartIcon else heartBorderIcon, + tint = MaterialTheme.colors.secondary, + contentDescription = if (saved) "Remove from saved posts" else "Add to saved posts", + modifier = modifier, + ) } }