summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Matt Casey <mrcasey@google.com> 2024-04-17 01:51:34 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2024-04-17 01:51:34 +0000
commit56bae808e5af2bde54a69f95aa0c9ba19edc051c (patch)
treec7de981c336820f9f43f5bb4d3777f36add5b74a
parent074a940eede527615a0aa3c83e1add8cb6e82205 (diff)
parent8f765fb2b0e0589c30a7329fde05d3d3c81e4b19 (diff)
Merge "Update shareousel actions to align with mock" into main
-rw-r--r--java/src/com/android/intentresolver/contentpreview/payloadtoggle/ui/composable/ComposeIconComposable.kt19
-rw-r--r--java/src/com/android/intentresolver/contentpreview/payloadtoggle/ui/composable/ShareouselComposable.kt21
2 files changed, 34 insertions, 6 deletions
diff --git a/java/src/com/android/intentresolver/contentpreview/payloadtoggle/ui/composable/ComposeIconComposable.kt b/java/src/com/android/intentresolver/contentpreview/payloadtoggle/ui/composable/ComposeIconComposable.kt
index 38138225..8cf237da 100644
--- a/java/src/com/android/intentresolver/contentpreview/payloadtoggle/ui/composable/ComposeIconComposable.kt
+++ b/java/src/com/android/intentresolver/contentpreview/payloadtoggle/ui/composable/ComposeIconComposable.kt
@@ -22,6 +22,7 @@ import androidx.compose.foundation.Image
import androidx.compose.runtime.Composable
import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.ui.Modifier
+import androidx.compose.ui.graphics.ColorFilter
import androidx.compose.ui.graphics.asImageBitmap
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.painterResource
@@ -31,11 +32,16 @@ import com.android.intentresolver.icon.ComposeIcon
import com.android.intentresolver.icon.ResourceIcon
@Composable
-fun Image(icon: ComposeIcon, modifier: Modifier = Modifier) {
+fun Image(icon: ComposeIcon, modifier: Modifier = Modifier, colorFilter: ColorFilter? = null) {
when (icon) {
- is AdaptiveIcon -> Image(icon.wrapped, modifier)
+ is AdaptiveIcon -> Image(icon.wrapped, modifier, colorFilter = colorFilter)
is BitmapIcon ->
- Image(icon.bitmap.asImageBitmap(), contentDescription = null, modifier = modifier)
+ Image(
+ icon.bitmap.asImageBitmap(),
+ contentDescription = null,
+ modifier = modifier,
+ colorFilter = colorFilter
+ )
is ResourceIcon -> {
val localContext = LocalContext.current
val wrappedContext: Context =
@@ -43,7 +49,12 @@ fun Image(icon: ComposeIcon, modifier: Modifier = Modifier) {
override fun getResources(): Resources = icon.res
}
CompositionLocalProvider(LocalContext provides wrappedContext) {
- Image(painterResource(icon.resId), contentDescription = null, modifier = modifier)
+ Image(
+ painterResource(icon.resId),
+ contentDescription = null,
+ modifier = modifier,
+ colorFilter = colorFilter
+ )
}
}
}
diff --git a/java/src/com/android/intentresolver/contentpreview/payloadtoggle/ui/composable/ShareouselComposable.kt b/java/src/com/android/intentresolver/contentpreview/payloadtoggle/ui/composable/ShareouselComposable.kt
index 7558d994..0cb7306d 100644
--- a/java/src/com/android/intentresolver/contentpreview/payloadtoggle/ui/composable/ShareouselComposable.kt
+++ b/java/src/com/android/intentresolver/contentpreview/payloadtoggle/ui/composable/ShareouselComposable.kt
@@ -36,6 +36,8 @@ import androidx.compose.foundation.lazy.itemsIndexed
import androidx.compose.foundation.lazy.rememberLazyListState
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material3.AssistChip
+import androidx.compose.material3.AssistChipDefaults
+import androidx.compose.material3.LocalContentColor
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
@@ -44,6 +46,7 @@ import androidx.compose.runtime.rememberCoroutineScope
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
import androidx.compose.ui.graphics.Color
+import androidx.compose.ui.graphics.ColorFilter
import androidx.compose.ui.graphics.RectangleShape
import androidx.compose.ui.graphics.asImageBitmap
import androidx.compose.ui.layout.ContentScale
@@ -167,7 +170,13 @@ private fun ActionCarousel(viewModel: ShareouselViewModel) {
label = actionViewModel.label,
onClick = { actionViewModel.onClicked() },
) {
- actionViewModel.icon?.let { Image(icon = it, modifier = Modifier.size(16.dp)) }
+ actionViewModel.icon?.let {
+ Image(
+ icon = it,
+ modifier = Modifier.size(16.dp),
+ colorFilter = ColorFilter.tint(LocalContentColor.current)
+ )
+ }
}
if (idx == actions.size - 1) {
Spacer(Modifier.width(dimensionResource(R.dimen.chooser_edge_margin_normal)))
@@ -188,7 +197,15 @@ private fun ShareouselAction(
onClick = onClick,
label = { Text(label) },
leadingIcon = leadingIcon,
- modifier = modifier
+ border = null,
+ shape = RoundedCornerShape(1000.dp), // pill shape.
+ colors =
+ AssistChipDefaults.assistChipColors(
+ containerColor = MaterialTheme.colorScheme.surfaceContainerHigh,
+ labelColor = MaterialTheme.colorScheme.onSurface,
+ leadingIconContentColor = MaterialTheme.colorScheme.onSurface
+ ),
+ modifier = modifier,
)
}