Merge "Hook up new pipeline so notifs are visible" into rvc-dev am: f02a4216ab am: d5643358f7

Change-Id: I8b4ce9f7aed297a83ba94569417b340d54d7d4ac
This commit is contained in:
TreeHugger Robot
2020-03-25 02:43:41 +00:00
committed by Automerger Merge Worker
3 changed files with 8 additions and 5 deletions

View File

@@ -651,7 +651,7 @@ public class NotificationEntryManager implements
*/
public void updateNotifications(String reason) {
reapplyFilterAndSort(reason);
if (mPresenter != null) {
if (mPresenter != null && !mFeatureFlags.isNewNotifPipelineRenderingEnabled()) {
mPresenter.updateNotificationViews();
}
}

View File

@@ -142,9 +142,11 @@ class NotifViewManager @Inject constructor(
// To attach rows we can use _this one weird trick_: if the intended view to add does not
// have a parent, then simply add it (and its children).
entries.forEach { entry ->
val listItem = rowRegistry.requireView(entry)
// TODO: We should eventually map GroupEntry's themselves to views so that we don't
// depend on representativeEntry here which may actually be null in the future
val listItem = rowRegistry.requireView(entry.representativeEntry!!)
if (listItem.view.parent != null) {
if (listItem.view.parent == null) {
listContainer.addListItem(listItem)
stabilityManager.notifyViewAddition(listItem.view)
}
@@ -153,7 +155,8 @@ class NotifViewManager @Inject constructor(
for ((idx, childEntry) in entry.children.withIndex()) {
val childListItem = rowRegistry.requireView(childEntry)
// Child hasn't been added yet. add it!
if (!listItem.notificationChildren.contains(childListItem)) {
if (listItem.notificationChildren == null ||
!listItem.notificationChildren.contains(childListItem)) {
// TODO: old code here just Log.wtf()'d here. This might wreak havoc
if (childListItem.view.parent != null) {
throw IllegalStateException("trying to add a notification child that " +

View File

@@ -6478,7 +6478,7 @@ public class NotificationStackScrollLayout extends ViewGroup implements ScrollAd
private boolean hasActiveNotifications() {
if (mFeatureFlags.isNewNotifPipelineRenderingEnabled()) {
return mNotifPipeline.getShadeList().isEmpty();
return !mNotifPipeline.getShadeList().isEmpty();
} else {
return mEntryManager.hasActiveNotifications();
}