Update overview grid icon sizes and paddings

- Introduced additional page spacign for clear all button to match mocks

Fix: 222664142
Test: Quick switch to last task and immediately enter overview
Test: Dismiss last task in overview grid
Change-Id: I4d2f93d843c50b10051f3fb17027cd06e86707e1
This commit is contained in:
Alex Chau
2022-03-15 19:34:08 +00:00
parent 025bf08e2f
commit 2e48760e97
5 changed files with 35 additions and 11 deletions
@@ -1078,10 +1078,15 @@ public abstract class RecentsView<ACTIVITY_TYPE extends StatefulActivity<STATE_T
private int getSnapToLastTaskScrollDiff() {
// Snap to a position where ClearAll is just invisible.
int screenStart = mOrientationHandler.getPrimaryScroll(this);
int clearAllWidth = mOrientationHandler.getPrimarySize(mClearAllButton);
int clearAllScroll = getScrollForPage(indexOfChild(mClearAllButton));
int targetScroll = clearAllScroll + (mIsRtl ? clearAllWidth : -clearAllWidth);
return screenStart - targetScroll;
int clearAllWidth = mOrientationHandler.getPrimarySize(mClearAllButton);
int lastTaskScroll = getLastTaskScroll(clearAllScroll, clearAllWidth);
return screenStart - lastTaskScroll;
}
private int getLastTaskScroll(int clearAllScroll, int clearAllWidth) {
int distance = clearAllWidth + getClearAllExtraPageSpacing();
return clearAllScroll + (mIsRtl ? distance : -distance);
}
private int getSnapToFocusedTaskScrollDiff(boolean isClearAllHidden) {
@@ -4513,6 +4518,19 @@ public abstract class RecentsView<ACTIVITY_TYPE extends StatefulActivity<STATE_T
updateMinAndMaxScrollX();
}
@Override
protected int getChildGap(int fromIndex, int toIndex) {
int clearAllIndex = indexOfChild(mClearAllButton);
return fromIndex == clearAllIndex || toIndex == clearAllIndex
? getClearAllExtraPageSpacing() : 0;
}
private int getClearAllExtraPageSpacing() {
return showAsGrid()
? Math.max(mActivity.getDeviceProfile().overviewGridSideMargin - mPageSpacing, 0)
: 0;
}
@Override
protected void updateMinAndMaxScrollX() {
super.updateMinAndMaxScrollX();
@@ -4595,9 +4613,10 @@ public abstract class RecentsView<ACTIVITY_TYPE extends StatefulActivity<STATE_T
TaskView taskView = requireTaskViewAt(i);
float scrollDiff = taskView.getScrollAdjustment(showAsFullscreen, showAsGrid);
int pageScroll = newPageScrolls[i] + (int) scrollDiff;
if ((mIsRtl && pageScroll < clearAllScroll + clearAllWidth)
|| (!mIsRtl && pageScroll > clearAllScroll - clearAllWidth)) {
pageScroll = clearAllScroll + (mIsRtl ? clearAllWidth : -clearAllWidth);
int lastTaskScroll = getLastTaskScroll(clearAllScroll, clearAllWidth);
if ((mIsRtl && pageScroll < lastTaskScroll)
|| (!mIsRtl && pageScroll > lastTaskScroll)) {
pageScroll = lastTaskScroll;
}
if (outPageScrolls[i] != pageScroll) {
pageScrollChanged = true;