Model hiding the footer in the NotificationListViewModel
Sometimes, when opening the shade, the quick settings panel would jump to a new position after the initial animation (see recording in bug). This happens because with the refactored footer code, we set the footer visibility to GONE (via StackScrollerDecorView#setVisible) as long as the shade is closed, which means it was sometimes not being counted when measuring the height of the NSSL for the animation (in NPVC#calculatePanelHeightShade). In the old code, we were setting it to INVISIBLE instead. This fixes this bug by modeling this "hidden" state that is needed in the StackScrollAlgorithm in the NotificationListViewModel. I had an attempt to include it in the VisibilityChange object we've been using so far for the footer visibility, but that makes things harder to read since this hidden state is handled differently and without needing to be animated. I have an alternative solution for this at ag/26581241 but it's hackier, so I believe this to be a better approach that preserves the pre-refactor behavior. Fix: 329432313 Test: open shade in various ways (different gestures, screen size, orientation) to check that the bug doesn't happen anymore Test: NotificationListViewModelTest Flag: ACONFIG com.android.systemui.notifications_footer_view_refactor STAGING Change-Id: I8d34e74fc1d3939176132850d1d962ec5c7bccd2
Loading
Please register or sign in to comment