diff options
author | Jon Miranda <jonmiranda@google.com> | 2017-07-20 14:59:32 -0700 |
---|---|---|
committer | Jon Miranda <jonmiranda@google.com> | 2017-07-20 15:08:06 -0700 |
commit | fd8fa136f5cec15302bf48bdd60761e057f960c4 (patch) | |
tree | 5dbb28ae662b71237852b32aef9ecfb5eb356ca4 | |
parent | bdf6e7d8f8a83808276b245ea8c9d851f80625a3 (diff) | |
download | android_packages_apps_Trebuchet-fd8fa136f5cec15302bf48bdd60761e057f960c4.tar.gz android_packages_apps_Trebuchet-fd8fa136f5cec15302bf48bdd60761e057f960c4.tar.bz2 android_packages_apps_Trebuchet-fd8fa136f5cec15302bf48bdd60761e057f960c4.zip |
Update Folders to match spec.
Bug: 63825895
Change-Id: Ia1a139f1afd944eefcd370645142227317e2bf20
-rw-r--r-- | res/layout/folder_application.xml | 7 | ||||
-rw-r--r-- | res/values/dimens.xml | 7 | ||||
-rw-r--r-- | src/com/android/launcher3/DeviceProfile.java | 10 | ||||
-rw-r--r-- | src/com/android/launcher3/folder/FolderAnimationManager.java | 9 |
4 files changed, 23 insertions, 10 deletions
diff --git a/res/layout/folder_application.xml b/res/layout/folder_application.xml index de861a0ad..9d4af0d9c 100644 --- a/res/layout/folder_application.xml +++ b/res/layout/folder_application.xml @@ -19,4 +19,9 @@ xmlns:launcher="http://schemas.android.com/apk/res-auto" style="@style/BaseIcon" android:includeFontPadding="false" - launcher:iconDisplay="folder" /> + android:paddingLeft="@dimen/folder_cell_x_padding" + android:paddingTop="@dimen/folder_cell_y_padding" + android:paddingRight="@dimen/folder_cell_x_padding" + android:paddingBottom="@dimen/folder_cell_y_padding" + launcher:centerVertically="true" + launcher:iconDisplay="folder"/> diff --git a/res/values/dimens.xml b/res/values/dimens.xml index 356de7869..0eb3982ca 100644 --- a/res/values/dimens.xml +++ b/res/values/dimens.xml @@ -138,10 +138,11 @@ <dimen name="folder_preview_padding">10dp</dimen> <dimen name="page_indicator_dot_size">8dp</dimen> - <dimen name="folder_cell_x_padding">9dp</dimen> - <dimen name="folder_cell_y_padding">6dp</dimen> + <dimen name="folder_cell_x_padding">8dp</dimen> + <dimen name="folder_cell_y_padding">8dp</dimen> <dimen name="folder_child_text_size">13sp</dimen> - <dimen name="folder_label_padding_top">4dp</dimen> + <dimen name="folder_child_icon_drawable_padding">8dp</dimen> + <dimen name="folder_label_padding_top">12dp</dimen> <dimen name="folder_label_padding_bottom">12dp</dimen> <dimen name="folder_label_text_size">14sp</dimen> diff --git a/src/com/android/launcher3/DeviceProfile.java b/src/com/android/launcher3/DeviceProfile.java index 2d5f8d016..38011eaa3 100644 --- a/src/com/android/launcher3/DeviceProfile.java +++ b/src/com/android/launcher3/DeviceProfile.java @@ -108,6 +108,7 @@ public class DeviceProfile { public int folderChildIconSizePx; public int folderChildTextSizePx; public int folderChildDrawablePaddingPx; + public final int folderChildDrawablePaddingOriginalPx; // Hotseat public int hotseatCellHeightPx; @@ -220,6 +221,9 @@ public class DeviceProfile { hotseatLandRightNavBarGutterPx = res.getDimensionPixelSize( R.dimen.dynamic_grid_hotseat_land_right_nav_bar_gutter_width); + folderChildDrawablePaddingOriginalPx = + res.getDimensionPixelSize(R.dimen.folder_child_icon_drawable_padding); + // Determine sizes. widthPx = width; heightPx = height; @@ -390,15 +394,15 @@ public class DeviceProfile { folderChildIconSizePx = (int) (Utilities.pxFromDp(inv.iconSize, dm) * scale); folderChildTextSizePx = (int) (res.getDimensionPixelSize(R.dimen.folder_child_text_size) * scale); + folderChildDrawablePaddingPx = (int) (folderChildDrawablePaddingOriginalPx * scale); int textHeight = Utilities.calculateTextHeight(folderChildTextSizePx); int cellPaddingX = (int) (res.getDimensionPixelSize(R.dimen.folder_cell_x_padding) * scale); int cellPaddingY = (int) (res.getDimensionPixelSize(R.dimen.folder_cell_y_padding) * scale); folderCellWidthPx = folderChildIconSizePx + 2 * cellPaddingX; - folderCellHeightPx = folderChildIconSizePx + 2 * cellPaddingY + textHeight; - folderChildDrawablePaddingPx = Math.max(0, - (folderCellHeightPx - folderChildIconSizePx - textHeight) / 3); + folderCellHeightPx = folderChildIconSizePx + 2 * cellPaddingY + textHeight + + folderChildDrawablePaddingPx; } public void updateInsets(Rect insets) { diff --git a/src/com/android/launcher3/folder/FolderAnimationManager.java b/src/com/android/launcher3/folder/FolderAnimationManager.java index 69705d594..d7f5c2b64 100644 --- a/src/com/android/launcher3/folder/FolderAnimationManager.java +++ b/src/com/android/launcher3/folder/FolderAnimationManager.java @@ -120,6 +120,7 @@ public class FolderAnimationManager { final DragLayer.LayoutParams lp = (DragLayer.LayoutParams) mFolder.getLayoutParams(); FolderIcon.PreviewLayoutRule rule = mFolderIcon.getLayoutRule(); final List<BubbleTextView> itemsInPreview = mFolderIcon.getPreviewItems(); + BubbleTextView btv = itemsInPreview.get(0); // Match position of the FolderIcon final Rect folderIconPos = new Rect(); @@ -131,7 +132,7 @@ public class FolderAnimationManager { // Match size/scale of icons in the preview float previewScale = rule.scaleForItem(0, itemsInPreview.size()); float previewSize = rule.getIconSize() * previewScale; - float initialScale = previewSize / itemsInPreview.get(0).getIconSize() + float initialScale = previewSize / btv.getIconSize() * scaleRelativeToDragLayer; final float finalScale = 1f; float scale = mIsOpening ? initialScale : finalScale; @@ -148,10 +149,12 @@ public class FolderAnimationManager { previewItemOffsetX = (int) (lp.width * initialScale - initialSize - previewItemOffsetX); } + // Note that we do not include btv.getPaddingLeft() in the calculation, since it is + // handled in addPreviewItemAnimators as part of iconOffsetX. final int paddingOffsetX = (int) ((mFolder.getPaddingLeft() + mContent.getPaddingLeft()) * initialScale); - final int paddingOffsetY = (int) ((mFolder.getPaddingTop() + mContent.getPaddingTop()) - * initialScale); + final int paddingOffsetY = (int) ((mFolder.getPaddingTop() + mContent.getPaddingTop() + + btv.getPaddingTop()) * initialScale); int initialX = folderIconPos.left + mPreviewBackground.getOffsetX() - paddingOffsetX - previewItemOffsetX; |