diff options
author | joonbum.ko <joonbum.ko@samsung.com> | 2016-11-28 17:29:58 +0900 |
---|---|---|
committer | Vasiliy Ulyanov <v.ulyanov@samsung.com> | 2016-11-28 13:47:32 +0300 |
commit | 99c6353c2c18dfb4337a7f990036688b91805617 (patch) | |
tree | d5b926e09f5e1a02822a937008b00fbabc435b74 | |
parent | cd3113a3e510eee7436fdd10aac4d1ab87bdb14d (diff) | |
download | emulator-yagl-99c6353c2c18dfb4337a7f990036688b91805617.tar.gz emulator-yagl-99c6353c2c18dfb4337a7f990036688b91805617.tar.bz2 emulator-yagl-99c6353c2c18dfb4337a7f990036688b91805617.zip |
Y-invert ARGB imagessubmit/tizen/20161129.132307accepted/tizen/wearable/20161130.015905accepted/tizen/tv/20161130.015848accepted/tizen/mobile/20161130.015830accepted/tizen/ivi/20161130.015925accepted/tizen/common/20161129.173735
This patch resolves the issue with widgets rendered upside-down. Tizen
platfrom expects 'yinvert == 1' for EGL images created from tizen sfc.
Change-Id: If34b0c717f705a13351d94b50361b2a6d5945998
Signed-off-by: joonbum.ko <joonbum.ko@samsung.com>
Signed-off-by: Vasiliy Ulyanov <v.ulyanov@samsung.com>
-rw-r--r-- | EGL/yagl_onscreen_image_tizen_sfc.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/EGL/yagl_onscreen_image_tizen_sfc.c b/EGL/yagl_onscreen_image_tizen_sfc.c index b30bdf1..031d4a0 100644 --- a/EGL/yagl_onscreen_image_tizen_sfc.c +++ b/EGL/yagl_onscreen_image_tizen_sfc.c @@ -102,6 +102,15 @@ static bool yagl_onscreen_image_tizen_sfc_convert(struct yagl_onscreen_image_tiz dst += info.width * info.height - info.width; switch (info.format) { + case TBM_FORMAT_ARGB8888: + for (i = 0; i < info.height; i++) { + for (j = 0; j < info.width; j++) { + uint32_t argb = ((uint32_t *)info.planes[0].ptr)[i * info.width + j]; + + *(dst - i * info.width + j) = argb; + } + } + break; case TBM_FORMAT_RGBA8888: for (i = 0; i < info.height; i++) { for (j = 0; j < info.width; j++) { @@ -199,10 +208,10 @@ struct yagl_onscreen_image_tizen_sfc switch (info.format) { case TBM_FORMAT_RGB888: - case TBM_FORMAT_ARGB8888: case TBM_FORMAT_XRGB8888: need_convert = false; break; + case TBM_FORMAT_ARGB8888: case TBM_FORMAT_RGBA8888: case TBM_FORMAT_NV21: case TBM_FORMAT_YUV420: |