mirror of
https://github.com/meshtastic/Meshtastic-Android.git
synced 2026-04-20 22:23:37 +00:00
fix(ui): stable LazyColumn keys, semantic roles, and content descriptions (#5168)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: jamesarich <2199651+jamesarich@users.noreply.github.com>
This commit is contained in:
parent
5eba7e4dce
commit
2a6e27de09
10 changed files with 99 additions and 20 deletions
|
|
@ -57,8 +57,10 @@ import org.meshtastic.core.resources.debug_filter_clear
|
|||
import org.meshtastic.core.resources.debug_filter_included
|
||||
import org.meshtastic.core.resources.debug_filter_preset_title
|
||||
import org.meshtastic.core.resources.debug_filters
|
||||
import org.meshtastic.core.resources.filter_icon
|
||||
import org.meshtastic.core.resources.match_all
|
||||
import org.meshtastic.core.resources.match_any
|
||||
import org.meshtastic.core.resources.remove_filter
|
||||
import org.meshtastic.core.ui.icon.Add
|
||||
import org.meshtastic.core.ui.icon.Check
|
||||
import org.meshtastic.core.ui.icon.Close
|
||||
|
|
@ -281,8 +283,18 @@ fun DebugActiveFilters(
|
|||
selected = true,
|
||||
onClick = { onFilterTextsChange(filterTexts - filter) },
|
||||
label = { Text(filter) },
|
||||
leadingIcon = { Icon(imageVector = MeshtasticIcons.FilterAlt, contentDescription = null) },
|
||||
trailingIcon = { Icon(imageVector = MeshtasticIcons.Close, contentDescription = null) },
|
||||
leadingIcon = {
|
||||
Icon(
|
||||
imageVector = MeshtasticIcons.FilterAlt,
|
||||
contentDescription = stringResource(Res.string.filter_icon),
|
||||
)
|
||||
},
|
||||
trailingIcon = {
|
||||
Icon(
|
||||
imageVector = MeshtasticIcons.Close,
|
||||
contentDescription = stringResource(Res.string.remove_filter),
|
||||
)
|
||||
},
|
||||
)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -59,6 +59,7 @@ import org.meshtastic.core.resources.are_you_sure
|
|||
import org.meshtastic.core.resources.button_gpio
|
||||
import org.meshtastic.core.resources.buzzer_gpio
|
||||
import org.meshtastic.core.resources.cancel
|
||||
import org.meshtastic.core.resources.clear_time_zone
|
||||
import org.meshtastic.core.resources.config_device_doubleTapAsButtonPress_summary
|
||||
import org.meshtastic.core.resources.config_device_ledHeartbeatEnabled_summary
|
||||
import org.meshtastic.core.resources.config_device_tripleClickAsAdHocPing_summary
|
||||
|
|
@ -269,7 +270,10 @@ fun DeviceConfigScreenCommon(viewModel: RadioConfigViewModel, onBack: () -> Unit
|
|||
onValueChanged = { formState.value = formState.value.copy(tzdef = it) },
|
||||
trailingIcon = {
|
||||
IconButton(onClick = { formState.value = formState.value.copy(tzdef = "") }) {
|
||||
Icon(imageVector = MeshtasticIcons.Close, contentDescription = null)
|
||||
Icon(
|
||||
imageVector = MeshtasticIcons.Close,
|
||||
contentDescription = stringResource(Res.string.clear_time_zone),
|
||||
)
|
||||
}
|
||||
},
|
||||
)
|
||||
|
|
@ -282,7 +286,10 @@ fun DeviceConfigScreenCommon(viewModel: RadioConfigViewModel, onBack: () -> Unit
|
|||
shape = RectangleShape,
|
||||
onClick = { formState.value = formState.value.copy(tzdef = appTzPosixString) },
|
||||
) {
|
||||
Icon(imageVector = MeshtasticIcons.PhoneAndroid, contentDescription = null)
|
||||
Icon(
|
||||
imageVector = MeshtasticIcons.PhoneAndroid,
|
||||
contentDescription = stringResource(Res.string.config_device_use_phone_tz),
|
||||
)
|
||||
|
||||
Spacer(modifier = Modifier.width(8.dp))
|
||||
|
||||
|
|
|
|||
|
|
@ -30,6 +30,7 @@ import org.meshtastic.core.model.getColorFrom
|
|||
import org.meshtastic.core.model.getStringResFrom
|
||||
import org.meshtastic.core.repository.TakPrefs
|
||||
import org.meshtastic.core.resources.Res
|
||||
import org.meshtastic.core.resources.export_tak_data_package
|
||||
import org.meshtastic.core.resources.tak
|
||||
import org.meshtastic.core.resources.tak_config
|
||||
import org.meshtastic.core.resources.tak_role
|
||||
|
|
@ -74,7 +75,10 @@ fun TAKConfigScreen(viewModel: RadioConfigViewModel, onBack: () -> Unit) {
|
|||
onBack = onBack,
|
||||
actions = {
|
||||
IconButton(onClick = { exportLauncher("Meshtastic_TAK_Server.zip") }) {
|
||||
Icon(imageVector = MeshtasticIcons.Share, contentDescription = "Export TAK Data Package")
|
||||
Icon(
|
||||
imageVector = MeshtasticIcons.Share,
|
||||
contentDescription = stringResource(Res.string.export_tak_data_package),
|
||||
)
|
||||
}
|
||||
},
|
||||
configState = formState,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue