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

Commit c91318ac authored by Andrey Epin's avatar Andrey Epin
Browse files

Fix ResolverDrawerLayout child measurement

ResoverDrawerLayout didn't take into account its horizontal paddints
when measured its children.
Plus a trivial refactoring.

Fix: 223775954
Test: Manual test: open Chooser in landscape mode on a phone with
3-button navigation.

Change-Id: Ia4835a2ddb52bff4ba36597dea3a3d7bf83967aa
parent cb417881
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -929,7 +929,7 @@ public class ResolverDrawerLayout extends ViewGroup {
        // Single-use layout; just ignore the mode and use available space.
        // Clamp to maxWidth.
        if (mMaxWidth >= 0) {
            widthSize = Math.min(widthSize, mMaxWidth);
            widthSize = Math.min(widthSize, mMaxWidth + getPaddingLeft() + getPaddingRight());
        }

        final int widthSpec = MeasureSpec.makeMeasureSpec(widthSize, MeasureSpec.EXACTLY);
@@ -1008,8 +1008,9 @@ public class ResolverDrawerLayout extends ViewGroup {
        View indicatorHost = null;

        int ypos = mTopOffset;
        int leftEdge = getPaddingLeft();
        int rightEdge = width - getPaddingRight();
        final int leftEdge = getPaddingLeft();
        final int rightEdge = width - getPaddingRight();
        final int widthAvailable = rightEdge - leftEdge;

        final int childCount = getChildCount();
        for (int i = 0; i < childCount; i++) {
@@ -1030,7 +1031,6 @@ public class ResolverDrawerLayout extends ViewGroup {
            final int bottom = top + child.getMeasuredHeight();

            final int childWidth = child.getMeasuredWidth();
            final int widthAvailable = rightEdge - leftEdge;
            final int left = leftEdge + (widthAvailable - childWidth) / 2;
            final int right = left + childWidth;