From 2821da434df065ca6b9b1b5f7e08d58804aeb793 Mon Sep 17 00:00:00 2001 From: darken Date: Sun, 3 May 2026 19:19:34 +0200 Subject: [PATCH] fix(settings): Hide Microphone & Press controls when AAP isn't ready --- .../capod/main/ui/devicesettings/DeviceSettingsScreen.kt | 4 ++-- .../capod/main/ui/devicesettings/cards/ControlsCard.kt | 8 ++++---- .../capod/main/ui/devicesettings/cards/SoundCard.kt | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/eu/darken/capod/main/ui/devicesettings/DeviceSettingsScreen.kt b/app/src/main/java/eu/darken/capod/main/ui/devicesettings/DeviceSettingsScreen.kt index d0acb892..e1b0c89a 100644 --- a/app/src/main/java/eu/darken/capod/main/ui/devicesettings/DeviceSettingsScreen.kt +++ b/app/src/main/java/eu/darken/capod/main/ui/devicesettings/DeviceSettingsScreen.kt @@ -386,7 +386,7 @@ fun DeviceSettingsScreen( val showSoundSection = (features.hasPersonalizedVolume && personalizedVol != null) || (features.hasToneVolume && toneVol != null) || - features.hasMicrophoneMode + (features.hasMicrophoneMode && device.microphoneMode != null) if (showSoundSection) { item("sound_section") { SoundCard( @@ -404,7 +404,7 @@ fun DeviceSettingsScreen( } // ── Controls ───────────────────────────────── - val showControlsSection = features.hasStemConfig || + val showControlsSection = (features.hasStemConfig && device.stemConfig != null) || (features.hasEndCallMuteMic && device.endCallMuteMic != null) || (features.hasPressSpeed && device.pressSpeed != null) || (features.hasPressHoldDuration && device.pressHoldDuration != null) || diff --git a/app/src/main/java/eu/darken/capod/main/ui/devicesettings/cards/ControlsCard.kt b/app/src/main/java/eu/darken/capod/main/ui/devicesettings/cards/ControlsCard.kt index c3ba5590..1f78062a 100644 --- a/app/src/main/java/eu/darken/capod/main/ui/devicesettings/cards/ControlsCard.kt +++ b/app/src/main/java/eu/darken/capod/main/ui/devicesettings/cards/ControlsCard.kt @@ -29,10 +29,10 @@ internal fun ControlsCard( val volSwipe = device.volumeSwipe val volSwipeLen = device.volumeSwipeLength - val showPressControlsNav = features.hasStemConfig || - features.hasPressSpeed || - features.hasPressHoldDuration || - features.hasEndCallMuteMic + val showPressControlsNav = (features.hasStemConfig && device.stemConfig != null) || + (features.hasPressSpeed && device.pressSpeed != null) || + (features.hasPressHoldDuration && device.pressHoldDuration != null) || + (features.hasEndCallMuteMic && device.endCallMuteMic != null) SettingsSection(title = stringResource(R.string.device_settings_category_controls_label)) { if (showPressControlsNav) { diff --git a/app/src/main/java/eu/darken/capod/main/ui/devicesettings/cards/SoundCard.kt b/app/src/main/java/eu/darken/capod/main/ui/devicesettings/cards/SoundCard.kt index 9af0dd59..ca32dbcd 100644 --- a/app/src/main/java/eu/darken/capod/main/ui/devicesettings/cards/SoundCard.kt +++ b/app/src/main/java/eu/darken/capod/main/ui/devicesettings/cards/SoundCard.kt @@ -81,7 +81,7 @@ internal fun SoundCard( ) } } - if (features.hasMicrophoneMode) { + if (features.hasMicrophoneMode && device.microphoneMode != null) { if (isPro) { val micMode = device.microphoneMode ?: AapSetting.MicrophoneMode(AapSetting.MicrophoneMode.Mode.AUTO)