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

Commit 7c6a4eee authored by Heemin Seog's avatar Heemin Seog Committed by Android (Google) Code Review
Browse files

Merge "Ensure notif panel behavior in immersive mode" into rvc-qpr-dev

parents b2bf4c16 50799936
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -25,7 +25,8 @@
    <ViewStub android:id="@+id/notification_panel_stub"
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:layout="@layout/notification_panel_container"/>
              android:layout="@layout/notification_panel_container"
              android:layout_marginBottom="@dimen/car_bottom_navigation_bar_height"/>

    <ViewStub android:id="@+id/keyguard_stub"
              android:layout_width="match_parent"
+6 −0
Original line number Diff line number Diff line
@@ -194,6 +194,12 @@
    <dimen name="car_navigation_bar_width">760dp</dimen>
    <dimen name="car_left_navigation_bar_width">96dp</dimen>
    <dimen name="car_right_navigation_bar_width">96dp</dimen>
    <!-- In order to change the height of the bottom nav bar, overlay navigation_bar_height in
         frameworks/base/core/res/res instead. -->
    <dimen name="car_bottom_navigation_bar_height">@*android:dimen/navigation_bar_height</dimen>
    <!-- In order to change the height of the top nav bar, overlay status_bar_height in
         frameworks/base/core/res/res instead. -->
    <dimen name="car_top_navigation_bar_height">@*android:dimen/status_bar_height</dimen>

    <dimen name="car_user_switcher_container_height">420dp</dimen>
    <!-- This must be the negative of car_user_switcher_container_height for the animation. -->
+2 −2
Original line number Diff line number Diff line
@@ -170,7 +170,7 @@ public class SystemBarConfigs {
                    new SystemBarConfigBuilder()
                            .setSide(TOP)
                            .setGirth(mResources.getDimensionPixelSize(
                                    com.android.internal.R.dimen.status_bar_height))
                                    R.dimen.car_top_navigation_bar_height))
                            .setBarType(mResources.getInteger(R.integer.config_topSystemBarType))
                            .setZOrder(mResources.getInteger(R.integer.config_topSystemBarZOrder))
                            .setHideForKeyboard(mResources.getBoolean(
@@ -184,7 +184,7 @@ public class SystemBarConfigs {
                    new SystemBarConfigBuilder()
                            .setSide(BOTTOM)
                            .setGirth(mResources.getDimensionPixelSize(
                                    com.android.internal.R.dimen.navigation_bar_height))
                                    R.dimen.car_bottom_navigation_bar_height))
                            .setBarType(mResources.getInteger(R.integer.config_bottomSystemBarType))
                            .setZOrder(
                                    mResources.getInteger(R.integer.config_bottomSystemBarZOrder))
+22 −3
Original line number Diff line number Diff line
@@ -16,8 +16,6 @@

package com.android.systemui.car.notification;

import static android.view.WindowInsets.Type.navigationBars;

import android.app.ActivityManager;
import android.car.Car;
import android.car.drivingstate.CarUxRestrictionsManager;
@@ -25,6 +23,8 @@ import android.content.Context;
import android.content.res.Resources;
import android.graphics.Rect;
import android.graphics.drawable.Drawable;
import android.inputmethodservice.InputMethodService;
import android.os.IBinder;
import android.os.RemoteException;
import android.util.Log;
import android.view.GestureDetector;
@@ -82,6 +82,7 @@ public class NotificationPanelViewController extends OverlayPanelViewController
    private final StatusBarStateController mStatusBarStateController;
    private final boolean mEnableHeadsUpNotificationWhenNotificationShadeOpen;
    private final NotificationVisibilityLogger mNotificationVisibilityLogger;
    private final int mNavBarHeight;

    private float mInitialBackgroundAlpha;
    private float mBackgroundAlphaDiff;
@@ -138,7 +139,10 @@ public class NotificationPanelViewController extends OverlayPanelViewController
        mStatusBarStateController = statusBarStateController;
        mNotificationVisibilityLogger = notificationVisibilityLogger;

        mNavBarHeight = mResources.getDimensionPixelSize(R.dimen.car_bottom_navigation_bar_height);

        mCommandQueue.addCallback(this);

        // Notification background setup.
        mInitialBackgroundAlpha = (float) mResources.getInteger(
                R.integer.config_initialNotificationBackgroundAlpha) / 100;
@@ -179,6 +183,21 @@ public class NotificationPanelViewController extends OverlayPanelViewController
        }
    }

    @Override
    public void setImeWindowStatus(int displayId, IBinder token, int vis, int backDisposition,
            boolean showImeSwitcher) {
        if (mContext.getDisplayId() != displayId) {
            return;
        }
        boolean isKeyboardVisible = (vis & InputMethodService.IME_VISIBLE) != 0;
        int bottomMargin = isKeyboardVisible ? 0 : mNavBarHeight;
        ViewGroup container = (ViewGroup) getLayout();
        ViewGroup.MarginLayoutParams params =
                (ViewGroup.MarginLayoutParams) container.getLayoutParams();
        params.setMargins(params.leftMargin, params.topMargin, params.rightMargin, bottomMargin);
        container.setLayoutParams(params);
    }

    // OverlayViewController

    @Override
@@ -204,7 +223,7 @@ public class NotificationPanelViewController extends OverlayPanelViewController

    @Override
    protected int getInsetTypesToFit() {
        return navigationBars();
        return 0;
    }

    @Override