diff --git a/src/android/org/linphone/chat/ChatCreationFragment.java b/src/android/org/linphone/chat/ChatCreationFragment.java index 76e082a6c..c8af43400 100644 --- a/src/android/org/linphone/chat/ChatCreationFragment.java +++ b/src/android/org/linphone/chat/ChatCreationFragment.java @@ -239,18 +239,35 @@ public class ChatCreationFragment extends Fragment implements View.OnClickListen mContactsList.setVisibility(View.VISIBLE); mSearchLayout.setVisibility(View.VISIBLE); - mAllContactsButton.setVisibility(View.VISIBLE); - mLinphoneContactsButton.setVisibility(View.VISIBLE); - if (mOnlyDisplayLinphoneContacts) { - mAllContactsSelected.setVisibility(View.INVISIBLE); - mLinphoneContactsSelected.setVisibility(View.VISIBLE); - } else { - mAllContactsSelected.setVisibility(View.VISIBLE); - mLinphoneContactsSelected.setVisibility(View.INVISIBLE); - } - mAllContactsButton.setEnabled(mOnlyDisplayLinphoneContacts); - mLinphoneContactsButton.setEnabled(!mAllContactsButton.isEnabled()); + if (getResources().getBoolean(R.bool.hide_non_linphone_contacts)) { + mLinphoneContactsButton.setVisibility(View.INVISIBLE); + + mAllContactsButton.setEnabled(false); + mLinphoneContactsButton.setEnabled(false); + + mOnlyDisplayLinphoneContacts = true; + + mAllContactsButton.setOnClickListener(null); + mLinphoneContactsButton.setOnClickListener(null); + + mLinphoneContactsSelected.setVisibility(View.INVISIBLE); + mLinphoneContactsSelected.setVisibility(View.INVISIBLE); + } else { + mAllContactsButton.setVisibility(View.VISIBLE); + mLinphoneContactsButton.setVisibility(View.VISIBLE); + + if (mOnlyDisplayLinphoneContacts) { + mAllContactsSelected.setVisibility(View.INVISIBLE); + mLinphoneContactsSelected.setVisibility(View.VISIBLE); + } else { + mAllContactsSelected.setVisibility(View.VISIBLE); + mLinphoneContactsSelected.setVisibility(View.INVISIBLE); + } + + mAllContactsButton.setEnabled(mOnlyDisplayLinphoneContacts); + mLinphoneContactsButton.setEnabled(!mAllContactsButton.isEnabled()); + } mContactsSelectedLayout.removeAllViews(); if (mContactsSelected.size() > 0) { diff --git a/src/android/org/linphone/contacts/SearchContactsListAdapter.java b/src/android/org/linphone/contacts/SearchContactsListAdapter.java index f2608bbaf..8685244eb 100644 --- a/src/android/org/linphone/contacts/SearchContactsListAdapter.java +++ b/src/android/org/linphone/contacts/SearchContactsListAdapter.java @@ -34,8 +34,11 @@ import org.linphone.R; import org.linphone.activities.LinphoneActivity; import org.linphone.core.Address; import org.linphone.core.Factory; +import org.linphone.core.PresenceBasicStatus; +import org.linphone.core.PresenceModel; import org.linphone.core.ProxyConfig; import org.linphone.core.SearchResult; +import org.linphone.mediastream.Log; import java.util.ArrayList; import java.util.List; @@ -251,6 +254,7 @@ public class SearchContactsListAdapter extends RecyclerView.Adapter