Skip to content
Snippets Groups Projects
Commit fe303ca5 authored by Reiter, Christoph's avatar Reiter, Christoph :snake:
Browse files

Don't modify the dom directly when changin the loading message.

parent 709f9ec9
No related branches found
No related tags found
No related merge requests found
Pipeline #13628 passed
...@@ -87,6 +87,7 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) { ...@@ -87,6 +87,7 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) {
this.clipMask = false; this.clipMask = false;
this._devices = new Map(); this._devices = new Map();
this._requestID = null; this._requestID = null;
this._loadingMessage = '';
} }
static get scopedElements() { static get scopedElements() {
...@@ -112,7 +113,8 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) { ...@@ -112,7 +113,8 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) {
activeCamera: { type: String, attribute: false }, activeCamera: { type: String, attribute: false },
sourceChanged: { type: Boolean, attribute: false }, sourceChanged: { type: Boolean, attribute: false },
clipMask: { type: Boolean, attribute: 'clip-mask' }, clipMask: { type: Boolean, attribute: 'clip-mask' },
_devices: { type: Map, attribute: false} _devices: { type: Map, attribute: false},
_loadingMessage: { type: String, attribute: false },
}; };
} }
...@@ -121,6 +123,7 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) { ...@@ -121,6 +123,7 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) {
i18n.changeLanguage(this.lang); i18n.changeLanguage(this.lang);
this.updateComplete.then(async ()=>{ this.updateComplete.then(async ()=>{
this._loadingMessage = i18n.t('no-camera-access');
let devices = await getVideoDevices(); let devices = await getVideoDevices();
this.activeCamera = getPrimaryDevice(devices) || ''; this.activeCamera = getPrimaryDevice(devices) || '';
this._devices = devices; this._devices = devices;
...@@ -155,7 +158,6 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) { ...@@ -155,7 +158,6 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) {
let canvasElement = this._("#canvas"); let canvasElement = this._("#canvas");
let canvas = canvasElement.getContext("2d"); let canvas = canvasElement.getContext("2d");
let loadingMessage = this._("#loadingMessage"); let loadingMessage = this._("#loadingMessage");
let loadingMessageInner = this._(".loadingMsg");
let outputContainer = this._("#output"); let outputContainer = this._("#output");
let outputMessage = this._("#outputMessage"); let outputMessage = this._("#outputMessage");
let outputData = this._("#outputData"); let outputData = this._("#outputData");
...@@ -230,7 +232,7 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) { ...@@ -230,7 +232,7 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) {
canvasElement.hidden = true; canvasElement.hidden = true;
outputContainer.hidden = true; outputContainer.hidden = true;
}); });
loadingMessageInner.innerText = i18n.t('no-camera-access'); that._loadingMessage = i18n.t('no-camera-access');
return; return;
} }
if (that.stopScan) { if (that.stopScan) {
...@@ -241,11 +243,11 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) { ...@@ -241,11 +243,11 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) {
canvasElement.hidden = true; canvasElement.hidden = true;
outputContainer.hidden = true; outputContainer.hidden = true;
}); });
loadingMessageInner.innerText = i18n.t('finished-scan'); that._loadingMessage = i18n.t('finished-scan');
return; return;
} }
that.loading = true; that.loading = true;
loadingMessageInner.innerText = i18n.t('loading-video'); that._loadingMessage = i18n.t('loading-video');
if (video.readyState === video.HAVE_ENOUGH_DATA) { if (video.readyState === video.HAVE_ENOUGH_DATA) {
loadingMessage.hidden = true; loadingMessage.hidden = true;
that.loading = false; that.loading = false;
...@@ -497,7 +499,7 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) { ...@@ -497,7 +499,7 @@ export class QrCodeScanner extends ScopedElementsMixin(DBPLitElement) {
<div id="loadingMessage" class=" ${classMap({hidden: !this.askPermission})}"> <div id="loadingMessage" class=" ${classMap({hidden: !this.askPermission})}">
<div class="wrapper-msg"> <div class="wrapper-msg">
<dbp-mini-spinner class="spinner ${classMap({hidden: !this.loading})}"></dbp-mini-spinner> <dbp-mini-spinner class="spinner ${classMap({hidden: !this.loading})}"></dbp-mini-spinner>
<div class="loadingMsg">${i18n.t('no-camera-access')}</div> <div class="loadingMsg">${this._loadingMessage}</div>
</div> </div>
</div> </div>
<canvas id="canvas" hidden class=""></canvas> <canvas id="canvas" hidden class=""></canvas>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment