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

Commit 0fee768a authored by Joshua Tsuji's avatar Joshua Tsuji
Browse files

Ensure the cutout is not null before trying to use it.

Test: manual
Change-Id: I59cf13aed53a5d8a61e5dc65500764ecdddc9c39
parent 5818b8bd
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -33,6 +33,7 @@ import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewTreeObserver;
import android.view.WindowInsets;
import android.view.WindowManager;
import android.widget.FrameLayout;
import android.widget.LinearLayout;
@@ -590,9 +591,12 @@ public class BubbleStackView extends FrameLayout implements BubbleTouchHandler.F

    private int getStatusBarHeight() {
        if (getRootWindowInsets() != null) {
            WindowInsets insets = getRootWindowInsets();
            return Math.max(
                    getRootWindowInsets().getSystemWindowInsetTop(),
                    getRootWindowInsets().getDisplayCutout().getSafeInsetTop());
                    insets.getSystemWindowInsetTop(),
                    insets.getDisplayCutout() != null
                            ? insets.getDisplayCutout().getSafeInsetTop()
                            : 0);
        }

        return 0;
+3 −1
Original line number Diff line number Diff line
@@ -98,7 +98,9 @@ public class ExpandedAnimationController
        if (insets != null) {
            return mBubblePaddingPx + Math.max(
                    insets.getSystemWindowInsetTop(),
                    insets.getDisplayCutout().getSafeInsetTop());
                    insets.getDisplayCutout() != null
                            ? insets.getDisplayCutout().getSafeInsetTop()
                            : 0);
        }

        return mBubblePaddingPx;
+12 −4
Original line number Diff line number Diff line
@@ -211,7 +211,9 @@ public class StackAnimationController extends
                            - mBubblePadding
                            + Math.max(
                            insets.getSystemWindowInsetLeft(),
                            insets.getDisplayCutout().getSafeInsetLeft());
                            insets.getDisplayCutout() != null
                                    ? insets.getDisplayCutout().getSafeInsetLeft()
                                    : 0);
            mAllowableStackPositionRegion.right =
                    mLayout.getWidth()
                            - mIndividualBubbleSize
@@ -219,20 +221,26 @@ public class StackAnimationController extends
                            - mBubblePadding
                            - Math.max(
                            insets.getSystemWindowInsetRight(),
                            insets.getDisplayCutout().getSafeInsetRight());
                            insets.getDisplayCutout() != null
                                ? insets.getDisplayCutout().getSafeInsetRight()
                                : 0);

            mAllowableStackPositionRegion.top =
                    mBubblePadding
                            + Math.max(
                            insets.getSystemWindowInsetTop(),
                            insets.getDisplayCutout().getSafeInsetTop());
                            insets.getDisplayCutout() != null
                                ? insets.getDisplayCutout().getSafeInsetTop()
                                : 0);
            mAllowableStackPositionRegion.bottom =
                    mLayout.getHeight()
                            - mIndividualBubbleSize
                            - mBubblePadding
                            - Math.max(
                            insets.getSystemWindowInsetBottom(),
                            insets.getDisplayCutout().getSafeInsetBottom());
                            insets.getDisplayCutout() != null
                                    ? insets.getDisplayCutout().getSafeInsetBottom()
                                    : 0);
        }

        return mAllowableStackPositionRegion;