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

Commit 57164f67 authored by Lucas Dupin's avatar Lucas Dupin Committed by android-build-merger
Browse files

Merge "Fix header not set on initialization" into oc-dev am: 388ceaa3

am: d9a707e5

Change-Id: I854b8bb4df0d18b053193737c33f8a593ae53f1a
parents 3cf4ad52 d9a707e5
Loading
Loading
Loading
Loading
+13 −3
Original line number Diff line number Diff line
@@ -316,7 +316,7 @@ public class NotificationChildrenContainer extends ViewGroup {
        mNotificationHeaderWrapper.notifyContentUpdated(mContainingNotification);
        recreateLowPriorityHeader(builder);
        recreateAmbientHeader(builder);
        resetHeaderVisibilityIfNeeded(mNotificationHeader, calculateDesiredHeader());
        updateHeaderVisibility(false /* animate */);
        updateChildrenHeaderAppearance();
    }

@@ -854,6 +854,11 @@ public class NotificationChildrenContainer extends ViewGroup {
        return mNotificationHeaderLowPriority;
    }

    @VisibleForTesting
    public ViewGroup getCurrentHeaderView() {
        return mCurrentHeader;
    }

    public void notifyShowAmbientChanged() {
        updateHeaderVisibility(false);
    }
@@ -890,7 +895,12 @@ public class NotificationChildrenContainer extends ViewGroup {
                desiredHeader.setVisibility(VISIBLE);
            }
            if (currentHeader != null) {
                getWrapperForView(currentHeader).setVisible(false);
                // Wrapper can be null if we were a low priority notification
                // and just destroyed it by calling setIsLowPriority(false)
                NotificationViewWrapper wrapper = getWrapperForView(currentHeader);
                if (wrapper != null) {
                    wrapper.setVisible(false);
                }
                currentHeader.setVisibility(INVISIBLE);
            }
        }
@@ -899,7 +909,7 @@ public class NotificationChildrenContainer extends ViewGroup {
        resetHeaderVisibilityIfNeeded(mNotificationHeaderAmbient, desiredHeader);
        resetHeaderVisibilityIfNeeded(mNotificationHeaderLowPriority, desiredHeader);

        mCurrentHeader = currentHeader;
        mCurrentHeader = desiredHeader;
    }

    private void resetHeaderVisibilityIfNeeded(View header, View desiredHeader) {
+8 −0
Original line number Diff line number Diff line
@@ -61,4 +61,12 @@ public class NotificationChildrenContainerTest extends SysuiTestCase {
        Assert.assertTrue(lowPriorityHeaderView.getParent() == null);
        Assert.assertTrue(childrenContainer.getLowPriorityHeaderView() == null);
    }

    @Test
    public void testRecreateNotificationHeader_hasHeader() {
        NotificationChildrenContainer childrenContainer = mGroup.getChildrenContainer();
        childrenContainer.recreateNotificationHeader(null);
        Assert.assertNotNull("Children container must have a header after recreation",
                childrenContainer.getCurrentHeaderView());
    }
}