From 0d4cd77d4d32c6c867c8cfb94597b305f73a32e2 Mon Sep 17 00:00:00 2001 From: Sebastiaan Pasma Date: Wed, 13 Jun 2018 16:25:43 +0200 Subject: [PATCH 1/4] config.xml to add native audio --- app-template/config-template.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/app-template/config-template.xml b/app-template/config-template.xml index 39b67d212..ed4b192ba 100644 --- a/app-template/config-template.xml +++ b/app-template/config-template.xml @@ -72,6 +72,7 @@ + From c0e691ec27ab747ef997077ee4f90de20bd7eae5 Mon Sep 17 00:00:00 2001 From: Sebastiaan Pasma Date: Wed, 13 Jun 2018 16:27:37 +0200 Subject: [PATCH 2/4] Received sound file + code to play when receiving --- src/js/controllers/tab-receive.js | 28 ++++++++++++++++++++++++++++ www/misc/coin_received.mp3 | Bin 0 -> 16744 bytes 2 files changed, 28 insertions(+) create mode 100644 www/misc/coin_received.mp3 diff --git a/src/js/controllers/tab-receive.js b/src/js/controllers/tab-receive.js index c9fa46de9..5a0f58c89 100644 --- a/src/js/controllers/tab-receive.js +++ b/src/js/controllers/tab-receive.js @@ -12,6 +12,23 @@ angular.module('copayApp.controllers').controller('tabReceiveController', functi var currentAddressSocket = {}; var paymentSubscriptionObj = { op:"addr_sub" } + var config = configService.getSync(); + + var soundLoaded = false; + var nativeAudioAvailable = (window.plugins && window.plugins.NativeAudio); + + if (nativeAudioAvailable) { + window.plugins.NativeAudio.preloadSimple('received', 'misc/coin_received.mp3', function (msg) { + $log.debug('Receive sound loaded.'); + soundLoaded = true; + }, function (error) { + $log.debug('Error loading receive sound.'); + $log.debug(error); + }); + } else { + $log.debug('isNW: Using HTML5-Audio instead of native audio'); + soundLoaded = true; + } $scope.displayBalanceAsFiat = true; @@ -129,6 +146,17 @@ angular.module('copayApp.controllers').controller('tabReceiveController', functi } $scope.paymentReceivedCoin = $scope.wallet.coin; $scope.$apply(function () { + + if (config.soundsEnabled && soundLoaded) { + $log.debug('Play sound.'); + if (nativeAudioAvailable) { + window.plugins.NativeAudio.play('received'); + } else { + new Audio('misc/coin_received.mp3').play(); + } + } else { + $log.debug('Sound is disabled.'); + } $scope.showingPaymentReceived = true; }); } diff --git a/www/misc/coin_received.mp3 b/www/misc/coin_received.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..d648204506e2bc1e4ae2555e9b7299eeee0459cf GIT binary patch literal 16744 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 literal 0 HcmV?d00001 From 74f3e195453ec6c78eaa184bcfc38be8d8994a20 Mon Sep 17 00:00:00 2001 From: Sebastiaan Pasma Date: Wed, 13 Jun 2018 16:29:01 +0200 Subject: [PATCH 3/4] ogg-file for Desktop as NWjs doesn't accept mp3 --- src/js/controllers/tab-receive.js | 2 +- www/misc/coin_received.ogg | Bin 0 -> 6751 bytes 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 www/misc/coin_received.ogg diff --git a/src/js/controllers/tab-receive.js b/src/js/controllers/tab-receive.js index 5a0f58c89..399f196d1 100644 --- a/src/js/controllers/tab-receive.js +++ b/src/js/controllers/tab-receive.js @@ -152,7 +152,7 @@ angular.module('copayApp.controllers').controller('tabReceiveController', functi if (nativeAudioAvailable) { window.plugins.NativeAudio.play('received'); } else { - new Audio('misc/coin_received.mp3').play(); + new Audio('misc/coin_received.ogg').play(); // NW.js has no mp3 support } } else { $log.debug('Sound is disabled.'); diff --git a/www/misc/coin_received.ogg b/www/misc/coin_received.ogg new file mode 100644 index 0000000000000000000000000000000000000000..3f6b7baedd71cb8867ffb3f07321611a9d7b2cab GIT binary patch literal 6751 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 Yx=0B4z=a=bU{jAmgf%mX1Ol1-U+67Xg8%>k literal 0 HcmV?d00001 From 51cfa75ffc34597a7af9f5e554588b66789aafd4 Mon Sep 17 00:00:00 2001 From: Sebastiaan Pasma Date: Mon, 18 Jun 2018 12:44:31 +0200 Subject: [PATCH 4/4] Use the whenAvailable which is called onBeforeEnter so that changed configuration is also reloaded onEnter --- src/js/controllers/tab-receive.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/js/controllers/tab-receive.js b/src/js/controllers/tab-receive.js index 399f196d1..32cd5281a 100644 --- a/src/js/controllers/tab-receive.js +++ b/src/js/controllers/tab-receive.js @@ -12,7 +12,8 @@ angular.module('copayApp.controllers').controller('tabReceiveController', functi var currentAddressSocket = {}; var paymentSubscriptionObj = { op:"addr_sub" } - var config = configService.getSync(); + + var config; var soundLoaded = false; var nativeAudioAvailable = (window.plugins && window.plugins.NativeAudio); @@ -243,8 +244,9 @@ angular.module('copayApp.controllers').controller('tabReceiveController', functi }) ]; - configService.whenAvailable(function(config) { - $scope.displayBalanceAsFiat = config.wallet.settings.priceDisplay === 'fiat'; + configService.whenAvailable(function(_config) { + $scope.displayBalanceAsFiat = _config.wallet.settings.priceDisplay === 'fiat'; + config = _config; }); });