Update History
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 27 KiB |
BIN
res/drawable-xhdpi/avatar_mask.png
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
res/drawable-xhdpi/avatar_mask_border.png
Normal file
After Width: | Height: | Size: 25 KiB |
Before Width: | Height: | Size: 879 B After Width: | Height: | Size: 2.3 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 2.9 KiB |
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
<item android:state_pressed="true"
|
<item android:state_pressed="true"
|
||||||
android:drawable="@drawable/list_details_default" />
|
android:drawable="@drawable/list_details_over" />
|
||||||
<item
|
<item
|
||||||
android:drawable="@drawable/list_details_default" />
|
android:drawable="@drawable/list_details_default" />
|
||||||
</selector>
|
</selector>
|
||||||
|
|
|
@ -19,19 +19,19 @@
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/all_calls"
|
android:id="@+id/all_calls"
|
||||||
|
android:src="@drawable/history_all"
|
||||||
|
android:background="@drawable/toolbar_button"
|
||||||
android:contentDescription="@string/content_description_all_calls"
|
android:contentDescription="@string/content_description_all_calls"
|
||||||
android:layout_alignParentLeft="true"
|
android:layout_alignParentLeft="true"
|
||||||
android:padding="10dp"
|
android:padding="10dp"
|
||||||
android:src="@drawable/history_all"
|
|
||||||
android:background="@drawable/toolbar_button"
|
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="match_parent"/>
|
android:layout_height="match_parent"/>
|
||||||
|
|
||||||
<RelativeLayout
|
<RelativeLayout
|
||||||
android:id="@+id/all_calls_select"
|
android:id="@+id/all_calls_select"
|
||||||
android:contentDescription="@string/content_description_contacts"
|
|
||||||
android:background="@color/colorA"
|
android:background="@color/colorA"
|
||||||
|
android:contentDescription="@string/content_description_contacts"
|
||||||
android:layout_alignRight="@id/all_calls"
|
android:layout_alignRight="@id/all_calls"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="5dp"
|
android:layout_height="5dp"
|
||||||
|
@ -46,10 +46,10 @@
|
||||||
android:adjustViewBounds="true">
|
android:adjustViewBounds="true">
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:contentDescription="@string/content_description_missed_calls"
|
|
||||||
android:id="@+id/missed_calls"
|
android:id="@+id/missed_calls"
|
||||||
android:src="@drawable/history_missed"
|
android:src="@drawable/history_missed"
|
||||||
android:background="@drawable/toolbar_button"
|
android:background="@drawable/toolbar_button"
|
||||||
|
android:contentDescription="@string/content_description_missed_calls"
|
||||||
android:padding="10dp"
|
android:padding="10dp"
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
|
@ -57,8 +57,8 @@
|
||||||
|
|
||||||
<RelativeLayout
|
<RelativeLayout
|
||||||
android:id="@+id/missed_calls_select"
|
android:id="@+id/missed_calls_select"
|
||||||
android:contentDescription="@string/content_description_contacts"
|
|
||||||
android:background="@color/colorA"
|
android:background="@color/colorA"
|
||||||
|
android:contentDescription="@string/content_description_contacts"
|
||||||
android:layout_alignRight="@id/missed_calls"
|
android:layout_alignRight="@id/missed_calls"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="5dp"
|
android:layout_height="5dp"
|
||||||
|
@ -69,9 +69,9 @@
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/delete"
|
android:id="@+id/delete"
|
||||||
android:contentDescription="@string/content_description_valid"
|
|
||||||
android:src="@drawable/delete"
|
android:src="@drawable/delete"
|
||||||
android:background="@drawable/toolbar_button"
|
android:background="@drawable/toolbar_button"
|
||||||
|
android:contentDescription="@string/content_description_valid"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_alignParentRight="true"
|
android:layout_alignParentRight="true"
|
||||||
|
@ -81,9 +81,9 @@
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/select_all"
|
android:id="@+id/select_all"
|
||||||
android:contentDescription="@string/content_description_valid"
|
|
||||||
android:src="@drawable/select_all"
|
android:src="@drawable/select_all"
|
||||||
android:background="@drawable/toolbar_button"
|
android:background="@drawable/toolbar_button"
|
||||||
|
android:contentDescription="@string/content_description_valid"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_toLeftOf="@id/delete"
|
android:layout_toLeftOf="@id/delete"
|
||||||
|
@ -93,9 +93,9 @@
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/deselect_all"
|
android:id="@+id/deselect_all"
|
||||||
android:contentDescription="@string/content_description_valid"
|
|
||||||
android:src="@drawable/deselect_all"
|
android:src="@drawable/deselect_all"
|
||||||
android:background="@drawable/toolbar_button"
|
android:background="@drawable/toolbar_button"
|
||||||
|
android:contentDescription="@string/content_description_valid"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_toLeftOf="@id/delete"
|
android:layout_toLeftOf="@id/delete"
|
||||||
|
@ -106,9 +106,9 @@
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/edit"
|
android:id="@+id/edit"
|
||||||
android:contentDescription="@string/content_description_edit"
|
|
||||||
android:src="@drawable/edit_list"
|
android:src="@drawable/edit_list"
|
||||||
android:background="@drawable/toolbar_button"
|
android:background="@drawable/toolbar_button"
|
||||||
|
android:contentDescription="@string/content_description_edit"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_alignParentRight="true"
|
android:layout_alignParentRight="true"
|
||||||
|
@ -127,22 +127,20 @@
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/noCallHistory"
|
android:id="@+id/noCallHistory"
|
||||||
|
android:text="@string/no_call_history"
|
||||||
|
style="@style/font6"
|
||||||
android:visibility="gone"
|
android:visibility="gone"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:gravity="center"
|
android:gravity="center"/>
|
||||||
android:text="@string/no_call_history"
|
|
||||||
android:textColor="@drawable/text_color"
|
|
||||||
android:textAppearance="@android:style/TextAppearance.Large"/>
|
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/noMissedCallHistory"
|
android:id="@+id/noMissedCallHistory"
|
||||||
|
android:text="@string/no_missed_call_history"
|
||||||
|
style="@style/font6"
|
||||||
android:visibility="gone"
|
android:visibility="gone"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:gravity="center"
|
android:gravity="center"/>
|
||||||
android:text="@string/no_missed_call_history"
|
|
||||||
android:textColor="@drawable/text_color"
|
|
||||||
android:textAppearance="@android:style/TextAppearance.Large"/>
|
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
|
@ -2,21 +2,30 @@
|
||||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:background="@drawable/list_selector"
|
android:background="@color/colorH"
|
||||||
android:gravity="center_vertical"
|
android:gravity="center_vertical"
|
||||||
android:orientation="vertical" >
|
android:orientation="vertical" >
|
||||||
|
|
||||||
<TextView
|
<LinearLayout
|
||||||
android:id="@+id/separator"
|
android:id="@+id/separator"
|
||||||
android:paddingLeft="10dp"
|
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="30dp"
|
android:layout_height="wrap_content"
|
||||||
android:textSize="20sp"
|
android:orientation="vertical">
|
||||||
android:background="@color/colorH"
|
|
||||||
android:textColor="@color/colorA"
|
<TextView
|
||||||
android:textStyle="bold"
|
android:id="@+id/separator_text"
|
||||||
android:textAllCaps="true"
|
style="@style/font1"
|
||||||
android:gravity="center"/>
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="40dp"
|
||||||
|
android:gravity="center"/>
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:background="@color/colorE"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="1dp"/>
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
||||||
<RelativeLayout
|
<RelativeLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
|
@ -24,47 +33,63 @@
|
||||||
android:layout_margin="5dp"
|
android:layout_margin="5dp"
|
||||||
android:gravity="center_vertical">
|
android:gravity="center_vertical">
|
||||||
|
|
||||||
<ImageView
|
<RelativeLayout
|
||||||
android:id="@+id/contact_picture"
|
android:id="@+id/avatar_layout"
|
||||||
android:contentDescription="@string/content_description_contact_picture"
|
|
||||||
android:src="@drawable/avatar"
|
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="wrap_content">
|
||||||
android:adjustViewBounds="true"
|
|
||||||
android:layout_alignParentLeft="true"
|
<ImageView
|
||||||
android:layout_marginLeft="5dp"/>
|
android:id="@+id/contact_picture"
|
||||||
|
android:src="@drawable/avatar"
|
||||||
|
android:contentDescription="@string/content_description_contact_picture"
|
||||||
|
android:layout_width="40dp"
|
||||||
|
android:layout_height="40dp"
|
||||||
|
android:adjustViewBounds="true"
|
||||||
|
android:layout_alignParentLeft="true"
|
||||||
|
android:layout_marginLeft="5dp"/>
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/mask"
|
||||||
|
android:src="@drawable/avatar_mask"
|
||||||
|
android:contentDescription="@string/content_description_contact_picture"
|
||||||
|
android:layout_width="40dp"
|
||||||
|
android:layout_height="40dp"
|
||||||
|
android:adjustViewBounds="true"
|
||||||
|
android:layout_alignParentLeft="true"
|
||||||
|
android:layout_marginLeft="5dp"/>
|
||||||
|
|
||||||
|
</RelativeLayout>
|
||||||
|
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/icon"
|
android:id="@+id/icon"
|
||||||
|
android:src="@drawable/call_status_incoming"
|
||||||
android:contentDescription="@string/content_description_call_direction"
|
android:contentDescription="@string/content_description_call_direction"
|
||||||
android:padding="5dp"
|
android:padding="5dp"
|
||||||
android:layout_toRightOf="@id/contact_picture"
|
android:layout_toRightOf="@id/avatar_layout"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:adjustViewBounds="true"
|
android:adjustViewBounds="true"
|
||||||
android:src="@drawable/call_status_incoming"
|
|
||||||
android:layout_marginLeft="5dp"/>
|
android:layout_marginLeft="5dp"/>
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/sipUri"
|
android:id="@+id/sip_uri"
|
||||||
|
style="@style/font6"
|
||||||
android:lines="1"
|
android:lines="1"
|
||||||
android:textSize="30sp"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="match_parent"
|
|
||||||
android:layout_toRightOf="@id/icon"
|
|
||||||
android:ellipsize="marquee"
|
android:ellipsize="marquee"
|
||||||
android:marqueeRepeatLimit="marquee_forever"
|
android:marqueeRepeatLimit="marquee_forever"
|
||||||
android:scrollHorizontally="true"
|
android:scrollHorizontally="true"
|
||||||
android:fadingEdge="horizontal"
|
android:fadingEdge="horizontal"
|
||||||
android:singleLine="true"
|
android:singleLine="true"
|
||||||
android:textAppearance="?android:attr/textAppearanceLarge"
|
android:layout_width="wrap_content"
|
||||||
android:textColor="@color/text_contrast"
|
android:layout_height="match_parent"
|
||||||
|
android:layout_toRightOf="@id/icon"
|
||||||
android:layout_marginLeft="10dp" />
|
android:layout_marginLeft="10dp" />
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/detail"
|
android:id="@+id/detail"
|
||||||
android:contentDescription="@string/content_description_detail"
|
|
||||||
android:src="@drawable/list_detail"
|
android:src="@drawable/list_detail"
|
||||||
|
android:contentDescription="@string/content_description_detail"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_alignParentRight="true"
|
android:layout_alignParentRight="true"
|
||||||
|
@ -75,10 +100,10 @@
|
||||||
<CheckBox
|
<CheckBox
|
||||||
android:id="@+id/delete"
|
android:id="@+id/delete"
|
||||||
android:button="@drawable/checkbox"
|
android:button="@drawable/checkbox"
|
||||||
|
android:contentDescription="@string/content_description_delete"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignParentRight="true"
|
android:layout_alignParentRight="true"
|
||||||
android:contentDescription="@string/content_description_delete"
|
|
||||||
android:visibility="gone"
|
android:visibility="gone"
|
||||||
android:paddingLeft="5dp"
|
android:paddingLeft="5dp"
|
||||||
android:paddingRight="5dp" />
|
android:paddingRight="5dp" />
|
||||||
|
|
|
@ -6,18 +6,17 @@
|
||||||
android:orientation="vertical" >
|
android:orientation="vertical" >
|
||||||
|
|
||||||
<RelativeLayout
|
<RelativeLayout
|
||||||
|
android:id="@+id/relativeLayout"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="60dp"
|
android:layout_height="60dp"
|
||||||
android:layout_gravity="bottom"
|
android:layout_gravity="bottom"
|
||||||
android:background="@color/colorF"
|
android:background="@color/colorF">
|
||||||
android:id="@+id/relativeLayout">
|
|
||||||
|
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/back"
|
android:id="@+id/back"
|
||||||
android:contentDescription="@string/content_description_back"
|
|
||||||
android:src="@drawable/back"
|
android:src="@drawable/back"
|
||||||
android:background="@drawable/toolbar_button"
|
android:background="@drawable/toolbar_button"
|
||||||
|
android:contentDescription="@string/content_description_back"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_alignParentLeft="true"
|
android:layout_alignParentLeft="true"
|
||||||
|
@ -27,11 +26,11 @@
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/add_contact"
|
android:id="@+id/add_contact"
|
||||||
|
android:src="@drawable/contact_add"
|
||||||
|
android:background="@drawable/toolbar_button"
|
||||||
android:contentDescription="@string/content_description_add_contact"
|
android:contentDescription="@string/content_description_add_contact"
|
||||||
android:layout_alignParentRight="true"
|
android:layout_alignParentRight="true"
|
||||||
android:padding="10dp"
|
android:padding="10dp"
|
||||||
android:src="@drawable/contact_add"
|
|
||||||
android:background="@drawable/toolbar_button"
|
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:adjustViewBounds="true"/>
|
android:adjustViewBounds="true"/>
|
||||||
|
@ -48,34 +47,46 @@
|
||||||
android:orientation="vertical">
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
|
||||||
<RelativeLayout
|
<RelativeLayout
|
||||||
|
android:id="@+id/avatar_layout"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:gravity="center">
|
android:gravity="center">
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/contactPicture"
|
android:id="@+id/contact_picture"
|
||||||
|
android:src="@drawable/avatar"
|
||||||
|
android:contentDescription="@string/content_description_contact_picture"
|
||||||
android:layout_width="120dp"
|
android:layout_width="120dp"
|
||||||
android:layout_height="120dp"
|
android:layout_height="120dp"
|
||||||
android:src="@drawable/avatar" />
|
android:adjustViewBounds="true"
|
||||||
|
android:layout_alignParentLeft="true"
|
||||||
|
android:layout_marginLeft="5dp"/>
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/mask"
|
||||||
|
android:src="@drawable/avatar_mask"
|
||||||
|
android:contentDescription="@string/content_description_contact_picture"
|
||||||
|
android:layout_width="120dp"
|
||||||
|
android:layout_height="120dp"
|
||||||
|
android:adjustViewBounds="true"
|
||||||
|
android:layout_alignParentLeft="true"
|
||||||
|
android:layout_marginLeft="5dp"/>
|
||||||
|
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
|
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/contactName"
|
android:id="@+id/contact_name"
|
||||||
|
style="@style/font5"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"/>
|
||||||
android:textAppearance="?android:attr/textAppearanceLarge"
|
|
||||||
android:textColor="@color/colorC" />
|
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/contactAddress"
|
android:id="@+id/contact_address"
|
||||||
|
style="@style/font2"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"/>
|
||||||
android:textAppearance="?android:attr/textAppearanceSmall"
|
|
||||||
android:textColor="@color/colorA" />
|
|
||||||
|
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
|
@ -92,59 +103,58 @@
|
||||||
android:paddingRight="10dp">
|
android:paddingRight="10dp">
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
|
android:id="@+id/call"
|
||||||
|
android:src="@drawable/call_start_body_default"
|
||||||
android:contentDescription="@string/content_description_dial_back"
|
android:contentDescription="@string/content_description_dial_back"
|
||||||
android:id="@+id/dialBack"
|
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:adjustViewBounds="true"
|
android:adjustViewBounds="true"
|
||||||
android:src="@drawable/call_start_body_default"
|
android:layout_centerInParent="true"/>
|
||||||
android:layout_centerInParent="true" />
|
|
||||||
|
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
|
|
||||||
<RelativeLayout
|
<RelativeLayout
|
||||||
|
android:id="@+id/chat_row"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:id="@+id/chatRow"
|
|
||||||
android:paddingLeft="10dp"
|
android:paddingLeft="10dp"
|
||||||
android:paddingRight="10dp">
|
android:paddingRight="10dp">
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
|
android:id="@+id/chat"
|
||||||
|
android:src="@drawable/chat_start_body_default"
|
||||||
android:contentDescription="@string/content_description_chat"
|
android:contentDescription="@string/content_description_chat"
|
||||||
android:id="@+id/chat"
|
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:adjustViewBounds="true"
|
android:adjustViewBounds="true"
|
||||||
android:src="@drawable/chat_start_body_default"
|
|
||||||
android:layout_centerInParent="true" />
|
android:layout_centerInParent="true" />
|
||||||
|
|
||||||
|
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:id="@+id/logRow"
|
android:id="@+id/log_row"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
android:paddingTop="20dp">
|
android:paddingTop="20dp">
|
||||||
|
|
||||||
<View
|
<View
|
||||||
|
android:background="@color/colorE"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="1dp"
|
android:layout_height="1dp"
|
||||||
android:layout_marginLeft="10dp"
|
android:layout_marginLeft="10dp"
|
||||||
android:layout_marginRight="10dp"
|
android:layout_marginRight="10dp"/>
|
||||||
android:background="@color/colorE"/>
|
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:layout_marginTop="10dp"
|
android:id="@+id/call_direction"
|
||||||
|
android:text="@string/call"
|
||||||
|
style="@style/font13"
|
||||||
|
android:textAllCaps="true"
|
||||||
|
android:layout_marginTop="2dp"
|
||||||
android:layout_gravity="center"
|
android:layout_gravity="center"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"/>
|
||||||
android:text="@string/call"
|
|
||||||
android:textAllCaps="true"
|
|
||||||
android:textColor="@color/colorE" />
|
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
|
@ -153,29 +163,19 @@
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
android:padding="10dp">
|
android:padding="10dp">
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/callDirection"
|
|
||||||
android:paddingRight="10dp"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:textColor="@color/text_contrast" />
|
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/date"
|
android:id="@+id/date"
|
||||||
|
style="@style/font10"
|
||||||
android:paddingRight="10dp"
|
android:paddingRight="10dp"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"/>
|
||||||
android:textColor="@color/text_contrast" />
|
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/time"
|
android:id="@+id/time"
|
||||||
|
style="@style/font10"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content" />
|
||||||
android:textColor="@color/text_contrast" />
|
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
|
@ -1,29 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:gravity="center_vertical">
|
|
||||||
|
|
||||||
<ImageView
|
|
||||||
android:contentDescription="@string/content_description_delete"
|
|
||||||
android:id="@+id/delete"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:visibility="invisible"
|
|
||||||
android:src="@drawable/list_delete"
|
|
||||||
android:layout_marginLeft="10dp"
|
|
||||||
android:layout_marginRight="10dp"
|
|
||||||
android:layout_alignParentRight="true" />
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/sipUri"
|
|
||||||
android:lines="1"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:textAppearance="?android:attr/textAppearanceLarge"
|
|
||||||
android:textColor="@color/text_contrast"
|
|
||||||
android:layout_marginLeft="30dp"
|
|
||||||
android:layout_alignParentLeft="true"
|
|
||||||
android:layout_toLeftOf="@id/delete" />
|
|
||||||
|
|
||||||
</RelativeLayout>
|
|
|
@ -36,7 +36,7 @@
|
||||||
<color name="numpad_background_bottom">#ffe4edf2</color>
|
<color name="numpad_background_bottom">#ffe4edf2</color>
|
||||||
<color name="numpad_background_dialer">#ffd8d8d8</color>
|
<color name="numpad_background_dialer">#ffd8d8d8</color>
|
||||||
<color name="numpad_background_top">#ffb1bdc3</color>
|
<color name="numpad_background_top">#ffb1bdc3</color>
|
||||||
|
|
||||||
<color name="missed_calls_background">#ffcf4c29</color>
|
<color name="missed_calls_background">#ffcf4c29</color>
|
||||||
|
|
||||||
<color name="transparent">#00000000</color>
|
<color name="transparent">#00000000</color>
|
||||||
|
|
|
@ -54,10 +54,10 @@ public class HistoryDetailFragment extends Fragment implements OnClickListener {
|
||||||
String status = getArguments().getString("CallStatus");
|
String status = getArguments().getString("CallStatus");
|
||||||
String callTime = getArguments().getString("CallTime");
|
String callTime = getArguments().getString("CallTime");
|
||||||
String callDate = getArguments().getString("CallDate");
|
String callDate = getArguments().getString("CallDate");
|
||||||
|
|
||||||
view = inflater.inflate(R.layout.history_detail, container, false);
|
view = inflater.inflate(R.layout.history_detail, container, false);
|
||||||
|
|
||||||
dialBack = (ImageView) view.findViewById(R.id.dialBack);
|
dialBack = (ImageView) view.findViewById(R.id.call);
|
||||||
dialBack.setOnClickListener(this);
|
dialBack.setOnClickListener(this);
|
||||||
|
|
||||||
back = (ImageView) view.findViewById(R.id.back);
|
back = (ImageView) view.findViewById(R.id.back);
|
||||||
|
@ -71,16 +71,16 @@ public class HistoryDetailFragment extends Fragment implements OnClickListener {
|
||||||
addToContacts = (ImageView) view.findViewById(R.id.add_contact);
|
addToContacts = (ImageView) view.findViewById(R.id.add_contact);
|
||||||
addToContacts.setOnClickListener(this);
|
addToContacts.setOnClickListener(this);
|
||||||
|
|
||||||
contactPicture = (ImageView) view.findViewById(R.id.contactPicture);
|
contactPicture = (ImageView) view.findViewById(R.id.contact_picture);
|
||||||
|
|
||||||
contactName = (TextView) view.findViewById(R.id.contactName);
|
contactName = (TextView) view.findViewById(R.id.contact_name);
|
||||||
if (displayName == null && getResources().getBoolean(R.bool.only_display_username_if_unknown) && LinphoneUtils.isSipAddress(sipUri)) {
|
if (displayName == null && getResources().getBoolean(R.bool.only_display_username_if_unknown) && LinphoneUtils.isSipAddress(sipUri)) {
|
||||||
displayName = LinphoneUtils.getUsernameFromAddress(sipUri);
|
displayName = LinphoneUtils.getUsernameFromAddress(sipUri);
|
||||||
}
|
}
|
||||||
|
|
||||||
contactAddress = (TextView) view.findViewById(R.id.contactAddress);
|
contactAddress = (TextView) view.findViewById(R.id.contact_address);
|
||||||
|
|
||||||
callDirection = (TextView) view.findViewById(R.id.callDirection);
|
callDirection = (TextView) view.findViewById(R.id.call_direction);
|
||||||
|
|
||||||
time = (TextView) view.findViewById(R.id.time);
|
time = (TextView) view.findViewById(R.id.time);
|
||||||
date = (TextView) view.findViewById(R.id.date);
|
date = (TextView) view.findViewById(R.id.date);
|
||||||
|
@ -99,11 +99,11 @@ public class HistoryDetailFragment extends Fragment implements OnClickListener {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (status.equals("Missed")) {
|
if (status.equals("Missed")) {
|
||||||
callDirection.setText(getString(R.string.call_state_missed));
|
callDirection.setText(getString(R.string.call_state_missed) + " call");
|
||||||
} else if (status.equals("Incoming")) {
|
} else if (status.equals("Incoming")) {
|
||||||
callDirection.setText(getString(R.string.call_state_incoming));
|
callDirection.setText(getString(R.string.call_state_incoming) + " call");
|
||||||
} else if (status.equals("Outgoing")) {
|
} else if (status.equals("Outgoing")) {
|
||||||
callDirection.setText(getString(R.string.call_state_outgoing));
|
callDirection.setText(getString(R.string.call_state_outgoing) + " call");
|
||||||
} else {
|
} else {
|
||||||
callDirection.setText(status);
|
callDirection.setText(status);
|
||||||
}
|
}
|
||||||
|
@ -116,10 +116,10 @@ public class HistoryDetailFragment extends Fragment implements OnClickListener {
|
||||||
lAddress = LinphoneCoreFactory.instance().createLinphoneAddress(sipUri);
|
lAddress = LinphoneCoreFactory.instance().createLinphoneAddress(sipUri);
|
||||||
Contact contact = ContactsManager.getInstance().findContactWithAddress(getActivity().getContentResolver(), lAddress);
|
Contact contact = ContactsManager.getInstance().findContactWithAddress(getActivity().getContentResolver(), lAddress);
|
||||||
if (contact != null) {
|
if (contact != null) {
|
||||||
//LinphoneUtils.setImagePictureFromUri(view.getContext(), contactPicture.getView(),contact.getPhotoUri(), contact.getThumbnailUri(), R.drawable.unknown_small);
|
LinphoneUtils.setImagePictureFromUri(view.getContext(),contactPicture,contact.getPhotoUri(),contact.getThumbnailUri());
|
||||||
view.findViewById(R.id.add_contact).setVisibility(View.GONE);
|
view.findViewById(R.id.add_contact).setVisibility(View.GONE);
|
||||||
} else {
|
} else {
|
||||||
//LinphoneUtils.setImagePictureFromUri(view.getContext(), contactPicture.getView(),null, null ,R.drawable.unknown_small);
|
contactPicture.setImageResource(R.drawable.avatar);
|
||||||
}
|
}
|
||||||
} catch (LinphoneCoreException e) {
|
} catch (LinphoneCoreException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
|
@ -157,7 +157,7 @@ public class HistoryDetailFragment extends Fragment implements OnClickListener {
|
||||||
|
|
||||||
if (id == R.id.back) {
|
if (id == R.id.back) {
|
||||||
getFragmentManager().popBackStackImmediate();
|
getFragmentManager().popBackStackImmediate();
|
||||||
} if (id == R.id.dialBack) {
|
} if (id == R.id.call) {
|
||||||
LinphoneActivity.instance().setAddresGoToDialerAndCall(sipUri, displayName, pictureUri == null ? null : Uri.parse(pictureUri));
|
LinphoneActivity.instance().setAddresGoToDialerAndCall(sipUri, displayName, pictureUri == null ? null : Uri.parse(pictureUri));
|
||||||
} else if (id == R.id.chat) {
|
} else if (id == R.id.chat) {
|
||||||
LinphoneActivity.instance().displayChat(sipUri);
|
LinphoneActivity.instance().displayChat(sipUri);
|
||||||
|
|
|
@ -27,7 +27,6 @@ import org.linphone.core.CallDirection;
|
||||||
import org.linphone.core.LinphoneAddress;
|
import org.linphone.core.LinphoneAddress;
|
||||||
import org.linphone.core.LinphoneCallLog;
|
import org.linphone.core.LinphoneCallLog;
|
||||||
import org.linphone.core.LinphoneCallLog.CallStatus;
|
import org.linphone.core.LinphoneCallLog.CallStatus;
|
||||||
import org.linphone.mediastream.Log;
|
|
||||||
|
|
||||||
import android.annotation.SuppressLint;
|
import android.annotation.SuppressLint;
|
||||||
import android.app.Dialog;
|
import android.app.Dialog;
|
||||||
|
@ -53,6 +52,7 @@ import android.widget.Button;
|
||||||
import android.widget.CheckBox;
|
import android.widget.CheckBox;
|
||||||
import android.widget.CompoundButton;
|
import android.widget.CompoundButton;
|
||||||
import android.widget.ImageView;
|
import android.widget.ImageView;
|
||||||
|
import android.widget.LinearLayout;
|
||||||
import android.widget.ListView;
|
import android.widget.ListView;
|
||||||
import android.widget.RelativeLayout;
|
import android.widget.RelativeLayout;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
@ -66,7 +66,7 @@ public class HistoryFragment extends Fragment implements OnClickListener, OnItem
|
||||||
private TextView noCallHistory, noMissedCallHistory;
|
private TextView noCallHistory, noMissedCallHistory;
|
||||||
private ImageView missedCalls, allCalls, edit, selectAll, deselectAll, deleteAll;
|
private ImageView missedCalls, allCalls, edit, selectAll, deselectAll, deleteAll;
|
||||||
private RelativeLayout allCallsSelected, missedCallsSelected;
|
private RelativeLayout allCallsSelected, missedCallsSelected;
|
||||||
private boolean onlyDisplayMissedCalls, isEditMode, isSelectAll, isDeselectAll;
|
private boolean onlyDisplayMissedCalls, isEditMode;
|
||||||
private List<LinphoneCallLog> mLogs;
|
private List<LinphoneCallLog> mLogs;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -110,10 +110,6 @@ public class HistoryFragment extends Fragment implements OnClickListener, OnItem
|
||||||
edit = (ImageView) view.findViewById(R.id.edit);
|
edit = (ImageView) view.findViewById(R.id.edit);
|
||||||
edit.setOnClickListener(this);
|
edit.setOnClickListener(this);
|
||||||
|
|
||||||
isSelectAll = false;
|
|
||||||
isDeselectAll = false;
|
|
||||||
|
|
||||||
|
|
||||||
return view;
|
return view;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -190,42 +186,6 @@ public class HistoryFragment extends Fragment implements OnClickListener, OnItem
|
||||||
public void onClick(View v) {
|
public void onClick(View v) {
|
||||||
int id = v.getId();
|
int id = v.getId();
|
||||||
|
|
||||||
if (id == R.id.delete) {
|
|
||||||
final Dialog dialog = LinphoneActivity.instance().displayDialog(getString(R.string.delete_text));
|
|
||||||
Button delete = (Button) dialog.findViewById(R.id.delete);
|
|
||||||
Button cancel = (Button) dialog.findViewById(R.id.cancel);
|
|
||||||
|
|
||||||
isEditMode = false;
|
|
||||||
delete.setOnClickListener(new OnClickListener() {
|
|
||||||
@Override
|
|
||||||
public void onClick(View view) {
|
|
||||||
int size = historyList.getAdapter().getCount();
|
|
||||||
for(int i=0; i<size; i++) {
|
|
||||||
if(historyList.isItemChecked(i)){
|
|
||||||
LinphoneCallLog log = mLogs.get(i);
|
|
||||||
LinphoneManager.getLc().removeCallLog(log);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
refresh();
|
|
||||||
historyList.setChoiceMode(AbsListView.CHOICE_MODE_MULTIPLE);
|
|
||||||
historyList.setAdapter(new CallHistoryAdapter(getActivity()));
|
|
||||||
dialog.dismiss();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
cancel.setOnClickListener(new OnClickListener() {
|
|
||||||
@Override
|
|
||||||
public void onClick(View view) {
|
|
||||||
dialog.dismiss();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
dialog.show();
|
|
||||||
|
|
||||||
edit.setVisibility(View.VISIBLE);
|
|
||||||
selectAll.setVisibility(View.GONE);
|
|
||||||
deselectAll.setVisibility(View.GONE);
|
|
||||||
deleteAll.setVisibility(View.GONE);
|
|
||||||
}
|
|
||||||
if (id == R.id.edit) {
|
if (id == R.id.edit) {
|
||||||
edit.setVisibility(View.GONE);
|
edit.setVisibility(View.GONE);
|
||||||
selectAll.setVisibility(View.VISIBLE);
|
selectAll.setVisibility(View.VISIBLE);
|
||||||
|
@ -249,7 +209,7 @@ public class HistoryFragment extends Fragment implements OnClickListener, OnItem
|
||||||
onlyDisplayMissedCalls = true;
|
onlyDisplayMissedCalls = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!hideHistoryListAndDisplayMessageIfEmpty()) {
|
if (!hideHistoryListAndDisplayMessageIfEmpty() && !isEditMode) {
|
||||||
historyList.setChoiceMode(AbsListView.CHOICE_MODE_MULTIPLE);
|
historyList.setChoiceMode(AbsListView.CHOICE_MODE_MULTIPLE);
|
||||||
historyList.setAdapter(new CallHistoryAdapter(getActivity().getApplicationContext()));
|
historyList.setAdapter(new CallHistoryAdapter(getActivity().getApplicationContext()));
|
||||||
}
|
}
|
||||||
|
@ -266,9 +226,6 @@ public class HistoryFragment extends Fragment implements OnClickListener, OnItem
|
||||||
for(int i=0; i<size; i++) {
|
for(int i=0; i<size; i++) {
|
||||||
historyList.setItemChecked(i, true);
|
historyList.setItemChecked(i, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
isSelectAll = true;
|
|
||||||
isDeselectAll = false;
|
|
||||||
}
|
}
|
||||||
if (id == R.id.deselect_all) {
|
if (id == R.id.deselect_all) {
|
||||||
deselectAll.setVisibility(View.GONE);
|
deselectAll.setVisibility(View.GONE);
|
||||||
|
@ -278,6 +235,36 @@ public class HistoryFragment extends Fragment implements OnClickListener, OnItem
|
||||||
historyList.setItemChecked(i, false);
|
historyList.setItemChecked(i, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (id == R.id.delete) {
|
||||||
|
final Dialog dialog = LinphoneActivity.instance().displayDialog(getString(R.string.delete_text));
|
||||||
|
Button delete = (Button) dialog.findViewById(R.id.delete);
|
||||||
|
Button cancel = (Button) dialog.findViewById(R.id.cancel);
|
||||||
|
|
||||||
|
delete.setOnClickListener(new OnClickListener() {
|
||||||
|
@Override
|
||||||
|
public void onClick(View view) {
|
||||||
|
int size = historyList.getAdapter().getCount();
|
||||||
|
for(int i=0; i<size; i++) {
|
||||||
|
if(historyList.isItemChecked(i)){
|
||||||
|
LinphoneCallLog log = mLogs.get(i);
|
||||||
|
LinphoneManager.getLc().removeCallLog(log);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
dialog.dismiss();
|
||||||
|
quitEditMode();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
cancel.setOnClickListener(new OnClickListener() {
|
||||||
|
@Override
|
||||||
|
public void onClick(View view) {
|
||||||
|
dialog.dismiss();
|
||||||
|
quitEditMode();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
dialog.show();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -360,6 +347,19 @@ public class HistoryFragment extends Fragment implements OnClickListener, OnItem
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void quitEditMode(){
|
||||||
|
isEditMode = false;
|
||||||
|
selectAll.setVisibility(View.GONE);
|
||||||
|
deselectAll.setVisibility(View.GONE);
|
||||||
|
deleteAll.setVisibility(View.GONE);
|
||||||
|
edit.setVisibility(View.VISIBLE);
|
||||||
|
refresh();
|
||||||
|
if (!hideHistoryListAndDisplayMessageIfEmpty()){
|
||||||
|
historyList.setChoiceMode(AbsListView.CHOICE_MODE_MULTIPLE);
|
||||||
|
historyList.setAdapter(new CallHistoryAdapter(getActivity().getApplicationContext()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
class CallHistoryAdapter extends BaseAdapter {
|
class CallHistoryAdapter extends BaseAdapter {
|
||||||
CallHistoryAdapter(Context aContext) {
|
CallHistoryAdapter(Context aContext) {
|
||||||
}
|
}
|
||||||
|
@ -411,30 +411,31 @@ public class HistoryFragment extends Fragment implements OnClickListener, OnItem
|
||||||
|
|
||||||
public View getView(final int position, View convertView, ViewGroup parent) {
|
public View getView(final int position, View convertView, ViewGroup parent) {
|
||||||
View view = null;
|
View view = null;
|
||||||
|
ViewHolder holder;
|
||||||
if (convertView != null) {
|
if (convertView != null) {
|
||||||
view = convertView;
|
view = convertView;
|
||||||
|
holder = (ViewHolder) view.getTag();
|
||||||
} else {
|
} else {
|
||||||
view = mInflater.inflate(R.layout.history_cell, parent,false);
|
view = mInflater.inflate(R.layout.history_cell, parent,false);
|
||||||
ViewHolder holder = new ViewHolder();
|
holder = new ViewHolder();
|
||||||
holder.contact = (TextView) view.findViewById(R.id.sipUri);
|
holder.contact = (TextView) view.findViewById(R.id.sip_uri);
|
||||||
holder.detail = (ImageView) view.findViewById(R.id.detail);
|
holder.detail = (ImageView) view.findViewById(R.id.detail);
|
||||||
holder.delete = (CheckBox) view.findViewById(R.id.delete);
|
holder.delete = (CheckBox) view.findViewById(R.id.delete);
|
||||||
holder.callDirection = (ImageView) view.findViewById(R.id.icon);
|
holder.callDirection = (ImageView) view.findViewById(R.id.icon);
|
||||||
view.setTag(holder);
|
holder.contactPicture = (ImageView) view.findViewById(R.id.contact_picture);
|
||||||
}
|
}
|
||||||
|
|
||||||
ViewHolder holder = (ViewHolder) view.getTag();
|
|
||||||
|
|
||||||
final LinphoneCallLog log = mLogs.get(position);
|
final LinphoneCallLog log = mLogs.get(position);
|
||||||
long timestamp = log.getTimestamp();
|
long timestamp = log.getTimestamp();
|
||||||
final LinphoneAddress address;
|
final LinphoneAddress address;
|
||||||
|
|
||||||
holder.contact.setSelected(true); // For automated horizontal scrolling of long texts
|
holder.contact.setSelected(true); // For automated horizontal scrolling of long texts
|
||||||
|
|
||||||
TextView separator = (TextView) view.findViewById(R.id.separator);
|
LinearLayout separator = (LinearLayout) view.findViewById(R.id.separator);
|
||||||
|
TextView separatorText = (TextView) view.findViewById(R.id.separator_text);
|
||||||
Calendar logTime = Calendar.getInstance();
|
Calendar logTime = Calendar.getInstance();
|
||||||
logTime.setTimeInMillis(timestamp);
|
logTime.setTimeInMillis(timestamp);
|
||||||
separator.setText(timestampToHumanDate(logTime));
|
separatorText.setText(timestampToHumanDate(logTime));
|
||||||
|
|
||||||
if (position > 0) {
|
if (position > 0) {
|
||||||
LinphoneCallLog previousLog = mLogs.get(position-1);
|
LinphoneCallLog previousLog = mLogs.get(position-1);
|
||||||
|
@ -463,11 +464,14 @@ public class HistoryFragment extends Fragment implements OnClickListener, OnItem
|
||||||
holder.callDirection.setImageResource(R.drawable.call_status_outgoing);
|
holder.callDirection.setImageResource(R.drawable.call_status_outgoing);
|
||||||
}
|
}
|
||||||
|
|
||||||
Contact c = ContactsManager.getInstance().findContactWithAddress(address);
|
Contact c = ContactsManager.getInstance().findContactWithAddress(getActivity().getContentResolver(), address);
|
||||||
String displayName = null;
|
String displayName = null;
|
||||||
final String sipUri = address.asStringUriOnly();
|
final String sipUri = address.asStringUriOnly();
|
||||||
if(c != null){
|
if(c != null){
|
||||||
displayName = c.getName();
|
displayName = c.getName();
|
||||||
|
LinphoneUtils.setImagePictureFromUri(view.getContext(),holder.contactPicture,c.getPhotoUri(),c.getThumbnailUri());
|
||||||
|
} else {
|
||||||
|
holder.contactPicture.setImageResource(R.drawable.avatar);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (displayName == null) {
|
if (displayName == null) {
|
||||||
|
@ -511,6 +515,7 @@ public class HistoryFragment extends Fragment implements OnClickListener, OnItem
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
view.setTag(holder);
|
||||||
return view;
|
return view;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -520,6 +525,6 @@ public class HistoryFragment extends Fragment implements OnClickListener, OnItem
|
||||||
ImageView detail;
|
ImageView detail;
|
||||||
CheckBox delete;
|
CheckBox delete;
|
||||||
ImageView callDirection;
|
ImageView callDirection;
|
||||||
int position;
|
ImageView contactPicture;
|
||||||
}
|
}
|
||||||
}
|
}
|