Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6073f3c5 authored by kwaky's avatar kwaky
Browse files

DO NOT MERGE Adjust NotificationView bottom margin based on whether Keyboard is shown.

If the Keyboard is shown, then margin bottom is 0.
Otherwise, the margin is the height of the NavBar.

Bug: 149022190
Test: Manual. Verify that NotificationView's margin adjusts based on
whether keyboard or IME is shown.

Change-Id: I96c50a4d773dfac9b57ab1c15cfc59d315da4605
parent c1e78426
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -20,7 +20,8 @@
    android:id="@+id/notification_view"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/notification_shade_background_color">
    android:background="@color/notification_shade_background_color"
    android:visibility="invisible">

    <View
        android:id="@+id/glass_pane"
+8 −0
Original line number Diff line number Diff line
@@ -1092,6 +1092,7 @@ public class CarStatusBar extends StatusBar implements CarBatteryController.Batt
        }

        mNavigationBarWindow.setVisibility(isKeyboardVisible ? View.GONE : View.VISIBLE);
        setNotificationViewBottomMargin(isKeyboardVisible ? 0 : mNavigationBarWindow.getHeight());
        mBottomNavBarVisible = !isKeyboardVisible;
    }

@@ -1155,6 +1156,13 @@ public class CarStatusBar extends StatusBar implements CarBatteryController.Batt
        addTemperatureViewToController(mRightNavigationBarView);
    }

    private void setNotificationViewBottomMargin(int bottomMargin) {
        ViewGroup.MarginLayoutParams params =
                (ViewGroup.MarginLayoutParams) mNotificationView.getLayoutParams();
        params.setMargins(params.leftMargin, params.topMargin, params.rightMargin, bottomMargin);
        mNotificationView.setLayoutParams(params);
    }

    @Override
    public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
        //When executing dump() function simultaneously, we need to serialize them