Merge "Fix media layout to avoid awkward expansion transitions." into sc-dev

This commit is contained in:
Jeff DeCew
2021-05-21 02:19:50 +00:00
committed by Android (Google) Code Review

View File

@@ -42,7 +42,6 @@
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/notification_content_margin_top"
android:layout_marginStart="@dimen/notification_content_margin_start"
android:layout_marginBottom="@dimen/notification_content_margin"
android:layout_marginEnd="@dimen/notification_content_margin_end"
android:orientation="vertical"
>
@@ -50,44 +49,58 @@
<include layout="@layout/notification_template_text"/>
</LinearLayout>
<LinearLayout
android:id="@+id/media_actions"
<!-- this FrameLayout's minHeight serves as a padding for the content above -->
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="-21dp"
android:paddingStart="44dp"
android:paddingEnd="44dp"
android:paddingBottom="@dimen/media_notification_actions_padding_bottom"
android:gravity="top"
android:orientation="horizontal"
android:layoutDirection="ltr"
android:layout_marginStart="38dp"
android:minHeight="@dimen/notification_content_margin"
>
<!-- The layout_marginStart is selected to ensure that action icons which are visually
12x12 in a 24x24 drawable will align correctly with the text. This means that
stock media action icons will align, but icons may be visually up to 20x20 and
remain in-spec, in which case they will protrude into the column slightly. -->
<include
layout="@layout/notification_material_media_action"
android:id="@+id/action0"
/>
<!-- Nesting in FrameLayout is required to ensure that the marginStart actually applies
at the start instead of always the left, given that the media_actions LinearLayout
has layoutDirection="ltr". -->
<LinearLayout
android:id="@+id/media_actions"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/media_notification_actions_padding_bottom"
android:gravity="top"
android:orientation="horizontal"
android:layoutDirection="ltr"
>
<include
layout="@layout/notification_material_media_action"
android:id="@+id/action1"
/>
<include
layout="@layout/notification_material_media_action"
android:id="@+id/action0"
/>
<include
layout="@layout/notification_material_media_action"
android:id="@+id/action2"
/>
<include
layout="@layout/notification_material_media_action"
android:id="@+id/action1"
/>
<include
layout="@layout/notification_material_media_action"
android:id="@+id/action3"
/>
<include
layout="@layout/notification_material_media_action"
android:id="@+id/action2"
/>
<include
layout="@layout/notification_material_media_action"
android:id="@+id/action4"
/>
</LinearLayout>
<include
layout="@layout/notification_material_media_action"
android:id="@+id/action3"
/>
<include
layout="@layout/notification_material_media_action"
android:id="@+id/action4"
/>
</LinearLayout>
</FrameLayout>
</LinearLayout>