Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c32c63c4 authored by Tony Wickham's avatar Tony Wickham
Browse files

resolve merge conflicts of b9759d39 to ub-launcher3-calgary.

Change-Id: I66230c15e5eaeef316d4e2f14b85c6ff1b6e977d
parents ad37152c b9759d39
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -18,13 +18,16 @@
<!-- Dynamic Grid -->
    <dimen name="dynamic_grid_edge_margin">6dp</dimen>
    <dimen name="dynamic_grid_search_bar_height">48dp</dimen>
    <!-- We want 32dp extra for the tall search bar. -->
    <dimen name="dynamic_grid_search_bar_height_tall">80dp</dimen>
    <!-- We want 46dp extra for the tall search bar. -->
    <dimen name="dynamic_grid_search_bar_height_tall">94dp</dimen>
    <dimen name="qsb_internal_padding_top">8dp</dimen>
    <dimen name="qsb_internal_padding_bottom">8dp</dimen>
    <dimen name="dynamic_grid_search_bar_extra_top_padding">0dp</dimen>
    <!-- Reduce the space between the status bar and the search bar when the search bar is tall -->
    <dimen name="dynamic_grid_search_bar_negative_top_padding_short">-4dp</dimen>
    <dimen name="dynamic_grid_search_bar_bottom_padding">4dp</dimen>
    <!-- Reduce the padding between the search bar and workspace when the search bar is tall -->
    <dimen name="dynamic_grid_search_bar_bottom_padding_short">-6dp</dimen>
    <dimen name="dynamic_grid_search_bar_bottom_negative_padding_short">-6dp</dimen>
    <dimen name="dynamic_grid_search_bar_bottom_padding_tablet">16dp</dimen>
    <dimen name="dynamic_grid_page_indicator_height">20dp</dimen>
    <dimen name="dynamic_grid_icon_drawable_padding">4dp</dimen>
+14 −3
Original line number Diff line number Diff line
@@ -103,6 +103,8 @@ public class DeviceProfile {
    // QSB
    private int searchBarWidgetInternalPaddingTop, searchBarWidgetInternalPaddingBottom;
    private int searchBarTopPaddingPx;
    private int tallSearchBarNegativeTopPaddingPx, normalSearchBarTopExtraPaddingPx;
    private int searchBarTopExtraPaddingPx; // One of the above.
    private int normalSearchBarBottomPaddingPx, tallSearchBarBottomPaddingPx;
    private int searchBarBottomPaddingPx; // One of the above.
    private int normalSearchBarSpaceHeightPx, tallSearchBarSpaceHeightPx;
@@ -216,6 +218,10 @@ public class DeviceProfile {
                R.dimen.qsb_internal_padding_top);
        searchBarWidgetInternalPaddingBottom = res.getDimensionPixelSize(
                R.dimen.qsb_internal_padding_bottom);
        normalSearchBarTopExtraPaddingPx = res.getDimensionPixelSize(
                R.dimen.dynamic_grid_search_bar_extra_top_padding);
        tallSearchBarNegativeTopPaddingPx = res.getDimensionPixelSize(
                R.dimen.dynamic_grid_search_bar_negative_top_padding_short);
        if (isTablet && !isVerticalBarLayout()) {
            searchBarTopPaddingPx = searchBarWidgetInternalPaddingTop;
            normalSearchBarBottomPaddingPx = searchBarWidgetInternalPaddingBottom +
@@ -225,8 +231,9 @@ public class DeviceProfile {
            searchBarTopPaddingPx = searchBarWidgetInternalPaddingTop;
            normalSearchBarBottomPaddingPx = searchBarWidgetInternalPaddingBottom +
                    res.getDimensionPixelSize(R.dimen.dynamic_grid_search_bar_bottom_padding);
            tallSearchBarBottomPaddingPx = searchBarWidgetInternalPaddingBottom +
                    res.getDimensionPixelSize(R.dimen.dynamic_grid_search_bar_bottom_padding_short);
            tallSearchBarBottomPaddingPx = searchBarWidgetInternalPaddingBottom
                    + res.getDimensionPixelSize(
                    R.dimen.dynamic_grid_search_bar_bottom_negative_padding_short);
        }

        // Calculate the actual text height
@@ -272,7 +279,7 @@ public class DeviceProfile {

    /** Returns the amount of extra space to allocate to the search bar for vertical padding. */
    private int getSearchBarTotalVerticalPadding() {
        return searchBarTopPaddingPx + searchBarBottomPaddingPx;
        return searchBarTopPaddingPx + searchBarTopExtraPaddingPx + searchBarBottomPaddingPx;
    }

    /** Returns the width and height of the search bar, ignoring any padding. */
@@ -439,10 +446,13 @@ public class DeviceProfile {
            hotseatBarHeightPx = shortHotseatBarHeightPx;
            searchBarSpaceHeightPx = tallSearchBarSpaceHeightPx;
            searchBarBottomPaddingPx = tallSearchBarBottomPaddingPx;
            searchBarTopExtraPaddingPx = isPhone ? tallSearchBarNegativeTopPaddingPx
                    : normalSearchBarTopExtraPaddingPx;
        } else {
            hotseatBarHeightPx = normalHotseatBarHeightPx;
            searchBarSpaceHeightPx = normalSearchBarSpaceHeightPx;
            searchBarBottomPaddingPx = normalSearchBarBottomPaddingPx;
            searchBarTopExtraPaddingPx = normalSearchBarTopExtraPaddingPx;
        }
    }

@@ -457,6 +467,7 @@ public class DeviceProfile {
        lp = getDropTargetBarLayoutParams(hasVerticalBarLayout, searchBar, Gravity.TOP);
        lp.width = searchBarBounds.width();
        lp.height = searchBarBounds.height();
        lp.topMargin = searchBarTopExtraPaddingPx;
        searchBar.setLayoutParams(lp);

        // Layout the app info bar space
+8 −13
Original line number Diff line number Diff line
@@ -108,15 +108,9 @@ public class InvariantDeviceProfileTest extends AndroidTestCase {
        if (!android.os.Build.DEVICE.equals("hammerhead")) {
            return;
        }
        assertEquals(mInvariantProfile.numRows, 4);
        assertEquals(mInvariantProfile.numColumns, 4);
        assertEquals((int) mInvariantProfile.numHotseatIcons, 5);

        DeviceProfile landscapeProfile = mInvariantProfile.landscapeProfile;
        DeviceProfile portraitProfile = mInvariantProfile.portraitProfile;

        assertEquals(portraitProfile.allAppsNumCols, 3);
        assertEquals(landscapeProfile.allAppsNumCols, 5); // not used
        assertEquals(4, mInvariantProfile.numRows);
        assertEquals(4, mInvariantProfile.numColumns);
        assertEquals(5, mInvariantProfile.numHotseatIcons);
    }

    // Add more tests for other devices, however, running them once on a single device is enough
@@ -172,10 +166,11 @@ public class InvariantDeviceProfileTest extends AndroidTestCase {
        Rect landscapeBounds = landscapeProfile.getSearchBarBounds(true); // RTL shouldn't matter.
        int landscapeHeight = (int) Utilities.dpiFromPx(landscapeBounds.height(),
                resources.getDisplayMetrics());
        if (portraitProfile.isTablet) {
            assertEquals(8 + 80 + 24, portraitHeight);
        if (portraitProfile.isPhone) {
            // This fails on some devices due to http://b/26884580 (portraitHeight is 101, not 100).
            assertEquals(4 + 94 + 2, portraitHeight);
        } else {
            assertEquals(8 + 80 + 2, portraitHeight);
            assertEquals(8 + 94 + 24, portraitHeight);
        }
        // Make sure the height that we pass in the widget options bundle is the height of the
        // search bar + 8dps padding top and bottom.
@@ -183,7 +178,7 @@ public class InvariantDeviceProfileTest extends AndroidTestCase {
        int portraitWidgetOptsHeight = portraitDimens.y;
        Point landscapeDimens = landscapeProfile.getSearchBarDimensForWidgetOpts(resources);
        int landscapeWidgetOptsHeight = landscapeDimens.y;
        assertEquals(8 + 80 + 8, (int) Utilities.dpiFromPx(portraitWidgetOptsHeight,
        assertEquals(8 + 94 + 8, (int) Utilities.dpiFromPx(portraitWidgetOptsHeight,
                resources.getDisplayMetrics()));
        if (!landscapeProfile.isVerticalBarLayout()) {
            assertEquals(portraitHeight, landscapeHeight);