[android] Fix camera cutout offset in navigation

Signed-off-by: Jean-Baptiste <jeanbaptiste.charron@outlook.fr>
This commit is contained in:
Jean-Baptiste
2025-12-15 18:02:38 +01:00
parent e4275cdd3c
commit bc6bc091c7
4 changed files with 17 additions and 6 deletions

View File

@@ -98,6 +98,11 @@ public class NavigationController implements TrafficManager.TrafficCallback, Nav
mSpeedLimit = topFrame.findViewById(R.id.nav_speed_limit);
mCurrentSpeed = topFrame.findViewById(R.id.nav_current_speed);
View mTopbar = topFrame.findViewById(R.id.statutbar);
ViewCompat.setOnApplyWindowInsetsListener(mTopbar,(v, windowInsets) -> {
UiUtils.setViewNavigationInsetsPaddingNoBottom(v, windowInsets);
return windowInsets;
});
// Show a blank view below the navbar to hide the menu content
final View navigationBarBackground = mFrame.findViewById(R.id.nav_bottom_sheet_nav_bar);
final View nextTurnContainer = mFrame.findViewById(R.id.nav_next_turn_container);

View File

@@ -281,6 +281,12 @@ public final class UiUtils
view.setPadding(systemInsets.left, systemInsets.top, systemInsets.right, view.getPaddingBottom());
}
public static void setViewNavigationInsetsPaddingNoBottom(View view, WindowInsetsCompat windowInsets)
{
final Insets systemInsets = windowInsets.getInsets(WindowInsetsCompat.Type.systemBars() | WindowInsetsCompat.Type.displayCutout());
view.setPadding(view.getPaddingStart(), systemInsets.top, view.getPaddingEnd(), view.getPaddingBottom());
}
public static void setupNavigationIcon(@NonNull MaterialToolbar toolbar, @NonNull View.OnClickListener listener)
{
View customNavigationButton = toolbar.findViewById(R.id.back);

View File

@@ -11,13 +11,13 @@
<FrameLayout
android:layout_width="match_parent"
android:id="@+id/statutbar"
android:layout_height="15dp"
android:layout_height="1dp"
app:layout_constraintTop_toTopOf="parent" />
<com.google.android.material.card.MaterialCardView
android:id="@+id/street_frame"
android:layout_width="500dp"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_half_plus_eight"
android:layout_marginTop="@dimen/margin_quarter"
android:layout_marginEnd="@dimen/margin_quarter"
app:cardCornerRadius="@dimen/margin_half"
android:elevation="@dimen/nav_elevation"
@@ -52,7 +52,7 @@
app:layout_constraintEnd_toStartOf="@+id/street_frame"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/statutbar"
android:layout_marginTop="@dimen/margin_half_plus_eight"
android:layout_marginTop="@dimen/margin_quarter"
android:layout_marginStart="@dimen/margin_quarter"
android:clickable="true"
android:elevation="@dimen/nav_elevation">

View File

@@ -11,13 +11,13 @@
<FrameLayout
android:layout_width="match_parent"
android:id="@+id/statutbar"
android:layout_height="25dp"
android:layout_height="1dp"
app:layout_constraintTop_toTopOf="parent" />
<com.google.android.material.card.MaterialCardView
android:id="@+id/street_frame"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_half_plus"
android:layout_marginTop="@dimen/margin_quarter"
android:layout_marginStart="@dimen/nav_street_left"
android:layout_marginEnd="@dimen/margin_quarter"
app:cardCornerRadius="@dimen/margin_half"
@@ -55,7 +55,7 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/statutbar"
android:layout_marginStart="@dimen/margin_half"
android:layout_marginTop="@dimen/margin_half_plus"
android:layout_marginTop="@dimen/margin_quarter"
android:clickable="true"
android:elevation="@dimen/nav_elevation">
<LinearLayout