From 77e2edbedd3eaf0449f43c5438d8c022e6409dfa Mon Sep 17 00:00:00 2001 From: ChunEon Park Date: Tue, 16 Oct 2012 05:31:28 +0000 Subject: [PATCH] evas/line - fix the line vertical drawing on gl backened. SVN revision: 78034 --- legacy/evas/ChangeLog | 4 ++++ .../src/modules/engines/gl_common/evas_gl_line.c | 15 +++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/legacy/evas/ChangeLog b/legacy/evas/ChangeLog index 021d919f83..d0e04b8640 100644 --- a/legacy/evas/ChangeLog +++ b/legacy/evas/ChangeLog @@ -1099,7 +1099,11 @@ * Fix C code fallback line rendering path in software + 2012-10-17 Carsten Haitzler (The Rasterman) * Like 16bpp engine, 8bpp engine goes the way of the dodo. +2012-10-16 ChunEon Park (Hermet) + + * Fix the vertical line drawing on gl backened. diff --git a/legacy/evas/src/modules/engines/gl_common/evas_gl_line.c b/legacy/evas/src/modules/engines/gl_common/evas_gl_line.c index fb9ae561d9..c13fa255a5 100644 --- a/legacy/evas/src/modules/engines/gl_common/evas_gl_line.c +++ b/legacy/evas/src/modules/engines/gl_common/evas_gl_line.c @@ -27,6 +27,21 @@ evas_gl_common_line_draw(Evas_Engine_GL_Context *gc, int x1, int y1, int x2, int cx = gc->dc->clip.x; cy = gc->dc->clip.y; cw = gc->dc->clip.w; ch = gc->dc->clip.h; + //Increment pixels since the gl line origin position is slightly different + if (x1 == x2) + { + if (gc->rot == 0) + x1++; + } + + if (y1 == y2) + { + if ((gc->rot == 90) || (gc->rot == 180)) + y1++; + } + + x2++; y2++; + evas_gl_common_context_line_push(gc, x1, y1, x2, y2, c, cx, cy, cw, ch, r, g, b, a);