diff --git a/packages/qr-code-scanner/src/qr-code-scanner.js b/packages/qr-code-scanner/src/qr-code-scanner.js index 5308886f9d54bd72efd9d79c957401e156b3a323..a13e8ee9b1568580dee197206d7fa45c66cbd1ba 100644 --- a/packages/qr-code-scanner/src/qr-code-scanner.js +++ b/packages/qr-code-scanner/src/qr-code-scanner.js @@ -164,13 +164,13 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) { } const that = this; - let constraint = null; + let constraint = { video: { deviceId: this._('#videoSource').val }}; if ( (this._('#videoSource').val === 'environment') || (this._('#videoSource').val === 'user') ) { - constraint = {facingMode: {exact: ("environment")}}; + constraint = { video: {facingMode: "environment"}}; } - navigator.mediaDevices.getUserMedia({ video: { deviceId: this._('#videoSource').val, constraint}}).then(function(stream) { + navigator.mediaDevices.getUserMedia(constraint).then(function(stream) { video.srcObject = stream; video.setAttribute("playsinline", true); // required to tell iOS safari we don't want fullscreen video.play();