From fc5da7f57d8485763bb6b4fcb09913dedceee06c Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Thu, 6 Dec 2018 15:56:14 +0100 Subject: [PATCH] This seems to fix contact edition issue + added refresher on contact list --- .../contacts/ContactEditorFragment.java | 1 + .../linphone/contacts/ContactsFragment.java | 12 ++++++++++++ .../org/linphone/contacts/LinphoneContact.java | 3 +-- app/src/main/res/layout/contacts_list.xml | 18 ++++++++++++------ 4 files changed, 26 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/org/linphone/contacts/ContactEditorFragment.java b/app/src/main/java/org/linphone/contacts/ContactEditorFragment.java index 32cda064e..8fbabd6a3 100644 --- a/app/src/main/java/org/linphone/contacts/ContactEditorFragment.java +++ b/app/src/main/java/org/linphone/contacts/ContactEditorFragment.java @@ -91,6 +91,7 @@ public class ContactEditorFragment extends Fragment { Serializable obj = getArguments().getSerializable("Contact"); if (obj != null) { mContact = (LinphoneContact) obj; + mContact.createLinphoneTagIfNeeded(); mIsNewContact = false; if (getArguments().getString("NewSipAdress") != null) { mNewSipOrNumberToAdd = getArguments().getString("NewSipAdress"); diff --git a/app/src/main/java/org/linphone/contacts/ContactsFragment.java b/app/src/main/java/org/linphone/contacts/ContactsFragment.java index 4d7729c20..4e9228b60 100644 --- a/app/src/main/java/org/linphone/contacts/ContactsFragment.java +++ b/app/src/main/java/org/linphone/contacts/ContactsFragment.java @@ -34,6 +34,7 @@ import android.widget.TextView; import androidx.recyclerview.widget.DividerItemDecoration; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; +import androidx.swiperefreshlayout.widget.SwipeRefreshLayout; import java.util.ArrayList; import java.util.List; import org.linphone.LinphoneActivity; @@ -61,6 +62,7 @@ public class ContactsFragment extends Fragment private Context mContext; private SelectableHelper mSelectionHelper; private ContactsAdapter mContactAdapter; + private SwipeRefreshLayout mContactsRefresher; @Override public View onCreateView( @@ -88,6 +90,15 @@ public class ContactsFragment extends Fragment mLinphoneContactsSelected = view.findViewById(R.id.linphone_contacts_select); mContactsFetchInProgress = view.findViewById(R.id.contactsFetchInProgress); mNewContact = view.findViewById(R.id.newContact); + mContactsRefresher = view.findViewById(R.id.contactsListRefresher); + + mContactsRefresher.setOnRefreshListener( + new SwipeRefreshLayout.OnRefreshListener() { + @Override + public void onRefresh() { + ContactsManager.getInstance().fetchContactsAsync(); + } + }); mAllContacts.setOnClickListener( new View.OnClickListener() { @@ -364,6 +375,7 @@ public class ContactsFragment extends Fragment } } mContactsFetchInProgress.setVisibility(View.GONE); + mContactsRefresher.setRefreshing(false); } private void invalidate() { diff --git a/app/src/main/java/org/linphone/contacts/LinphoneContact.java b/app/src/main/java/org/linphone/contacts/LinphoneContact.java index 99a7c0f62..4dce20986 100644 --- a/app/src/main/java/org/linphone/contacts/LinphoneContact.java +++ b/app/src/main/java/org/linphone/contacts/LinphoneContact.java @@ -776,7 +776,6 @@ public class LinphoneContact implements Serializable, Comparable 0) { try { - createLinphoneTagIfNeeded(); LinphoneService.instance() .getContentResolver() .applyBatch(ContactsContract.AUTHORITY, mChangesToCommit); @@ -1077,7 +1076,7 @@ public class LinphoneContact implements Serializable, Comparable - - - android:dividerHeight="1dp" /> + + +