summaryrefslogtreecommitdiff
path: root/src/modules
diff options
context:
space:
mode:
authorHermet Park <chuneon.park@samsung.com>2020-11-24 12:17:17 +0900
committerHermet Park <chuneon.park@samsung.com>2020-11-24 13:34:45 +0900
commitf9e7eff759aab07f661c95017a018849e2010979 (patch)
treea7e287fa5250c24084297edd002766ffd979a673 /src/modules
parentdf4018ea978fa346f08d130e68dd7a0095a785cc (diff)
ui transit: improve zoom effect smoothness by subpixel rendering.
Summary: evas image might have a better quaility if scaling/transform is not necessary, so we have a condition to check if image is axis-aligned transformed or not. On the other hand sub-pixel(floating point coordinates unit) rendering necessary if image has an effect such a zooming. This would result in a smoother effect than integer coodinate system. We need a more precise condition to confirm this, so we intrduce "anti-alias" option to decide the condition. now, anti-aliased objects will have a sub-pixel rendering always. Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D12194
Diffstat (limited to 'src/modules')
-rw-r--r--src/modules/evas/engines/gl_generic/evas_engine.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/modules/evas/engines/gl_generic/evas_engine.c b/src/modules/evas/engines/gl_generic/evas_engine.c
index 46f927e28e..a1c48ae451 100644
--- a/src/modules/evas/engines/gl_generic/evas_engine.c
+++ b/src/modules/evas/engines/gl_generic/evas_engine.c
@@ -1318,7 +1318,8 @@ eng_image_map_draw(void *engine EINA_UNUSED, void *data, void *context, void *su
1318 evas_gl_common_context_target_surface_set(gl_context, surface); 1318 evas_gl_common_context_target_surface_set(gl_context, surface);
1319 gl_context->dc = context; 1319 gl_context->dc = context;
1320 1320
1321 if (fabsf(m->pts[0].fx - m->pts[3].fx) < FLT_EPSILON && 1321 if (!((RGBA_Draw_Context*) context)->anti_alias &&
1322 fabsf(m->pts[0].fx - m->pts[3].fx) < FLT_EPSILON &&
1322 fabsf(m->pts[1].fx - m->pts[2].fx) < FLT_EPSILON && 1323 fabsf(m->pts[1].fx - m->pts[2].fx) < FLT_EPSILON &&
1323 fabsf(m->pts[0].fy - m->pts[1].fy) < FLT_EPSILON && 1324 fabsf(m->pts[0].fy - m->pts[1].fy) < FLT_EPSILON &&
1324 fabsf(m->pts[3].fy - m->pts[2].fy) < FLT_EPSILON && 1325 fabsf(m->pts[3].fy - m->pts[2].fy) < FLT_EPSILON &&