Package-level declarations
Types
A global manager for displaying alerts across the application. This allows ViewModels to trigger alerts without direct dependencies on UI components.
Interface for providing a flavored MapView. This allows the map feature to be decoupled from specific map implementations (Google Maps vs OSMDroid). Platform implementations create their own ViewModel via Koin.
A global manager for displaying snackbars across the application. This allows ViewModels to trigger transient feedback messages without direct dependencies on UI components or SnackbarHostState.
Properties
Provides the platform-specific Map Main Screen. On Desktop or JVM targets where native maps aren't available yet, it falls back to a PlaceholderScreen.
Provides the platform-specific Map Screen for a Node (e.g. Google Maps or OSMDroid on Android). On Desktop or JVM targets where native maps aren't available yet, it falls back to a PlaceholderScreen.
Provides an embeddable position-track map composable that renders a polyline with markers for the given positions. Unlike LocalNodeMapScreenProvider, this does not include a Scaffold or AppBar — it is designed to be embedded inside another screen layout (e.g. the position-log adaptive layout).
Provides an embeddable traceroute map composable that renders node markers and forward/return offset polylines for a traceroute result. Unlike LocalMapViewProvider, this does not include a Scaffold, AppBar, waypoints, location tracking, custom tiles, or any main-map features — it is designed to be embedded inside TracerouteMapScreen's scaffold.
Provides the platform-specific Traceroute Map Screen. On Desktop or JVM targets where native maps aren't available yet, it falls back to a PlaceholderScreen.
Functions
A helper component that renders an AlertManager.AlertData using the same logic as MainScreen.
Parses HTML into an AnnotatedString with platform-appropriate rendering.
Parses HTML into an AnnotatedString with platform-appropriate rendering.
JVM stub — returns the raw HTML as plain text (no HTML rendering on Desktop).
Converts a raw neighbor info string into an AnnotatedString with SNR values highlighted according to their quality.
Converts a raw traceroute string into an AnnotatedString with SNR values highlighted according to their quality.
Builds a Channel list from the difference between two ChannelSettings lists. Only changes are included in the resulting list.
Returns whether GPS/location services are currently disabled at the system level. Always false on platforms where this concept doesn't apply.
Returns whether GPS/location services are currently disabled at the system level. Always false on platforms where this concept doesn't apply.
JVM — GPS is never disabled on Desktop (concept doesn't apply).
Returns whether ACCESS_LOCAL_NETWORK is currently granted. Always true on platforms / API levels that don't gate local-network access behind a runtime permission.
Returns whether ACCESS_LOCAL_NETWORK is currently granted. Always true on platforms / API levels that don't gate local-network access behind a runtime permission.
JVM — local network permission is always considered granted on Desktop.
Returns whether location permissions are currently granted. Always true on platforms without runtime permissions.
Returns whether location permissions are currently granted. Always true on platforms without runtime permissions.
JVM — location permission is always considered granted on Desktop.
Returns a launcher function to prompt the user to open/pick a file. The callback receives the selected file URI.
Returns a launcher function to prompt the user to open/pick a file. The callback receives the selected file URI.
JVM — Opens a native file dialog to pick a file.
Returns a launcher to open the platform's location settings.
Returns a launcher to open the platform's location settings.
Returns a launcher to open the platform's location settings.
Returns a function to open the platform's map application at the given coordinates.
Returns a function to open the platform's map application at the given coordinates.
JVM stub — map opening is not available on Desktop.
Returns a function to open the platform's NFC settings.
Returns a function to open the platform's NFC settings.
JVM stub — NFC settings are not available on Desktop.
Returns a function to open the platform's browser with the given URL.
Returns a function to open the platform's browser with the given URL.
JVM stub — URL opening via Desktop browse API.
Generates a QR code painter directly using the Skia/Compose canvas API in pure Kotlin.
Returns a suspend function that reads up to maxChars characters of text from a CommonUri. Returns null if the file is empty or cannot be read.
Returns a suspend function that reads up to maxChars characters of text from a CommonUri. Returns null if the file is empty or cannot be read.
JVM — Reads text from a file URI.
Returns a launcher to request Bluetooth scan + connect permissions. No-op on platforms without runtime BLE perms.
Returns a launcher to request Bluetooth scan + connect permissions. No-op on platforms without runtime BLE perms.
JVM no-op — Desktop does not require runtime Bluetooth permissions.
Returns a launcher to request the ACCESS_LOCAL_NETWORK permission. No-op on platforms that don't require it.
Returns a launcher to request the ACCESS_LOCAL_NETWORK permission. No-op on platforms that don't require it.
JVM no-op — Desktop does not require runtime local network permissions.
Returns a launcher to request location permissions.
Returns a launcher to request location permissions.
Returns a launcher to request location permissions.
Returns a launcher to request the POST_NOTIFICATIONS permission. No-op on platforms that don't require it.
Returns a launcher to request the POST_NOTIFICATIONS permission. No-op on platforms that don't require it.
JVM no-op — Desktop does not require runtime notification permissions.
Returns a launcher function to prompt the user to save a file. The callback receives the saved file URI.
Returns a launcher function to prompt the user to save a file. The callback receives the saved file URI.
Returns a function to show a toast message.
Returns a function to show a toast message.
JVM stub — toast messages are logged instead.
Returns a function to show a toast message from a string resource.
Returns a function to show a toast message from a string resource.
JVM stub — toast messages are logged instead.
A Composable that sets the screen brightness while it is in the composition.
A Composable that sets the screen brightness while it is in the composition.
JVM no-op — screen brightness control is not available on Desktop.