e-comp-wl: Update compositor for new xdg shell protocol

Signed-off-by: Chris Michael <cp.michael@samsung.com>
This commit is contained in:
Chris Michael 2014-10-01 16:13:26 -04:00
parent 0071b63f06
commit c27ba8b8c2
1 changed files with 12 additions and 6 deletions

View File

@ -166,6 +166,7 @@ _e_comp_wl_surface_cb_attach(struct wl_client *client, struct wl_resource *resou
/* trap return of shm_buffer_get as it Can fail if the buffer is not /* trap return of shm_buffer_get as it Can fail if the buffer is not
* an shm buffer (ie: egl buffer) */ * an shm buffer (ie: egl buffer) */
if (!(b = wl_shm_buffer_get(buffer_resource))) return; if (!(b = wl_shm_buffer_get(buffer_resource))) return;
ec->comp_data->pending.w = wl_shm_buffer_get_width(b); ec->comp_data->pending.w = wl_shm_buffer_get_width(b);
ec->comp_data->pending.h = wl_shm_buffer_get_height(b); ec->comp_data->pending.h = wl_shm_buffer_get_height(b);
@ -1113,8 +1114,8 @@ _e_comp_wl_client_idler(void *data EINA_UNUSED)
{ {
if ((ec->comp_data) && (ec->comp_data->shell.configure_send)) if ((ec->comp_data) && (ec->comp_data->shell.configure_send))
ec->comp_data->shell.configure_send(ec->comp_data->shell.surface, ec->comp_data->shell.configure_send(ec->comp_data->shell.surface,
ec->comp->wl_comp_data->resize.edges, ec->comp->wl_comp_data->resize.edges,
ec->client.w, ec->client.h); ec->client.w, ec->client.h);
} }
ec->post_move = 0; ec->post_move = 0;
ec->post_resize = 0; ec->post_resize = 0;
@ -2033,6 +2034,7 @@ _e_comp_wl_evas_cb_mouse_up(void *data, Evas *evas EINA_UNUSED, Evas_Object *obj
break; break;
} }
ec->comp->wl_comp_data->resize.edges = 0;
ec->comp->wl_comp_data->resize.resource = NULL; ec->comp->wl_comp_data->resize.resource = NULL;
ec->comp->wl_comp_data->ptr.button = btn; ec->comp->wl_comp_data->ptr.button = btn;
@ -3092,10 +3094,12 @@ _e_comp_wl_cb_hook_client_focus_set(void *data EINA_UNUSED, E_Client *ec)
{ {
E_COMP_WL_PIXMAP_CHECK; E_COMP_WL_PIXMAP_CHECK;
if (ec->comp_data->shell.activate) /* send configure */
if (ec->comp_data->shell.configure_send)
{ {
if (ec->comp_data->shell.surface) if (ec->comp_data->shell.surface)
ec->comp_data->shell.activate(ec->comp_data->shell.surface); ec->comp_data->shell.configure_send(ec->comp_data->shell.surface,
0, 0, 0);
} }
/* FIXME: This seems COMPLETELY wrong !! (taken from e_comp_x) /* FIXME: This seems COMPLETELY wrong !! (taken from e_comp_x)
@ -3130,10 +3134,12 @@ _e_comp_wl_cb_hook_client_focus_unset(void *data EINA_UNUSED, E_Client *ec)
{ {
E_COMP_WL_PIXMAP_CHECK; E_COMP_WL_PIXMAP_CHECK;
if (ec->comp_data->shell.deactivate) /* send configure */
if (ec->comp_data->shell.configure_send)
{ {
if (ec->comp_data->shell.surface) if (ec->comp_data->shell.surface)
ec->comp_data->shell.deactivate(ec->comp_data->shell.surface); ec->comp_data->shell.configure_send(ec->comp_data->shell.surface,
0, 0, 0);
} }
_e_comp_wl_focus_check(ec->comp); _e_comp_wl_focus_check(ec->comp);