Pad large screen hotseat in RTL 3 button nav mode by swapping left and right padding to avoid overlapping with nav buttons

Hotseat was overlapped with 3 navigation buttons in large screen RTL mode. This fix is to pad hotseat properly by swapping the left and right paddings in RTL mode
Bug: 268178394
Test: manual

Change-Id: I2b073a1b532bf3aae3ab1bec98ad70713742c672
This commit is contained in:
Helen Cheuk
2023-02-14 17:11:05 +00:00
parent 5147b1d509
commit e76291f55c

View File

@@ -1315,23 +1315,29 @@ public class DeviceProfile {
hotseatBarSizePx - hotseatBarBottomPadding - hotseatCellHeightPx;
int hotseatWidth = getHotseatRequiredWidth();
int leftSpacing = (availableWidthPx - hotseatWidth) / 2;
int rightSpacing = leftSpacing;
int startSpacing;
int endSpacing;
// Hotseat aligns to the left with nav buttons
if (hotseatBarEndOffset > 0) {
leftSpacing = inlineNavButtonsEndSpacing;
rightSpacing = availableWidthPx - hotseatWidth - leftSpacing + hotseatBorderSpace;
startSpacing = inlineNavButtonsEndSpacing;
endSpacing = availableWidthPx - hotseatWidth - startSpacing + hotseatBorderSpace;
} else {
startSpacing = (availableWidthPx - hotseatWidth) / 2;
endSpacing = startSpacing;
}
startSpacing += getAdditionalQsbSpace();
hotseatBarPadding.set(leftSpacing, hotseatBarTopPadding, rightSpacing,
hotseatBarBottomPadding);
hotseatBarPadding.top = hotseatBarTopPadding;
hotseatBarPadding.bottom = hotseatBarBottomPadding;
boolean isRtl = Utilities.isRtl(context.getResources());
if (isRtl) {
hotseatBarPadding.right += getAdditionalQsbSpace();
hotseatBarPadding.left = endSpacing;
hotseatBarPadding.right = startSpacing;
} else {
hotseatBarPadding.left += getAdditionalQsbSpace();
hotseatBarPadding.left = startSpacing;
hotseatBarPadding.right = endSpacing;
}
} else if (isScalableGrid) {
int sideSpacing = (availableWidthPx - hotseatQsbWidth) / 2;
hotseatBarPadding.set(sideSpacing,