diff --git a/android/app/src/main/kotlin/com/flagship/abox/manager/ui/scene/SceneEditorScreen.kt b/android/app/src/main/kotlin/com/flagship/abox/manager/ui/scene/SceneEditorScreen.kt index 314c4d7..c33f1ef 100644 --- a/android/app/src/main/kotlin/com/flagship/abox/manager/ui/scene/SceneEditorScreen.kt +++ b/android/app/src/main/kotlin/com/flagship/abox/manager/ui/scene/SceneEditorScreen.kt @@ -84,9 +84,6 @@ import com.flagship.abox.manager.domain.SocketPowerState import com.flagship.abox.manager.domain.infrared.RemoteKeyBinding import com.flagship.abox.manager.domain.infrared.VirtualRemote -private const val DEFAULT_SOCKET_DEVICE_NAME = "Zigbee插座控制器" -private const val DEFAULT_TH_DEVICE_NAME = "温湿度传感器" -private const val DEFAULT_IR_DEVICE_NAME = "红外控制器" @OptIn(ExperimentalMaterial3Api::class) @Composable @@ -774,7 +771,7 @@ private fun AddTriggerDialog( onAdd: (type: Int, deviceName: String, time: String, temp: Double, hum: Double, op: ComparisonOperator) -> Unit, ) { var selectedType by remember { mutableIntStateOf(0) } - var deviceName by remember { mutableStateOf(DEFAULT_TH_DEVICE_NAME) } + var deviceName by remember { mutableStateOf("") } var timeInput by remember { mutableStateOf("07:30") } var tempThreshold by remember { mutableDoubleStateOf(28.0) } var humThreshold by remember { mutableDoubleStateOf(40.0) } @@ -855,9 +852,9 @@ private fun AddConditionDialog( onAddTimeRange: (String, String) -> Unit, ) { var selectedType by remember { mutableIntStateOf(0) } - var tempDeviceName by remember { mutableStateOf(DEFAULT_TH_DEVICE_NAME) } - var humDeviceName by remember { mutableStateOf(DEFAULT_TH_DEVICE_NAME) } - var socketDeviceName by remember { mutableStateOf(DEFAULT_SOCKET_DEVICE_NAME) } + var tempDeviceName by remember { mutableStateOf("") } + var humDeviceName by remember { mutableStateOf("") } + var socketDeviceName by remember { mutableStateOf("") } var operator by remember { mutableStateOf(ComparisonOperator.GREATER_THAN) } var tempVal by remember { mutableDoubleStateOf(26.0) } var humVal by remember { mutableDoubleStateOf(50.0) } @@ -997,7 +994,7 @@ private fun AddActionDialog( val defaultNotifyTitle = stringResource(R.string.scene_default_notify_title) val defaultNotifyMsg = stringResource(R.string.scene_default_notify_msg) - var socketName by remember { mutableStateOf(DEFAULT_SOCKET_DEVICE_NAME) } + var socketName by remember { mutableStateOf("") } var socketPower by remember { mutableStateOf(SocketPowerState.ON) } var selectedRemoteIndex by remember { mutableIntStateOf(0) } @@ -1056,7 +1053,6 @@ private fun AddActionDialog( 1 -> { if (availableRemotes.isEmpty()) { Text(stringResource(R.string.scene_no_virtual_remotes)) - OutlinedTextField(value = selectedButtonId, onValueChange = { selectedButtonId = it }, label = { Text(stringResource(R.string.scene_remote_button_slot_label)) }, singleLine = true) } else { Text(stringResource(R.string.scene_select_virtual_remote)) Row(horizontalArrangement = Arrangement.spacedBy(6.dp)) { @@ -1107,7 +1103,7 @@ private fun AddActionDialog( confirmButton = { val canConfirm = when (actionType) { 0 -> socketName.isNotBlank() - 1 -> selectedButtonId.isNotBlank() + 1 -> availableRemotes.isNotEmpty() && selectedButtonId.isNotBlank() 3 -> notifyTitle.isNotBlank() else -> true } @@ -1119,8 +1115,6 @@ private fun AddActionDialog( val remote = availableRemotes.getOrNull(selectedRemoteIndex) if (remote != null) { onAddRemote(remote.id.value, remote.displayName, selectedButtonId, selectedButtonName) - } else { - onAddRemote("default-ir", DEFAULT_IR_DEVICE_NAME, selectedButtonId, selectedButtonName) } } 2 -> onAddDelay(delaySeconds)