diff --git a/lawnchair/res/values-sw340dp/dimens.xml b/lawnchair/res/values-sw340dp/dimens.xml new file mode 100644 index 0000000000..569e5010d9 --- /dev/null +++ b/lawnchair/res/values-sw340dp/dimens.xml @@ -0,0 +1,4 @@ + + + 20dp + diff --git a/lawnchair/res/values-sw360dp/bools.xml b/lawnchair/res/values-sw360dp/bools.xml new file mode 100644 index 0000000000..64a86db258 --- /dev/null +++ b/lawnchair/res/values-sw360dp/bools.xml @@ -0,0 +1,4 @@ + + + true + diff --git a/lawnchair/res/values-sw400dp-land/styles.xml b/lawnchair/res/values-sw400dp-land/styles.xml new file mode 100644 index 0000000000..29f80d83b6 --- /dev/null +++ b/lawnchair/res/values-sw400dp-land/styles.xml @@ -0,0 +1,12 @@ + + + + + + diff --git a/lawnchair/res/values-sw400dp/styles.xml b/lawnchair/res/values-sw400dp/styles.xml new file mode 100644 index 0000000000..302e5c517f --- /dev/null +++ b/lawnchair/res/values-sw400dp/styles.xml @@ -0,0 +1,24 @@ + + + + + + + + + diff --git a/lawnchair/res/values-sw480dp-land/styles.xml b/lawnchair/res/values-sw480dp-land/styles.xml new file mode 100644 index 0000000000..29f80d83b6 --- /dev/null +++ b/lawnchair/res/values-sw480dp-land/styles.xml @@ -0,0 +1,12 @@ + + + + + + diff --git a/lawnchair/res/values-sw480dp/styles.xml b/lawnchair/res/values-sw480dp/styles.xml new file mode 100644 index 0000000000..9da3c20dd8 --- /dev/null +++ b/lawnchair/res/values-sw480dp/styles.xml @@ -0,0 +1,12 @@ + + + + + + diff --git a/lawnchair/res/values-sw600dp-land/dimens.xml b/lawnchair/res/values-sw600dp-land/dimens.xml new file mode 100644 index 0000000000..9e0a46fea8 --- /dev/null +++ b/lawnchair/res/values-sw600dp-land/dimens.xml @@ -0,0 +1,17 @@ + + + 48dp + 11.33dp + 16dp + 0dp + 11.33dp + 49dp + 491dp + 24dp + 40dp + 16dp + 48dp + 32dp + 3600dp + 44dp + diff --git a/lawnchair/res/values-sw600dp-land/drawables.xml b/lawnchair/res/values-sw600dp-land/drawables.xml new file mode 100644 index 0000000000..045e125f3d --- /dev/null +++ b/lawnchair/res/values-sw600dp-land/drawables.xml @@ -0,0 +1,3 @@ + + + diff --git a/lawnchair/res/values-sw600dp-land/styles.xml b/lawnchair/res/values-sw600dp-land/styles.xml new file mode 100644 index 0000000000..d7b88c768d --- /dev/null +++ b/lawnchair/res/values-sw600dp-land/styles.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + diff --git a/lawnchair/res/values-sw600dp/dimens.xml b/lawnchair/res/values-sw600dp/dimens.xml new file mode 100644 index 0000000000..e0f3b4478a --- /dev/null +++ b/lawnchair/res/values-sw600dp/dimens.xml @@ -0,0 +1,50 @@ + + + 24dp + 80dp + 64dp + 8dp + 8dp + 580dp + 16dp + 20dp + 0dp + 38sp + 120dp + 15sp + 9dp + 320dp + 0dp + 2dp + 24dp + 576dp + 320dp + @dimen/design_snackbar_padding_vertical + 160dp + -1000dp + 16dp + 16dp + 64dp + 56dp + 9dp + 0dp + 62dp + 13dp + 32dp + 75dp + 6dp + 3000dp + 64dp + 64dp + 25dp + 356dp + 24dp + 28dp + 64dp + 36dp + 12dp + 65dp + 44dp + 132dp + 32dp + diff --git a/lawnchair/res/values-sw600dp/integers.xml b/lawnchair/res/values-sw600dp/integers.xml new file mode 100644 index 0000000000..7e353a7d45 --- /dev/null +++ b/lawnchair/res/values-sw600dp/integers.xml @@ -0,0 +1,9 @@ + + + @integer/config_bottomSheetCloseDuration + @integer/config_bottomSheetOpenDuration + 500 + 500 + 550 + 1 + diff --git a/lawnchair/res/values-sw600dp/styles.xml b/lawnchair/res/values-sw600dp/styles.xml new file mode 100644 index 0000000000..ea844538a8 --- /dev/null +++ b/lawnchair/res/values-sw600dp/styles.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + diff --git a/lawnchair/res/values-sw640dp-land/styles.xml b/lawnchair/res/values-sw640dp-land/styles.xml new file mode 100644 index 0000000000..bc8b8abdca --- /dev/null +++ b/lawnchair/res/values-sw640dp-land/styles.xml @@ -0,0 +1,14 @@ + + + + + + diff --git a/lawnchair/res/values-sw640dp/styles.xml b/lawnchair/res/values-sw640dp/styles.xml new file mode 100644 index 0000000000..27958a9793 --- /dev/null +++ b/lawnchair/res/values-sw640dp/styles.xml @@ -0,0 +1,14 @@ + + + + + + diff --git a/lawnchair/res/values-sw700dp-land/styles.xml b/lawnchair/res/values-sw700dp-land/styles.xml new file mode 100644 index 0000000000..d18d024fb1 --- /dev/null +++ b/lawnchair/res/values-sw700dp-land/styles.xml @@ -0,0 +1,23 @@ + + + + + + + + + diff --git a/lawnchair/res/values-sw700dp/styles.xml b/lawnchair/res/values-sw700dp/styles.xml new file mode 100644 index 0000000000..63cfa02754 --- /dev/null +++ b/lawnchair/res/values-sw700dp/styles.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + diff --git a/lawnchair/res/values-sw720dp-land/dimens.xml b/lawnchair/res/values-sw720dp-land/dimens.xml new file mode 100644 index 0000000000..3646f6659d --- /dev/null +++ b/lawnchair/res/values-sw720dp-land/dimens.xml @@ -0,0 +1,17 @@ + + + 0dp + 18dp + 29.33dp + 32dp + 0dp + 21.93dp + 21dp + 580dp + 49dp + 24dp + 5300dp + -50dp + 64dp + 49dp + diff --git a/lawnchair/res/values-sw720dp-land/drawables.xml b/lawnchair/res/values-sw720dp-land/drawables.xml new file mode 100644 index 0000000000..045e125f3d --- /dev/null +++ b/lawnchair/res/values-sw720dp-land/drawables.xml @@ -0,0 +1,3 @@ + + + diff --git a/lawnchair/res/values-sw720dp/dimens.xml b/lawnchair/res/values-sw720dp/dimens.xml new file mode 100644 index 0000000000..b90c0d3c7d --- /dev/null +++ b/lawnchair/res/values-sw720dp/dimens.xml @@ -0,0 +1,27 @@ + + + 42sp + 16sp + 300dp + 36dp + 48dp + 24dp + 8dp + 32dp + 32dp + 20sp + 110dp + 72dp + 27.59dp + 24dp + 3400dp + 36dp + 44dp + 16dp + 108dp + 100dp + 300dp + 30dp + 180dp + 30dp + diff --git a/lawnchair/res/values-sw720dp/drawables.xml b/lawnchair/res/values-sw720dp/drawables.xml new file mode 100644 index 0000000000..045e125f3d --- /dev/null +++ b/lawnchair/res/values-sw720dp/drawables.xml @@ -0,0 +1,3 @@ + + + diff --git a/lawnchair/res/values-sw800dp-land/styles.xml b/lawnchair/res/values-sw800dp-land/styles.xml new file mode 100644 index 0000000000..abb17453b2 --- /dev/null +++ b/lawnchair/res/values-sw800dp-land/styles.xml @@ -0,0 +1,15 @@ + + + + + + + diff --git a/lawnchair/res/values-sw800dp/styles.xml b/lawnchair/res/values-sw800dp/styles.xml new file mode 100644 index 0000000000..56deec3403 --- /dev/null +++ b/lawnchair/res/values-sw800dp/styles.xml @@ -0,0 +1,15 @@ + + + + + + + diff --git a/lawnchair/res/values-sw900dp/dimens.xml b/lawnchair/res/values-sw900dp/dimens.xml new file mode 100644 index 0000000000..89675d1765 --- /dev/null +++ b/lawnchair/res/values-sw900dp/dimens.xml @@ -0,0 +1,5 @@ + + + 76dp + 0dp + diff --git a/lawnchair/res/values-w320dp-land/dimens.xml b/lawnchair/res/values-w320dp-land/dimens.xml new file mode 100644 index 0000000000..9f3ba5ac79 --- /dev/null +++ b/lawnchair/res/values-w320dp-land/dimens.xml @@ -0,0 +1,5 @@ + + + 24dp + 36dp + diff --git a/lawnchair/res/values-w360dp-port/dimens.xml b/lawnchair/res/values-w360dp-port/dimens.xml new file mode 100644 index 0000000000..076e441531 --- /dev/null +++ b/lawnchair/res/values-w360dp-port/dimens.xml @@ -0,0 +1,11 @@ + + + 4dp + 18dp + 40dp + 2dp + 2dp + 40dp + 40dp + 4dp + diff --git a/lawnchair/res/values-w480dp-port/dimens.xml b/lawnchair/res/values-w480dp-port/dimens.xml new file mode 100644 index 0000000000..15f69f4450 --- /dev/null +++ b/lawnchair/res/values-w480dp-port/dimens.xml @@ -0,0 +1,9 @@ + + + 0dp + 22dp + 48dp + 48dp + 48dp + 0dp + diff --git a/lawnchair/res/values-w600dp-land/dimens.xml b/lawnchair/res/values-w600dp-land/dimens.xml new file mode 100644 index 0000000000..a0d1f36cb4 --- /dev/null +++ b/lawnchair/res/values-w600dp-land/dimens.xml @@ -0,0 +1,4 @@ + + + 64dp + diff --git a/lawnchair/res/values-xlarge/dimens.xml b/lawnchair/res/values-xlarge/dimens.xml new file mode 100644 index 0000000000..1fd0d37c69 --- /dev/null +++ b/lawnchair/res/values-xlarge/dimens.xml @@ -0,0 +1,7 @@ + + + 50% + 70% + 45% + 72% + diff --git a/lawnchair/res/values/strings.xml b/lawnchair/res/values/strings.xml index d594a2b56a..4c95083897 100644 --- a/lawnchair/res/values/strings.xml +++ b/lawnchair/res/values/strings.xml @@ -538,4 +538,6 @@ %s & %s System Settings + + Google diff --git a/lawnchair/res/values/styles.xml b/lawnchair/res/values/styles.xml index f3453325b5..d1003cec40 100644 --- a/lawnchair/res/values/styles.xml +++ b/lawnchair/res/values/styles.xml @@ -210,4 +210,51 @@ @dimen/key_text_shadow_dx @dimen/key_text_shadow_dy + + + + + + + + + + + diff --git a/lawnchair/res/xml-sw600dp-land/paddings_split_4x4.xml b/lawnchair/res/xml-sw600dp-land/paddings_split_4x4.xml new file mode 100644 index 0000000000..597e31479c --- /dev/null +++ b/lawnchair/res/xml-sw600dp-land/paddings_split_4x4.xml @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lawnchair/res/xml-sw600dp-land/paddings_split_4x5.xml b/lawnchair/res/xml-sw600dp-land/paddings_split_4x5.xml new file mode 100644 index 0000000000..47d71a172c --- /dev/null +++ b/lawnchair/res/xml-sw600dp-land/paddings_split_4x5.xml @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lawnchair/res/xml-sw600dp-land/paddings_split_5x5.xml b/lawnchair/res/xml-sw600dp-land/paddings_split_5x5.xml new file mode 100644 index 0000000000..8e72c19e4d --- /dev/null +++ b/lawnchair/res/xml-sw600dp-land/paddings_split_5x5.xml @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lawnchair/res/xml-sw600dp/paddings_split_4x4.xml b/lawnchair/res/xml-sw600dp/paddings_split_4x4.xml new file mode 100644 index 0000000000..bfc01951d9 --- /dev/null +++ b/lawnchair/res/xml-sw600dp/paddings_split_4x4.xml @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lawnchair/res/xml-sw600dp/paddings_split_4x5.xml b/lawnchair/res/xml-sw600dp/paddings_split_4x5.xml new file mode 100644 index 0000000000..277ee30db1 --- /dev/null +++ b/lawnchair/res/xml-sw600dp/paddings_split_4x5.xml @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lawnchair/res/xml-sw600dp/paddings_split_5x5.xml b/lawnchair/res/xml-sw600dp/paddings_split_5x5.xml new file mode 100644 index 0000000000..78cd50d921 --- /dev/null +++ b/lawnchair/res/xml-sw600dp/paddings_split_5x5.xml @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lawnchair/res/xml/default_workspace_5x6.xml b/lawnchair/res/xml/default_workspace_5x6.xml index 6cc554275f..2f6fc993dc 100644 --- a/lawnchair/res/xml/default_workspace_5x6.xml +++ b/lawnchair/res/xml/default_workspace_5x6.xml @@ -14,7 +14,7 @@ limitations under the License. --> - + diff --git a/lawnchair/res/xml/default_workspace_5x7.xml b/lawnchair/res/xml/default_workspace_5x7.xml index 7f2693c44b..c6278f5ee2 100644 --- a/lawnchair/res/xml/default_workspace_5x7.xml +++ b/lawnchair/res/xml/default_workspace_5x7.xml @@ -14,7 +14,7 @@ limitations under the License. --> - + diff --git a/lawnchair/res/xml/default_workspace_6x6.xml b/lawnchair/res/xml/default_workspace_6x6.xml index 27dd3ee8a5..d0ee95bf49 100644 --- a/lawnchair/res/xml/default_workspace_6x6.xml +++ b/lawnchair/res/xml/default_workspace_6x6.xml @@ -14,7 +14,7 @@ limitations under the License. --> - + diff --git a/lawnchair/res/xml/default_workspace_splitdisplay_4x4.xml b/lawnchair/res/xml/default_workspace_splitdisplay_4x4.xml new file mode 100644 index 0000000000..3a7f7dfedd --- /dev/null +++ b/lawnchair/res/xml/default_workspace_splitdisplay_4x4.xml @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lawnchair/res/xml/demo_workspace_5x5.xml b/lawnchair/res/xml/demo_workspace_5x5.xml new file mode 100644 index 0000000000..c9d77c016c --- /dev/null +++ b/lawnchair/res/xml/demo_workspace_5x5.xml @@ -0,0 +1,43 @@ + + + + + + + + + + + diff --git a/lawnchair/res/xml/device_profiles.xml b/lawnchair/res/xml/device_profiles.xml index 7c48a86b8e..dcae6ad805 100644 --- a/lawnchair/res/xml/device_profiles.xml +++ b/lawnchair/res/xml/device_profiles.xml @@ -1,5 +1,4 @@ - - - + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - + launcher:deviceCategory="tablet" + launcher:devicePaddingId="@xml/paddings_6x5" + launcher:folderStyle="@style/Folder6x5Style" + launcher:hotseatColumnSpanLandscape="4" + launcher:inlineNavButtonsEndSpacing="@dimen/taskbar_button_margin_6_5" + launcher:inlineQsb="landscape" + launcher:isScalable="true" + launcher:name="tablet_normal" + launcher:numAllAppsColumns="6" + launcher:numColumns="6" + launcher:numFolderColumns="3" + launcher:numFolderRows="3" + launcher:numHotseatIcons="6" + launcher:numRows="5" + launcher:numSearchContainerColumns="3"> - + launcher:hotseatQsbSpace="32" + launcher:iconImageSize="66" + launcher:iconTextSize="14" + launcher:minCellHeight="120" + launcher:minCellHeightLandscape="104" + launcher:minCellWidth="102" + launcher:minCellWidthLandscape="120" + launcher:minHeightDps="748" + launcher:minWidthDps="800" + launcher:name="Pixel C" + launcher:startAlignTaskbar="true" + launcher:startAlignTaskbarLandscape="false" + launcher:transientTaskbarIconSize="57.2"/> + + + + - \ No newline at end of file diff --git a/lawnchair/res/xml/dynamic_resources.xml b/lawnchair/res/xml/dynamic_resources.xml new file mode 100644 index 0000000000..d53c7b0a0e --- /dev/null +++ b/lawnchair/res/xml/dynamic_resources.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/lawnchair/res/xml/handheld_workspace_spec.xml b/lawnchair/res/xml/handheld_workspace_spec.xml new file mode 100644 index 0000000000..6d96536a88 --- /dev/null +++ b/lawnchair/res/xml/handheld_workspace_spec.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/lawnchair/res/xml/paddings_2x2.xml b/lawnchair/res/xml/paddings_2x2.xml new file mode 100644 index 0000000000..28c48a65c0 --- /dev/null +++ b/lawnchair/res/xml/paddings_2x2.xml @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lawnchair/res/xml/paddings_3x3.xml b/lawnchair/res/xml/paddings_3x3.xml new file mode 100644 index 0000000000..53cc4ad71e --- /dev/null +++ b/lawnchair/res/xml/paddings_3x3.xml @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lawnchair/res/xml/paddings_4x4.xml b/lawnchair/res/xml/paddings_4x4.xml new file mode 100644 index 0000000000..68b6cc7c0d --- /dev/null +++ b/lawnchair/res/xml/paddings_4x4.xml @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lawnchair/res/xml/paddings_4x5.xml b/lawnchair/res/xml/paddings_4x5.xml index 221b5779dc..68b6cc7c0d 100644 --- a/lawnchair/res/xml/paddings_4x5.xml +++ b/lawnchair/res/xml/paddings_4x5.xml @@ -1,38 +1,86 @@ - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + diff --git a/lawnchair/res/xml/paddings_5x5.xml b/lawnchair/res/xml/paddings_5x5.xml new file mode 100644 index 0000000000..f57c781453 --- /dev/null +++ b/lawnchair/res/xml/paddings_5x5.xml @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lawnchair/res/xml/paddings_6x5.xml b/lawnchair/res/xml/paddings_6x5.xml new file mode 100644 index 0000000000..91b7bbce86 --- /dev/null +++ b/lawnchair/res/xml/paddings_6x5.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + diff --git a/lawnchair/res/xml/paddings_handhelds.xml b/lawnchair/res/xml/paddings_handhelds.xml new file mode 100644 index 0000000000..ca56882906 --- /dev/null +++ b/lawnchair/res/xml/paddings_handhelds.xml @@ -0,0 +1,14 @@ + + + + + + + + diff --git a/lawnchair/res/xml/paddings_split_4x4.xml b/lawnchair/res/xml/paddings_split_4x4.xml new file mode 100644 index 0000000000..aa3b697ffc --- /dev/null +++ b/lawnchair/res/xml/paddings_split_4x4.xml @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lawnchair/res/xml/paddings_split_4x5.xml b/lawnchair/res/xml/paddings_split_4x5.xml new file mode 100644 index 0000000000..122dce5377 --- /dev/null +++ b/lawnchair/res/xml/paddings_split_4x5.xml @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lawnchair/res/xml/paddings_split_5x5.xml b/lawnchair/res/xml/paddings_split_5x5.xml new file mode 100644 index 0000000000..f986d60334 --- /dev/null +++ b/lawnchair/res/xml/paddings_split_5x5.xml @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/com/android/launcher3/DeviceProfile.java b/src/com/android/launcher3/DeviceProfile.java index 7445eb6745..91df19c24d 100644 --- a/src/com/android/launcher3/DeviceProfile.java +++ b/src/com/android/launcher3/DeviceProfile.java @@ -525,18 +525,9 @@ public class DeviceProfile { numShownAllAppsColumns = isTwoPanels ? inv.numDatabaseAllAppsColumns : inv.numAllAppsColumns; - int hotseatBarBottomSpace = isQsbEnable ? 0 : pxFromDp(inv.hotseatBarBottomSpace[mTypeIndex], mMetrics); + int hotseatBarBottomSpace = !isQsbEnable ? 0 : pxFromDp(inv.hotseatBarBottomSpace[mTypeIndex], mMetrics); int minQsbMargin = res.getDimensionPixelSize(R.dimen.min_qsb_margin); - if (mIsResponsiveGrid) { - HotseatSpecs hotseatSpecs = HotseatSpecs.create(new ResourceHelper(context, - isTwoPanels ? inv.hotseatSpecsTwoPanelId : inv.hotseatSpecsId)); - mResponsiveHotseatSpec = hotseatSpecs.getCalculatedHeightSpec(heightPx); - hotseatQsbSpace = mResponsiveHotseatSpec.getHotseatQsbSpace(); - } else { - hotseatQsbSpace = pxFromDp(inv.hotseatQsbSpace[mTypeIndex], mMetrics); - } - // Have a little space between the inset and the QSB if (isQsbEnable && mInsets.bottom + minQsbMargin > hotseatBarBottomSpace) { int availableSpace = hotseatQsbSpace - (mInsets.bottom - hotseatBarBottomSpace); @@ -654,10 +645,6 @@ public class DeviceProfile { // Hotseat and QSB width depends on updated cellSize and workspace padding recalculateHotseatWidthAndBorderSpace(); - if (mIsResponsiveGrid && isVerticalBarLayout()) { - hotseatBorderSpace = cellLayoutBorderSpacePx.y; - } - // AllApps height calculation depends on updated cellSize if (isTablet) { int collapseHandleHeight = res.getDimensionPixelOffset(R.dimen.bottom_sheet_handle_area_height); @@ -743,7 +730,8 @@ public class DeviceProfile { - hotseatBorderSpace * numShownHotseatIcons; } else { int columns = inv.hotseatColumnSpan[mTypeIndex]; - return getIconToIconWidthForColumns(columns); + return getIconToIconWidthForColumns(columns) + - hotseatBorderSpace; } } @@ -795,17 +783,19 @@ public class DeviceProfile { // radius. hotseatCellHeightPx = getIconSizeWithOverlap(hotseatIconSizePx); + var space = Math.abs(hotseatCellHeightPx / 2); + if (isVerticalBarLayout()) { hotseatBarSizePx = hotseatIconSizePx + hotseatBarSidePaddingStartPx - + hotseatBarSidePaddingEndPx; + + hotseatBarSidePaddingEndPx + space; } else if (isQsbInline) { hotseatBarSizePx = Math.max(hotseatIconSizePx, hotseatQsbVisualHeight) - + hotseatBarBottomSpacePx; + + hotseatBarBottomSpacePx + space; } else { hotseatBarSizePx = hotseatIconSizePx + hotseatQsbSpace + hotseatQsbVisualHeight - + hotseatBarBottomSpacePx; + + hotseatBarBottomSpacePx + space; } } @@ -1174,12 +1164,14 @@ public class DeviceProfile { } else { updateAllAppsIconSize(scale, res); } + + updateHotseatSizes(iconSizePx); + updateAllAppsContainerWidth(); if (isVerticalBarLayout()) { hideWorkspaceLabelsIfNotEnoughSpace(); } - updateHotseatSizes(iconSizePx); // Folder icon folderIconSizePx = IconNormalizer.getNormalizedCircleSize(iconSizePx); @@ -1201,12 +1193,10 @@ public class DeviceProfile { * width. */ private int calculateHotseatBorderSpace(float hotseatWidthPx, int numExtraBorder) { - int numBorders = (numShownHotseatIcons - 1 + numExtraBorder); - if (numBorders <= 0) - return 0; - float hotseatIconsTotalPx = iconSizePx * numShownHotseatIcons; - int hotseatBorderSpacePx = (int) (hotseatWidthPx - hotseatIconsTotalPx) / numBorders; + int hotseatBorderSpacePx = + (int) (hotseatWidthPx - hotseatIconsTotalPx) + / (numShownHotseatIcons - 1 + numExtraBorder); return Math.min(hotseatBorderSpacePx, mMaxHotseatIconSpacePx); } diff --git a/src/com/android/launcher3/Hotseat.java b/src/com/android/launcher3/Hotseat.java index afa83970b5..a278985f40 100644 --- a/src/com/android/launcher3/Hotseat.java +++ b/src/com/android/launcher3/Hotseat.java @@ -51,7 +51,6 @@ public class Hotseat extends CellLayout implements Insettable { private boolean mSendTouchToWorkspace; private final View mQsb; - private final int mQsbHeight; PreferenceManager2 preferenceManager2; @@ -77,7 +76,6 @@ public class Hotseat extends CellLayout implements Insettable { int layoutId = hotseatMode.getLayoutResourceId(); mQsb = LayoutInflater.from(context).inflate(layoutId, this, false); - mQsbHeight = mQsb.getLayoutParams().height; addView(mQsb); } @@ -114,7 +112,7 @@ public class Hotseat extends CellLayout implements Insettable { if (grid.isVerticalBarLayout()) { mQsb.setVisibility(View.GONE); - lp.height = LayoutParams.MATCH_PARENT; + lp.height = ViewGroup.LayoutParams.MATCH_PARENT; if (grid.isSeascape()) { lp.gravity = Gravity.LEFT; lp.width = grid.hotseatBarSizePx + insets.left; @@ -125,29 +123,13 @@ public class Hotseat extends CellLayout implements Insettable { } else { mQsb.setVisibility(View.VISIBLE); lp.gravity = Gravity.BOTTOM; - lp.width = LayoutParams.MATCH_PARENT; + lp.width = ViewGroup.LayoutParams.MATCH_PARENT; lp.height = grid.hotseatBarSizePx; - lp.topMargin = grid.hotseatBarBottomSpacePx; } Rect padding = grid.getHotseatLayoutPadding(getContext()); setPadding(padding.left, padding.top, padding.right, padding.bottom); - if(!PreferenceExtensionsKt.firstBlocking(preferenceManager2.getEnableTaskbarOnPhone())){ - FrameLayout.LayoutParams qsbLp = (FrameLayout.LayoutParams) getLayoutParams(); - qsbLp.topMargin = grid.hotseatBarBottomSpacePx; - qsbLp.height = (grid.hotseatBarSizePx * 2) - (padding.bottom + grid.hotseatBarBottomSpacePx); - mQsb.setLayoutParams (qsbLp); - setLayoutParams(lp); - } - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { - if(mQsb.getSourceLayoutResId () == R.layout.empty_view){ - mQsb.setVisibility (View.GONE); - mQsb.setLayoutParams ((FrameLayout.LayoutParams) getLayoutParams()); - FrameLayout.LayoutParams layoutParams = (FrameLayout.LayoutParams) getLayoutParams(); - layoutParams.height = grid.hotseatBarSizePx; - setLayoutParams(layoutParams); - } - } + setLayoutParams(lp); InsettableFrameLayout.dispatchInsets(this, insets); } @@ -190,9 +172,11 @@ public class Hotseat extends CellLayout implements Insettable { protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { super.onMeasure(widthMeasureSpec, heightMeasureSpec); + DeviceProfile dp = mActivity.getDeviceProfile(); + int width = getShortcutsAndWidgets().getMeasuredWidth(); mQsb.measure(MeasureSpec.makeMeasureSpec(width, MeasureSpec.EXACTLY), - MeasureSpec.makeMeasureSpec(mQsbHeight, MeasureSpec.EXACTLY)); + MeasureSpec.makeMeasureSpec(dp.hotseatQsbHeight, MeasureSpec.EXACTLY)); } @Override diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java index 4aba38995a..4147bc1fab 100644 --- a/src/com/android/launcher3/Workspace.java +++ b/src/com/android/launcher3/Workspace.java @@ -412,11 +412,7 @@ public class Workspace extends PagedView } else { lp.leftMargin = lp.rightMargin = 0; lp.gravity = Gravity.CENTER_HORIZONTAL | Gravity.BOTTOM; - boolean isDisabledHotseat = Utilities.ATLEAST_Q && - getHotseat() != null && - getHotseat().getQsb().getSourceLayoutResId() == R.layout.empty_view; - lp.bottomMargin = (padding.bottom) + grid.hotseatBarBottomSpacePx - - (isDisabledHotseat ? grid.workspaceCellPaddingXPx * 3 : 0); + lp.bottomMargin = grid.hotseatBarSizePx; } mPageIndicator.setLayoutParams(lp); }