From 39f7ce192ce46e6df7b659aaf00233251144c4e0 Mon Sep 17 00:00:00 2001 From: Cedric BAIL Date: Fri, 3 Apr 2015 16:34:24 +0200 Subject: [PATCH] ector: implement surface size property. --- src/lib/ector/ector_surface.c | 9 +++++++-- src/modules/evas/engines/gl_generic/evas_engine.c | 4 +++- src/modules/evas/engines/software_generic/evas_engine.c | 4 +++- 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/src/lib/ector/ector_surface.c b/src/lib/ector/ector_surface.c index 2f2bf649ca..23ad7eb2fd 100644 --- a/src/lib/ector/ector_surface.c +++ b/src/lib/ector/ector_surface.c @@ -10,20 +10,25 @@ typedef struct _Ector_Generic_Surface_Data Ector_Generic_Surface_Data; struct _Ector_Generic_Surface_Data { + int w, h; }; void -_ector_generic_surface_size_set(Eo *obj, +_ector_generic_surface_size_set(Eo *obj EINA_UNUSED, Ector_Generic_Surface_Data *pd, int w, int h) { + pd->w = w; + pd->h = h; } void -_ector_generic_surface_size_get(Eo *obj, +_ector_generic_surface_size_get(Eo *obj EINA_UNUSED, Ector_Generic_Surface_Data *pd, int *w, int *h) { + if (w) *w = pd->w; + if (h) *h = pd->h; } #include "ector_generic_surface.eo.c" diff --git a/src/modules/evas/engines/gl_generic/evas_engine.c b/src/modules/evas/engines/gl_generic/evas_engine.c index 4fddbe7b44..45e8ded8f1 100644 --- a/src/modules/evas/engines/gl_generic/evas_engine.c +++ b/src/modules/evas/engines/gl_generic/evas_engine.c @@ -2524,7 +2524,9 @@ _ector_cairo_software_surface_surface_set(Eo *obj, Ector_Cairo_Software_Surface_ pd->height = height; end: - eo_do(obj, ector_cairo_surface_context_set(pd->ctx)); + eo_do(obj, + ector_cairo_surface_context_set(pd->ctx), + ector_surface_size_set(pd->width, pd->height)); } static void diff --git a/src/modules/evas/engines/software_generic/evas_engine.c b/src/modules/evas/engines/software_generic/evas_engine.c index 92eb22bd6e..fb276b9c9d 100644 --- a/src/modules/evas/engines/software_generic/evas_engine.c +++ b/src/modules/evas/engines/software_generic/evas_engine.c @@ -5073,7 +5073,9 @@ _ector_cairo_software_surface_surface_set(Eo *obj, Ector_Cairo_Software_Surface_ end: evas_common_cpu_end_opt(); - eo_do(obj, ector_cairo_surface_context_set(pd->ctx)); + eo_do(obj, + ector_cairo_surface_context_set(pd->ctx), + ector_surface_size_set(pd->width, pd->height)); } void