Clone mInsets when copying DeviceProfile to taskbar

- Set mInsets with windowBounds.insets when initialized, and set windowBounds.insets when cloning DeviceProfile
- Added more bottom sheet / all apps in DeviceProfile dump
- Also dump taskbar's device profile in dumpsys

Fix: 226968237
Test: Taskbar AllApps should have correct top padding
Test: adb shell dumpsys activity com.google.android.apps.nexuslauncher
Test: adb shell dumpsys activity service com.google.android.apps.nexuslauncher/com.android.quickstep.TouchInteractionService
Change-Id: I7739c699fb16544b92dc820354a643f745694c25
This commit is contained in:
Alex Chau
2022-04-06 19:44:43 +01:00
parent bae4a72d30
commit e0227551cf
3 changed files with 13 additions and 3 deletions
@@ -785,5 +785,6 @@ public class TaskbarActivityContext extends BaseTaskbarContext {
pw.println(String.format(
"%s\tmBindInProgress=%b", prefix, mBindingItems));
mControllers.dumpLogs(prefix + "\t", pw);
mDeviceProfile.dump(prefix, pw);
}
}
@@ -963,10 +963,10 @@ public class TouchInteractionService extends Service
RecentsModel.INSTANCE.get(this).dump("", pw);
pw.println("ProtoTrace:");
pw.println(" file=" + ProtoTracer.INSTANCE.get(this).getTraceFile());
mTaskbarManager.dumpLogs("", pw);
if (createdOverviewActivity != null) {
createdOverviewActivity.getDeviceProfile().dump("", pw);
}
mTaskbarManager.dumpLogs("", pw);
}
}
+11 -2
View File
@@ -246,6 +246,7 @@ public class DeviceProfile {
windowX = windowBounds.bounds.left;
windowY = windowBounds.bounds.top;
this.rotationHint = windowBounds.rotationHint;
mInsets.set(windowBounds.insets);
isScalableGrid = inv.isScalable && !isVerticalBarLayout() && !isMultiWindowMode;
@@ -298,7 +299,7 @@ public class DeviceProfile {
desiredWorkspaceHorizontalMarginPx = getHorizontalMarginPx(inv, res);
desiredWorkspaceHorizontalMarginOriginalPx = desiredWorkspaceHorizontalMarginPx;
bottomSheetTopPadding = windowBounds.insets.top // statusbar height
bottomSheetTopPadding = mInsets.top // statusbar height
+ res.getDimensionPixelSize(R.dimen.bottom_sheet_extra_top_padding)
+ (isTablet ? 0 : edgeMarginPx); // phones need edgeMarginPx additional padding
@@ -567,6 +568,7 @@ public class DeviceProfile {
WindowBounds bounds = new WindowBounds(
widthPx, heightPx, availableWidthPx, availableHeightPx, rotationHint);
bounds.bounds.offsetTo(windowX, windowY);
bounds.insets.set(mInsets);
return new Builder(context, inv, mInfo)
.setWindowBounds(bounds)
.setUseTwoPanels(isTwoPanels)
@@ -1144,9 +1146,12 @@ public class DeviceProfile {
writer.println(prefix + pxToDpStr("windowY", windowY));
writer.println(prefix + pxToDpStr("widthPx", widthPx));
writer.println(prefix + pxToDpStr("heightPx", heightPx));
writer.println(prefix + pxToDpStr("availableWidthPx", availableWidthPx));
writer.println(prefix + pxToDpStr("availableHeightPx", availableHeightPx));
writer.println(prefix + pxToDpStr("mInsets.left", mInsets.left));
writer.println(prefix + pxToDpStr("mInsets.top", mInsets.top));
writer.println(prefix + pxToDpStr("mInsets.right", mInsets.right));
writer.println(prefix + pxToDpStr("mInsets.bottom", mInsets.bottom));
writer.println(prefix + "\taspectRatio:" + aspectRatio);
@@ -1187,6 +1192,10 @@ public class DeviceProfile {
writer.println(prefix + pxToDpStr("folderCellLayoutBorderSpacePx Vertical",
folderCellLayoutBorderSpacePx.y));
writer.println(prefix + pxToDpStr("bottomSheetTopPadding", bottomSheetTopPadding));
writer.println(prefix + pxToDpStr("allAppsShiftRange", allAppsShiftRange));
writer.println(prefix + pxToDpStr("allAppsTopPadding", allAppsTopPadding));
writer.println(prefix + pxToDpStr("allAppsIconSizePx", allAppsIconSizePx));
writer.println(prefix + pxToDpStr("allAppsIconTextSizePx", allAppsIconTextSizePx));
writer.println(prefix + pxToDpStr("allAppsIconDrawablePaddingPx",