diff --git a/app/js/controllers.js b/app/js/controllers.js index c1cea6bd..4c30f366 100644 --- a/app/js/controllers.js +++ b/app/js/controllers.js @@ -473,7 +473,7 @@ angular.module('myApp.controllers', ['myApp.i18n']) skipped: false }; - $scope.voiceRecorder = { time : '', recording : null }; + $scope.voiceRecorder = { time : '', recording : null, processing : false }; $scope.openSettings = function () { $modal.open({ diff --git a/app/js/directives.js b/app/js/directives.js index 70ffd24c..bf9f4837 100755 --- a/app/js/directives.js +++ b/app/js/directives.js @@ -1593,17 +1593,22 @@ angular.module('myApp.directives', ['myApp.filters']) voiceRecord.on('click', function(){ if (audioRecorder) { + $scope.$parent.$parent.voiceRecorder.processing = true; + audioRecorder.ondataavailable = function(e){ var blob = e.data; console.log(blob); $scope.draftMessage.files = [blob]; $scope.draftMessage.isMedia = true; + + audioRecorder = null; + $scope.$parent.$parent.voiceRecorder.processing = false; } } }); - voiceRecord.on('touchend', function(){ + $($window).on('touchend', function(){ if (audioRecorder) { audioRecorder.stop(); audioStream.stop(); diff --git a/app/less/mobile.less b/app/less/mobile.less index 9b1b6f10..513d87de 100644 --- a/app/less/mobile.less +++ b/app/less/mobile.less @@ -1439,7 +1439,7 @@ a.im_message_fwd_author { } } -.im_voice_recording { +.im_voice_recording, .im_processing_recording { background-color: rgb(23, 23, 23); color: white; @@ -1461,6 +1461,16 @@ a.im_message_fwd_author { } +.im_processing_recording { + .im_recorder_indicator i { + background-color: green; + } + + .im_record { + display: none; + } +} + .icon-emoji { display: inline-block; width: 22px; diff --git a/app/partials/mobile/im.html b/app/partials/mobile/im.html index 8d01c015..78b6bcba 100644 --- a/app/partials/mobile/im.html +++ b/app/partials/mobile/im.html @@ -130,7 +130,7 @@ -
+