Merge "Fix people header placement when only hub visible" into rvc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
f3aea16bdb
@@ -332,6 +332,10 @@ public class NotificationSectionsManager implements StackScrollAlgorithm.Section
|
||||
// Put it at the end of the list.
|
||||
peopleHeaderTarget = lastNotifIndex;
|
||||
}
|
||||
// Offset the target to account for the current position of the people header.
|
||||
if (currentPeopleHeaderIdx != -1 && currentPeopleHeaderIdx < peopleHeaderTarget) {
|
||||
peopleHeaderTarget--;
|
||||
}
|
||||
}
|
||||
|
||||
// Add headers in reverse order to preserve indices
|
||||
@@ -459,6 +463,11 @@ public class NotificationSectionsManager implements StackScrollAlgorithm.Section
|
||||
return mPeopleHubView;
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
void setPeopleHubVisible(boolean visible) {
|
||||
mPeopleHubVisible = visible;
|
||||
}
|
||||
|
||||
private final ConfigurationListener mConfigurationListener = new ConfigurationListener() {
|
||||
@Override
|
||||
public void onLocaleListChanged() {
|
||||
|
||||
@@ -315,6 +315,24 @@ public class NotificationSectionsManagerTest extends SysuiTestCase {
|
||||
verify(mNssl).changeViewPosition(mSectionsManager.getPeopleHeaderView(), 0);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testPeopleFiltering_keepPeopleHeaderWhenSectionEmpty() {
|
||||
mSectionsManager.setPeopleHubVisible(true);
|
||||
enablePeopleFiltering();
|
||||
|
||||
setStackState(
|
||||
ChildType.PEOPLE_HEADER,
|
||||
ChildType.ALERTING_HEADER,
|
||||
ChildType.ALERTING,
|
||||
ChildType.GENTLE_HEADER,
|
||||
ChildType.GENTLE
|
||||
);
|
||||
mSectionsManager.updateSectionBoundaries();
|
||||
|
||||
verify(mNssl, never()).removeView(mSectionsManager.getPeopleHeaderView());
|
||||
verify(mNssl).changeViewPosition(mSectionsManager.getPeopleHeaderView(), 0);
|
||||
}
|
||||
|
||||
private void enablePeopleFiltering() {
|
||||
when(mSectionsFeatureManager.isFilteringEnabled()).thenReturn(true);
|
||||
when(mSectionsFeatureManager.getNumberOfBuckets()).thenReturn(4);
|
||||
|
||||
Reference in New Issue
Block a user