1 <?xml version="1.0" encoding="utf-8"?> 2 <!-- Copyright (C) 2007 The Android Open Source Project 3 4 Licensed under the Apache License, Version 2.0 (the "License"); 5 you may not use this file except in compliance with the License. 6 You may obtain a copy of the License at 7 8 http://www.apache.org/licenses/LICENSE-2.0 9 10 Unless required by applicable law or agreed to in writing, software 11 distributed under the License is distributed on an "AS IS" BASIS, 12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 See the License for the specific language governing permissions and 14 limitations under the License. 15 --> 16 17 <view 18 xmlns:android="http://schemas.android.com/apk/res/android" 19 class="com.android.dialer.calllog.CallLogListItemView" 20 android:layout_width="match_parent" 21 android:layout_height="wrap_content" 22 android:id="@+id/call_log_list_item" 23 android:orientation="vertical" 24 android:background="@drawable/bottom_border_background" 25 > 26 <!-- 27 This layout may represent either a call log item or one of the 28 headers in the call log. 29 30 The former will make the @id/call_log_item visible and the 31 @id/call_log_header gone. 32 33 The latter will make the @id/call_log_header visible and the 34 @id/call_log_item gone 35 --> 36 37 <!-- Linear layout to separate the primary area containing the contact badge and caller 38 information and the secondary action (call details / play voicemail). --> 39 <LinearLayout 40 android:layout_width="match_parent" 41 android:layout_height="wrap_content" 42 android:orientation="horizontal" 43 android:gravity="center_vertical" 44 > 45 46 <!-- Primary area containing the contact badge and caller information --> 47 <LinearLayout 48 android:id="@+id/primary_action_view" 49 android:layout_width="0dp" 50 android:layout_weight="1" 51 android:layout_height="wrap_content" 52 android:layout_centerVertical="true" 53 android:padding="@dimen/call_log_outer_margin" 54 android:orientation="horizontal" 55 android:gravity="center_vertical" 56 android:background="?android:attr/selectableItemBackground" 57 android:focusable="true" 58 android:nextFocusRight="@+id/secondary_action_icon" 59 android:nextFocusLeft="@+id/quick_contact_photo" 60 > 61 <QuickContactBadge 62 android:id="@+id/quick_contact_photo" 63 android:layout_width="@dimen/call_log_list_contact_photo_size" 64 android:layout_height="@dimen/call_log_list_contact_photo_size" 65 android:nextFocusRight="@id/primary_action_view" 66 android:layout_alignParentStart="true" 67 android:focusable="true" 68 /> 69 <LinearLayout 70 android:layout_width="0dp" 71 android:layout_height="wrap_content" 72 android:layout_weight="1" 73 android:orientation="vertical" 74 android:gravity="center_vertical" 75 android:layout_marginStart="@dimen/call_log_inner_margin" 76 > 77 <TextView 78 android:id="@+id/name" 79 android:layout_width="wrap_content" 80 android:layout_height="wrap_content" 81 android:layout_marginEnd="@dimen/call_log_icon_margin" 82 android:textColor="?attr/call_log_primary_text_color" 83 android:textSize="16sp" 84 android:singleLine="true" 85 /> 86 <LinearLayout 87 android:layout_width="wrap_content" 88 android:layout_height="wrap_content" 89 android:orientation="horizontal" 90 > 91 <TextView 92 android:id="@+id/label" 93 android:layout_width="wrap_content" 94 android:layout_height="wrap_content" 95 android:layout_marginEnd="@dimen/call_log_icon_margin" 96 android:textColor="?attr/call_log_secondary_text_color" 97 android:textSize="12sp" 98 android:singleLine="true" 99 android:ellipsize="marquee" 100 /> 101 </LinearLayout> 102 <LinearLayout 103 android:id="@+id/call_type" 104 android:layout_width="wrap_content" 105 android:layout_height="wrap_content" 106 android:orientation="horizontal" 107 > 108 <view 109 class="com.android.dialer.calllog.CallTypeIconsView" 110 android:id="@+id/call_type_icons" 111 android:layout_width="wrap_content" 112 android:layout_height="wrap_content" 113 android:layout_marginEnd="@dimen/call_log_icon_margin" 114 android:layout_gravity="center_vertical" 115 /> 116 <TextView 117 android:id="@+id/call_count_and_date" 118 android:layout_width="wrap_content" 119 android:layout_height="wrap_content" 120 android:layout_marginEnd="@dimen/call_log_icon_margin" 121 android:layout_gravity="center_vertical" 122 android:textColor="?attr/call_log_secondary_text_color" 123 android:textSize="12sp" 124 android:singleLine="true" 125 /> 126 </LinearLayout> 127 </LinearLayout> 128 </LinearLayout> 129 <!-- Linear layout to house a vertical separator line and the secondary action button. 130 Used as a convenience to hide both the separator and action button at the same 131 time. --> 132 <LinearLayout 133 android:id="@+id/secondary_action_view" 134 android:layout_width="@dimen/call_log_call_action_width" 135 android:layout_height="match_parent" 136 android:orientation="horizontal" 137 android:gravity="center_vertical" 138 > 139 <!-- Thin vertical divider to visually separate the secondary action button --> 140 <View 141 android:id="@+id/vertical_divider" 142 android:layout_width="@dimen/call_log_list_item_vertical_divider_width" 143 android:layout_height="match_parent" 144 android:layout_marginTop="@dimen/call_log_list_item_vertical_divider_margin" 145 android:layout_marginBottom="@dimen/call_log_list_item_vertical_divider_margin" 146 android:background="?android:attr/dividerVertical"/> 147 <!-- The secondary action button; either play voicemail or call details. --> 148 <ImageButton 149 android:id="@+id/secondary_action_icon" 150 android:layout_width="fill_parent" 151 android:layout_height="match_parent" 152 android:scaleType="center" 153 android:background="?android:attr/selectableItemBackground" 154 android:nextFocusLeft="@id/primary_action_view" 155 /> 156 </LinearLayout> 157 </LinearLayout> 158 <TextView 159 android:id="@+id/call_log_header" 160 style="@style/ContactListSeparatorTextViewStyle" 161 android:layout_marginStart="@dimen/call_log_outer_margin" 162 android:layout_marginEnd="@dimen/call_log_outer_margin" 163 android:paddingTop="@dimen/call_log_inner_margin" 164 android:paddingBottom="@dimen/call_log_inner_margin" /> 165 166 <!-- Displays the extra link section --> 167 <ViewStub android:id="@+id/link_stub" 168 android:layout="@layout/call_log_list_item_extra" 169 android:layout_width="match_parent" 170 android:layout_height="wrap_content"/> 171 172 </view> 173