Browse Source

Split handling of "unshareScreen" and WebRTC messages

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
Daniel Calviño Sánchez 2 years ago
parent
commit
075ba20cf9
1 changed files with 8 additions and 6 deletions
  1. 8 6
      app/src/main/java/com/nextcloud/talk/activities/CallActivity.java

+ 8 - 6
app/src/main/java/com/nextcloud/talk/activities/CallActivity.java

@@ -1666,6 +1666,12 @@ public class CallActivity extends CallBaseActivity {
         if ("video".equals(ncSignalingMessage.getRoomType()) || "screen".equals(ncSignalingMessage.getRoomType())) {
             String type = ncSignalingMessage.getType();
 
+            if ("unshareScreen".equals(type)) {
+                endPeerConnection(ncSignalingMessage.getFrom(), true);
+
+                return;
+            }
+
             PeerConnectionWrapper peerConnectionWrapper = null;
 
             if ("offer".equals(type)) {
@@ -1678,16 +1684,12 @@ public class CallActivity extends CallBaseActivity {
                                                                 ncSignalingMessage.getRoomType());
             }
 
-            if ("unshareScreen".equals(type) ||
-                (("offer".equals(type) ||
+            if (("offer".equals(type) ||
                     "answer".equals(type) ||
                     "candidate".equals(type) ||
                     "endOfCandidates".equals(type)) &&
-                    peerConnectionWrapper != null)) {
+                    peerConnectionWrapper != null) {
                 switch (type) {
-                    case "unshareScreen":
-                        endPeerConnection(ncSignalingMessage.getFrom(), true);
-                        break;
                     case "offer":
                     case "answer":
                         peerConnectionWrapper.setNick(ncSignalingMessage.getPayload().getNick());