LobstersItem: split details and button to separate composables

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
This commit is contained in:
Harsh Shandilya 2021-03-19 14:57:57 +05:30
parent 1983f1e864
commit fa605f5416
No known key found for this signature in database
GPG key ID: 366D7BBAD1031E80

View file

@ -5,6 +5,7 @@ import androidx.compose.foundation.ExperimentalFoundationApi
import androidx.compose.foundation.background
import androidx.compose.foundation.combinedClickable
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.fillMaxWidth
@ -68,6 +69,21 @@ fun LobstersItem(
verticalAlignment = Alignment.CenterVertically,
horizontalArrangement = Arrangement.SpaceBetween,
) {
PostDetails(
post,
)
SaveButton(
isSaved,
onSaveButtonClick,
)
}
}
}
@Composable
fun PostDetails(
post: SavedPost,
) {
Column(
modifier = Modifier.fillMaxWidth(),
) {
@ -105,6 +121,13 @@ fun LobstersItem(
)
}
}
}
@Composable
fun SaveButton(
isSaved: Boolean,
onSaveButtonClick: () -> Unit,
) {
IconToggleButton(
checked = isSaved,
onCheckedChange = { onSaveButtonClick.invoke() },
@ -119,8 +142,6 @@ fun LobstersItem(
)
}
}
}
}
}
@Composable