Add new layout for Slice half card

- Extract dismissal view as a layout xml and reuse it in half card
- fixed minor naming convention

This new layout is composed of custom views and the purpose is to
show slice in half width form in contextual homepage.

Bug: 119655434
Test: visual
Change-Id: I224d8bc1b7f95f969f6a134a316bd80b4cd013ee
This commit is contained in:
Mill Chen
2018-12-10 21:33:58 +08:00
parent 08caceba9c
commit 3f3823e456
6 changed files with 123 additions and 39 deletions

View File

@@ -0,0 +1,53 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2018 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/dismissal_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/homepage_card_padding_start"
android:layout_marginTop="@dimen/homepage_card_padding_start"
android:text="@string/contextual_card_dismiss_confirm_message"
android:textAppearance="@style/TextAppearance.ContextualCardDismissalText"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="bottom|end">
<Button
android:id="@+id/keep"
style="@style/ContextualCardDismissalButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/contextual_card_dismiss_keep"/>
<Button
android:id="@+id/remove"
style="@style/ContextualCardDismissalButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/contextual_card_dismiss_remove"/>
</LinearLayout>
</LinearLayout>

View File

@@ -0,0 +1,61 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2018 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<com.google.android.material.card.MaterialCardView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
style="@style/ContextualCardStyle">
<ViewFlipper
android:id="@+id/view_flipper"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:id="@+id/content"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingStart="@dimen/homepage_card_padding_start"
android:paddingEnd="@dimen/homepage_card_padding_end"
android:paddingTop="@dimen/homepage_half_card_padding_top"
android:paddingBottom="@dimen/homepage_half_card_padding_bottom"
android:orientation="vertical">
<ImageView
android:id="@android:id/icon"
android:layout_width="@dimen/homepage_card_icon_size"
android:layout_height="@dimen/homepage_card_icon_size"
android:tint="?android:attr/colorAccent"/>
<TextView
android:id="@android:id/title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:maxLines="2"
android:minLines="1"
android:ellipsize="end"
android:layout_marginTop="@dimen/homepage_half_card_title_margin_top"
android:textAppearance="@style/TextAppearance.ConditionCardTitle"/>
</LinearLayout>
<!--dismissal view-->
<include layout="@layout/homepage_dismissal_view"/>
</ViewFlipper>
</com.google.android.material.card.MaterialCardView>

View File

@@ -22,7 +22,7 @@
style="@style/ContextualCardStyle">
<ViewFlipper
android:id="@+id/viewFlipper"
android:id="@+id/view_flipper"
android:layout_width="match_parent"
android:layout_height="wrap_content">
@@ -34,40 +34,7 @@
android:paddingEnd="@dimen/homepage_card_padding_end"/>
<!--dismissal view-->
<LinearLayout
android:id="@+id/dismissal_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<include layout="@layout/homepage_dismissal_view"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/homepage_card_padding_start"
android:layout_marginTop="@dimen/homepage_card_padding_start"
android:text="@string/contextual_card_dismiss_confirm_message"
style="@style/TextAppearance.ContextualCardDismissalText"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="bottom|end">
<Button
android:id="@+id/keep"
style="@style/ContextualCardDismissalButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/contextual_card_dismiss_keep"/>
<Button
android:id="@+id/remove"
style="@style/ContextualCardDismissalButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/contextual_card_dismiss_remove"/>
</LinearLayout>
</LinearLayout>
</ViewFlipper>
</com.google.android.material.card.MaterialCardView>

View File

@@ -329,6 +329,9 @@
<dimen name="homepage_card_side_margin">4dp</dimen>
<dimen name="homepage_card_padding_start">16dp</dimen>
<dimen name="homepage_card_padding_end">16dp</dimen>
<dimen name="homepage_half_card_padding_top">12dp</dimen>
<dimen name="homepage_half_card_padding_bottom">16dp</dimen>
<dimen name="homepage_half_card_title_margin_top">12dp</dimen>
<!-- Horizontal divider size and margin -->
<dimen name="horizontal_divider_margin_top">4dp</dimen>