From: Boram P. <bor...@sa...> - 2015-03-27 07:42:02
|
Hi I'm testing wayland protocol with e. And I found a problem with e_comp_wl. As I mentioned on the subject of this email, all wl_surface and wl_subsurface's requests are ignored until e_client is created. Is it intended behavior or a bug? It looks bug to me. In case of weston, weston_surface surface request data. And, weston_surface is created when wl_compositor.create_surface is called. It makes possible all data is safe. However, because enlightenment creates e_clientat some points after create_surface is called, it loses client's requests. looks e_client is not proper position to save surface request data. Of course, enlightenment is different with weston. But I think losing(ignoring) client request is problem obviously, isn't it? In _e_comp_wl_compositor_cb_surface_create(), enlightenment creates e_pixmap. Can we move surface request data from E_Client(E_Comp_Wl_Client_Data, actually) to E_Pixmap? I'm attaching my patch to help you understand what I am thinking. This patch only considers wl_surface's requests as example. Maybe we need to consider wl_subsurface's requests and more things. And also, to help you understand this problem, you can find a bug by following below steps. 1) run enlightenment as wayland server. 2) run weston-flower 3) move cursor over weston-flower result: no cursor image shown. It disappears. If you move cursor outside of weston-flower and move it over weston-flower again, now you can see cursor. (There is another problem here, cursor doesn't move) Regards Boram |