From b13711ddbc897080bad04d4771adff429b8eb0c2 Mon Sep 17 00:00:00 2001 From: Narasimha-sc <166327228+Narasimha-sc@users.noreply.github.com> Date: Wed, 29 Apr 2026 07:05:45 +0000 Subject: [PATCH] android: fix system navigation bar overlapping call control buttons during call (#6885) The active-call action button row (mute, speaker, hang up, flip/toggle camera) was rendered with only a fixed 20.dp bottom padding. Under edge-to-edge layout on devices with 3-button navigation, the system nav bar (~48.dp) drew on top of these buttons, hiding part of them. Add `.navigationBarsPadding()` to the BoxWithConstraints holding the buttons so the row floats above the system nav bar inset. No effect on devices using gesture nav (the inset there is small enough to not collide). --- .../kotlin/chat/simplex/common/views/call/CallView.android.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/multiplatform/common/src/androidMain/kotlin/chat/simplex/common/views/call/CallView.android.kt b/apps/multiplatform/common/src/androidMain/kotlin/chat/simplex/common/views/call/CallView.android.kt index 56279a5143..011619bab0 100644 --- a/apps/multiplatform/common/src/androidMain/kotlin/chat/simplex/common/views/call/CallView.android.kt +++ b/apps/multiplatform/common/src/androidMain/kotlin/chat/simplex/common/views/call/CallView.android.kt @@ -394,7 +394,7 @@ private fun ActiveCallOverlayLayout( DisabledBackgroundCallsButton() } - BoxWithConstraints(Modifier.padding(start = 6.dp, end = 6.dp, bottom = DEFAULT_PADDING).align(Alignment.CenterHorizontally)) { + BoxWithConstraints(Modifier.navigationBarsPadding().padding(start = 6.dp, end = 6.dp, bottom = DEFAULT_PADDING).align(Alignment.CenterHorizontally)) { val size = ((maxWidth - DEFAULT_PADDING_HALF * 4) / 5).coerceIn(0.dp, 60.dp) // limiting max width for tablets/wide screens, will be displayed in the center val padding = ((min(420.dp, maxWidth) - size * 5) / 4).coerceAtLeast(0.dp)