Mac OSXでは以前からできないのだけど、今回はWindows Vista, XP + Flash Player 10(Astro)環境で発生。
再現手順:
1. TextInputを作成する。
2. TextInputのプロパティをalphaに1未満の値を設定する。
3. コンパイルオプションに"-target-player=10.0.0"を付けてコンパイルする。
4. Windows環境のFlash Player 10.0.12上で実行し、TextInputに対して日本語入力モードに切り替えて入力する。
再現プログラム:
http://f.air-life.net/samples/flex/AlphaIMETest/
再現用コード:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical">
<mx:TextInput/>
<mx:TextInput alpha="0.99"/>
<mx:VBox alpha="0.99">
<mx:TextInput/>
</mx:VBox>
</mx:Application>
再現する条件としては、テキストコントロール、またはその親コンテナのプロパティalphaに1未満の値、例えば0.99を設定し、Flash Player 10以降をターゲットとしてビルドすることのようだ。
Flash Playerのバージョンは、Flex Builder上ではプロジェクトのプロパティ - Flexコンパイラ - HTMLラッパー から設定する。
なお、Flash Playerのバージョンに10以降を指定するにはFlex SDK 3.2以降が必要になる。
Adobeのバグデータベースを探したけど該当の報告はまだないようなので挙げておいた。
(もし既知バグだったらごめんなさい)
Inline input not supported in Flex text components when compiling for Flash Player 10
http://bugs.adobe.com/jira/browse/SDK-18444
バグデータベースを探していたところ似たような現象がDataGridでも発生するようで報告が挙がっていた。
(再現手順など似ていたので一部コピ)
DataGrid:内部データ編集で確定前の日本語入力が画面左上に表示される
DataGrid:When the internal data is being edited, input text in Japanese is shown in the top-left screen, if it's before being confirmed.
http://bugs.adobe.com/jira/browse/SDK-18317
このバグは入力確定すれば、しっかりとテキストコントロールに入力されるから致命的ではないのだろうけど痛い・・・。
2 件のコメント:
Flash Player 10.1 ベータで直ってました。
IE8で確認。
教えていただきありがとーございます。
日本語入力周りはFlash Player 10でデグレがあったりと残念なことがあったけど、10.1で改善されるわけですね。
コメントを投稿