aboutsummaryrefslogtreecommitdiffstats
path: root/ui/app/actions.js
diff options
context:
space:
mode:
authorkumavis <kumavis@users.noreply.github.com>2018-08-17 23:56:34 +0800
committerGitHub <noreply@github.com>2018-08-17 23:56:34 +0800
commit9268c4ed548be9d44a47757a36a3f210f8de3787 (patch)
tree63c7260de8abdf4b77d9cc6369b2d3dd4df7bd33 /ui/app/actions.js
parentef7e638dda63a715c796c210dadbe82430537b6a (diff)
parentd636cc35523f52f630162a1b342b5267b6cd246e (diff)
downloadtangerine-wallet-browser-9268c4ed548be9d44a47757a36a3f210f8de3787.tar
tangerine-wallet-browser-9268c4ed548be9d44a47757a36a3f210f8de3787.tar.gz
tangerine-wallet-browser-9268c4ed548be9d44a47757a36a3f210f8de3787.tar.bz2
tangerine-wallet-browser-9268c4ed548be9d44a47757a36a3f210f8de3787.tar.lz
tangerine-wallet-browser-9268c4ed548be9d44a47757a36a3f210f8de3787.tar.xz
tangerine-wallet-browser-9268c4ed548be9d44a47757a36a3f210f8de3787.tar.zst
tangerine-wallet-browser-9268c4ed548be9d44a47757a36a3f210f8de3787.zip
Merge pull request #5079 from MetaMask/v4.9.3
Version 4.9.3
Diffstat (limited to 'ui/app/actions.js')
-rw-r--r--ui/app/actions.js39
1 files changed, 38 insertions, 1 deletions
diff --git a/ui/app/actions.js b/ui/app/actions.js
index 9edb3511a..bd5d25327 100644
--- a/ui/app/actions.js
+++ b/ui/app/actions.js
@@ -12,6 +12,7 @@ const { fetchLocale } = require('../i18n-helper')
const log = require('loglevel')
const { ENVIRONMENT_TYPE_NOTIFICATION } = require('../../app/scripts/lib/enums')
const { hasUnconfirmedTransactions } = require('./helpers/confirm-transaction/util')
+const WebcamUtils = require('../lib/webcam-utils')
var actions = {
_setBackgroundConnection: _setBackgroundConnection,
@@ -33,6 +34,8 @@ var actions = {
ALERT_CLOSE: 'UI_ALERT_CLOSE',
showAlert: showAlert,
hideAlert: hideAlert,
+ QR_CODE_DETECTED: 'UI_QR_CODE_DETECTED',
+ qrCodeDetected,
// network dropdown open
NETWORK_DROPDOWN_OPEN: 'UI_NETWORK_DROPDOWN_OPEN',
NETWORK_DROPDOWN_CLOSE: 'UI_NETWORK_DROPDOWN_CLOSE',
@@ -125,7 +128,8 @@ var actions = {
SHOW_CONF_TX_PAGE: 'SHOW_CONF_TX_PAGE',
SHOW_CONF_MSG_PAGE: 'SHOW_CONF_MSG_PAGE',
SET_CURRENT_FIAT: 'SET_CURRENT_FIAT',
- setCurrentCurrency: setCurrentCurrency,
+ showQrScanner,
+ setCurrentCurrency,
setCurrentAccountTab,
// account detail screen
SHOW_SEND_PAGE: 'SHOW_SEND_PAGE',
@@ -723,6 +727,28 @@ function showInfoPage () {
}
}
+function showQrScanner (ROUTE) {
+ return (dispatch, getState) => {
+ return WebcamUtils.checkStatus()
+ .then(status => {
+ if (!status.environmentReady) {
+ // We need to switch to fullscreen mode to ask for permission
+ global.platform.openExtensionInBrowser(`${ROUTE}`, `scan=true`)
+ } else {
+ dispatch(actions.showModal({
+ name: 'QR_SCANNER',
+ }))
+ }
+ }).catch(e => {
+ dispatch(actions.showModal({
+ name: 'QR_SCANNER',
+ error: true,
+ errorType: e.type,
+ }))
+ })
+ }
+}
+
function setCurrentCurrency (currencyCode) {
return (dispatch) => {
dispatch(actions.showLoadingIndication())
@@ -1809,6 +1835,17 @@ function hideAlert () {
}
}
+/**
+ * This action will receive two types of values via qrCodeData
+ * an object with the following structure {type, values}
+ * or null (used to clear the previous value)
+ */
+function qrCodeDetected (qrCodeData) {
+ return {
+ type: actions.QR_CODE_DETECTED,
+ value: qrCodeData,
+ }
+}
function showLoadingIndication (message) {
return {