v2.2 - Small improvement Interface change
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
/* ALFRED_STT_INLINE_GLASS_V1 — deplacement de la transcription existante, sans dupliquer les elements. */
|
||||
(() => {
|
||||
'use strict';
|
||||
function mount() {
|
||||
const hero = document.querySelector('#alfredMainV1 .av-voice-hero');
|
||||
const panel = document.querySelector('.transcript-panel');
|
||||
if (!hero || !panel) return false;
|
||||
if (panel.classList.contains('av-stt-inline')) return true;
|
||||
|
||||
// alfred.js et les autres extensions gardent les memes noeuds et les memes IDs.
|
||||
// Les mises a jour Vosk/Whisper restent donc fonctionnelles sans nouveau listener.
|
||||
hero.insertBefore(panel, hero.firstChild);
|
||||
panel.classList.add('av-stt-inline');
|
||||
hero.classList.add('av-stt-inline-on');
|
||||
panel.setAttribute('aria-label', 'Transcription vocale en direct');
|
||||
|
||||
// Taille du canvas recalculee par le gestionnaire actuel en cas de resize.
|
||||
window.requestAnimationFrame(() => window.dispatchEvent(new Event('resize')));
|
||||
return true;
|
||||
}
|
||||
if (!mount()) {
|
||||
// Les scripts Glass sont generalement synchrones, mais on gere un chargement differe.
|
||||
let count = 0;
|
||||
const interval = window.setInterval(() => {
|
||||
if (mount() || ++count >= 16) window.clearInterval(interval);
|
||||
}, 300);
|
||||
}
|
||||
})();
|
||||
Reference in New Issue
Block a user