<div>Dear Ken:</div><div><span style="line-height: 1.5;">I see, </span>Thank you. </div><div>The “<span style="line-height: 1.5;">WM_PROTOCOLS” is a window manager spec.</span></div><div><br></div><div><sign signid="0"><div style="color:#909090;font-family:Arial Narrow;font-size:12px"><br><br><br><br>------------------</div><div style="font-size:14px;font-family:Verdana;color:#000;"><div>Regards,</div><div>Changhui Liu</div>
</div></sign></div><div><qzone></qzone></div><div> </div><div><includetail><div> </div><div> </div><div style="font:Verdana normal 14px;color:#000;"><div style="FONT-SIZE: 12px;FONT-FAMILY: Arial Narrow;padding:2px 0 2px 0;">------------------ Original ------------------</div><div style="FONT-SIZE: 12px;background:#efefef;padding:8px;"><div id="menu_sender"><b>From: </b> "Ken Thomases"<ken@codeweavers.com>;</div><div><b>Date: </b> Fri, Aug 28, 2015 02:38 AM</div><div><b>To: </b> "Changhui LIU"<liuchanghui@linuxdeepin.com>; <wbr></div><div><b>Cc: </b> "Alexandre Julliard"<julliard@winehq.org>; "wine-devel"<wine-devel@winehq.org>; <wbr></div><div><b>Subject: </b> Re: How X11 server generate XClientMessageEvent ?</div></div><div> </div>On Aug 27, 2015, at 10:05 AM, Changhui LIU <liuchanghui@linuxdeepin.com> wrote:<br>> <br>> I'm debugging a window set focus problem on Deepin Linux(www.deepin.org),<br>> I found some hints in handle_wm_protocols function of winex11.drv.<br>> But I feel very strange, I don't find where generate the XClientMessageEvent with event.data.l[0] =<br>> x11drv_atom(WM_TAKE_FOCUS) when I git grep WM_TAKE_FOCUS in wine source directory.<br>> <br>> How X11 server generate XClientMessageEvent with event.type = x11drv_atom(WM_PROTOCOLS) <br>> and event.data.l[0] = x11drv_atom(WM_TAKE_FOCUS) ?<br><br>Wine does not generate such messages.  In general, X clients are not supposed to.  The window manager generates them and Wine responds.<br><br>-Ken<br></div><!--<![endif]--></includetail></div>