diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c index a0f3a0c32..30d85a85d 100644 --- a/src/bin/e_comp_wl.c +++ b/src/bin/e_comp_wl.c @@ -1464,25 +1464,6 @@ _e_comp_wl_subsurface_commit_from_cache(E_Client *ec) e_object_ref(E_OBJECT(ec)); } - /* check for any pending attachments */ - if (sdata->cached.new_attach) - { - int x, y, nw, nh; - - nw = ec->client.w; - nh = ec->client.h; - if (nw == 0) nw = cdata->pending.w; - if (nh == 0) nh = cdata->pending.h; - if (ec->changes.pos) - e_comp_object_frame_xy_adjust(ec->frame, ec->x, ec->y, &x, &y); - else - x = ec->client.x, y = ec->client.y; - - /* if the client has a shell configure, call it */ - if ((cdata->shell.surface) && (cdata->shell.configure)) - cdata->shell.configure(cdata->shell.surface, x, y, nw, nh); - } - /* check if we need to map this surface */ if (sdata->cached.buffer) { @@ -1505,6 +1486,25 @@ _e_comp_wl_subsurface_commit_from_cache(E_Client *ec) } } + /* check for any pending attachments */ + if (sdata->cached.new_attach) + { + int x, y, nw, nh; + + nw = ec->client.w; + nh = ec->client.h; + if (nw == 0) nw = cdata->pending.w; + if (nh == 0) nh = cdata->pending.h; + if (ec->changes.pos) + e_comp_object_frame_xy_adjust(ec->frame, ec->x, ec->y, &x, &y); + else + x = ec->client.x, y = ec->client.y; + + /* if the client has a shell configure, call it */ + if ((cdata->shell.surface) && (cdata->shell.configure)) + cdata->shell.configure(cdata->shell.surface, x, y, nw, nh); + } + if (!cdata->mapped) { DBG("\tSurface Not Mapped. Skip to Unmapped"); @@ -2523,25 +2523,6 @@ e_comp_wl_surface_commit(E_Client *ec) e_object_ref(E_OBJECT(ec)); } - /* check for any pending attachments */ - if (ec->comp_data->pending.new_attach) - { - int x, y, nw, nh; - - e_pixmap_size_get(ec->pixmap, &nw, &nh); - if (ec->changes.pos) - e_comp_object_frame_xy_adjust(ec->frame, ec->x, ec->y, &x, &y); - else - x = ec->client.x, y = ec->client.y; - - /* if the client has a shell configure, call it */ - if ((ec->comp_data->shell.surface) && - (ec->comp_data->shell.configure)) - ec->comp_data->shell.configure(ec->comp_data->shell.surface, x, y, nw, nh); - else - e_client_util_move_resize_without_frame(ec, x, y, nw, nh); - } - /* check if we need to map this surface */ if (ec->comp_data->pending.buffer) { @@ -2574,6 +2555,24 @@ e_comp_wl_surface_commit(E_Client *ec) } } + /* check for any pending attachments */ + if (ec->comp_data->pending.new_attach) + { + int x, y, nw, nh; + + e_pixmap_size_get(ec->pixmap, &nw, &nh); + if (ec->changes.pos) + e_comp_object_frame_xy_adjust(ec->frame, ec->x, ec->y, &x, &y); + else + x = ec->client.x, y = ec->client.y; + + /* if the client has a shell configure, call it */ + if ((ec->comp_data->shell.surface) && (ec->comp_data->shell.configure)) + ec->comp_data->shell.configure(ec->comp_data->shell.surface, x, y, nw, nh); + else + e_client_util_move_resize_without_frame(ec, x, y, nw, nh); + } + if (!ec->comp_data->mapped) { DBG("\tSurface Not Mapped. Skip to Unmapped");