[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]

Re: [MD:7058] Patch for new hdc handling.



>>>>> [meadow-develop : No.7058] にて
>>>>> 堀口さんは書きました:
> 堀口です. 今までの話を元に整理しなおしてみました. r3987 に対する差
> 分になっています.

>  すみませんが, 問題なく動くかどうか確認していただけないでしょうか.

変更量が非常に多く、確認は困難です。

一度に変更するのではなくて、いくつかに分割して少しずつインクリメン
タルに変更することはできませんか?

それともこれらの変更はアトミックなもので分割不可能でしょうか?


それから、以下のような Emacs 本体への修正はできるだけ避けてくださ
い。

まずは、Redisplay Interface (mw32_redisplay_interface@xxxxxxxxx)を
使って mw32*.c に押し込めることができないか検討してください。


> Index: dispnew.c
> ===================================================================
> --- dispnew.c	(revision 3987)
> +++ dispnew.c	(working copy)
> @@ -3847,6 +3847,7 @@
>    struct window *root_window = XWINDOW (f->root_window);
 
>  #ifdef MEADOW
> +  GET_FRAME_HDC (f);
>    W32_BLOCK_INPUT;
>  #endif
>    if (FRAME_WINDOW_P (f))
> @@ -3928,6 +3929,7 @@
>      }
>  #ifdef MEADOW
>    W32_UNBLOCK_INPUT;
> +  RELEASE_FRAME_HDC (f);
>  #endif
 
>    /* Reset flags indicating that a window should be updated.  */

P.S.
dispnew.c, xdisp.c に多数残っている #ifdef MEADOW 〜 #endif は、で
きるだけ取り除いてしまいたいものです。

Meadow 独自の caret サポートの実装を捨てて、NTEmacs の実装をそのま
ま使うようにすればかなりコードを整理できると考えています。

--
三好 雅則 http://miyoshi.meadowy.org/