diff --git a/src/android/org/linphone/chat/ChatCreationFragment.java b/src/android/org/linphone/chat/ChatCreationFragment.java index 3860d9d2d..8aeba3656 100644 --- a/src/android/org/linphone/chat/ChatCreationFragment.java +++ b/src/android/org/linphone/chat/ChatCreationFragment.java @@ -346,7 +346,7 @@ public class ChatCreationFragment extends Fragment implements View.OnClickListen if (chatRoom == null) { ProxyConfig lpc = lc.getDefaultProxyConfig(); if (lpc != null && lpc.getConferenceFactoryUri() != null && !LinphonePreferences.instance().useBasicChatRoomFor1To1()) { - mChatRoom = lc.createClientGroupChatRoom(getString(R.string.dummy_group_chat_subject)); + mChatRoom = lc.createClientGroupChatRoom(getString(R.string.dummy_group_chat_subject), true); mChatRoom.addListener(mChatRoomCreationListener); mChatRoom.addParticipant(participant); } else { diff --git a/src/android/org/linphone/chat/GroupChatFragment.java b/src/android/org/linphone/chat/GroupChatFragment.java index 25e7ae599..16bb4d367 100644 --- a/src/android/org/linphone/chat/GroupChatFragment.java +++ b/src/android/org/linphone/chat/GroupChatFragment.java @@ -418,14 +418,14 @@ public class GroupChatFragment extends Fragment implements ChatRoomListener, Con } getContactsForParticipants(); + + mRemoteComposing.setVisibility(View.INVISIBLE); } private void displayChatRoomHeader() { Core core = LinphoneManager.getLcIfManagerNotDestroyedOrNull(); if (core == null || mChatRoom == null) return; - mRemoteComposing.setVisibility(View.INVISIBLE); - if (core.getCallsNb() > 0) { mBackToCallButton.setVisibility(View.VISIBLE); } else { @@ -679,6 +679,19 @@ public class GroupChatFragment extends Fragment implements ChatRoomListener, Con } } + @Override + public void onAllInformationReceived(ChatRoom cr) { + // Currently flexisip doesn't send the participants list in the INVITE + // So we have to refresh the display when information is available + // In the meantime header will be chatroom-xxxxxxx + if (mChatRoom == null) mChatRoom = cr; + if (mChatRoom.hasCapability(ChatRoomCapabilities.OneToOne.toInt()) && mChatRoom.getParticipants().length > 0) { + mRemoteParticipantAddress = mChatRoom.getParticipants()[0].getAddress(); + } + getContactsForParticipants(); + displayChatRoomHeader(); + } + @Override public void onChatMessageReceived(ChatRoom cr, EventLog event) { cr.markAsRead(); diff --git a/src/android/org/linphone/chat/GroupInfoFragment.java b/src/android/org/linphone/chat/GroupInfoFragment.java index d5810e1e3..fb4354b8a 100644 --- a/src/android/org/linphone/chat/GroupInfoFragment.java +++ b/src/android/org/linphone/chat/GroupInfoFragment.java @@ -227,7 +227,7 @@ public class GroupInfoFragment extends Fragment implements ChatRoomListener { public void onClick(View view) { if (!mIsAlreadyCreatedGroup) { mWaitLayout.setVisibility(View.VISIBLE); - mTempChatRoom = LinphoneManager.getLc().createClientGroupChatRoom(mSubjectField.getText().toString()); + mTempChatRoom = LinphoneManager.getLc().createClientGroupChatRoom(mSubjectField.getText().toString(), mParticipants.size() == 1); mTempChatRoom.addListener(mChatRoomCreationListener); Address addresses[] = new Address[mParticipants.size()]; @@ -458,6 +458,11 @@ public class GroupInfoFragment extends Fragment implements ChatRoomListener { } + @Override + public void onAllInformationReceived(ChatRoom cr) { + + } + @Override public void onStateChanged(ChatRoom cr, ChatRoom.State newState) { diff --git a/src/android/org/linphone/contacts/ContactDetailsFragment.java b/src/android/org/linphone/contacts/ContactDetailsFragment.java index b67f213c8..a4c92ac7a 100644 --- a/src/android/org/linphone/contacts/ContactDetailsFragment.java +++ b/src/android/org/linphone/contacts/ContactDetailsFragment.java @@ -82,7 +82,7 @@ public class ContactDetailsFragment extends Fragment implements OnClickListener ProxyConfig lpc = lc.getDefaultProxyConfig(); if (lpc != null && lpc.getConferenceFactoryUri() != null && !LinphonePreferences.instance().useBasicChatRoomFor1To1()) { mWaitLayout.setVisibility(View.VISIBLE); - mChatRoom = lc.createClientGroupChatRoom(getString(R.string.dummy_group_chat_subject)); + mChatRoom = lc.createClientGroupChatRoom(getString(R.string.dummy_group_chat_subject), true); mChatRoom.addListener(mChatRoomCreationListener); mChatRoom.addParticipant(participant); } else { diff --git a/src/android/org/linphone/fragments/HistoryDetailFragment.java b/src/android/org/linphone/fragments/HistoryDetailFragment.java index b4890d691..e6754af9f 100644 --- a/src/android/org/linphone/fragments/HistoryDetailFragment.java +++ b/src/android/org/linphone/fragments/HistoryDetailFragment.java @@ -204,7 +204,7 @@ public class HistoryDetailFragment extends Fragment implements OnClickListener { ProxyConfig lpc = lc.getDefaultProxyConfig(); if (lpc != null && lpc.getConferenceFactoryUri() != null && !LinphonePreferences.instance().useBasicChatRoomFor1To1()) { mWaitLayout.setVisibility(View.VISIBLE); - mChatRoom = lc.createClientGroupChatRoom(getString(R.string.dummy_group_chat_subject)); + mChatRoom = lc.createClientGroupChatRoom(getString(R.string.dummy_group_chat_subject), true); mChatRoom.addListener(mChatRoomCreationListener); mChatRoom.addParticipant(participant); } else { diff --git a/submodules/bctoolbox b/submodules/bctoolbox index 312f1e41b..e9473d2e5 160000 --- a/submodules/bctoolbox +++ b/submodules/bctoolbox @@ -1 +1 @@ -Subproject commit 312f1e41b217b1cb69bcad193046b01774be5341 +Subproject commit e9473d2e5772c9ad1aea83c504b9c6aa9a92bc67 diff --git a/submodules/belle-sip b/submodules/belle-sip index 91f5b7273..a9af682b9 160000 --- a/submodules/belle-sip +++ b/submodules/belle-sip @@ -1 +1 @@ -Subproject commit 91f5b7273064a496ba1c314c5b78ad492289e584 +Subproject commit a9af682b9931213743c0af65e261e70e2280b1c9 diff --git a/submodules/belr b/submodules/belr index 18abde9e4..c65f14509 160000 --- a/submodules/belr +++ b/submodules/belr @@ -1 +1 @@ -Subproject commit 18abde9e43e8f98e22c09afee3e089c4e7691173 +Subproject commit c65f14509eeec3192cd1170646b700e9428ac292 diff --git a/submodules/cmake-builder b/submodules/cmake-builder index 4232e757c..d389b30b6 160000 --- a/submodules/cmake-builder +++ b/submodules/cmake-builder @@ -1 +1 @@ -Subproject commit 4232e757cc9ede121b6f35bc4da149d8aaa14e0f +Subproject commit d389b30b6c417d8bc7a79f561075a5c58871e3bc diff --git a/submodules/linphone b/submodules/linphone index cd08c6e2f..5290d59d7 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit cd08c6e2fee6c99ead64dde6783337714c5aedc8 +Subproject commit 5290d59d769c90f18f720b07495061ba6dcbbb84 diff --git a/submodules/mediastreamer2 b/submodules/mediastreamer2 index f49b3d5ea..9156ae093 160000 --- a/submodules/mediastreamer2 +++ b/submodules/mediastreamer2 @@ -1 +1 @@ -Subproject commit f49b3d5ea3ab56b4b021a760a58f44015b3c5765 +Subproject commit 9156ae093992c81d30dfc0936712e88a58f0ef63