From edd7f03e06b7831b8a94084a6f089ea62b7b17c2 Mon Sep 17 00:00:00 2001 From: Larry O Locke Date: Thu, 15 Oct 2020 20:39:33 -0500 Subject: [PATCH] Update speech-input.js Added support for applying speech-input to bootstrap-wysihtml5 --- speech-input.js | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/speech-input.js b/speech-input.js index 6714c15..ab24bac 100644 --- a/speech-input.js +++ b/speech-input.js @@ -22,6 +22,11 @@ // gather inputEl data var nextNode = inputEl.nextSibling; + var isHTMLEditor = false; + if (inputEl.classList.contains("textarea_editor")) { + isHTMLEditor = true; + console.log("speech-input applied to textarea_editor"); + } var parent = inputEl.parentNode; var inputRightBorder = parseInt(getComputedStyle(inputEl).borderRightWidth, 10); var buttonSize = 0.8 * (inputEl.dataset.buttonsize || inputEl.offsetHeight); @@ -36,6 +41,7 @@ if (!wrapper.classList.contains('si-wrapper')) { wrapper = document.createElement('div'); wrapper.classList.add('si-wrapper'); + wrapper.style.width = "100%" wrapper.appendChild(parent.removeChild(inputEl)); newWrapper = true; } @@ -133,8 +139,12 @@ transcript = !prefix || isSentence ? capitalize(transcript) : transcript; // append transcript to cached input value - inputEl.value = prefix + transcript; - + if (isHTMLEditor) { + $('#' + inputEl.id).data("wysihtml5").editor.setValue(prefix + transcript); + } + else { + inputEl.value = prefix + transcript; + } // set cursur and scroll to end inputEl.focus(); if (inputEl.tagName === 'INPUT') {