evas: Evas_Wayland_Egl - change size of common gl context after egl make current...
authorGwanglim Lee <gl77.lee@samsung.com>
Thu, 21 Aug 2014 09:01:48 +0000 (11:01 +0200)
committerCedric BAIL <cedric@osg.samsung.com>
Thu, 21 Aug 2014 10:04:53 +0000 (12:04 +0200)
Summary:
This fixes broken rendering of the main surface when new surface is created.
Rendering on main surface can be broken due to invalid size of common gl context.
Since common gl context is shared between surfaces, if new surface has been changed
size of common gl context, then rendering on main surface can be broken.
In order to fix problem, engine has to change size of common gl context after egl
make current according to size of current Outbuf.
@fix

Test Plan:
run elementary_test with wayland_egl engine under wayland and click any
button to create new surface. watch the main surface of elementary_test.

Reviewers: devilhorns, raster, stefan_schmidt, cedric

Reviewed By: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1346

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
src/modules/evas/engines/wayland_egl/evas_wl_main.c

index 3c6d29e..a7dfff8 100644 (file)
@@ -257,7 +257,11 @@ eng_window_use(Outbuf *gw)
           }
      }
 
-   if (gw) glsym_evas_gl_common_context_use(gw->gl_context);
+   if (gw)
+     {
+        glsym_evas_gl_common_context_use(gw->gl_context);
+        glsym_evas_gl_common_context_resize(gw->gl_context, gw->w, gw->h, gw->rot);
+     }
 }
 
 void