summary refs log tree commit diff
path: root/webclient
diff options
context:
space:
mode:
authorDavid Baker <dbkr@matrix.org>2014-08-29 18:01:01 +0100
committerDavid Baker <dbkr@matrix.org>2014-08-29 18:01:01 +0100
commit490f142d739c7dd30c4ca8e262af5f84c577ebbe (patch)
tree9878cc9bd121adabd4cbcf2160d306eefda90ea6 /webclient
parenttodo (diff)
downloadsynapse-490f142d739c7dd30c4ca8e262af5f84c577ebbe.tar.xz
Give basic feedback on the state of VoIP calls in the UI.
Diffstat (limited to 'webclient')
-rw-r--r--webclient/components/matrix/matrix-call.js3
-rw-r--r--webclient/room/room-controller.js2
-rw-r--r--webclient/room/room.html4
3 files changed, 6 insertions, 3 deletions
diff --git a/webclient/components/matrix/matrix-call.js b/webclient/components/matrix/matrix-call.js
index c0a7735a7c..47b63d7f2f 100644
--- a/webclient/components/matrix/matrix-call.js
+++ b/webclient/components/matrix/matrix-call.js
@@ -36,7 +36,7 @@ var forAllTracksOnStream = function(s, f) {
 }
 
 angular.module('MatrixCall', [])
-.factory('MatrixCall', ['matrixService', 'matrixPhoneService', function MatrixCallFactory(matrixService, matrixPhoneService) {
+.factory('MatrixCall', ['matrixService', 'matrixPhoneService', '$rootScope', function MatrixCallFactory(matrixService, matrixPhoneService, $rootScope) {
     var MatrixCall = function(room_id) {
         this.room_id = room_id;
         this.call_id = "c" + new Date().getTime();
@@ -208,6 +208,7 @@ angular.module('MatrixCall', [])
         // ideally we'd consider the call to be connected when we get media but chrome doesn't implement nay of the 'onstarted' events yet
         if (this.peerConn.iceConnectionState == 'completed' || this.peerConn.iceConnectionState == 'connected') {
             this.state = 'connected';
+            $rootScope.$apply();
         }
     };
 
diff --git a/webclient/room/room-controller.js b/webclient/room/room-controller.js
index c745ce945b..75adf259cf 100644
--- a/webclient/room/room-controller.js
+++ b/webclient/room/room-controller.js
@@ -471,7 +471,5 @@ angular.module('RoomController', ['ngSanitize', 'mFileInput'])
     }
 
     $scope.onCallHangup = function() {
-        $scope.feedback = "Call ended";
-        $scope.currentCall = undefined;
     }
 }]);
diff --git a/webclient/room/room.html b/webclient/room/room.html
index cb9239ed56..aa7879ea8f 100644
--- a/webclient/room/room.html
+++ b/webclient/room/room.html
@@ -105,6 +105,10 @@
                 <button ng-click="hangupCall()">Reject</button>
                 </div>
                 <button ng-click="hangupCall()" ng-show="currentCall && currentCall.state != 'ringing'">Hang up</button>
+                <span ng-show="currentCall.state == 'invite_sent'">Calling...</span>
+                <span ng-show="currentCall.state == 'connecting'">Call Connecting...</span>
+                <span ng-show="currentCall.state == 'connected'">Call Connected</span>
+                <span ng-show="currentCall.state == 'ended'">Call Ended</span>
                 <span style="display: none; ">{{ currentCall.state }}</span>
             </div>