diff --git a/core/ui/src/commonMain/kotlin/org/meshtastic/core/ui/util/QrUtils.kt b/core/ui/src/commonMain/kotlin/org/meshtastic/core/ui/util/QrUtils.kt index 278c96a409..b0f53993d9 100644 --- a/core/ui/src/commonMain/kotlin/org/meshtastic/core/ui/util/QrUtils.kt +++ b/core/ui/src/commonMain/kotlin/org/meshtastic/core/ui/util/QrUtils.kt @@ -27,6 +27,7 @@ import androidx.compose.ui.graphics.painter.Painter import androidx.compose.ui.unit.Density import androidx.compose.ui.unit.LayoutDirection import qrcode.QRCode +import qrcode.raw.ErrorCorrectionLevel /** * Generates a QR code painter directly using the Skia/Compose canvas API in pure Kotlin. @@ -37,7 +38,10 @@ import qrcode.QRCode @Suppress("MagicNumber") @Composable fun rememberQrCodePainter(text: String, size: Int = 512): Painter { - val qrCode = androidx.compose.runtime.remember(text) { QRCode.ofSquares().build(text) } + val qrCode = + androidx.compose.runtime.remember(text) { + QRCode.ofSquares().withErrorCorrectionLevel(ErrorCorrectionLevel.HIGH).build(text) + } val rawMatrix = androidx.compose.runtime.remember(qrCode) { qrCode.rawData } val matrixSize = androidx.compose.runtime.remember(qrCode) { rawMatrix.size } val quietZone = 4 // QR standard quiet zone is 4 modules on all sides