Fix icon button sizes (#3918)

* Fix icon button sizes

* Merge fixes
This commit is contained in:
Joris Pelgröm 2023-10-06 20:38:09 +02:00 committed by GitHub
parent 65863148fc
commit 26c6bcd282
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 57 additions and 35 deletions

View file

@ -2,6 +2,7 @@ package io.homeassistant.companion.android.complications.views
import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.material.icons.Icons import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.Check import androidx.compose.material.icons.filled.Check
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
@ -12,9 +13,12 @@ import androidx.compose.ui.res.stringResource
import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import androidx.wear.compose.material3.Button import androidx.wear.compose.material3.Button
import androidx.wear.compose.material3.FilledIconButton
import androidx.wear.compose.material3.Icon import androidx.wear.compose.material3.Icon
import androidx.wear.compose.material3.IconButtonDefaults
import androidx.wear.compose.material3.Text import androidx.wear.compose.material3.Text
import androidx.wear.compose.material3.ToggleButton import androidx.wear.compose.material3.ToggleButton
import androidx.wear.compose.material3.touchTargetAwareSize
import androidx.wear.compose.navigation.SwipeDismissableNavHost import androidx.wear.compose.navigation.SwipeDismissableNavHost
import androidx.wear.compose.navigation.composable import androidx.wear.compose.navigation.composable
import androidx.wear.compose.navigation.rememberSwipeDismissableNavController import androidx.wear.compose.navigation.rememberSwipeDismissableNavController
@ -151,12 +155,17 @@ fun MainConfigView(
} }
item { item {
Button( FilledIconButton(
modifier = Modifier.padding(top = 8.dp), modifier = Modifier.padding(top = 8.dp).touchTargetAwareSize(IconButtonDefaults.SmallButtonSize),
onClick = { onAcceptClicked() }, onClick = { onAcceptClicked() },
enabled = loaded && entity != null, enabled = loaded && entity != null
icon = { Icon(Icons.Filled.Check, stringResource(id = R.string.save)) } ) {
) { } Icon(
Icons.Filled.Check,
contentDescription = stringResource(id = R.string.save),
modifier = Modifier.size(IconButtonDefaults.iconSizeFor(IconButtonDefaults.SmallButtonSize))
)
}
} }
} else { } else {
item { item {

View file

@ -40,10 +40,12 @@ import androidx.wear.compose.foundation.lazy.ScalingLazyColumn
import androidx.wear.compose.foundation.lazy.items import androidx.wear.compose.foundation.lazy.items
import androidx.wear.compose.foundation.lazy.rememberScalingLazyListState import androidx.wear.compose.foundation.lazy.rememberScalingLazyListState
import androidx.wear.compose.material3.Button import androidx.wear.compose.material3.Button
import androidx.wear.compose.material3.ButtonDefaults import androidx.wear.compose.material3.FilledIconButton
import androidx.wear.compose.material3.Icon import androidx.wear.compose.material3.Icon
import androidx.wear.compose.material3.IconButtonDefaults
import androidx.wear.compose.material3.LocalContentColor import androidx.wear.compose.material3.LocalContentColor
import androidx.wear.compose.material3.Text import androidx.wear.compose.material3.Text
import androidx.wear.compose.material3.touchTargetAwareSize
import androidx.wear.compose.navigation.SwipeDismissableNavHost import androidx.wear.compose.navigation.SwipeDismissableNavHost
import androidx.wear.compose.navigation.composable import androidx.wear.compose.navigation.composable
import androidx.wear.compose.navigation.rememberSwipeDismissableNavController import androidx.wear.compose.navigation.rememberSwipeDismissableNavController
@ -56,6 +58,7 @@ import io.homeassistant.companion.android.common.data.websocket.impl.entities.As
import io.homeassistant.companion.android.conversation.ConversationViewModel import io.homeassistant.companion.android.conversation.ConversationViewModel
import io.homeassistant.companion.android.theme.WearAppTheme import io.homeassistant.companion.android.theme.WearAppTheme
import io.homeassistant.companion.android.theme.getFilledTonalButtonColors import io.homeassistant.companion.android.theme.getFilledTonalButtonColors
import io.homeassistant.companion.android.theme.wearColorScheme
import io.homeassistant.companion.android.util.KeepScreenOn import io.homeassistant.companion.android.util.KeepScreenOn
import io.homeassistant.companion.android.views.ListHeader import io.homeassistant.companion.android.views.ListHeader
import io.homeassistant.companion.android.views.ThemeLazyColumn import io.homeassistant.companion.android.views.ThemeLazyColumn
@ -193,22 +196,23 @@ fun ConversationResultView(
.clip(CircleShape) .clip(CircleShape)
) )
} }
Button( FilledIconButton(
onClick = { onMicrophoneInput() }, onClick = { onMicrophoneInput() },
colors = colors =
if (inputIsActive) { if (inputIsActive) {
ButtonDefaults.buttonColors(containerColor = Color.Transparent, contentColor = Color.Black) IconButtonDefaults.filledIconButtonColors(containerColor = Color.Transparent, contentColor = Color.Black)
} else { } else {
ButtonDefaults.buttonColors() IconButtonDefaults.filledIconButtonColors(containerColor = wearColorScheme.outlineVariant, contentColor = Color.White)
}, },
icon = { modifier = Modifier.touchTargetAwareSize(IconButtonDefaults.SmallButtonSize)
Icon( ) {
Icons.Filled.Mic, Icon(
contentDescription = stringResource(R.string.assist_start_listening), Icons.Filled.Mic,
tint = LocalContentColor.current contentDescription = stringResource(R.string.assist_start_listening),
) modifier = Modifier.size(IconButtonDefaults.iconSizeFor(IconButtonDefaults.SmallButtonSize)),
} tint = LocalContentColor.current
) { } )
}
} }
} }
} }

View file

@ -2,6 +2,7 @@ package io.homeassistant.companion.android.home.views
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.size
import androidx.compose.material.icons.Icons import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.Check import androidx.compose.material.icons.filled.Check
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
@ -16,11 +17,12 @@ import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import androidx.wear.compose.material.Picker import androidx.wear.compose.material.Picker
import androidx.wear.compose.material.rememberPickerState import androidx.wear.compose.material.rememberPickerState
import androidx.wear.compose.material3.Button import androidx.wear.compose.material3.FilledIconButton
import androidx.wear.compose.material3.ButtonDefaults
import androidx.wear.compose.material3.Icon import androidx.wear.compose.material3.Icon
import androidx.wear.compose.material3.IconButtonDefaults
import androidx.wear.compose.material3.MaterialTheme import androidx.wear.compose.material3.MaterialTheme
import androidx.wear.compose.material3.Text import androidx.wear.compose.material3.Text
import androidx.wear.compose.material3.touchTargetAwareSize
import androidx.wear.tooling.preview.devices.WearDevices import androidx.wear.tooling.preview.devices.WearDevices
import com.google.android.horologist.annotations.ExperimentalHorologistApi import com.google.android.horologist.annotations.ExperimentalHorologistApi
import com.google.android.horologist.composables.picker.toRotaryScrollAdapter import com.google.android.horologist.composables.picker.toRotaryScrollAdapter
@ -66,14 +68,16 @@ fun RefreshIntervalPickerView(
color = wearColorScheme.primary color = wearColorScheme.primary
) )
} }
Button( FilledIconButton(
onClick = { onSelectInterval(options[state.selectedOption]) }, onClick = { onSelectInterval(options[state.selectedOption]) },
colors = ButtonDefaults.buttonColors(), modifier = Modifier.touchTargetAwareSize(IconButtonDefaults.SmallButtonSize)
modifier = Modifier, ) {
icon = { Icon(
Icon(Icons.Filled.Check, stringResource(id = R.string.save)) Icons.Filled.Check,
} contentDescription = stringResource(id = R.string.save),
) { } modifier = Modifier.size(IconButtonDefaults.iconSizeFor(IconButtonDefaults.SmallButtonSize))
)
}
} }
} }

View file

@ -2,6 +2,7 @@ package io.homeassistant.companion.android.home.views
import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.material.icons.Icons import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.Add import androidx.compose.material.icons.filled.Add
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
@ -14,9 +15,11 @@ import androidx.compose.ui.text.style.TextOverflow
import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import androidx.wear.compose.material3.Button import androidx.wear.compose.material3.Button
import androidx.wear.compose.material3.ButtonDefaults import androidx.wear.compose.material3.FilledIconButton
import androidx.wear.compose.material3.Icon import androidx.wear.compose.material3.Icon
import androidx.wear.compose.material3.IconButtonDefaults
import androidx.wear.compose.material3.Text import androidx.wear.compose.material3.Text
import androidx.wear.compose.material3.touchTargetAwareSize
import androidx.wear.tooling.preview.devices.WearDevices import androidx.wear.tooling.preview.devices.WearDevices
import com.mikepenz.iconics.compose.Image import com.mikepenz.iconics.compose.Image
import io.homeassistant.companion.android.data.SimplifiedEntity import io.homeassistant.companion.android.data.SimplifiedEntity
@ -73,14 +76,16 @@ fun SetShortcutsTileView(
} }
if (shortcutEntities.size < 7) { if (shortcutEntities.size < 7) {
item { item {
Button( FilledIconButton(
modifier = Modifier.padding(top = 16.dp), modifier = Modifier.padding(top = 16.dp).touchTargetAwareSize(IconButtonDefaults.SmallButtonSize),
onClick = { onShortcutEntitySelectionChange(shortcutEntities.size) }, onClick = { onShortcutEntitySelectionChange(shortcutEntities.size) }
colors = ButtonDefaults.buttonColors(), ) {
icon = { Icon(
Icon(Icons.Filled.Add, stringResource(id = commonR.string.add_shortcut)) Icons.Filled.Add,
} contentDescription = stringResource(id = commonR.string.add_shortcut),
) { } modifier = Modifier.size(IconButtonDefaults.iconSizeFor(IconButtonDefaults.SmallButtonSize))
)
}
} }
} }
} }