From eada6ea992f1fa8ea42427f766a9a750b7932ff5 Mon Sep 17 00:00:00 2001 From: Aguragorn Date: Fri, 27 Jan 2023 14:19:26 +0800 Subject: [PATCH] feat: move leading icon creation into the caller --- .../com/jetpackduba/gitnuro/ui/BranchFilter.kt | 13 ++++++++++++- .../ui/components/AdjustableOutlinedTextField.kt | 13 ++----------- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/src/main/kotlin/com/jetpackduba/gitnuro/ui/BranchFilter.kt b/src/main/kotlin/com/jetpackduba/gitnuro/ui/BranchFilter.kt index fe5bebc..5fed010 100644 --- a/src/main/kotlin/com/jetpackduba/gitnuro/ui/BranchFilter.kt +++ b/src/main/kotlin/com/jetpackduba/gitnuro/ui/BranchFilter.kt @@ -1,6 +1,7 @@ package com.jetpackduba.gitnuro.ui import androidx.compose.foundation.layout.* +import androidx.compose.material.Icon import androidx.compose.material.MaterialTheme import androidx.compose.material.OutlinedTextField import androidx.compose.material.Text @@ -8,6 +9,7 @@ import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState import androidx.compose.runtime.getValue import androidx.compose.ui.Modifier +import androidx.compose.ui.res.painterResource import androidx.compose.ui.unit.dp import com.jetpackduba.gitnuro.ui.components.AdjustableOutlinedTextField import com.jetpackduba.gitnuro.ui.components.gitnuroViewModel @@ -30,13 +32,22 @@ fun BranchFilter( onValueChange = { branchFilterViewModel.newBranchFilter(keyword = it) }, hint = "Filter Branches", textStyle = MaterialTheme.typography.caption, - leadingIconResourcePath = "branch_filter.svg", maxLines = 1, modifier = Modifier .wrapContentHeight() .fillMaxWidth() .heightIn(min = 8.dp) .defaultMinSize(minHeight = 8.dp), + leadingIcon = { + Icon( + painter = painterResource("branch_filter.svg"), + contentDescription = null, + modifier = Modifier + .padding(end = 8.dp) + .size(16.dp), + tint = MaterialTheme.typography.caption.color, + ) + } ) } diff --git a/src/main/kotlin/com/jetpackduba/gitnuro/ui/components/AdjustableOutlinedTextField.kt b/src/main/kotlin/com/jetpackduba/gitnuro/ui/components/AdjustableOutlinedTextField.kt index 4fd3b7c..e68778f 100644 --- a/src/main/kotlin/com/jetpackduba/gitnuro/ui/components/AdjustableOutlinedTextField.kt +++ b/src/main/kotlin/com/jetpackduba/gitnuro/ui/components/AdjustableOutlinedTextField.kt @@ -44,7 +44,7 @@ fun AdjustableOutlinedTextField( shape: Shape = RoundedCornerShape(4.dp), backgroundColor: Color = MaterialTheme.colors.background, visualTransformation: VisualTransformation = VisualTransformation.None, - leadingIconResourcePath: String = "", + leadingIcon: (@Composable () -> Unit)? = null, ) { val textColor = textStyle.color.takeOrElse { colors.textColor(enabled).value @@ -87,16 +87,7 @@ fun AdjustableOutlinedTextField( verticalAlignment = Alignment.CenterVertically, modifier = Modifier.wrapContentHeight(), ) { - if (leadingIconResourcePath.isNotEmpty()) { - Icon( - painter = painterResource(leadingIconResourcePath), - contentDescription = null, - modifier = Modifier - .padding(end = 8.dp) - .size(16.dp), - tint = textColor, - ) - } + leadingIcon?.invoke() Box( contentAlignment = Alignment.CenterStart,