From 95f4472ba9fc862b04f26d8e4e6cd1edf3526d78 Mon Sep 17 00:00:00 2001 From: Jon Miranda Date: Tue, 6 Jun 2023 19:48:19 -0700 Subject: [PATCH] Update taskbar paddings/sizes to match spec. Bug: 282798528 Test: manual with screenshots Change-Id: I00c646d9cd11a9015e14f8311ba2ff233d8321ac --- quickstep/src/com/android/launcher3/taskbar/TaskbarView.java | 5 ++++- src/com/android/launcher3/DeviceProfile.java | 5 +++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarView.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarView.java index bc1a2c8b22..4217de6c1e 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarView.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarView.java @@ -18,6 +18,8 @@ package com.android.launcher3.taskbar; import static android.content.pm.PackageManager.FEATURE_PC; import static android.view.accessibility.AccessibilityEvent.TYPE_WINDOW_CONTENT_CHANGED; +import static com.android.launcher3.icons.IconNormalizer.ICON_VISIBLE_AREA_FACTOR; + import android.content.Context; import android.content.res.Resources; import android.graphics.Canvas; @@ -128,12 +130,13 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar int actualMargin = resources.getDimensionPixelSize(R.dimen.taskbar_icon_spacing); int actualIconSize = mActivityContext.getDeviceProfile().taskbarIconSize; + int visualIconSize = (int) (actualIconSize * ICON_VISIBLE_AREA_FACTOR); mIconTouchSize = Math.max(actualIconSize, resources.getDimensionPixelSize(R.dimen.taskbar_icon_min_touch_size)); // We layout the icons to be of mIconTouchSize in width and height - mItemMarginLeftRight = actualMargin - (mIconTouchSize - actualIconSize) / 2; + mItemMarginLeftRight = actualMargin - (mIconTouchSize - visualIconSize) / 2; mItemPadding = (mIconTouchSize - actualIconSize) / 2; mFolderLeaveBehindColor = Themes.getAttrColor(mActivityContext, diff --git a/src/com/android/launcher3/DeviceProfile.java b/src/com/android/launcher3/DeviceProfile.java index fb41044875..fa1cbd60db 100644 --- a/src/com/android/launcher3/DeviceProfile.java +++ b/src/com/android/launcher3/DeviceProfile.java @@ -26,6 +26,7 @@ import static com.android.launcher3.anim.Interpolators.LINEAR; import static com.android.launcher3.config.FeatureFlags.ENABLE_MULTI_DISPLAY_PARTIAL_DEPTH; import static com.android.launcher3.folder.ClippedFolderIconLayoutRule.ICON_OVERLAP_FACTOR; import static com.android.launcher3.icons.GraphicsUtils.getShapePath; +import static com.android.launcher3.icons.IconNormalizer.ICON_VISIBLE_AREA_FACTOR; import static com.android.launcher3.testing.shared.ResourceUtils.INVALID_RESOURCE_HANDLE; import static com.android.launcher3.testing.shared.ResourceUtils.pxFromDp; import static com.android.launcher3.testing.shared.ResourceUtils.roundPxValueFromFloat; @@ -353,8 +354,8 @@ public class DeviceProfile { if (DisplayController.isTransientTaskbar(context)) { float invTransientIconSizeDp = inv.transientTaskbarIconSize[mTypeIndex]; taskbarIconSize = pxFromDp(invTransientIconSizeDp, mMetrics); - taskbarHeight = taskbarIconSize - + (2 * res.getDimensionPixelSize(R.dimen.transient_taskbar_padding)); + taskbarHeight = Math.round((taskbarIconSize * ICON_VISIBLE_AREA_FACTOR) + + (2 * res.getDimensionPixelSize(R.dimen.transient_taskbar_padding))); stashedTaskbarHeight = res.getDimensionPixelSize(R.dimen.transient_taskbar_stashed_height); taskbarBottomMargin =