Bug-org 1179082 ContentEventHandler::OnQueryCaretRect() should guess caret rect when the selection is collapsed but there is no caret frame
初回投稿日時: 2015年07月19日12時39分24秒
カテゴリ: Mozilla Core Mozilla42 バグ修正
SNS:
Tweet (list)
ContentEventHandler
はキャレットの矩形を取得する際に、検索されたオフセットが、現在のキャレット位置と一致している場合にはキャレットフレームのものを直接利用しようとします。そうしないと、例えば<img>
が存在していると、実際のキャレット位置とオフセット位置の文字の矩形から算出したキャレットの矩形が異なることがあるからです。しかし、Mac OS Xの辞書検索サービスのNSTextInputClient
プロトコルの「悪用」によりキャレットフレームが存在していないことがあり、その場合には矩形の取得に失敗していました。
今回の修正でキャレットフレームが存在していない場合には、そもそも実際のキャレットを利用しようとせず、オフセット位置の文字の矩形から推測するようにしています。