Ctrl+EnterとAlt+EnterでEvent.CHANGEが呼ばれない(解決編)

いろいろ調べた結果、これらは\rを入力しているのだが\rは「なぜか」文字列の足しになってないようだ。
というわけで\nを入力させればよい。

KEY_DOWNのハンドラに次のように書く。postareaはTextArea.

if (e.keyCode == Keyboard.ENTER && (e.controlKey == true || e.altKey == true)) {
	e.preventDefault();
	(postarea.getChildAt(2) as IUITextField).replaceSelectedText("\n");
	(postarea.getChildAt(2) as IUITextField).dispatchEvent(new Event(Event.CHANGE));
}

KeyboardEvent.controlKeyはたしかAIR限定だったような・・FlashだとctrlKeyかな?
( )内のえぐいObjectは、TextAreaの内部UITextFieldが直接とれないための代替方法。これ以外の方法はTextAreaを継承してUITextFieldを直接取り出せるようにするしかないと思う。
WindowsXP, Flex3.3.0.4852で確認。macじゃわからないなぁ・・

追記

macでも動くらしい。@mocono さんくす!