[Anthy-dev 762] Re: focus context, skk.scm

アーカイブの一覧に戻る

Etsushi Kato ekato****@ees*****
2004年 4月 14日 (水) 21:03:03 JST


補足です。

On Wed, Apr 14, 2004 at 03:41:00PM +0900,
Etsushi Kato <ekato****@ees*****> wrote:

> uim-0.3.4.2 になってから、 emacs 上で uim-xim を使うと、COMMIT_RAW 時
> のキー入力の表示に遅れが出るようになったと聞きました。
> 
> こちらで確かめてみたところ、Linux ではそのような症状は出ませんでしたが、
> Mac OS X では確かに問題が出ました。前回の変更で、イベントの処理の順番
> を変えるために send_sync_reply を先に持って来たことが原因だと思います。
> よく考えずパッチを送ってしまってすみません。
> 
> 一応の解決策として、すでに send_sync_reply してしまったという事で、
> COMMIT_RAW 時の send_key_event を push_packet ではなく 
> push_passive_packet で送るようにしてみました。 XIM を理解していないの
> で、全く間違ったことをしている心配はありますが…
> 
> 手元ではこれで動いているようですが、確かめて頂けると助かります。
> 
> --- uim-0.3.4.2.orig/xim/ximic.cpp	Sat Apr  3 02:41:32 2004
> +++ uim-0.3.4.2/xim/ximic.cpp	Wed Apr 14 14:50:24 2004
> @@ -438,7 +438,7 @@
>      t->pushC16(e->state);
>      t->pushC8(e->same_screen);
>      t->pushC8(0);
> -    mConn->push_packet(t);
> +    mConn->push_passive_packet(t);
>  }
>  
>  void XimIC::commit_string(const char *str)

書き忘れてしまいましたが、上のように COMMIT_RAW の時でも 
push_passive_packet を使うようにすると、前回 skk のためにした変更は必
要なくなりました。OnKeyEvent() をした後に send_sync_reply するような正
しい(?)動きでも、uim-xim で skk での確定と改行の順序は正しく保たれます
し、emacs での問題も起こらないようです。

-- 
Etsushi Kato
ekato****@ees*****



Anthy-dev メーリングリストの案内
アーカイブの一覧に戻る