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

Commit f7b36301 authored by Lyn Han's avatar Lyn Han Committed by android-build-merger
Browse files

Merge "Move bubbles top, manage button below" into qt-dev

am: c8a97db0

Change-Id: I803c72c723e7f65f68ce3d740ffc493064a773c5
parents 83c19ade c8a97db0
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -30,11 +30,12 @@
    <com.android.systemui.statusbar.AlphaOptimizedButton
        style="@android:style/Widget.Material.Button.Borderless"
        android:id="@+id/settings_button"
        android:layout_gravity="end"
        android:layout_gravity="start"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:focusable="true"
        android:text="@string/manage_bubbles_text"
        android:textColor="?attr/wallpaperTextColor"/>
        android:textColor="?attr/wallpaperTextColor"
    />

</com.android.systemui.bubbles.BubbleExpandedView>
+9 −3
Original line number Diff line number Diff line
@@ -174,7 +174,7 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList


        mPointerDrawable = new ShapeDrawable(TriangleShape.create(
                mPointerWidth, mPointerHeight, false /* pointUp */));
                mPointerWidth, mPointerHeight, true /* pointUp */));
        mPointerView.setBackground(mPointerDrawable);

        mSettingsIconHeight = getContext().getResources().getDimensionPixelSize(
@@ -186,8 +186,14 @@ public class BubbleExpandedView extends LinearLayout implements View.OnClickList
                true /* singleTaskInstance */);
        addView(mActivityView);

        // Make sure pointer is below activity view
        bringChildToFront(mPointerView);
        // Expanded stack layout, top to bottom:
        // Expanded view container
        // ==> bubble row
        // ==> expanded view
        //   ==> activity view
        //   ==> manage button
        bringChildToFront(mActivityView);
        bringChildToFront(mSettingsIcon);

        applyThemeAttrs();

+7 −3
Original line number Diff line number Diff line
@@ -176,6 +176,7 @@ public class BubbleStackView extends FrameLayout {
    private int mExpandedViewPadding;
    private int mExpandedAnimateXDistance;
    private int mExpandedAnimateYDistance;
    private int mPointerHeight;
    private int mStatusBarHeight;
    private int mPipDismissHeight;
    private int mImeOffset;
@@ -303,6 +304,8 @@ public class BubbleStackView extends FrameLayout {
                res.getDimensionPixelSize(R.dimen.bubble_expanded_animate_x_distance);
        mExpandedAnimateYDistance =
                res.getDimensionPixelSize(R.dimen.bubble_expanded_animate_y_distance);
        mPointerHeight = res.getDimensionPixelSize(R.dimen.bubble_pointer_height);

        mStatusBarHeight =
                res.getDimensionPixelSize(com.android.internal.R.dimen.status_bar_height);
        mPipDismissHeight = mContext.getResources().getDimensionPixelSize(
@@ -1282,15 +1285,16 @@ public class BubbleStackView extends FrameLayout {
     */
    int getMaxExpandedHeight() {
        int expandedY = (int) mExpandedAnimationController.getExpandedY();
        return expandedY - getStatusBarHeight();
        // PIP dismiss view uses FLAG_LAYOUT_IN_SCREEN so we need to subtract the bottom inset
        int pipDismissHeight = mPipDismissHeight - getBottomInset();
        return mDisplaySize.y - expandedY - mBubbleSize - pipDismissHeight;
    }

    /**
     * Calculates the y position of the expanded view when it is expanded.
     */
    float getYPositionForExpandedView() {
        return mExpandedAnimationController.getExpandedY()
                - mExpandedBubble.expandedView.getExpandedSize() - mBubblePadding;
        return getStatusBarHeight() + mBubbleSize + mBubblePadding + mPointerHeight;
    }

    /**
+5 −7
Original line number Diff line number Diff line
@@ -301,13 +301,11 @@ public class ExpandedAnimationController
            return 0;
        }
        final WindowInsets insets = mLayout.getRootWindowInsets();
        int keyboardHeight = insets.getSystemWindowInsetBottom()
                - insets.getStableInsetBottom();
        float bottomInset = keyboardHeight > 0
                ? keyboardHeight
                : (mPipDismissHeight - insets.getStableInsetBottom());
        // Stable insets are excluded from display size, so we must subtract it
        return mDisplaySize.y - mBubbleSizePx - mBubblePaddingPx - bottomInset;
        return mBubblePaddingPx + Math.max(
            mStatusBarHeight,
            insets.getDisplayCutout() != null
                ? insets.getDisplayCutout().getSafeInsetTop()
                : 0);
    }

    @Override