<?xml version="1.0" encoding="utf-8"?>
<!--
 * Copyright (c) 2016-2017, The Linux Foundation. All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are
 * met:
 *     * Redistributions of source code must retain the above copyright
 *       notice, this list of conditions and the following disclaimer.
 *     * Redistributions in binary form must reproduce the above
 *       copyright notice, this list of conditions and the following
 *       disclaimer in the documentation and/or other materials provided
 *       with the distribution.
 *     * Neither the name of The Linux Foundation nor the names of its
 *       contributors may be used to endorse or promote products derived
 *       from this software without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
 * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
 * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="@dimen/multi_pick_contacts_item_height"
    android:descendantFocusability="blocksDescendants"
    android:minHeight="?android:attr/listPreferredItemHeight" >

    <TextView
        android:id="@+id/section_index"
        android:layout_width="@dimen/contact_section_index_width"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:layout_centerVertical="true"
        android:layout_marginStart="16dp"
        android:textColor="@color/contact_section_index_color"
        android:textSize="@dimen/contact_section_text_size"
        android:visibility="gone" />

    <ImageView
        android:id="@+id/pick_contact_photo"
        android:layout_width="@dimen/pick_contact_photo_size"
        android:layout_height="@dimen/pick_contact_photo_size"
        android:layout_centerVertical="true"
        android:layout_marginStart="@dimen/multi_pick_linear_layout_padding"
        android:layout_toRightOf="@+id/section_index"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_centerVertical="true"
        android:layout_marginStart="@dimen/multi_pick_linear_layout_padding"
        android:layout_toEndOf="@+id/pick_contact_photo"
        android:gravity="center_vertical"
        android:orientation="horizontal" >

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:gravity="center_vertical"
            android:orientation="vertical"
            android:paddingEnd="@dimen/multi_pick_linear_layout_padding" >

            <TextView
                android:id="@+id/pick_contact_name"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignTop="@+id/section_index"
                android:layout_toEndOf="@+id/pick_contact_photo"
                android:ellipsize="end"
                android:singleLine="true"
                android:textColor="@color/contacts_or_name_text_color"
                android:textSize="@dimen/contacts_text_size" />

            <TextView
                android:id="@+id/pick_contact_number"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:ellipsize="end"
                android:singleLine="true"
                android:textAppearance="?android:attr/textAppearanceSmall"
                android:textColor="@color/multi_pick_label_text_color"
                android:textSize="@dimen/phone_or_number_text_size" />
        </LinearLayout>

        <TextView
            android:id="@+id/label"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:layout_marginEnd="@dimen/multi_pick_linear_layout_padding"
            android:gravity="center"
            android:singleLine="true"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:textColor="@color/multi_pick_label_text_color"
            android:textSize="@dimen/multi_pick_label_text_size" />
        <CheckBox
            android:id="@+id/pick_contact_check"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginRight="38dip"
            android:layout_centerVertical="true"
            android:layout_alignParentRight="true"
            android:clickable = "false">
	</CheckBox>
    </LinearLayout>

</RelativeLayout>
