From: Cedric B. <ced...@fr...> - 2012-01-27 14:57:23
|
On Fri, Jan 27, 2012 at 2:51 PM, Gustavo Chaves <gl...@pr...> wrote: > Those last commits on e break it completely for people using it with x11_gl. Actually it just broke all composite, software included. Disabling wayland client doesn't solve the issue either. > On Thu, Jan 26, 2012 at 4:28 PM, Enlightenment SVN < > no-...@en...> wrote: > >> Log: >> E Comp (wayland): Fix a few more instances of >> ecore_x_composite_name_window_pixmap_get when building w/ wayland >> client support. >> >> >> >> Author: devilhorns >> Date: 2012-01-26 10:28:15 -0800 (Thu, 26 Jan 2012) >> New Revision: 67556 >> Trac: http://trac.enlightenment.org/e/changeset/67556 >> >> Modified: >> trunk/e/src/modules/comp/e_mod_comp.c >> >> Modified: trunk/e/src/modules/comp/e_mod_comp.c >> =================================================================== >> --- trunk/e/src/modules/comp/e_mod_comp.c 2012-01-26 18:24:00 UTC >> (rev 67555) >> +++ trunk/e/src/modules/comp/e_mod_comp.c 2012-01-26 18:28:15 UTC >> (rev 67556) >> @@ -598,6 +598,9 @@ >> if ((cw->c->gl) && (_comp_mod->conf->texture_from_pixmap) && >> (!cw->shaped) && (!cw->rects)) >> { >> +#ifdef HAVE_WAYLAND >> + DBG("DEBUG - pm now %x\n", e_mod_comp_wl_pixmap_get(cw->win)); >> +#endif >> DBG("DEBUG - pm now %x\n", >> ecore_x_composite_name_window_pixmap_get(cw->win)); >> evas_object_image_size_set(cw->obj, cw->pw, cw->ph); >> EINA_LIST_FOREACH(cw->obj_mirror, l, o) >> @@ -1114,7 +1117,12 @@ >> printf("^^^^ redirect2 %x\n", cw->win); >> printf(" redr\n"); >> ecore_x_composite_redirect_window(cw->win, >> ECORE_X_COMPOSITE_UPDATE_MANUAL); >> - cw->pixmap = >> ecore_x_composite_name_window_pixmap_get(cw->win); >> + >> +#ifdef HAVE_WAYLAND >> + cw->pixmap = e_mod_comp_wl_pixmap_get(cw->win); >> +#endif >> + if (!cw->pixmap) >> + cw->pixmap = >> ecore_x_composite_name_window_pixmap_get(cw->win); >> if (cw->pixmap) >> { >> ecore_x_pixmap_geometry_get(cw->pixmap, NULL, >> NULL, &(cw->pw), &(cw->ph)); >> @@ -2052,38 +2060,42 @@ >> cw->dmg_updates = 1; >> if ((!cw->redirected) || (!cw->pixmap)) >> { >> -// we redirect all subwindows anyway >> -// ecore_x_composite_redirect_window(cw->win, >> ECORE_X_COMPOSITE_UPDATE_MANUAL); >> - cw->pixmap = >> ecore_x_composite_name_window_pixmap_get(cw->win); >> - if (cw->pixmap) >> - { >> - ecore_x_pixmap_geometry_get(cw->pixmap, NULL, NULL, >> &(cw->pw), &(cw->ph)); >> - _e_mod_comp_win_ready_timeout_setup(cw); >> - } >> - else >> - { >> - cw->pw = 0; >> - cw->ph = 0; >> - } >> - if ((cw->pw <= 0) || (cw->ph <= 0)) >> - { >> - if (cw->pixmap) >> - { >> - ecore_x_pixmap_free(cw->pixmap); >> - cw->pixmap = 0; >> - } >> -// cw->show_ready = 0; // hmm maybe not needed? >> - } >> - cw->redirected = 1; >> - DBG(" [0x%x] up resize %ix%i\n", cw->win, cw->pw, cw->ph); >> - e_mod_comp_update_resize(cw->up, cw->pw, cw->ph); >> - e_mod_comp_update_add(cw->up, 0, 0, cw->pw, cw->ph); >> - evas_object_image_size_set(cw->obj, cw->pw, cw->ph); >> - EINA_LIST_FOREACH(cw->obj_mirror, l, o) >> - { >> - evas_object_image_size_set(o, cw->pw, cw->ph); >> - } >> - ecore_x_e_comp_pixmap_set(cw->win, cw->pixmap); >> + // we redirect all subwindows anyway >> + // ecore_x_composite_redirect_window(cw->win, >> ECORE_X_COMPOSITE_UPDATE_MANUAL); >> +#ifdef HAVE_WAYLAND >> + cw->pixmap = e_mod_comp_wl_pixmap_get(cw->win); >> +#endif >> + if (!cw->pixmap) >> + cw->pixmap = ecore_x_composite_name_window_pixmap_get(cw->win); >> + if (cw->pixmap) >> + { >> + ecore_x_pixmap_geometry_get(cw->pixmap, NULL, NULL, >> &(cw->pw), &(cw->ph)); >> + _e_mod_comp_win_ready_timeout_setup(cw); >> + } >> + else >> + { >> + cw->pw = 0; >> + cw->ph = 0; >> + } >> + if ((cw->pw <= 0) || (cw->ph <= 0)) >> + { >> + if (cw->pixmap) >> + { >> + ecore_x_pixmap_free(cw->pixmap); >> + cw->pixmap = 0; >> + } >> + // cw->show_ready = 0; // hmm maybe not needed? >> + } >> + cw->redirected = 1; >> + DBG(" [0x%x] up resize %ix%i\n", cw->win, cw->pw, cw->ph); >> + e_mod_comp_update_resize(cw->up, cw->pw, cw->ph); >> + e_mod_comp_update_add(cw->up, 0, 0, cw->pw, cw->ph); >> + evas_object_image_size_set(cw->obj, cw->pw, cw->ph); >> + EINA_LIST_FOREACH(cw->obj_mirror, l, o) >> + { >> + evas_object_image_size_set(o, cw->pw, cw->ph); >> + } >> + ecore_x_e_comp_pixmap_set(cw->win, cw->pixmap); >> } >> if ((cw->dmg_updates >= 1) && (cw->show_ready)) >> { >> >> >> >> ------------------------------------------------------------------------------ >> Keep Your Developer Skills Current with LearnDevNow! >> The most comprehensive online learning library for Microsoft developers >> is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, >> Metro Style Apps, more. Free future releases when you subscribe now! >> http://p.sf.net/sfu/learndevnow-d2d >> _______________________________________________ >> enlightenment-svn mailing list >> enl...@li... >> https://lists.sourceforge.net/lists/listinfo/enlightenment-svn >> > > > > -- > Gustavo Lima Chaves > Senior Developer > > ProFUSION embedded systems > > http://profusion.mobi > ------------------------------------------------------------------------------ > Try before you buy = See our experts in action! > The most comprehensive online learning library for Microsoft developers > is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, > Metro Style Apps, more. Free future releases when you subscribe now! > http://p.sf.net/sfu/learndevnow-dev2 > _______________________________________________ > enlightenment-devel mailing list > enl...@li... > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > -- Cedric BAIL |