From 4bda8504eb8d0c1dc6a8b570500655eb9b3ec193 Mon Sep 17 00:00:00 2001 From: Christoph Reiter <reiter.christoph@gmail.com> Date: Tue, 20 Oct 2020 13:53:47 +0200 Subject: [PATCH] checkSupport: return the support status instead of mutating the instance --- packages/qr-code-scanner/src/qr-code-scanner.js | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/qr-code-scanner/src/qr-code-scanner.js b/packages/qr-code-scanner/src/qr-code-scanner.js index d58b0d41..dae42964 100644 --- a/packages/qr-code-scanner/src/qr-code-scanner.js +++ b/packages/qr-code-scanner/src/qr-code-scanner.js @@ -65,7 +65,7 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) { i18n.changeLanguage(this.lang); this.updateComplete.then(async ()=>{ - await this.checkSupport(); + this.notSupported = (!await this.checkSupport()); if (!this.stopScan) { this.qrCodeScannerInit(); } @@ -99,8 +99,7 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) { devices = await navigator.mediaDevices.enumerateDevices() } catch (err) { console.log(err.name + ": " + err.message); - this.notSupported = true; - return; + return false; } for (let device of devices) { @@ -114,10 +113,6 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) { } } } - - if (devices_map.size < 1) { - this.notSupported = true; - } for (let [id, label] of devices_map) { let opt = document.createElement("option"); opt.value = id; @@ -129,8 +124,13 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) { } else { this.activeCamera = devices_map.size ? Array.from(devices_map)[0][0] : ''; } + + if (devices_map.size < 1) { + return false; + } + return true; } else { - this.notSupported = true; + return false; } } -- GitLab