Merge "Move qsb according to spec." into sc-dev

This commit is contained in:
Jonathan Miranda
2021-06-24 21:14:11 +00:00
committed by Android (Google) Code Review
3 changed files with 18 additions and 2 deletions

View File

@@ -41,6 +41,7 @@
<!-- Scalable Grid -->
<dimen name="scalable_grid_left_right_margin">22dp</dimen>
<dimen name="scalable_grid_qsb_bottom_margin">42dp</dimen>
<!-- Workspace page indicator -->
<dimen name="workspace_page_indicator_height">24dp</dimen>

View File

@@ -158,6 +158,9 @@ public class DeviceProfile {
public final int hotseatBarSidePaddingStartPx;
public final int hotseatBarSidePaddingEndPx;
public final float qsbBottomMarginOriginalPx;
public int qsbBottomMarginPx;
// All apps
public int allAppsOpenVerticalTranslate;
public int allAppsCellHeightPx;
@@ -331,6 +334,10 @@ public class DeviceProfile {
res.getDimensionPixelSize(R.dimen.dynamic_grid_hotseat_extra_vertical_size);
updateHotseatIconSize(pxFromDp(inv.iconSize, mMetrics, 1f));
qsbBottomMarginOriginalPx = isScalableGrid
? res.getDimensionPixelSize(R.dimen.scalable_grid_qsb_bottom_margin)
: 0;
overviewTaskMarginPx = res.getDimensionPixelSize(R.dimen.overview_task_margin);
overviewTaskIconSizePx =
isTablet && FeatureFlags.ENABLE_OVERVIEW_GRID.get() ? res.getDimensionPixelSize(
@@ -359,6 +366,8 @@ public class DeviceProfile {
extraHotseatBottomPadding = Math.round(paddingHotseatBottom * iconScale);
hotseatBarSizePx += extraHotseatBottomPadding;
qsbBottomMarginPx = Math.round(qsbBottomMarginOriginalPx * iconScale);
} else if (!isVerticalBarLayout() && isPhone && isTallDevice) {
// We increase the hotseat size when there is extra space.
// ie. For a display with a large aspect ratio, we can keep the icons on the workspace

View File

@@ -206,8 +206,14 @@ public class Hotseat extends CellLayout implements Insettable {
int freeSpace = dp.isTaskbarPresent
? dp.workspacePadding.bottom
: dp.hotseatBarSizePx - dp.hotseatCellHeightPx - mQsbHeight;
return (int) (freeSpace * QSB_CENTER_FACTOR)
+ (dp.isTaskbarPresent ? dp.taskbarSize : dp.getInsets().bottom);
if (dp.isScalableGrid && dp.qsbBottomMarginPx <= freeSpace) {
return dp.qsbBottomMarginPx;
} else {
return (int) (freeSpace * QSB_CENTER_FACTOR) + (dp.isTaskbarPresent
? dp.taskbarSize
: dp.getInsets().bottom);
}
}
/**