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

Commit 1d2eaa76 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Fixing wrong intests being sent to DeviceProfile in case of lowRam...

Merge "Fixing wrong intests being sent to DeviceProfile in case of lowRam device Also fixing the navbar to dark theme when a black bar is drawn behind nav bar" into ub-launcher3-dorval-polish2
parents a9a1a210 906c6b2f
Loading
Loading
Loading
Loading
+20 −9
Original line number Diff line number Diff line
@@ -11,6 +11,9 @@ import android.util.AttributeSet;
import android.view.View;
import android.view.ViewDebug;

import static com.android.launcher3.util.SystemUiController.FLAG_DARK_NAV;
import static com.android.launcher3.util.SystemUiController.UI_STATE_ROOT_VIEW;

public class LauncherRootView extends InsettableFrameLayout {

    private final Paint mOpaquePaint;
@@ -44,20 +47,28 @@ public class LauncherRootView extends InsettableFrameLayout {
    @TargetApi(23)
    @Override
    protected boolean fitSystemWindows(Rect insets) {
        boolean rawInsetsChanged = !mInsets.equals(insets);
        mDrawSideInsetBar = (insets.right > 0 || insets.left > 0) &&
                (!Utilities.ATLEAST_MARSHMALLOW ||
                        getContext().getSystemService(ActivityManager.class).isLowRamDevice());
        mRightInsetBarWidth = insets.right;
        if (mDrawSideInsetBar) {
            mLeftInsetBarWidth = insets.left;
        setInsets(mDrawSideInsetBar ? new Rect(0, insets.top, 0, insets.bottom) : insets);
            mRightInsetBarWidth = insets.right;
            insets = new Rect(0, insets.top, 0, insets.bottom);
        } else {
            mLeftInsetBarWidth = mRightInsetBarWidth = 0;
        }
        Launcher.getLauncher(getContext()).getSystemUiController().updateUiState(
                UI_STATE_ROOT_VIEW, mDrawSideInsetBar ? FLAG_DARK_NAV : 0);

        boolean rawInsetsChanged = !mInsets.equals(insets);
        setInsets(insets);

        if (mAlignedView != null && mDrawSideInsetBar) {
        if (mAlignedView != null) {
            // Apply margins on aligned view to handle left/right insets.
            MarginLayoutParams lp = (MarginLayoutParams) mAlignedView.getLayoutParams();
            if (lp.leftMargin != insets.left || lp.rightMargin != insets.right) {
                lp.leftMargin = insets.left;
                lp.rightMargin = insets.right;
            if (lp.leftMargin != mLeftInsetBarWidth || lp.rightMargin != mRightInsetBarWidth) {
                lp.leftMargin = mLeftInsetBarWidth;
                lp.rightMargin = mRightInsetBarWidth;
                mAlignedView.setLayoutParams(lp);
            }
        }
+2 −1
Original line number Diff line number Diff line
@@ -30,6 +30,7 @@ public class SystemUiController {
    public static final int UI_STATE_BASE_WINDOW = 0;
    public static final int UI_STATE_ALL_APPS = 1;
    public static final int UI_STATE_WIDGET_BOTTOM_SHEET = 2;
    public static final int UI_STATE_ROOT_VIEW = 3;

    public static final int FLAG_LIGHT_NAV = 1 << 0;
    public static final int FLAG_DARK_NAV = 1 << 1;
@@ -37,7 +38,7 @@ public class SystemUiController {
    public static final int FLAG_DARK_STATUS = 1 << 3;

    private final Window mWindow;
    private final int[] mStates = new int[3];
    private final int[] mStates = new int[4];

    public SystemUiController(Window window) {
        mWindow = window;