Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 34bbf83c authored by cketti's avatar cketti
Browse files

Add `IconsWithBaseline`

parent 9dad26e5
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
package app.k9mail.core.ui.compose.common.image

import androidx.compose.runtime.Immutable
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.unit.Dp

@Immutable
data class ImageWithBaseline(
    val image: ImageVector,
    val baseline: Dp,
)
+16 −0
Original line number Diff line number Diff line
package app.k9mail.core.ui.compose.theme

import androidx.compose.material.icons.filled.Warning
import androidx.compose.ui.unit.dp
import app.k9mail.core.ui.compose.common.image.ImageWithBaseline
import androidx.compose.material.icons.Icons as MaterialIcons

// We're using "by lazy" so not all icons are loaded into memory as soon as a nested object is accessed. But once a
// property is accessed we want to retain the `ImageWithBaseline` instance.
object IconsWithBaseline {
    object Filled {
        val warning: ImageWithBaseline by lazy {
            ImageWithBaseline(image = MaterialIcons.Filled.Warning, baseline = 21.dp)
        }
    }
}