diff --git a/src/com/android/launcher3/DeviceProfile.java b/src/com/android/launcher3/DeviceProfile.java index 88aa445dfc..507cc5aef2 100644 --- a/src/com/android/launcher3/DeviceProfile.java +++ b/src/com/android/launcher3/DeviceProfile.java @@ -1938,8 +1938,12 @@ public class DeviceProfile { } else if (inv.isFixedLandscape) { // Center the QSB vertically with hotseat int hotseatBarBottomPadding = getHotseatBarBottomPadding(); - int hotseatPlusQSBWidth = getHotseatRequiredWidth(); - int qsbWidth = getAdditionalQsbSpace(); + int hotseatPlusQSBWidth = getIconToIconWidthForColumns(inv.numColumns); + + // This is needed because of b/235886078 since QSB needs to span to the icon borders + int iconExtraSpacePx = iconSizePx - getIconVisibleSizePx(iconSizePx); + int qsbWidth = getAdditionalQsbSpace() + iconExtraSpacePx / 2; + int availableWidthPxForHotseat = availableWidthPx - Math.abs(workspacePadding.width()) - Math.abs(cellLayoutPaddingPx.width()); int remainingSpaceOnSide = (availableWidthPxForHotseat - hotseatPlusQSBWidth) / 2;