| <?xml version="1.0" encoding="utf-8"?> |
| <!-- |
| ~ Copyright (C) 2017 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 |
| --> |
| |
| <RelativeLayout |
| xmlns:android="http://schemas.android.com/apk/res/android" |
| xmlns:tools="http://schemas.android.com/tools" |
| android:id="@+id/new_call_log_entry_root" |
| android:layout_width="match_parent" |
| android:layout_height="wrap_content" |
| android:minHeight="72dp" |
| android:background="?android:attr/selectableItemBackground"> |
| |
| <com.android.dialer.widget.ContactPhotoView |
| android:id="@+id/contact_photo_view" |
| android:layout_width="wrap_content" |
| android:layout_height="wrap_content" |
| android:layout_marginStart="8dp" |
| android:layout_marginEnd="8dp" |
| android:layout_centerVertical="true"/> |
| |
| <!-- |
| A vertical linear layout of three rows: primary info, secondary info, and phone account info. |
| It is marked as not important for a11y as we will set a more user-friendly content description |
| for the entire entry view in Java code. |
| --> |
| <LinearLayout |
| android:layout_width="wrap_content" |
| android:layout_height="wrap_content" |
| android:layout_centerVertical="true" |
| android:layout_toEndOf="@+id/contact_photo_view" |
| android:layout_toStartOf="@+id/call_button" |
| android:orientation="vertical" |
| android:importantForAccessibility="noHideDescendants"> |
| |
| <!-- 1st row: primary info --> |
| <LinearLayout |
| android:layout_width="wrap_content" |
| android:layout_height="wrap_content" |
| android:orientation="horizontal"> |
| |
| <!-- |
| Important note: |
| |
| The following BidiTextView is the only widget that defines a weight in the containing |
| LinearLayout, of which the purpose is to avoid pushing the widgets after it out of the |
| boundary when the text is too long. |
| |
| Generally it is more efficient to assign a width/height of 0dp so that the BidiTextView |
| does not have to measure its own size since it will absorb all the remaining space anyway. |
| |
| However, as the BidiTextView is part of an entry in the call log's RecyclerView, we must |
| set layout_width to "wrap_content" so that the TextView can adjust its size when recycled |
| for text of different lengths. |
| --> |
| <com.android.dialer.widget.BidiTextView |
| android:id="@+id/primary_text" |
| style="@style/Dialer.TextAppearance.Primary.Ellipsize" |
| android:layout_width="wrap_content" |
| android:layout_height="wrap_content" |
| android:layout_weight="1" |
| android:layout_marginEnd="6dp" |
| android:lineSpacingMultiplier="1.5" |
| tools:ignore="InefficientWeight"/> |
| |
| <ImageView |
| android:id="@+id/hd_icon" |
| android:layout_width="wrap_content" |
| android:layout_height="18dp" |
| android:layout_gravity="center_vertical" |
| android:importantForAccessibility="no" |
| android:src="@drawable/quantum_ic_hd_vd_theme_24"/> |
| |
| <ImageView |
| android:id="@+id/wifi_icon" |
| android:layout_width="wrap_content" |
| android:layout_height="18dp" |
| android:layout_gravity="center_vertical" |
| android:importantForAccessibility="no" |
| android:src="@drawable/quantum_ic_signal_wifi_4_bar_vd_theme_24"/> |
| |
| <ImageView |
| android:id="@+id/assisted_dial_icon" |
| android:layout_width="wrap_content" |
| android:layout_height="18dp" |
| android:layout_gravity="center_vertical" |
| android:importantForAccessibility="no" |
| android:src="@drawable/quantum_ic_language_vd_theme_24"/> |
| |
| <TextView |
| android:id="@+id/call_count" |
| style="@style/Dialer.TextAppearance.Primary" |
| android:layout_width="wrap_content" |
| android:layout_height="wrap_content" |
| android:layout_marginEnd="6dp" |
| android:lineSpacingMultiplier="1.5"/> |
| |
| </LinearLayout> |
| |
| <!-- 2nd row: secondary info --> |
| <LinearLayout |
| android:layout_width="wrap_content" |
| android:layout_height="wrap_content" |
| android:orientation="horizontal" |
| tools:ignore="UseCompoundDrawables"> |
| |
| <ImageView |
| android:id="@+id/call_type_icon" |
| android:layout_width="wrap_content" |
| android:layout_height="18dp" |
| android:layout_gravity="center_vertical" |
| android:importantForAccessibility="no"/> |
| |
| <TextView |
| android:id="@+id/secondary_text" |
| style="@style/Dialer.TextAppearance.Secondary.Ellipsize" |
| android:layout_width="wrap_content" |
| android:layout_height="wrap_content" |
| android:lineSpacingMultiplier="1.4"/> |
| |
| </LinearLayout> |
| |
| <!-- 3rd row: phone account info --> |
| <TextView |
| android:id="@+id/phone_account" |
| style="@style/Dialer.TextAppearance.Secondary.Ellipsize" |
| android:layout_width="wrap_content" |
| android:layout_height="wrap_content"/> |
| |
| </LinearLayout> |
| |
| <!-- |
| The button to make a call. |
| Its content description is set in Java code. |
| --> |
| <ImageView |
| android:id="@+id/call_button" |
| android:layout_width="56dp" |
| android:layout_height="72dp" |
| android:layout_alignParentEnd="true" |
| android:layout_centerVertical="true" |
| android:background="?android:attr/selectableItemBackgroundBorderless" |
| android:scaleType="center" |
| android:tint="?colorIcon" |
| tools:ignore="ContentDescription"/> |
| </RelativeLayout> |