From a29498062723bc82af69d37c0a392cc684c9195b Mon Sep 17 00:00:00 2001 From: MM20 <15646950+MM2-0@users.noreply.github.com> Date: Mon, 22 May 2023 21:34:09 +0200 Subject: [PATCH] Fix clock icon shape clipping --- .../de/mm20/launcher2/ui/component/ShapedLauncherIcon.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/ui/src/main/java/de/mm20/launcher2/ui/component/ShapedLauncherIcon.kt b/app/ui/src/main/java/de/mm20/launcher2/ui/component/ShapedLauncherIcon.kt index 4d670e34..e9a905b8 100644 --- a/app/ui/src/main/java/de/mm20/launcher2/ui/component/ShapedLauncherIcon.kt +++ b/app/ui/src/main/java/de/mm20/launcher2/ui/component/ShapedLauncherIcon.kt @@ -38,6 +38,7 @@ import androidx.compose.runtime.remember import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip import androidx.compose.ui.geometry.Offset import androidx.compose.ui.geometry.Rect import androidx.compose.ui.geometry.Size @@ -187,6 +188,7 @@ fun ShapedLauncherIcon( when (fg) { is ClockLayer -> { ClockLayer( + modifier = Modifier.fillMaxSize().clip(shape), sublayers = fg.sublayers, defaultMinute = fg.defaultMinute, defaultHour = fg.defaultHour, @@ -198,6 +200,7 @@ fun ShapedLauncherIcon( is TintedClockLayer -> { ClockLayer( + modifier = Modifier.fillMaxSize().clip(shape), sublayers = fg.sublayers, defaultMinute = fg.defaultMinute, defaultHour = fg.defaultHour, @@ -424,6 +427,7 @@ private fun ClockLayer( defaultSecond: Int, scale: Float, tintColor: Color?, + modifier: Modifier = Modifier, ) { val time = remember(LocalTime.current) { Instant.ofEpochMilli(System.currentTimeMillis()).atZone(ZoneId.systemDefault()) @@ -460,7 +464,7 @@ private fun ClockLayer( } } - Canvas(modifier = Modifier.fillMaxSize()) { + Canvas(modifier = modifier) { val colorFilter = tintColor?.let { PorterDuffColorFilter(tintColor.toArgb(), PorterDuff.Mode.SRC_IN) }