On Tue, 3 Dec 2013 20:36:23 -0500 Michael Blumenkrantz <michael.blumenkra...@gmail.com> wrote:
> On Tue, 3 Dec 2013 23:32:13 -0200 > Iván Briano <sachi...@gmail.com> wrote: > > > Building with EGL and GL-ES, Mesa 9.2.4 on Intel video, > > I’m getting windows vertically inverted. Works if I revert > > this commit or go back to software compositing. > > > > On Nov 29, 2013, at 8:08, Stanislav Vorobiov <s.vorob...@samsung.com> wrote: > > > > > raster pushed a commit to branch master. > > > > > > http://git.enlightenment.org/core/efl.git/commit/?id=9e3b778acb851671c2f24454b80bdeafc20d1c65 > > > > > > commit 9e3b778acb851671c2f24454b80bdeafc20d1c65 > > > Author: Stanislav Vorobiov <s.vorob...@samsung.com> > > > Date: Thu Nov 28 18:18:16 2013 +0900 > > > > > > evas - fix gl egl textrue from pixmap support y invert query extension > > > > > > Instead of hardcoding yinvert=1 we should query for > > > EGL_NOK_texture_from_pixmap extension and if it's present > > > use EGL_Y_INVERTED_NOK value > > > --- > > > src/modules/evas/engines/gl_x11/evas_engine.c | 20 +++++++++++++++++++- > > > 1 file changed, 19 insertions(+), 1 deletion(-) > > > > > > diff --git a/src/modules/evas/engines/gl_x11/evas_engine.c > > > b/src/modules/evas/engines/gl_x11/evas_engine.c > > > index d25610f..4e5c22c 100644 > > > --- a/src/modules/evas/engines/gl_x11/evas_engine.c > > > +++ b/src/modules/evas/engines/gl_x11/evas_engine.c > > > @@ -71,6 +71,7 @@ struct _Render_Engine > > > static int initted = 0; > > > static int gl_wins = 0; > > > static int extn_have_buffer_age = 1; > > > +static int extn_have_y_inverted = 0; > > > > > > typedef void (*_eng_fn) (void); > > > typedef _eng_fn (*glsym_func_eng_fn) (); > > > @@ -90,6 +91,9 @@ static Eina_Bool eng_preload_make_current(void *data, > > > void *doit); > > > #ifndef EGL_BUFFER_AGE_EXT > > > # define EGL_BUFFER_AGE_EXT 0x313d > > > #endif > > > +#ifndef EGL_Y_INVERTED_NOK > > > +# define EGL_Y_INVERTED_NOK 0x307F > > > +#endif > > > > > > _eng_fn (*glsym_eglGetProcAddress) (const char *a) = NULL; > > > void *(*glsym_eglCreateImage) (EGLDisplay a, EGLContext > > > b, EGLenum c, EGLClientBuffer d, const int *e) = NULL; > > > @@ -711,6 +715,10 @@ gl_extn_veto(Render_Engine *re) > > > { > > > extn_have_buffer_age = 0; > > > } > > > + if (strstr(str, "EGL_NOK_texture_from_pixmap")) > > > + { > > > + extn_have_y_inverted = 1; > > > + } > > > } > > > else > > > { > > > @@ -2225,6 +2233,7 @@ eng_image_native_set(void *data, void *image, void > > > *native) > > > EGLConfig egl_config; > > > int config_attrs[20]; > > > int num_config, i = 0; > > > + int yinvert = 1; > > my guess is this should be 0 disregard, I r teh incomptent > > > > > > > eina_hash_add(re->win->gl_context->shared->native_pm_hash, > > > &pmid, im); > > > > > > @@ -2250,6 +2259,15 @@ eng_image_native_set(void *data, void *image, void > > > *native) > > > if (!eglChooseConfig(re->win->egl_disp, config_attrs, > > > &egl_config, 1, &num_config)) > > > ERR("eglChooseConfig() failed for pixmap 0x%x, num_config > > > = %i", (unsigned int)pm, num_config); > > > + else > > > + { > > > + int val; > > > + if (extn_have_y_inverted && > > > + eglGetConfigAttrib(re->win->egl_disp, egl_config, > > > + EGL_Y_INVERTED_NOK, &val)) > > > + yinvert = val; > > > + } > > > + > > > memcpy(&(n->ns), ns, sizeof(Evas_Native_Surface)); > > > n->pixmap = pm; > > > n->visual = vis; > > > @@ -2263,7 +2281,7 @@ eng_image_native_set(void *data, void *image, void > > > *native) > > > ERR("Try eglCreateImage on EGL with no support"); > > > if (!n->egl_surface) > > > ERR("eglCreatePixmapSurface() for 0x%x failed", (unsigned > > > int)pm); > > > - im->native.yinvert = 1; > > > + im->native.yinvert = yinvert; > > > im->native.loose = 0; > > > im->native.data = n; > > > im->native.func.data = re; > > > > > > -- > > > > > > > > ------------------------------------------------------------------------------ Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631&iu=/4140/ostg.clktrk _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel