Evas GL: Fix glClear(0,0,0,0) with DR and COPY
authorJean-Philippe Andre <jp.andre@samsung.com>
Fri, 10 Jul 2015 03:37:27 +0000 (12:37 +0900)
committerJean-Philippe Andre <jp.andre@samsung.com>
Thu, 16 Jul 2015 10:50:38 +0000 (19:50 +0900)
commit9db20800a2c0e517977226cd8f23d9ac49c6547a
tree567e1f2c3d182b7ea47baf006dbce8052cb580c5
parentb439fafa17e000986dce027a0f6cf59cf2c0d644
Evas GL: Fix glClear(0,0,0,0) with DR and COPY

When glClear is called in direct rendering move (DR), we usually
have to skip the call altogether because clearing out transparency
would erase the pixels in the evas backbuffer. This means Evas
would not be able to blend an RGBA GLView on top of other objects.

But COPY mode should allow Evas GL to poke holes in a window
backbuffer.

Thanks @spacegrapher for the review :)

NOTE: Elm GLView also needs to pass the render op to its Evas.Image.

@fix
src/modules/evas/engines/gl_common/evas_gl_api.c
src/modules/evas/engines/gl_common/evas_gl_core.c
src/modules/evas/engines/gl_common/evas_gl_core.h
src/modules/evas/engines/gl_common/evas_gl_core_private.h
src/modules/evas/engines/gl_generic/evas_engine.c