Skip to content

Commit

Permalink
Merge pull request #81 from kiwicom/icons-default-sizing
Browse files Browse the repository at this point in the history
icon: provide default size even for intrinsic measuring
  • Loading branch information
hrach committed Feb 16, 2022
2 parents 7d46064 + 48bb3b4 commit d62f4a0
Showing 1 changed file with 1 addition and 15 deletions.
16 changes: 1 addition & 15 deletions ui/src/main/java/kiwi/orbit/compose/ui/controls/Icon.kt
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ import androidx.compose.runtime.Composable
import androidx.compose.runtime.remember
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.paint
import androidx.compose.ui.geometry.Size
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.ColorFilter
import androidx.compose.ui.graphics.ImageBitmap
Expand Down Expand Up @@ -79,7 +78,7 @@ public fun Icon(
Box(
modifier
.toolingGraphicsLayer()
.defaultSizeFor(painter)
.size(24.dp)
.paint(
painter,
colorFilter = colorFilter,
Expand All @@ -88,16 +87,3 @@ public fun Icon(
.then(semantics)
)
}

private fun Modifier.defaultSizeFor(painter: Painter) =
this.then(
if (painter.intrinsicSize == Size.Unspecified || painter.intrinsicSize.isInfinite()) {
DefaultIconSizeModifier
} else {
Modifier
}
)

private fun Size.isInfinite() = width.isInfinite() && height.isInfinite()

private val DefaultIconSizeModifier = Modifier.size(24.dp)

0 comments on commit d62f4a0

Please sign in to comment.