From: Araki K. <j00...@ip...> - 2002-01-28 06:57:18
|
荒木です:-) Subject: [Mlterm-dev-ja] cut&paste from mlterm to kterm From: Hironori Sakamoto <hs...@mt...> Message-ID: <200...@ud...> Date: Mon, 28 Jan 2002 15:01:14 +0900 (JST) > mlterm (LANG=ja_JP.EUC, encoding=EUC-JP) から > kterm (LANG=ja_JP.EUC, encoding=EUC-JP) へ cut&paste すると、 > ISO-2022-JP で paste されてしまうのですが、 > 現バージョンの仕様なんでしょうか? 添付のパッチで直ると思います。 そういえば、大昔も同じ罠に嵌って、添付のパッチのような対処をしたような 記憶がありますが、その後、XA_STRING atom にしか対応していないアプリケー ションとの copy&paste に対応して云々といったことをしたときに、バグを埋め こんでしまったようです _o_ # kterm は、TEXT atom => XA_STRING atom の順でセレクション要求を出して、 # COMPOUND_TEXT atom では要求してくれないんですが、一方、この戻りが # COMPOUND_TEXT atom でなければ、CTEXT として処理してくれないんですよね。 # TEXT atom って特殊な意味があるんでしょうか ? では -- kiken j00...@ip... Index: ml_window.c =================================================================== RCS file: /home/ken/cvsroot/mlterm/src/ml_window.c,v retrieving revision 1.220 diff -u -r1.220 ml_window.c --- ml_window.c 2002/01/27 03:28:14 1.220 +++ ml_window.c 2002/01/28 06:48:02 @@ -2619,14 +2619,27 @@ } else if( event->type == SelectionRequest) { - if( event->xselectionrequest.target == XA_STRING || - event->xselectionrequest.target == xa_text || + if( event->xselectionrequest.target == XA_STRING) + { + if( win->xct_selection_requested) + { + (*win->xct_selection_requested)( win , &event->xselectionrequest , + event->xselectionrequest.target) ; + } + } + else if( event->xselectionrequest.target == xa_text || event->xselectionrequest.target == xa_compound_text) { if( win->xct_selection_requested) { + /* + * kterm requests selection with "TEXT" atom , but + * wants it to be sent back with "COMPOUND_TEXT" atom. + * why ? + */ + (*win->xct_selection_requested)( win , &event->xselectionrequest , - event->xselectionrequest.target) ; + xa_compound_text) ; } } else if( event->xselectionrequest.target == xa_utf8_string) |