diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/caption/views/TextTab.as b/bigbluebutton-client/src/org/bigbluebutton/modules/caption/views/TextTab.as index 93771cf5aa32b44260bd4728438ad1c6a04ec453..b0509aea8fc86935eda93f42dc1d17f6b16bbda4 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/caption/views/TextTab.as +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/caption/views/TextTab.as @@ -210,7 +210,10 @@ package org.bigbluebutton.modules.caption.views { if (e.text.length == 1 && inputArea.selectionBeginIndex == inputArea.selectionEndIndex) { _checkForOverwrite = true; _lastTextInput = e.text; - _lastTextLength = inputArea.text.length; + _lastTextLength = inputArea.getInternalTextField().text.length; // ****** length is the problem ******* + //trace("input text: '"+inputArea.text+"' char0 " + inputArea.text.charCodeAt(0)+", char1 "+inputArea.text.charCodeAt(1)); + //trace("** input len: "+ inputArea.text.length + ", trans len: " + currentTranscript.transcript.length + " ***"); + //trace("** internal len: "+ inputArea.getInternalTextField().text.length + " **"); } else { respondToTextChange(e.text, inputArea.selectionBeginIndex, inputArea.selectionEndIndex); } @@ -218,10 +221,10 @@ package org.bigbluebutton.modules.caption.views { private function onTranscriptTextChange(e:Event):void { //trace("transcript change: " + inputArea.text); - + //trace("** input len: "+ inputArea.text.length + ", trans len: " + currentTranscript.transcript.length + " ***"); if (_checkForOverwrite) { _checkForOverwrite = false; - if (inputArea.text.length > _lastTextLength) { // not an overwrite + if (inputArea.getInternalTextField().text.length > _lastTextLength) { // not an overwrite respondToTextChange(_lastTextInput, inputArea.selectionBeginIndex-1, inputArea.selectionEndIndex-1); } else { // an overwrite respondToTextChange(_lastTextInput, inputArea.selectionBeginIndex-1, inputArea.selectionEndIndex); @@ -230,12 +233,12 @@ package org.bigbluebutton.modules.caption.views { _lastTextLength = 0; } else if (_checkForDeletePreviousWord) { _checkForDeletePreviousWord = false; - respondToTextChange("", _lastSelectionIndex-(_lastTextLength-inputArea.text.length), _lastSelectionIndex); + respondToTextChange("", _lastSelectionIndex-(_lastTextLength-inputArea.getInternalTextField().text.length), _lastSelectionIndex); _lastSelectionIndex = 0; _lastTextLength = 0; } else if (_checkForDeleteNextWord) { _checkForDeleteNextWord = false; - respondToTextChange("", _lastSelectionIndex, _lastSelectionIndex+(_lastTextLength-inputArea.text.length)); + respondToTextChange("", _lastSelectionIndex, _lastSelectionIndex+(_lastTextLength-inputArea.getInternalTextField().text.length)); _lastSelectionIndex = 0; _lastTextLength = 0; } @@ -253,7 +256,7 @@ package org.bigbluebutton.modules.caption.views { case Keyboard.BACKSPACE: if (e.ctrlKey || e.altKey) { _lastSelectionIndex = ei; - _lastTextLength = inputArea.text.length; + _lastTextLength = inputArea.getInternalTextField().text.length; _checkForDeletePreviousWord = true; return; } @@ -268,7 +271,7 @@ package org.bigbluebutton.modules.caption.views { case Keyboard.DELETE: if (e.ctrlKey || e.altKey) { _lastSelectionIndex = si; - _lastTextLength = inputArea.text.length; + _lastTextLength = inputArea.getInternalTextField().text.length; _checkForDeleteNextWord = true; return; }