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

Commit 7d447726 authored by Selim Cinek's avatar Selim Cinek
Browse files

Fixed an issue where holes in the notification shade could appear.

When redaction was turned on, holes could appear.

Bug: 15107339
Change-Id: I8c2830caaa78f03c8ccada1a7160f73c906365d7
parent c0ce82da
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -258,4 +258,9 @@ public class ExpandableNotificationRow extends ActivatableNotificationView {
    public void notifyContentUpdated() {
        mPrivateLayout.notifyContentUpdated();
    }

    public boolean isShowingLayoutLayouted() {
        View showingLayout = mShowingPublic ? mPublicLayout : mPrivateLayout;
        return showingLayout.getWidth() != 0;
    }
}
+9 −1
Original line number Diff line number Diff line
@@ -657,7 +657,7 @@ public class StackScrollAlgorithm {
            } else {

                // We are expanding the shade, expand it to its full height.
                if (mFirstChildWhileExpanding.getWidth() == 0) {
                if (!isMaxSizeInitialized(mFirstChildWhileExpanding)) {

                    // This child was not layouted yet, wait for a layout pass
                    mFirstChildWhileExpanding
@@ -684,6 +684,14 @@ public class StackScrollAlgorithm {
        }
    }

    private boolean isMaxSizeInitialized(ExpandableView child) {
        if (child instanceof ExpandableNotificationRow) {
            ExpandableNotificationRow row = (ExpandableNotificationRow) child;
            return row.isShowingLayoutLayouted();
        }
        return child == null || child.getWidth() != 0;
    }

    private View findFirstVisibleChild(ViewGroup container) {
        int childCount = container.getChildCount();
        for (int i = 0; i < childCount; i++) {