From 7bb10974d7caf2a28dddc6438877df8ba86e33b5 Mon Sep 17 00:00:00 2001 From: Charlie Anderson Date: Wed, 22 Nov 2023 13:35:30 -0800 Subject: fix font-scaling from clipping folder child icons Bug: 310850491 Test: verify locally and through screenshot tests Flag: N/A Change-Id: Iea7319e82ddffed16903e5112848cf089e5d52f2 --- src/com/android/launcher3/DeviceProfile.java | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/com/android/launcher3/DeviceProfile.java b/src/com/android/launcher3/DeviceProfile.java index 1451b98e1e..338a9ea724 100644 --- a/src/com/android/launcher3/DeviceProfile.java +++ b/src/com/android/launcher3/DeviceProfile.java @@ -354,7 +354,7 @@ public class DeviceProfile { final Resources res = context.getResources(); mMetrics = res.getDisplayMetrics(); - mIconSizeSteps = mIsResponsiveGrid ? new IconSizeSteps(res) : null; + mIconSizeSteps = new IconSizeSteps(res); // Determine sizes. widthPx = windowBounds.bounds.width(); @@ -1482,6 +1482,17 @@ public class DeviceProfile { folderCellWidthPx = roundPxValueFromFloat(folderCellWidthPx * scale); folderCellHeightPx = roundPxValueFromFloat(folderCellHeightPx * scale); } + // Recalculating padding and cell height + folderChildDrawablePaddingPx = getNormalizedFolderChildDrawablePaddingPx(textHeight); + + CellContentDimensions cellContentDimensions = new CellContentDimensions( + folderChildIconSizePx, + folderChildDrawablePaddingPx, + folderChildTextSizePx); + cellContentDimensions.resizeToFitCellHeight(folderCellHeightPx, mIconSizeSteps); + folderChildIconSizePx = cellContentDimensions.getIconSizePx(); + folderChildDrawablePaddingPx = cellContentDimensions.getIconDrawablePaddingPx(); + folderChildTextSizePx = cellContentDimensions.getIconTextSizePx(); folderContentPaddingTop = roundPxValueFromFloat(folderContentPaddingTop * scale); folderCellLayoutBorderSpacePx = new Point( @@ -1489,10 +1500,7 @@ public class DeviceProfile { roundPxValueFromFloat(folderCellLayoutBorderSpacePx.y * scale) ); folderFooterHeightPx = roundPxValueFromFloat(folderFooterHeightPx * scale); - folderContentPaddingLeftRight = folderCellLayoutBorderSpacePx.x; - - folderChildDrawablePaddingPx = getNormalizedFolderChildDrawablePaddingPx(textHeight); } else { int cellPaddingX = (int) (res.getDimensionPixelSize(R.dimen.folder_cell_x_padding) * scale); -- cgit v1.2.3