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

Re: [MD:4574] Re: Meadow2.00 Beta1 + wl2.10.1 のtool-bar wl-summary-next 連打で落ちる



>>>>> [meadow-develop : No.4575] にて
>>>>> "himi" = MIYASHITA Hisashi(宮下 尚:HIMI) <himi@xxxxxxxxxxx> さんは書きました:
himi> > (1) mouse face 更新処理の非同期化
himi> > (2) tooltip  更新処理の非同期化
himi> > (3) toolbar をクリックした時の処理の非同期化
himi> >     (mw32_handle_tool_bar_click@xxxxxxxxxx)
snip
himi> どうも、(3)は、みたところ、普通には、main threadに移すことは
himi> 無理みたいですねぇ。^^;;;

ああ、やっぱり。^^;;

himi> まあ、そうすると、show_mouse_face()の部分だけWindows
himi> Messageを使って委譲するのが良いかな。

よく理解できないんだけど、
mw32_handle_tool_bar_click()
-> mw32_tool_bar_item()
-> tool_bar_item_info()
-> Fget_text_property()
の部分をメインスレッドに移動しなければいけないのでは?

mw32_message_loop() 中のマウスのボタンが押されたときの処理を、ま
るごとメインスレッドに移動するのであれば理解できるのですが。

himi> > それから、不要となった W32_BLOCK_INPUT/W32_UNBLOCK_INPUT を取り除
himi> > く必要がありますが、まだやってません。
himi> > 中身を精査せずに、すべて消しちゃっていいのかしら?

himi> もちろんそんなことをやってはいけませんし、ほとんどのものは、
himi> この同期化の後でも、消すことが出来ないと思います。

了解。

W32_BLOCK_INPUT/W32_UNBLOCK_INPUT のほとんどの部分は、mouse face
のためにあるのかと思ってたのですが、そうではなかったですね。

--
三好 雅則 mailto:miyoshi@xxxxxxxxxxxxxxxx
          http://www.boreas.dti.ne.jp/~miyoshi/ (Meadow2 のページ始めました)