forked from enlightenment/efl
From: Mariusz Grzegorczyk <mariusz.g@samsung.com>
Subject: [E-devel] Ecore: Save proper evas engine buffer depth when _ecore_evas_resize is done I have found bug in ecore evas buffer. It is created by default as RGB32, and then it can be changed by ecore_evas_alpha_set function, but when resize is done it is always created as ARGB32. Patch in attachment checks in resize if alpha channel is set, and then set appropriate buffer depth. SVN revision: 71537
This commit is contained in:
parent
04daafab2b
commit
a3dd1169da
|
@ -692,3 +692,9 @@
|
||||||
2012-05-30 Cedric Bail
|
2012-05-30 Cedric Bail
|
||||||
|
|
||||||
* Force cancel of all running Ecore_Thread on shutdown.
|
* Force cancel of all running Ecore_Thread on shutdown.
|
||||||
|
|
||||||
|
2012-05-30 Mariusz Grzegorczyk
|
||||||
|
|
||||||
|
* Small fix to ecore-evas buffer engine on resize to make the
|
||||||
|
right kind of buffer cavas (ARGB32 vs RGB32).
|
||||||
|
|
||||||
|
|
|
@ -77,7 +77,10 @@ _ecore_evas_resize(Ecore_Evas *ee, int w, int h)
|
||||||
einfo = (Evas_Engine_Info_Buffer *)evas_engine_info_get(ee->evas);
|
einfo = (Evas_Engine_Info_Buffer *)evas_engine_info_get(ee->evas);
|
||||||
if (einfo)
|
if (einfo)
|
||||||
{
|
{
|
||||||
|
if (ee->alpha)
|
||||||
einfo->info.depth_type = EVAS_ENGINE_BUFFER_DEPTH_ARGB32;
|
einfo->info.depth_type = EVAS_ENGINE_BUFFER_DEPTH_ARGB32;
|
||||||
|
else
|
||||||
|
einfo->info.depth_type = EVAS_ENGINE_BUFFER_DEPTH_RGB32;
|
||||||
einfo->info.dest_buffer = ee->engine.buffer.pixels;
|
einfo->info.dest_buffer = ee->engine.buffer.pixels;
|
||||||
einfo->info.dest_buffer_row_bytes = stride;
|
einfo->info.dest_buffer_row_bytes = stride;
|
||||||
einfo->info.use_color_key = 0;
|
einfo->info.use_color_key = 0;
|
||||||
|
|
Loading…
Reference in New Issue