mirror of
https://github.com/nextcloud/talk-android.git
synced 2024-11-26 23:25:20 +03:00
Merge pull request #2503 from nextcloud/fix-remote-participants-display-with-both-video-and-screen-share
Fix remote participants display with both video and screen share
This commit is contained in:
commit
e9aa9f2764
1 changed files with 6 additions and 5 deletions
|
@ -2087,8 +2087,9 @@ public class CallActivity extends CallBaseActivity {
|
|||
if (!(peerConnectionWrappers = getPeerConnectionWrapperListForSessionId(sessionId)).isEmpty()) {
|
||||
for (PeerConnectionWrapper peerConnectionWrapper : peerConnectionWrappers) {
|
||||
if (peerConnectionWrapper.getSessionId().equals(sessionId)) {
|
||||
if (VIDEO_STREAM_TYPE_SCREEN.equals(peerConnectionWrapper.getVideoStreamType()) || !justScreen) {
|
||||
runOnUiThread(() -> removeMediaStream(sessionId));
|
||||
String videoStreamType = peerConnectionWrapper.getVideoStreamType();
|
||||
if (VIDEO_STREAM_TYPE_SCREEN.equals(videoStreamType) || !justScreen) {
|
||||
runOnUiThread(() -> removeMediaStream(sessionId, videoStreamType));
|
||||
deletePeerConnection(peerConnectionWrapper);
|
||||
}
|
||||
}
|
||||
|
@ -2096,9 +2097,9 @@ public class CallActivity extends CallBaseActivity {
|
|||
}
|
||||
}
|
||||
|
||||
private void removeMediaStream(String sessionId) {
|
||||
private void removeMediaStream(String sessionId, String videoStreamType) {
|
||||
Log.d(TAG, "removeMediaStream");
|
||||
participantDisplayItems.remove(sessionId);
|
||||
participantDisplayItems.remove(sessionId + "-" + videoStreamType);
|
||||
|
||||
if (!isDestroyed()) {
|
||||
initGridAdapter();
|
||||
|
@ -2409,7 +2410,7 @@ public class CallActivity extends CallBaseActivity {
|
|||
videoStreamType,
|
||||
videoStreamEnabled,
|
||||
rootEglBase);
|
||||
participantDisplayItems.put(session, participantDisplayItem);
|
||||
participantDisplayItems.put(session + "-" + videoStreamType, participantDisplayItem);
|
||||
|
||||
initGridAdapter();
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue