akenomainx4 commited on
Commit
0a3668e
·
verified ·
1 Parent(s): c1a8c01

fix: use div container for QRCode.js, show element before rendering

Browse files
Files changed (2) hide show
  1. public/app.js +5 -3
  2. public/index.html +1 -1
public/app.js CHANGED
@@ -227,8 +227,11 @@ async function fetchAndRenderQR() {
227
  const qrData = json.qrData;
228
  if (!qrData) continue;
229
 
230
- // Wipe any previous canvas children
231
- while (qrCanvas.firstChild) qrCanvas.removeChild(qrCanvas.firstChild);
 
 
 
232
 
233
  new QRCode(qrCanvas, {
234
  text: qrData,
@@ -239,7 +242,6 @@ async function fetchAndRenderQR() {
239
  correctLevel: QRCode.CorrectLevel.M,
240
  });
241
  qrRendered = true;
242
- setQrState('ready');
243
  return;
244
  } catch (err) {
245
  console.warn('fetchAndRenderQR attempt', i, err);
 
227
  const qrData = json.qrData;
228
  if (!qrData) continue;
229
 
230
+ // Show the container FIRST so the div has real dimensions when QRCode renders
231
+ setQrState('ready');
232
+
233
+ // Wipe any previous render
234
+ qrCanvas.innerHTML = '';
235
 
236
  new QRCode(qrCanvas, {
237
  text: qrData,
 
242
  correctLevel: QRCode.CorrectLevel.M,
243
  });
244
  qrRendered = true;
 
245
  return;
246
  } catch (err) {
247
  console.warn('fetchAndRenderQR attempt', i, err);
public/index.html CHANGED
@@ -93,7 +93,7 @@
93
  <!-- QR code rendered on canvas via qrcode.js -->
94
  <div id="qr-ready" class="qr-state hidden">
95
  <div class="qr-frame">
96
- <canvas id="qr-canvas"></canvas>
97
  </div>
98
  <p class="qr-hint">Point your Shellular app camera at the code above</p>
99
  </div>
 
93
  <!-- QR code rendered on canvas via qrcode.js -->
94
  <div id="qr-ready" class="qr-state hidden">
95
  <div class="qr-frame">
96
+ <div id="qr-canvas"></div>
97
  </div>
98
  <p class="qr-hint">Point your Shellular app camera at the code above</p>
99
  </div>