diff options
author | Mike Blumenkrantz <zmike@osg.samsung.com> | 2014-08-05 10:16:16 -0400 |
---|---|---|
committer | Mike Blumenkrantz <zmike@osg.samsung.com> | 2014-08-13 10:22:53 -0400 |
commit | dc88ca695c59b3d53297dae190e50c1263fc1092 (patch) | |
tree | 9f83c9d57c66e15d630b6a8ed82a4d66d190e731 | |
parent | 6d680f4477bee9bce36a09a5841e860bc43b8d34 (diff) | |
download | enlightenment-dc88ca695c59b3d53297dae190e50c1263fc1092.tar.gz |
move wl client_resize protocol calls to idler
-rw-r--r-- | src/bin/e_comp_wl.c | 44 |
1 files changed, 22 insertions, 22 deletions
diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c index 867f45a306..661f8064a0 100644 --- a/src/bin/e_comp_wl.c +++ b/src/bin/e_comp_wl.c @@ -574,6 +574,21 @@ _e_comp_wl_surface_commit(E_Client *ec) } } + if (ec->comp_data) + { + if (ec->comp_data->pending.damage) + eina_tiler_area_size_set(ec->comp_data->pending.damage, + ec->client.w, ec->client.h); + + if (ec->comp_data->pending.input) + eina_tiler_area_size_set(ec->comp_data->pending.input, + ec->client.w, ec->client.h); + + if (ec->comp_data->pending.opaque) + eina_tiler_area_size_set(ec->comp_data->pending.opaque, + ec->client.w, ec->client.h); + } + if (ec->comp_data->pending.new_attach) { if (!ec->comp_data->pending.buffer) @@ -1037,6 +1052,13 @@ _e_comp_wl_client_idler(void *data EINA_UNUSED) { if ((e_object_is_del(E_OBJECT(ec))) || (!ec->comp_data)) continue; + if (ec->post_resize) + { + if ((ec->comp_data) && (ec->comp_data->shell.configure_send)) + ec->comp_data->shell.configure_send(ec->comp_data->shell.surface, + ec->comp->wl_comp_data->resize.edges, + ec->client.w, ec->client.h); + } ec->post_move = 0; ec->post_resize = 0; @@ -2178,7 +2200,6 @@ static void _e_comp_wl_evas_cb_resize(void *data, Evas_Object *obj EINA_UNUSED, void *event EINA_UNUSED) { E_Client *ec; - E_Comp_Data *cdata; if (!(ec = data)) return; if ((ec->shading) || (ec->shaded)) return; @@ -2187,27 +2208,6 @@ _e_comp_wl_evas_cb_resize(void *data, Evas_Object *obj EINA_UNUSED, void *event /* DBG("COMP_WL: Evas Resize: %d %d", ec->client.w, ec->client.h); */ - cdata = ec->comp->wl_comp_data; - - if ((ec->comp_data) && (ec->comp_data->shell.configure_send)) - ec->comp_data->shell.configure_send(ec->comp_data->shell.surface, - cdata->resize.edges, - ec->client.w, ec->client.h); - if (ec->comp_data) - { - if (ec->comp_data->pending.damage) - eina_tiler_area_size_set(ec->comp_data->pending.damage, - ec->client.w, ec->client.h); - - if (ec->comp_data->pending.input) - eina_tiler_area_size_set(ec->comp_data->pending.input, - ec->client.w, ec->client.h); - - if (ec->comp_data->pending.opaque) - eina_tiler_area_size_set(ec->comp_data->pending.opaque, - ec->client.w, ec->client.h); - } - ec->post_resize = EINA_TRUE; e_pixmap_dirty(ec->pixmap); e_comp_object_render_update_del(ec->frame); |