Beanstandungen der Prüfung beheben (Scan-Ansicht, Overlay, Styles)
- .stacks-Buttons auf min-height 56px angehoben, Leiste auf 76px vergrößert, damit die Buttons vollständig hineinpassen - Datei-Input bleibt dauerhaft hidden statt nach dem ersten Öffnen sichtbar zu bleiben und den Kamerabereich zu verkleinern - Rückgängig-Knopf erhält aria-label für Screenreader - showResult entfernt eine noch sichtbare vorherige Rückmeldung und deren Zeitgeber, bevor die neue eingeblendet wird Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
+2
-2
@@ -38,13 +38,13 @@ body {
|
||||
padding: 10px 12px;
|
||||
overflow-x: auto;
|
||||
border-top: 1px solid var(--line);
|
||||
min-height: 56px;
|
||||
min-height: 76px;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.stacks button {
|
||||
flex: none;
|
||||
min-height: 44px;
|
||||
min-height: 56px;
|
||||
padding: 0 14px;
|
||||
border: 1px solid var(--line);
|
||||
border-radius: 8px;
|
||||
|
||||
@@ -8,11 +8,21 @@ function beschreibung(spec) {
|
||||
return teile.join(' ') || 'ohne Angaben';
|
||||
}
|
||||
|
||||
/** Haelt pro Root die aktuell sichtbare Rueckmeldung samt Zeitgeber fest. */
|
||||
const aktuelleRueckmeldung = new WeakMap();
|
||||
|
||||
/**
|
||||
* Blendet die Treffer-Rueckmeldung ein und nach kurzer Zeit wieder aus.
|
||||
* Gruen bei Barcode, gelb bei OCR. Keine Eingabe noetig.
|
||||
*/
|
||||
export function showResult(root, { stackId, spec, confidence }, dauerMs = 1200) {
|
||||
const vorherige = aktuelleRueckmeldung.get(root);
|
||||
if (vorherige) {
|
||||
clearTimeout(vorherige.timer);
|
||||
vorherige.overlay.remove();
|
||||
aktuelleRueckmeldung.delete(root);
|
||||
}
|
||||
|
||||
const overlay = document.createElement('div');
|
||||
overlay.className = `overlay ${confidence}`;
|
||||
overlay.innerHTML = `
|
||||
@@ -25,9 +35,11 @@ export function showResult(root, { stackId, spec, confidence }, dauerMs = 1200)
|
||||
root.appendChild(overlay);
|
||||
|
||||
return new Promise((resolve) => {
|
||||
setTimeout(() => {
|
||||
const timer = setTimeout(() => {
|
||||
overlay.remove();
|
||||
aktuelleRueckmeldung.delete(root);
|
||||
resolve();
|
||||
}, dauerMs);
|
||||
aktuelleRueckmeldung.set(root, { overlay, timer });
|
||||
});
|
||||
}
|
||||
|
||||
+1
-2
@@ -13,7 +13,7 @@ export function renderScanView(root, { onCapture, onUndo, onOpenList, onPickFile
|
||||
<div class="stacks" id="stacks"></div>
|
||||
<div class="last">
|
||||
<span id="last">Noch nichts erfasst</span>
|
||||
<button class="action secondary" id="undo" style="min-width:64px">↶</button>
|
||||
<button class="action secondary" id="undo" style="min-width:64px" aria-label="Letzten Scan zurücknehmen">↶</button>
|
||||
</div>
|
||||
<input type="file" id="file" accept="image/*" hidden />
|
||||
`;
|
||||
@@ -59,7 +59,6 @@ export function renderScanView(root, { onCapture, onUndo, onOpenList, onPickFile
|
||||
},
|
||||
|
||||
openFilePicker() {
|
||||
fileEl.hidden = false;
|
||||
fileEl.click();
|
||||
},
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user