バックグラウンド:
Web インターフェイスと互換性のある基本的な HTML/リッチ テキスト編集をアプリケーションに追加するために、swing ベースの webrenderer ブラウザー内に CKEditor を埋め込もうとしています。Webrenderer は、swing コンポーネントのように機能し、CKEditor を起動するための呼び出しを含む単純な HTML ページをロードします。
これは正常に機能し、アプリケーション内で編集された HTML テキストを設定/取得できます。
問題:
私が見ている問題は、ENTER キーが押されるたびに、まるで 2 回処理されたかのようになることです。たとえば、ENTER キーを押すたびに、編集されたテキストに 2 行が生成されます。または、箇条書きリストを入力してから ENTER を押すと、リストが終了し、テキスト エントリが下の新しい行から開始されます (通常のブラウザで ENTER を 2 回押した場合と同じ動作)。
CKEditor をソース モードに切り替えるか、基本的な HTML テキストエリアを使用すると、ENTER は正常に動作します。また、単純なエディター ページを直接 firefox にロードすると、正常に動作します。
CKEditor と swing ブラウザーの間で何らかのやり取りが行われていると思います。(私は最近、ブラウザーが JDialog 内でデフォルト ボタンを使用して使用されている場合、ENTER キーを押すとデフォルト ボタンがアクティブになることに気付きました。そのため、Swing と Webrenderer の間で ENTER の処理がどこにあるのかわかりません)
ありがとう、ロブ。