Package-level declarations

Types

Link copied to clipboard

Visual style for ConnectionActionButton. Maps to the four canonical M3 button variants.

Functions

Link copied to clipboard
fun ConnectingDeviceInfo(deviceName: String, deviceAddress: String, connectionStatus: ConnectionStatus, connectionProgress: String?, onClickDisconnect: () -> Unit, modifier: Modifier = Modifier)

Displays the currently connecting (or connected) device with its name, address, connection status, and a disconnect button.

Link copied to clipboard
fun ConnectionActionButton(onClick: () -> Unit, icon: ImageVector, text: String, modifier: Modifier = Modifier, style: ConnectionActionButtonStyle = ConnectionActionButtonStyle.Filled, enabled: Boolean = true, iconContentDescription: String? = null)

Shared "icon + label" button used throughout the Connections screen. Centralises M3 sizing conventions (ButtonDefaults.IconSize, ButtonDefaults.IconSpacing, and the variant-appropriate *WithIconContentPadding) so every scan / add / empty-state affordance renders identically.

Link copied to clipboard
fun CurrentlyConnectedInfo(node: Node, onNavigateToNodeDetails: (Int) -> Unit, onClickDisconnect: () -> Unit, modifier: Modifier = Modifier, bleDevice: DeviceListEntry.Ble? = null)
Link copied to clipboard
fun DeviceList(connectionState: ConnectionState, selectedDevice: String, bleDevices: List<DeviceListEntry>, usbDevices: List<DeviceListEntry>, discoveredTcpDevices: List<DeviceListEntry>, recentTcpDevices: List<DeviceListEntry>, isBleScanning: Boolean, isNetworkScanning: Boolean, onSelectDevice: (DeviceListEntry) -> Unit, onToggleBleScan: () -> Unit, onToggleNetworkScan: () -> Unit, onAddManualAddress: (address: String, fullAddress: String) -> Unit, onRemoveRecentAddress: (DeviceListEntry) -> Unit, modifier: Modifier = Modifier, showBleSection: Boolean = true, showNetworkSection: Boolean = true, showUsbSection: Boolean = true)

Unified device list: BLE / USB / Network sections rendered as one scrollable LazyColumn.

Link copied to clipboard
fun DeviceListItem(connectionState: ConnectionState, device: DeviceListEntry, onSelect: () -> Unit, modifier: Modifier = Modifier, onDelete: () -> Unit? = null, rssi: Int? = null)
Link copied to clipboard
fun DeviceSectionHeader(title: String, modifier: Modifier = Modifier, showProgress: Boolean = false, trailing: @Composable () -> Unit = {})

Section header used to group content in the Connections list.

Link copied to clipboard
fun DisconnectButton(onClick: () -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true)

Full-width error-tinted OutlinedButton used by both the "currently connected" and "connecting" card states. Centralises the color/label so every call site stays in lock-step.

Link copied to clipboard
fun EmptyStateContent(text: String, imageVector: ImageVector, modifier: Modifier = Modifier, action: @Composable () -> Unit? = null)
Link copied to clipboard
fun TransportFilterChips(showBle: Boolean, showNetwork: Boolean, showUsb: Boolean, onToggleBle: () -> Unit, onToggleNetwork: () -> Unit, onToggleUsb: () -> Unit, modifier: Modifier = Modifier)

Inclusive transport-visibility filter chips rendered below the connection card. Each chip independently toggles the visibility of its corresponding section (showBle → BLE, showNetwork → Network/TCP, showUsb → USB) in the device list. Selections are persisted by the caller (defaults to all-on).