mirror of
https://github.com/home-assistant/android
synced 2024-10-02 22:34:46 +00:00
parent
65863148fc
commit
26c6bcd282
|
@ -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 {
|
||||||
|
|
|
@ -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
|
||||||
) { }
|
)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -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))
|
||||||
|
)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -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))
|
||||||
|
)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue