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

Commit 8a6c2bf3 authored by Selim Cinek's avatar Selim Cinek Committed by Android (Google) Code Review
Browse files

Merge "Fixed various paddings of the messaging layout" into rvc-dev

parents 62ee4e97 afc20587
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -7526,9 +7526,11 @@ public class Notification implements Parcelable
                    p,
                    bindResult);
            addExtras(mBuilder.mN.extras);
            if (!CONVERSATION_LAYOUT_ENABLED) {
                // also update the end margin if there is an image
                contentView.setViewLayoutMarginEnd(R.id.notification_messaging,
                        bindResult.getIconMarginEnd());
            }
            contentView.setInt(R.id.status_bar_latest_event_content, "setLayoutColor",
                    mBuilder.isColorized(p) ? mBuilder.getPrimaryTextColor(p)
                            : mBuilder.resolveContrastColor(p));
+42 −0
Original line number Diff line number Diff line
@@ -122,6 +122,11 @@ public class ConversationLayout extends FrameLayout
    private CharSequence mFallbackChatName;
    private CharSequence mFallbackGroupChatName;
    private CharSequence mConversationTitle;
    private int mNotificationHeaderExpandedPadding;
    private View mConversationHeader;
    private View mContentContainer;
    private boolean mExpandable = true;
    private int mContentMarginEnd;

    public ConversationLayout(@NonNull Context context) {
        super(context);
@@ -166,12 +171,18 @@ public class ConversationLayout extends FrameLayout
        });
        mConversationText = findViewById(R.id.conversation_text);
        mExpandButtonContainer = findViewById(R.id.expand_button_container);
        mConversationHeader = findViewById(R.id.conversation_header);
        mContentContainer = findViewById(R.id.notification_action_list_margin_target);
        mExpandButtonAndContentContainer = findViewById(R.id.expand_button_and_content_container);
        mExpandButton = findViewById(R.id.expand_button);
        mExpandButtonExpandedTopMargin = getResources().getDimensionPixelSize(
                R.dimen.conversation_expand_button_top_margin_expanded);
        mExpandButtonExpandedSize = getResources().getDimensionPixelSize(
                R.dimen.conversation_expand_button_expanded_size);
        mNotificationHeaderExpandedPadding = getResources().getDimensionPixelSize(
                R.dimen.conversation_header_expanded_padding_end);
        mContentMarginEnd = getResources().getDimensionPixelSize(
                R.dimen.notification_content_margin_end);
        mBadgedSideMargins = getResources().getDimensionPixelSize(
                R.dimen.conversation_badge_side_margin);
        mIconSizeBadged = getResources().getDimensionPixelSize(
@@ -207,6 +218,7 @@ public class ConversationLayout extends FrameLayout
        mIsCollapsed = isCollapsed;
        mMessagingLinearLayout.setMaxDisplayedLines(isCollapsed ? 1 : Integer.MAX_VALUE);
        updateExpandButton();
        updateContentPaddings();
    }

    @RemotableViewMethod
@@ -852,10 +864,39 @@ public class ConversationLayout extends FrameLayout
        mExpandButton.setLayoutParams(layoutParams);

        mExpandButtonContainer.setContentDescription(mContext.getText(contentDescriptionId));
    }

    private void updateContentPaddings() {

        // Let's make sure the conversation header can't run into the expand button when we're
        // collapsed and update the paddings of the content
        int headerPaddingEnd;
        int contentPaddingEnd;
        if (!mExpandable) {
            headerPaddingEnd = 0;
            contentPaddingEnd = mContentMarginEnd;
        } else if (mIsCollapsed) {
            headerPaddingEnd = 0;
            contentPaddingEnd = 0;
        } else {
            headerPaddingEnd = mNotificationHeaderExpandedPadding;
            contentPaddingEnd = mContentMarginEnd;
        }
        mConversationHeader.setPaddingRelative(
                mConversationHeader.getPaddingStart(),
                mConversationHeader.getPaddingTop(),
                headerPaddingEnd,
                mConversationHeader.getPaddingBottom());

        mContentContainer.setPaddingRelative(
                mContentContainer.getPaddingStart(),
                mContentContainer.getPaddingTop(),
                contentPaddingEnd,
                mContentContainer.getPaddingBottom());
    }

    public void updateExpandability(boolean expandable, @Nullable OnClickListener onClickListener) {
        mExpandable = expandable;
        if (expandable) {
            mExpandButtonContainer.setVisibility(VISIBLE);
            mExpandButtonContainer.setOnClickListener(onClickListener);
@@ -863,5 +904,6 @@ public class ConversationLayout extends FrameLayout
            // TODO: handle content paddings to end of layout
            mExpandButtonContainer.setVisibility(GONE);
        }
        updateContentPaddings();
    }
}
+4 −3
Original line number Diff line number Diff line
@@ -93,9 +93,10 @@
            android:clipChildren="false"
            android:clipToPadding="false">
            <!--TODO: move this into a separate layout and share logic with the header to bring back app opps etc-->
            <FrameLayout
            <com.android.internal.widget.RemeasuringLinearLayout
                android:id="@+id/notification_action_list_margin_target"
                android:layout_width="0dp"
                android:orientation="vertical"
                android:layout_height="wrap_content"
                android:layout_weight="1">

@@ -163,12 +164,12 @@
                    android:id="@+id/notification_messaging"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="40dp"
                    android:layout_marginTop="2dp"
                    android:spacing="@dimen/notification_messaging_spacing"
                    android:clipToPadding="false"
                    android:clipChildren="false"
                    />
            </FrameLayout>
            </com.android.internal.widget.RemeasuringLinearLayout>
            <!-- Unread Count -->
            <!-- <TextView /> -->

+3 −0
Original line number Diff line number Diff line
@@ -699,6 +699,9 @@
    <!-- margin on the top when the icon is centered for group conversations -->
    <dimen name="conversation_icon_margin_top_centered">5dp</dimen>

    <!-- The padding of the conversation header when expanded. This is calculated from the expand button size + notification_content_margin_end -->
    <dimen name="conversation_header_expanded_padding_end">38dp</dimen>

    <!-- margin at the end of messaging group icons when not conversations -->
    <dimen name="messaging_layout_margin_end">12dp</dimen>

+1 −0
Original line number Diff line number Diff line
@@ -3901,6 +3901,7 @@
  <java-symbol type="dimen" name="conversation_icon_margin_top_centered" />
  <java-symbol type="dimen" name="conversation_content_start" />
  <java-symbol type="dimen" name="messaging_layout_margin_end" />
  <java-symbol type="dimen" name="conversation_header_expanded_padding_end" />
  <java-symbol type="layout" name="notification_template_material_conversation" />
  <java-symbol type="layout" name="conversation_face_pile_layout" />