Loading res/values/dimens.xml +1 −0 Original line number Diff line number Diff line Loading @@ -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> Loading src/com/android/launcher3/DeviceProfile.java +9 −0 Original line number Diff line number Diff line Loading @@ -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; Loading Loading @@ -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( Loading Loading @@ -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 Loading src/com/android/launcher3/Hotseat.java +8 −2 Original line number Diff line number Diff line Loading @@ -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); } } /** Loading Loading
res/values/dimens.xml +1 −0 Original line number Diff line number Diff line Loading @@ -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> Loading
src/com/android/launcher3/DeviceProfile.java +9 −0 Original line number Diff line number Diff line Loading @@ -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; Loading Loading @@ -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( Loading Loading @@ -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 Loading
src/com/android/launcher3/Hotseat.java +8 −2 Original line number Diff line number Diff line Loading @@ -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); } } /** Loading