# HG changeset patch # User Vincent Veronis # Date 1258404694 -3600 # Node ID 0444ac5038a0cd8bdb2376e8e550d343ea6e7a77 # Parent 88a19fcd70b3988ebd18d9faec4d0cab54688e1f Correction bug. Doublons du contact lors de l'ajout dans plusieurs groupes. Probleme Smack .... diff -r 88a19fcd70b3 -r 0444ac5038a0 .classpath --- a/.classpath Mon Nov 16 02:00:06 2009 +0100 +++ b/.classpath Mon Nov 16 21:51:34 2009 +0100 @@ -8,7 +8,7 @@ - + diff -r 88a19fcd70b3 -r 0444ac5038a0 src/com/beem/project/beem/service/RosterAdapter.java --- a/src/com/beem/project/beem/service/RosterAdapter.java Mon Nov 16 02:00:06 2009 +0100 +++ b/src/com/beem/project/beem/service/RosterAdapter.java Mon Nov 16 21:51:34 2009 +0100 @@ -123,9 +123,18 @@ */ @Override public List getContactList() throws RemoteException { + boolean add = true; List coList = new ArrayList(mAdaptee.getEntries().size()); for (RosterEntry entry : mAdaptee.getEntries()) { - coList.add(getContactFromRosterEntry(entry)); + for (Contact c : coList) { + if (c.getJID().equals(entry.getUser())) { + add = false; + break; + } + } + // Because getEntries return duplicated user. + if (add == true) + coList.add(getContactFromRosterEntry(entry)); } return coList; } @@ -223,8 +232,7 @@ defaultStatusMessages.put(Status.CONTACT_STATUS_BUSY, context.getString(R.string.contact_status_msg_dnd)); defaultStatusMessages.put(Status.CONTACT_STATUS_DISCONNECT, context .getString(R.string.contact_status_msg_offline)); - defaultStatusMessages - .put(Status.CONTACT_STATUS_UNAVAILABLE, context.getString(R.string.contact_status_msg_xa)); + defaultStatusMessages.put(Status.CONTACT_STATUS_UNAVAILABLE, context.getString(R.string.contact_status_msg_xa)); return (defaultStatusMessages); } diff -r 88a19fcd70b3 -r 0444ac5038a0 src/com/beem/project/beem/ui/ContactList.java --- a/src/com/beem/project/beem/ui/ContactList.java Mon Nov 16 02:00:06 2009 +0100 +++ b/src/com/beem/project/beem/ui/ContactList.java Mon Nov 16 21:51:34 2009 +0100 @@ -654,6 +654,7 @@ mListGroup.add(getString(R.string.contact_list_all_contact)); mListGroup.addAll(tmpGroupList); mListGroup.add(getString(R.string.contact_list_no_group)); + mContactOnGroup.clear(); if (tmpGroupList.size() > 0) { List tmpNoGroup = new ArrayList(); for (String s : tmpGroupList) {