From c963d75dfdeec11f82e79e727062fbf89afa2c04 Mon Sep 17 00:00:00 2001 From: David Walter Seikel Date: Sun, 22 Apr 2012 09:19:23 +1000 Subject: Update EFL to latest beta. --- libraries/evas/src/Makefile.in | 8 +- libraries/evas/src/bin/Makefile.am | 2 - libraries/evas/src/bin/Makefile.in | 9 +- libraries/evas/src/bin/evas_cserve_main.c | 3 +- libraries/evas/src/examples/Makefile.am | 2 - libraries/evas/src/examples/Makefile.in | 9 +- libraries/evas/src/examples/evas-box.c | 2 +- libraries/evas/src/examples/evas-hints.c | 3 + libraries/evas/src/lib/Evas.h | 310 +++++++---- libraries/evas/src/lib/Evas_GL.h | 2 +- libraries/evas/src/lib/Makefile.am | 10 +- libraries/evas/src/lib/Makefile.in | 21 +- libraries/evas/src/lib/cache/Makefile.am | 1 - libraries/evas/src/lib/cache/Makefile.in | 9 +- libraries/evas/src/lib/cache/evas_cache_image.c | 338 ++++++------ libraries/evas/src/lib/canvas/Makefile.am | 1 - libraries/evas/src/lib/canvas/Makefile.in | 15 +- libraries/evas/src/lib/canvas/evas_callbacks.c | 9 + libraries/evas/src/lib/canvas/evas_events.c | 17 +- libraries/evas/src/lib/canvas/evas_map.c | 34 +- libraries/evas/src/lib/canvas/evas_object_image.c | 40 +- libraries/evas/src/lib/canvas/evas_object_main.c | 19 +- .../evas/src/lib/canvas/evas_object_textblock.c | 180 +++++-- libraries/evas/src/lib/canvas/evas_render.c | 63 ++- libraries/evas/src/lib/cserve/Makefile.in | 8 +- libraries/evas/src/lib/engines/Makefile.in | 8 +- libraries/evas/src/lib/engines/common/Makefile.am | 2 +- libraries/evas/src/lib/engines/common/Makefile.in | 10 +- .../evas/src/lib/engines/common/evas_draw_main.c | 65 ++- .../evas/src/lib/engines/common/evas_font_load.c | 8 +- .../evas/src/lib/engines/common/evas_image_main.c | 77 ++- .../src/lib/engines/common/evas_op_add/Makefile.in | 8 +- .../lib/engines/common/evas_op_blend/Makefile.am | 6 +- .../lib/engines/common/evas_op_blend/Makefile.in | 13 +- .../lib/engines/common/evas_op_copy/Makefile.in | 8 +- .../lib/engines/common/evas_op_mask/Makefile.in | 8 +- .../src/lib/engines/common/evas_op_mul/Makefile.in | 8 +- .../src/lib/engines/common/evas_op_sub/Makefile.in | 8 +- .../src/lib/engines/common/evas_polygon_main.c | 8 +- .../src/lib/engines/common/evas_scale_sample.c | 3 +- .../common/evas_scale_smooth_scaler_downx.c | 6 +- .../common/evas_scale_smooth_scaler_downx_downy.c | 6 +- .../common/evas_scale_smooth_scaler_downy.c | 6 +- libraries/evas/src/lib/engines/common/evas_tiler.c | 96 +++- .../evas/src/lib/engines/common_16/Makefile.in | 8 +- .../evas/src/lib/engines/common_8/Makefile.in | 8 +- libraries/evas/src/lib/file/Makefile.am | 3 - libraries/evas/src/lib/file/Makefile.in | 10 +- libraries/evas/src/lib/file/evas_module.c | 4 - libraries/evas/src/lib/file/evas_path.c | 4 +- libraries/evas/src/lib/include/Makefile.in | 8 +- libraries/evas/src/lib/include/evas_blend_ops.h | 12 +- libraries/evas/src/lib/include/evas_common.h | 92 ++-- libraries/evas/src/lib/include/evas_private.h | 3 + libraries/evas/src/modules/Makefile.in | 8 +- libraries/evas/src/modules/engines/Makefile.am | 3 - libraries/evas/src/modules/engines/Makefile.in | 27 +- .../modules/engines/buffer/Evas_Engine_Buffer.h | 3 + .../evas/src/modules/engines/buffer/Makefile.am | 2 - .../evas/src/modules/engines/buffer/Makefile.in | 9 +- .../evas/src/modules/engines/buffer/evas_engine.c | 69 ++- .../evas/src/modules/engines/buffer/evas_engine.h | 8 +- .../evas/src/modules/engines/buffer/evas_outbuf.c | 31 +- .../evas/src/modules/engines/direct3d/Makefile.in | 8 +- .../evas/src/modules/engines/directfb/Makefile.am | 2 - .../evas/src/modules/engines/directfb/Makefile.in | 9 +- .../src/modules/engines/directfb/evas_engine.c | 3 +- libraries/evas/src/modules/engines/fb/Makefile.in | 8 +- .../evas/src/modules/engines/fb/evas_engine.c | 13 +- .../evas/src/modules/engines/fb/evas_outbuf.c | 7 +- .../evas/src/modules/engines/gl_cocoa/Makefile.in | 8 +- .../evas/src/modules/engines/gl_common/Makefile.in | 8 +- .../src/modules/engines/gl_common/evas_gl_line.c | 5 +- .../modules/engines/gl_common/shader/yuv_frag.h | 18 +- .../modules/engines/gl_common/shader/yuv_frag.shd | 18 +- .../engines/gl_common/shader/yuv_nomul_frag.h | 18 +- .../engines/gl_common/shader/yuv_nomul_frag.shd | 18 +- .../evas/src/modules/engines/gl_sdl/Makefile.in | 8 +- .../evas/src/modules/engines/gl_x11/Makefile.in | 8 +- .../evas/src/modules/engines/gl_x11/evas_engine.c | 565 ++++++++++++++++++--- .../evas/src/modules/engines/psl1ght/Makefile.in | 8 +- .../src/modules/engines/software_16/Makefile.am | 2 - .../src/modules/engines/software_16/Makefile.in | 9 +- .../modules/engines/software_16_ddraw/Makefile.in | 8 +- .../modules/engines/software_16_sdl/Makefile.am | 4 +- .../modules/engines/software_16_sdl/Makefile.in | 50 +- .../modules/engines/software_16_wince/Makefile.am | 1 - .../modules/engines/software_16_wince/Makefile.in | 25 +- .../modules/engines/software_16_x11/Makefile.in | 8 +- .../src/modules/engines/software_8/Makefile.am | 2 - .../src/modules/engines/software_8/Makefile.in | 9 +- .../src/modules/engines/software_8_x11/Makefile.in | 8 +- .../src/modules/engines/software_ddraw/Makefile.in | 8 +- .../src/modules/engines/software_gdi/Makefile.in | 8 +- .../modules/engines/software_generic/Makefile.am | 4 +- .../modules/engines/software_generic/Makefile.in | 11 +- .../modules/engines/software_generic/evas_engine.c | 24 +- .../src/modules/engines/software_x11/Makefile.in | 8 +- .../src/modules/engines/wayland_egl/Makefile.am | 2 +- .../src/modules/engines/wayland_egl/Makefile.in | 10 +- .../src/modules/engines/wayland_egl/evas_engine.c | 184 +------ .../src/modules/engines/wayland_egl/evas_wl_main.c | 4 +- .../engines/wayland_shm/Evas_Engine_Wayland_Shm.h | 3 +- .../src/modules/engines/wayland_shm/Makefile.am | 3 +- .../src/modules/engines/wayland_shm/Makefile.in | 11 +- .../src/modules/engines/wayland_shm/evas_engine.c | 12 +- .../src/modules/engines/wayland_shm/evas_engine.h | 3 +- .../src/modules/engines/wayland_shm/evas_outbuf.c | 5 +- libraries/evas/src/modules/loaders/Makefile.in | 10 +- libraries/evas/src/modules/loaders/bmp/Makefile.am | 7 +- libraries/evas/src/modules/loaders/bmp/Makefile.in | 13 +- .../src/modules/loaders/bmp/evas_image_load_bmp.c | 108 ++-- libraries/evas/src/modules/loaders/edb/Makefile.in | 8 +- libraries/evas/src/modules/loaders/eet/Makefile.am | 2 - libraries/evas/src/modules/loaders/eet/Makefile.in | 9 +- .../evas/src/modules/loaders/generic/Makefile.am | 5 +- .../evas/src/modules/loaders/generic/Makefile.in | 12 +- libraries/evas/src/modules/loaders/gif/Makefile.am | 2 - libraries/evas/src/modules/loaders/gif/Makefile.in | 9 +- .../src/modules/loaders/gif/evas_image_load_gif.c | 15 +- libraries/evas/src/modules/loaders/ico/Makefile.am | 5 +- libraries/evas/src/modules/loaders/ico/Makefile.in | 11 +- .../src/modules/loaders/ico/evas_image_load_ico.c | 28 +- .../evas/src/modules/loaders/jpeg/Makefile.am | 5 +- .../evas/src/modules/loaders/jpeg/Makefile.in | 12 +- .../modules/loaders/jpeg/evas_image_load_jpeg.c | 85 ++-- .../evas/src/modules/loaders/pmaps/Makefile.am | 5 +- .../evas/src/modules/loaders/pmaps/Makefile.in | 12 +- libraries/evas/src/modules/loaders/png/Makefile.am | 3 +- libraries/evas/src/modules/loaders/png/Makefile.in | 11 +- libraries/evas/src/modules/loaders/psd/Makefile.am | 5 +- libraries/evas/src/modules/loaders/psd/Makefile.in | 11 +- .../src/modules/loaders/psd/evas_image_load_psd.c | 16 +- libraries/evas/src/modules/loaders/svg/Makefile.am | 2 - libraries/evas/src/modules/loaders/svg/Makefile.in | 9 +- libraries/evas/src/modules/loaders/tga/Makefile.am | 5 +- libraries/evas/src/modules/loaders/tga/Makefile.in | 11 +- .../src/modules/loaders/tga/evas_image_load_tga.c | 10 +- .../evas/src/modules/loaders/tiff/Makefile.am | 5 +- .../evas/src/modules/loaders/tiff/Makefile.in | 12 +- .../evas/src/modules/loaders/wbmp/Makefile.am | 5 +- .../evas/src/modules/loaders/wbmp/Makefile.in | 11 +- libraries/evas/src/modules/loaders/xpm/Makefile.am | 5 +- libraries/evas/src/modules/loaders/xpm/Makefile.in | 12 +- .../src/modules/loaders/xpm/evas_image_load_xpm.c | 3 +- libraries/evas/src/modules/savers/Makefile.in | 8 +- libraries/evas/src/modules/savers/edb/Makefile.in | 8 +- libraries/evas/src/modules/savers/eet/Makefile.am | 2 - libraries/evas/src/modules/savers/eet/Makefile.in | 9 +- libraries/evas/src/modules/savers/jpeg/Makefile.am | 2 - libraries/evas/src/modules/savers/jpeg/Makefile.in | 9 +- libraries/evas/src/modules/savers/png/Makefile.am | 5 +- libraries/evas/src/modules/savers/png/Makefile.in | 12 +- libraries/evas/src/modules/savers/tiff/Makefile.am | 2 - libraries/evas/src/modules/savers/tiff/Makefile.in | 9 +- libraries/evas/src/static_deps/Makefile.in | 8 +- .../evas/src/static_deps/liblinebreak/Makefile.in | 8 +- libraries/evas/src/tests/Makefile.in | 8 +- libraries/evas/src/tests/evas_test_textblock.c | 32 ++ 159 files changed, 2164 insertions(+), 1396 deletions(-) (limited to 'libraries/evas/src') diff --git a/libraries/evas/src/Makefile.in b/libraries/evas/src/Makefile.in index 68cdb12..a40ffc2 100644 --- a/libraries/evas/src/Makefile.in +++ b/libraries/evas/src/Makefile.in @@ -156,6 +156,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -206,6 +208,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -224,8 +228,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -299,8 +301,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/bin/Makefile.am b/libraries/evas/src/bin/Makefile.am index 987e14b..7159eaa 100644 --- a/libraries/evas/src/bin/Makefile.am +++ b/libraries/evas/src/bin/Makefile.am @@ -18,8 +18,6 @@ AM_CPPFLAGS = \ @pthread_cflags@ \ @PIXMAN_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ - bin_PROGRAMS = evas_cserve evas_cserve_tool evas_cserve_SOURCES = \ diff --git a/libraries/evas/src/bin/Makefile.in b/libraries/evas/src/bin/Makefile.in index 136b34c..1a23abe 100644 --- a/libraries/evas/src/bin/Makefile.in +++ b/libraries/evas/src/bin/Makefile.in @@ -162,6 +162,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -212,6 +214,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -230,8 +234,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -305,8 +307,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -406,7 +406,6 @@ MAINTAINERCLEANFILES = Makefile.in @EVAS_CSERVE_TRUE@@pthread_cflags@ \ @EVAS_CSERVE_TRUE@@PIXMAN_CFLAGS@ -@EVAS_CSERVE_TRUE@AM_CFLAGS = @WIN32_CFLAGS@ @EVAS_CSERVE_TRUE@evas_cserve_SOURCES = \ @EVAS_CSERVE_TRUE@evas_cserve_main.c diff --git a/libraries/evas/src/bin/evas_cserve_main.c b/libraries/evas/src/bin/evas_cserve_main.c index 7d4d95a..92718da 100644 --- a/libraries/evas/src/bin/evas_cserve_main.c +++ b/libraries/evas/src/bin/evas_cserve_main.c @@ -642,10 +642,9 @@ mem_cache_adjust(void) { int pval = cache_max_adjust; int max = 0; - int mem_used; if (mem_total <= 0) return; - mem_used = mem_total - mem_free - mem_cached - mem_buffers; + //int mem_used = mem_total - mem_free - mem_cached - mem_buffers; #if 0 // this lets the image cache to grow to fill all real free ram, if // there is any (ie ram unused by disk cache) if (mem_free < mem_total) diff --git a/libraries/evas/src/examples/Makefile.am b/libraries/evas/src/examples/Makefile.am index ffa9274..a52e3f8 100644 --- a/libraries/evas/src/examples/Makefile.am +++ b/libraries/evas/src/examples/Makefile.am @@ -26,8 +26,6 @@ AM_CPPFLAGS = \ @FONTCONFIG_CFLAGS@ \ @pthread_cflags@ -AM_CFLAGS = @WIN32_CFLAGS@ - examples_PROGRAMS = if BUILD_ENGINE_BUFFER diff --git a/libraries/evas/src/examples/Makefile.in b/libraries/evas/src/examples/Makefile.in index f58d297..1cc1108 100644 --- a/libraries/evas/src/examples/Makefile.in +++ b/libraries/evas/src/examples/Makefile.in @@ -289,6 +289,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -339,6 +341,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -357,8 +361,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -432,8 +434,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -539,7 +539,6 @@ files_DATA = $(am__append_3) $(am__append_4) @BUILD_EXAMPLES_TRUE@ @pthread_cflags@ $(am__append_1) \ @BUILD_EXAMPLES_TRUE@ @ECORE_EVAS_CFLAGS@ @EDJE_CFLAGS@ \ @BUILD_EXAMPLES_TRUE@ $(am__empty) -@BUILD_EXAMPLES_TRUE@AM_CFLAGS = @WIN32_CFLAGS@ @BUILD_ENGINE_BUFFER_TRUE@@BUILD_EXAMPLES_TRUE@evas_buffer_simple_SOURCES = evas-buffer-simple.c @BUILD_ENGINE_BUFFER_TRUE@@BUILD_EXAMPLES_TRUE@evas_buffer_simple_LDADD = $(top_builddir)/src/lib/libevas.la @BUILD_EXAMPLES_TRUE@evas_init_shutdown_SOURCES = evas-init-shutdown.c diff --git a/libraries/evas/src/examples/evas-box.c b/libraries/evas/src/examples/evas-box.c index 13f12cf..ec79535 100644 --- a/libraries/evas/src/examples/evas-box.c +++ b/libraries/evas/src/examples/evas-box.c @@ -5,7 +5,7 @@ * one). See stdout/stderr for output. * * @verbatim - * gcc -o evas-box evas-box.c `pkg-config --libs --cflags evas ecore ecore-evas` + * gcc -o evas-box evas-box.c `pkg-config --libs --cflags evas ecore ecore-evas eina` * @endverbatim */ diff --git a/libraries/evas/src/examples/evas-hints.c b/libraries/evas/src/examples/evas-hints.c index c42444c..78c09ba 100644 --- a/libraries/evas/src/examples/evas-hints.c +++ b/libraries/evas/src/examples/evas-hints.c @@ -16,6 +16,8 @@ #ifdef HAVE_CONFIG_H #include "config.h" +#else +#define __UNUSED__ #endif #include @@ -27,6 +29,7 @@ #define WIDTH 320 #define HEIGHT 480 +#define PACKAGE_EXAMPLES_DIR "." static const char commands[] = \ "commands are:\n" diff --git a/libraries/evas/src/lib/Evas.h b/libraries/evas/src/lib/Evas.h index b85bbeb..67d3018 100644 --- a/libraries/evas/src/lib/Evas.h +++ b/libraries/evas/src/lib/Evas.h @@ -2,9 +2,10 @@ @mainpage Evas @version 1.1 -@date 2000-2011 +@date 2000-2012 Please see the @ref authors page for contact details. +@link Evas.h Evas API @endlink @link Evas.h Evas API @endlink @@ -489,7 +490,7 @@ typedef enum _Evas_Event_Flags { EVAS_EVENT_FLAG_NONE = 0, /**< No fancy flags set */ EVAS_EVENT_FLAG_ON_HOLD = (1 << 0), /**< This event is being delivered but should be put "on hold" until the on hold flag is unset. the event should be used for informational purposes and maybe some indications visually, but not actually perform anything */ - EVAS_EVENT_FLAG_ON_SCROLL = (1 << 1) /**< This event flag indicates the event occurs while scrolling; for exameple, DOWN event occurs during scrolling; the event should be used for informational purposes and maybe some indications visually, but not actually perform anything */ + EVAS_EVENT_FLAG_ON_SCROLL = (1 << 1) /**< This event flag indicates the event occurs while scrolling; for example, DOWN event occurs during scrolling; the event should be used for informational purposes and maybe some indications visually, but not actually perform anything */ } Evas_Event_Flags; /**< Flags for Events */ /** @@ -501,7 +502,7 @@ typedef enum _Evas_Touch_Point_State EVAS_TOUCH_POINT_UP, /**< Touch point is released */ EVAS_TOUCH_POINT_MOVE, /**< Touch point is moved */ EVAS_TOUCH_POINT_STILL, /**< Touch point is not moved after pressed */ - EVAS_TOUCH_POINT_CANCEL /**< Touch point is calcelled */ + EVAS_TOUCH_POINT_CANCEL /**< Touch point is cancelled */ } Evas_Touch_Point_State; /** @@ -527,7 +528,7 @@ typedef enum _Evas_Colorspace EVAS_COLORSPACE_YCBCR422P709_PL,/**< YCbCr 4:2:2 Planar, ITU.BT-709 specifications. The data pointed to is just an array of row pointer, pointing to the Y rows, then the Cb, then Cr rows */ EVAS_COLORSPACE_RGB565_A5P, /**< 16bit rgb565 + Alpha plane at end - 5 bits of the 8 being used per alpha byte */ EVAS_COLORSPACE_GRY8, /**< 8bit grayscale */ - EVAS_COLORSPACE_YCBCR422601_PL, /**< YCbCr 4:2:2, ITU.BT-601 specifications. The data poitned to is just an array of row pointer, pointing to line of Y,Cb,Y,Cr bytes */ + EVAS_COLORSPACE_YCBCR422601_PL, /**< YCbCr 4:2:2, ITU.BT-601 specifications. The data pointed to is just an array of row pointer, pointing to line of Y,Cb,Y,Cr bytes */ EVAS_COLORSPACE_YCBCR420NV12601_PL, /**< YCbCr 4:2:0, ITU.BT-601 specification. The data pointed to is just an array of row pointer, pointing to the Y rows, then the Cb,Cr rows. */ EVAS_COLORSPACE_YCBCR420TM12601_PL, /**< YCbCr 4:2:0, ITU.BT-601 specification. The data pointed to is just an array of tiled row pointer, pointing to the Y rows, then the Cb,Cr rows. */ } Evas_Colorspace; /**< Colorspaces for pixel data supported by Evas */ @@ -536,7 +537,7 @@ typedef enum _Evas_Colorspace * How to pack items into cells in a table. * @ingroup Evas_Object_Table * - * @see evas_object_table_homogeneous_set() for an explanation of the funcion of + * @see evas_object_table_homogeneous_set() for an explanation of the function of * each one. */ typedef enum _Evas_Object_Table_Homogeneous_Mode @@ -693,7 +694,7 @@ typedef enum _Evas_Load_Error EVAS_LOAD_ERROR_NONE = 0, /**< No error on load */ EVAS_LOAD_ERROR_GENERIC = 1, /**< A non-specific error occurred */ EVAS_LOAD_ERROR_DOES_NOT_EXIST = 2, /**< File (or file path) does not exist */ - EVAS_LOAD_ERROR_PERMISSION_DENIED = 3, /**< Permission deinied to an existing file (or path) */ + EVAS_LOAD_ERROR_PERMISSION_DENIED = 3, /**< Permission denied to an existing file (or path) */ EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED = 4, /**< Allocation of resources failure prevented load */ EVAS_LOAD_ERROR_CORRUPT_FILE = 5, /**< File corrupt (but was detected as a known format) */ EVAS_LOAD_ERROR_UNKNOWN_FORMAT = 6 /**< File is not a known format */ @@ -721,7 +722,7 @@ typedef enum _Evas_Pixel_Import_Pixel_Format { EVAS_PIXEL_FORMAT_NONE = 0, /**< No pixel format */ EVAS_PIXEL_FORMAT_ARGB32 = 1, /**< ARGB 32bit pixel format with A in the high byte per 32bit pixel word */ - EVAS_PIXEL_FORMAT_YUV420P_601 = 2 /**< YUV 420 Planar format with CCIR 601 color encoding wuth contiguous planes in the order Y, U and V */ + EVAS_PIXEL_FORMAT_YUV420P_601 = 2 /**< YUV 420 Planar format with CCIR 601 color encoding with contiguous planes in the order Y, U and V */ } Evas_Pixel_Import_Pixel_Format; /**< Pixel format for import call. See evas_object_image_pixels_import() */ struct _Evas_Pixel_Import_Source @@ -809,10 +810,10 @@ typedef enum _Evas_Render_Op EVAS_RENDER_BLEND_REL = 1, /**< d = d*(1 - sa) + s*da */ EVAS_RENDER_COPY = 2, /**< d = s */ EVAS_RENDER_COPY_REL = 3, /**< d = s*da */ - EVAS_RENDER_ADD = 4, /**< d = d + s */ + EVAS_RENDER_ADD = 4, /* d = d + s */ EVAS_RENDER_ADD_REL = 5, /**< d = d + s*da */ EVAS_RENDER_SUB = 6, /**< d = d - s */ - EVAS_RENDER_SUB_REL = 7, /**< d = d - s*da */ + EVAS_RENDER_SUB_REL = 7, /* d = d - s*da */ EVAS_RENDER_TINT = 8, /**< d = d*s + d*(1 - sa) + s*(1 - da) */ EVAS_RENDER_TINT_REL = 9, /**< d = d*(1 - sa + s) */ EVAS_RENDER_MASK = 10, /**< d = d*sa */ @@ -1280,7 +1281,7 @@ EAPI Eina_Bool evas_async_events_put (const void *target, Ev * directly, too, and not yet with its @b objects. They are the * functions you need to use at a minimum to get a working canvas. * - * Some of the funcions in this group are exemplified @ref + * Some of the functions in this group are exemplified @ref * Example_Evas_Events "here". */ @@ -1422,13 +1423,13 @@ EAPI void evas_damage_rectangle_add (Evas *e, int x, int y, * was just after this function took place. * * We call it "obscured region" because the most common use case for - * this rendering (partial) freeze is something else (most problaby + * this rendering (partial) freeze is something else (most probably * other canvas) being on top of the specified rectangular region, * thus shading it completely from the user's final scene in a * display. To avoid unnecessary processing, one should indicate to the * obscured canvas not to bother about the non-important area. * - * The majority of users won't have to worry about this funcion, as + * The majority of users won't have to worry about this function, as * they'll be using just one canvas in their applications, with * nothing inset or on top of it in any form. * @@ -2077,7 +2078,7 @@ EAPI void evas_pointer_canvas_xy_get (const Evas *e, Evas_Co * Returns a bitmask with the mouse buttons currently pressed, set to 1 * * @param e The pointer to the Evas Canvas - * @return A bitmask of the currently depressed buttons on the cavas + * @return A bitmask of the currently depressed buttons on the canvas * @ingroup Evas_Pointer_Group * * Calling this function will return a 32-bit integer with the @@ -2150,7 +2151,7 @@ EAPI Eina_Bool evas_pointer_inside_get (const Evas *e) EINA_WA * its internal states changing (an object got focused, the rendering * is updated, etc). * - * Some of the funcions in this group are exemplified @ref + * Some of the functions in this group are exemplified @ref * Example_Evas_Events "here". * * @ingroup Evas_Canvas @@ -2308,14 +2309,14 @@ EAPI void *evas_event_callback_del_full (Evas *e, Evas_Callb * @param data The data pointer to be passed to the callback * * Evas has a stack of callbacks that get called after all the callbacks for - * an event have triggered (all the objects it triggers on and al the callbacks + * an event have triggered (all the objects it triggers on and all the callbacks * in each object triggered). When all these have been called, the stack is * unwond from most recently to least recently pushed item and removed from the * stack calling the callback set for it. * * This is intended for doing reverse logic-like processing, example - when a * child object that happens to get the event later is meant to be able to - * "steal" functions from a parent and thus on unwind of this stack hav its + * "steal" functions from a parent and thus on unwind of this stack have its * function called first, thus being able to set flags, or return 0 from the * post-callback that stops all other post-callbacks in the current stack from * being called (thus basically allowing a child to take control, if the event @@ -2359,7 +2360,7 @@ EAPI void evas_post_event_callback_remove_full (Evas *e, Evas_Objec * an Evas canvas. * * There might be scenarios during a graphical user interface - * program's use when the developer whishes the users wouldn't be able + * program's use when the developer wishes the users wouldn't be able * to deliver input events to this application. It may, for example, * be the time for it to populate a view or to change some * layout. Assuming proper behavior with user interaction during this @@ -2367,7 +2368,14 @@ EAPI void evas_post_event_callback_remove_full (Evas *e, Evas_Objec * programmer can then tell the canvas to ignore input events, * bringing it back to normal behavior when he/she wants. * - * Some of the funcions in this group are exemplified @ref + * Most of the time use of freezing events is done like this: + * @code + * evas_event_freeze(my_evas_canvas); + * function_that_does_work_which_cant_be_interrupted_by_events(); + * evas_event_thaw(my_evas_canvas); + * @endcode + * + * Some of the functions in this group are exemplified @ref * Example_Evas_Events "here". * * @ingroup Evas_Canvas_Events @@ -2416,7 +2424,7 @@ EAPI Evas_Event_Flags evas_event_default_flags_get (const Evas *e) EINA_AR * of this kind during the freeze will get @b discarded. Every freeze * call must be matched by a thaw call in order to completely thaw out * a canvas (i.e. these calls may be nested). The most common use is - * when you don't want the user to interect with your user interface + * when you don't want the user to interact with your user interface * when you're populating a view or changing the layout. * * Example: @@ -2494,13 +2502,18 @@ EAPI void evas_event_thaw_eval (Evas *e) EINA_ARG_NONN * Functions to tell Evas that input events happened and should be * processed. * + * @warning Most of the time these functions are @b not what you're looking for. + * These functions should only be used if you're not working with ecore evas(or + * another input handling system). If you're not using ecore evas please + * consider using it, in most situation it will make life a lot easier. + * * As explained in @ref intro_not_evas, Evas does not know how to poll * for input events, so the developer should do it and then feed such * events to the canvas to be processed. This is only required if * operating Evas directly. Modules such as Ecore_Evas do that for * you. * - * Some of the funcions in this group are exemplified @ref + * Some of the functions in this group are exemplified @ref * Example_Evas_Events "here". * * @ingroup Evas_Canvas_Events @@ -2928,7 +2941,7 @@ EAPI const Eina_List *evas_font_path_list (const Evas *e) EINA_WA * - textblock and * - image. * - * These functions apply to @b any Evas object, whichever type thay + * These functions apply to @b any Evas object, whichever type that * may have. * * @note The built-in types which are most used are rectangles, text @@ -2939,14 +2952,21 @@ EAPI const Eina_List *evas_font_path_list (const Evas *e) EINA_WA /** * @defgroup Evas_Object_Group_Basic Basic Object Manipulation * - * Methods that are broadly used, like those that change the color, - * clippers and geometry of an Evas object. - * - * An example on the most used functions in this group can be seen @ref - * Example_Evas_Object_Manipulation "here". - * - * For function dealing with stacking, the examples are gathered @ref - * Example_Evas_Stacking "here". + * Almost every evas object created will have some generic function used to + * manipulate it. That's because there are a number of basic actions to be done + * to objects that are irrespective of the object's type, things like: + * @li Showing/Hiding + * @li Setting(and getting) geometry + * @li Bring up or down a layer + * @li Color management + * @li Handling focus + * @li Clipping + * @li Reference counting + * + * All of this issues are handled through the functions here grouped. Examples + * of these function can be seen in @ref Example_Evas_Object_Manipulation(which + * deals with the most common ones) and in @ref Example_Evas_Stacking(which + * deals with stacking functions). * * @ingroup Evas_Object_Group */ @@ -3444,7 +3464,7 @@ EAPI void evas_object_hide (Evas_Object *obj) EINA * @return @c EINA_TRUE if the object is visible, @c EINA_FALSE * otherwise. * - * This retrieves an object's visibily as the one enforced by + * This retrieves an object's visibility as the one enforced by * evas_object_show() and evas_object_hide(). * * @note The value returned isn't, by any means, influenced by @@ -3492,7 +3512,7 @@ EAPI void evas_object_color_set (Evas_Object *obj, int * Retrieves the “main” color's RGB component (and alpha channel) * values, which range from 0 to 255. For the alpha channel, * which defines the object's transparency level, 0 means totally - * trasparent, while 255 means opaque. These color values are + * transparent, while 255 means opaque. These color values are * premultiplied by the alpha value. * * Usually you’ll use this attribute for text and rectangle objects, @@ -4406,7 +4426,7 @@ EAPI Eina_Bool evas_object_freeze_events_get(const Evas_Object *obj) EIN * @image rtf map-uv-mapping-1.png * @image latex map-uv-mapping-1.eps * - * Images need some special handlign when mapped. Evas can easily take care + * Images need some special handling when mapped. Evas can easily take care * of objects and do almost anything with them, but it's completely oblivious * to the content of images, so each point in the map needs to be told to what * pixel in the source image it belongs. Failing to do may sometimes result @@ -4572,7 +4592,7 @@ EAPI void evas_object_map_set (Evas_Object *obj, cons * Get current object transformation map. * * This returns the current internal map set on the indicated object. It is - * intended for read-only acces and is only valid as long as the object is + * intended for read-only access and is only valid as long as the object is * not deleted or the map on the object is not changed. If you wish to modify * the map and set it back do the following: * @@ -4678,7 +4698,7 @@ EAPI void evas_map_util_points_color_set (Evas_Map * * * This rotates the indicated map's coordinates around the center coordinate * given by @p cx and @p cy as the rotation center. The points will have their - * X and Y coordinates rotated clockwise by @p degrees degress (360.0 is a + * X and Y coordinates rotated clockwise by @p degrees degrees (360.0 is a * full rotation). Negative values for degrees will rotate counter-clockwise * by that amount. All coordinates are canvas global coordinates. * @@ -4698,7 +4718,7 @@ EAPI void evas_map_util_rotate (Evas_Map * * Like evas_map_util_rotate(), this zooms the points of the map from a center * point. That center is defined by @p cx and @p cy. The @p zoomx and @p zoomy * parameters specify how much to zoom in the X and Y direction respectively. - * A value of 1.0 means "don't zoom". 2.0 means "dobule the size". 0.5 is + * A value of 1.0 means "don't zoom". 2.0 means "double the size". 0.5 is * "half the size" etc. All coordinates are canvas global coordinates. * * @param m map to change. @@ -4723,9 +4743,9 @@ EAPI void evas_map_util_zoom (Evas_Map * * evas_map_util_rotate() you provide a center point to rotate around (in 3D). * * @param m map to change. - * @param dx amount of degrees from 0.0 to 360.0 to rotate arount X axis. - * @param dy amount of degrees from 0.0 to 360.0 to rotate arount Y axis. - * @param dz amount of degrees from 0.0 to 360.0 to rotate arount Z axis. + * @param dx amount of degrees from 0.0 to 360.0 to rotate around X axis. + * @param dy amount of degrees from 0.0 to 360.0 to rotate around Y axis. + * @param dz amount of degrees from 0.0 to 360.0 to rotate around Z axis. * @param cx rotation's center horizontal position. * @param cy rotation's center vertical position. * @param cz rotation's center vertical position. @@ -4794,8 +4814,8 @@ EAPI void evas_map_util_3d_lighting (Evas_Map * * This applies a given perspective (3D) to the map coordinates. X, Y and Z * values are used. The px and py points specify the "infinite distance" point * in the 3D conversion (where all lines converge to like when artists draw - * 3D by hand). The @p z0 value specifis the z value at which there is a 1:1 - * mapping between spatial coorinates and screen coordinates. Any points + * 3D by hand). The @p z0 value specifies the z value at which there is a 1:1 + * mapping between spatial coordinates and screen coordinates. Any points * on this z value will not have their X and Y values modified in the transform. * Those further away (Z value higher) will shrink into the distance, and * those less than this value will expand and become bigger. The @p foc value @@ -4805,8 +4825,8 @@ EAPI void evas_map_util_3d_lighting (Evas_Map * * control and @p foc must be greater than 0. * * @param m map to change. - * @param px The pespective distance X coordinate - * @param py The pespective distance Y coordinate + * @param px The perspective distance X coordinate + * @param py The perspective distance Y coordinate * @param z0 The "0" z plane value * @param foc The focal distance */ @@ -4885,7 +4905,7 @@ EAPI void evas_map_alpha_set (Evas_Map *m, Eina_Bool /** * get the alpha flag for map rendering * - * This gets the alph flag for map rendering. + * This gets the alpha flag for map rendering. * * @param m map to get the alpha from. Must not be NULL. */ @@ -4926,17 +4946,17 @@ EAPI int evas_map_count_get (const Evas_Map *m) EINA * * This sets the fixed point's coordinate in the map. Note that points * describe the outline of a quadrangle and are ordered either clockwise - * or anit-clock-wise. It is suggested to keep your quadrangles concave and + * or anti-clock-wise. It is suggested to keep your quadrangles concave and * non-complex, though these polygon modes may work, they may not render * a desired set of output. The quadrangle will use points 0 and 1 , 1 and 2, - * 2 and 3, and 3 and 0 to describe the edges of the quandrangle. + * 2 and 3, and 3 and 0 to describe the edges of the quadrangle. * * The X and Y and Z coordinates are in canvas units. Z is optional and may * or may not be honored in drawing. Z is a hint and does not affect the * X and Y rendered coordinates. It may be used for calculating fills with * perspective correct rendering. * - * Remember all coordinates are canvas global ones like with move and reize + * Remember all coordinates are canvas global ones like with move and resize * in evas. * * @param m map to change point. Must not be @c NULL. @@ -5466,7 +5486,7 @@ EAPI void evas_object_size_hint_padding_set (Evas_Object *obj, Evas * * @param obj The object to attach the data pointer to * @param key The string key for the data to access it - * @param data The ponter to the data to be attached + * @param data The pointer to the data to be attached * * This attaches the pointer @p data to the object @p obj, given the * access string @p key. This pointer will stay "hooked" to the object @@ -6124,13 +6144,99 @@ EAPI void *evas_object_intercept_move_callback_del (Evas_Obje * * @brief Function to create evas rectangle objects. * - * This function may seem useless given there are no functions to manipulate - * the created rectangle, however the rectangle is actually very useful and can - * be manipulate using the generic @ref Evas_Object_Group - * "evas object functions". + * There is only one function to deal with rectangle objects, this may make this + * function seem useless given there are no functions to manipulate the created + * rectangle, however the rectangle is actually very useful and should be + * manipulated using the generic @ref Evas_Object_Group "evas object functions". + * + * The evas rectangle server a number of key functions when working on evas + * programs: + * @li Background + * @li Debugging + * @li Clipper + * + * @section Background * - * For an example of use of an evas_object_rectangle see @ref - * Example_Evas_Object_Manipulation "here". + * One extremely common requirement of evas programs is to have a solid color + * background, this can be accomplished with the following very simple code: + * @code + * Evas_Object *bg = evas_object_rectangle_add(evas_canvas); + * //Here we set the rectangles red, green, blue and opacity levels + * evas_object_color_set(bg, 255, 255, 255, 255); // opaque white background + * evas_object_resize(bg, WIDTH, HEIGHT); // covers full canvas + * evas_object_show(bg); + * @endcode + * + * This however will have issues if the @c evas_canvas is resized, however most + * windows are created using ecore evas and that has a solution to using the + * rectangle as a background: + * @code + * Evas_Object *bg = evas_object_rectangle_add(ecore_evas_get(ee)); + * //Here we set the rectangles red, green, blue and opacity levels + * evas_object_color_set(bg, 255, 255, 255, 255); // opaque white background + * evas_object_resize(bg, WIDTH, HEIGHT); // covers full canvas + * evas_object_show(bg); + * ecore_evas_object_associate(ee, bg, ECORE_EVAS_OBJECT_ASSOCIATE_BASE); + * @endcode + * So this gives us a white background to our window that will be resized + * together with it. + * + * @section Debugging + * + * Debugging is a major part of any programmers task and when debugging visual + * issues with evas programs the rectangle is an extremely useful tool. The + * rectangle's simplicity means that it's easier to pinpoint issues with it than + * with more complex objects. Therefore a common technique to use when writing + * an evas program and not getting the desired visual result is to replace the + * misbehaving object for a solid color rectangle and seeing how it interacts + * with the other elements, this often allows us to notice clipping, parenting + * or positioning issues. Once the issues have been identified and corrected the + * rectangle can be replaced for the original part and in all likelihood any + * remaining issues will be specific to that object's type. + * + * @section clipping Clipping + * + * Clipping serves two main functions: + * @li Limiting visibility(i.e. hiding portions of an object). + * @li Applying a layer of color to an object. + * + * @subsection hiding Limiting visibility + * + * It is often necessary to show only parts of an object, while it may be + * possible to create an object that corresponds only to the part that must be + * shown(and it isn't always possible) it's usually easier to use a a clipper. A + * clipper is a rectangle that defines what's visible and what is not. The way + * to do this is to create a solid white rectangle(which is the default, no need + * to call evas_object_color_set()) and give it a position and size of what + * should be visible. The following code exemplifies showing the center half of + * @c my_evas_object: + * @code + * Evas_Object *clipper = evas_object_rectangle_add(evas_canvas); + * evas_object_move(clipper, my_evas_object_x / 4, my_evas_object_y / 4); + * evas_object_resize(clipper, my_evas_object_width / 2, my_evas_object_height / 2); + * evas_object_clip_set(my_evas_object, clipper); + * evas_object_show(clipper); + * @endcode + * + * @subsection color Layer of color + * + * In the @ref clipping section we used a solid white clipper, which produced no + * change in the color of the clipped object, it just hid what was outside the + * clippers area. It is however sometimes desirable to change the of color an + * object, this can be accomplished using a clipper that has a non-white color. + * Clippers with color work by multiplying the colors of clipped object. The + * following code will show how to remove all the red from an object: + * @code + * Evas_Object *clipper = evas_object_rectangle_add(evas); + * evas_object_move(clipper, my_evas_object_x, my_evas_object_y); + * evas_object_resize(clipper, my_evas_object_width, my_evas_object_height); + * evas_object_color_set(clipper, 0, 255, 255, 255); + * evas_object_clip_set(obj, clipper); + * evas_object_show(clipper); + * @endcode + * + * For an example that more fully exercise the use of an evas object rectangle + * see @ref Example_Evas_Object_Manipulation. * * @ingroup Evas_Object_Specific */ @@ -6172,7 +6278,7 @@ EAPI Evas_Object *evas_object_rectangle_add (Evas *e) EINA_WARN_UNU * object's area with that given pixel data. One could use just a * sub-region of the original image or even have it tiled repeatedly * on the image object. For the common case of having the whole source - * image to be displayed on the image object, streched to the + * image to be displayed on the image object, stretched to the * destination's size, there's also a function helper, to be used * instead of evas_object_image_fill_set(): * @code @@ -6208,7 +6314,7 @@ EAPI Evas_Object *evas_object_rectangle_add (Evas *e) EINA_WARN_UNU * at a given image, at full size, and will desire that the navigation * to the adjacent images on his/her album be fluid and fast. Thus, * while displaying a given image, the program can be on the - * background loading the next and previous imagens already, so that + * background loading the next and previous images already, so that * displaying them on the sequence is just a matter of repainting the * screen (and not decoding image data). * @@ -6247,7 +6353,7 @@ EAPI Evas_Object *evas_object_rectangle_add (Evas *e) EINA_WARN_UNU * are also some tips on how to boost the performance of your * application. If the animation involves resizing of an image (thus, * re-scaling), you'd better turn off smooth scaling on it @b during - * the animation, turning it back on afterwrads, for less + * the animation, turning it back on afterwards, for less * computations. Also, in this case you'd better flag the image object * in question not to cache scaled versions of it: * @code @@ -6290,7 +6396,7 @@ EAPI Evas_Object *evas_object_rectangle_add (Evas *e) EINA_WARN_UNU * your own data as an image's pixel data, fetch an image's pixel data * for saving/altering, convert images between different color spaces * and even advanced operations like setting a native surface as image - * objecs' data. + * objects' data. * * @section Evas_Object_Image_Color_Spaces Color spaces * @@ -6679,7 +6785,7 @@ EAPI double evas_object_image_border_scale_get (const Ev * * See the following image to better understand the effects of this * call. On this diagram, both image object and original image source - * have @c a x @c a dimentions and the image itself is a circle, with + * have @c a x @c a dimensions and the image itself is a circle, with * empty space around it: * * @image html image-fill.png @@ -6689,7 +6795,7 @@ EAPI double evas_object_image_border_scale_get (const Ev * @warning The default values for the fill parameters are @p x = 0, * @p y = 0, @p w = 0 and @p h = 0. Thus, if you're not using the * evas_object_image_filled_add() helper and want your image - * displayed, you'll have to set valid values with this fuction on + * displayed, you'll have to set valid values with this function on * your object. * * @note evas_object_image_filled_set() is a helper function which @@ -6823,7 +6929,7 @@ EAPI void evas_object_image_data_set (Evas_Obj * This is best suited for when you want to modify an existing image, * without changing its dimensions. * - * @note The contents' formart returned by it depend on the color + * @note The contents' format returned by it depend on the color * space of the given image object. * * @note You may want to use evas_object_image_data_update_add() to @@ -7022,7 +7128,7 @@ EAPI Eina_Bool evas_object_image_save (const Ev EAPI Eina_Bool evas_object_image_pixels_import (Evas_Object *obj, Evas_Pixel_Import_Source *pixels) EINA_ARG_NONNULL(1, 2); /** - * Set the callback function to get pixels from a canva's image. + * Set the callback function to get pixels from a canvas' image. * * @param obj The given canvas pointer. * @param func The callback function. @@ -7403,7 +7509,7 @@ EAPI Eina_Bool evas_object_image_extension_can_load_get(const char *file); * Check if a file extension may be supported by @ref Evas_Object_Image. * * @param file The file to check, it should be an Eina_Stringshare. - * @return EINA_TRUE if we may be able to opeen it, EINA_FALSE if it's unlikely. + * @return EINA_TRUE if we may be able to open it, EINA_FALSE if it's unlikely. * @since 1.1.0 * * This functions is threadsafe. @@ -7607,7 +7713,7 @@ EAPI void evas_object_image_animated_frame_set(Evas_Object *obj, int frame_num); /** * Text style type creation macro. This one will impose shadow * directions on the style type variable -- use the @c - * EVAS_TEXT_STYLE_SHADOW_DIRECTION_* values on 's', incremmentally. + * EVAS_TEXT_STYLE_SHADOW_DIRECTION_* values on 's', incrementally. */ #define EVAS_TEXT_STYLE_SHADOW_DIRECTION_SET(x, s) \ do { x = ((x) & ~EVAS_TEXT_STYLE_MASK_SHADOW_DIRECTION) | (s); } while (0) @@ -7686,7 +7792,7 @@ EAPI const char *evas_object_text_font_source_get (const Evas_Object *obj * * This function allows the font name and size of a text object to be * set. The @p font string has to follow fontconfig's convention on - * naming fonts, as it's the underlying lybrary used to query system + * naming fonts, as it's the underlying library used to query system * fonts by Evas (see the @c fc-list command's output, on your system, * to get an idea). * @@ -8286,6 +8392,40 @@ EAPI void evas_object_textblock_style_set(Evas_Object *o EAPI const Evas_Textblock_Style *evas_object_textblock_style_get(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); /** + * Push ts to the top of the user style stack. + * + * FIXME: API is solid but currently only supports 1 style in the stack. + * + * The user style overrides the corresponding elements of the regular style. + * This is the proper way to do theme overrides in code. + * @param obj the Evas object to set the style to. + * @param ts the style to set. + * @return Returns no value. + * @see evas_object_textblock_style_set + * @since 1.2.0 + */ +EAPI void evas_object_textblock_style_user_push(Evas_Object *obj, Evas_Textblock_Style *ts) EINA_ARG_NONNULL(1); + +/** + * Del the from the top of the user style stack. + * + * @param obj the object to get the style from. + * @see evas_object_textblock_style_get + * @since 1.2.0 + */ +EAPI void evas_object_textblock_style_user_pop(Evas_Object *obj) EINA_ARG_NONNULL(1); + +/** + * Get (don't remove) the style at the top of the user style stack. + * + * @param obj the object to get the style from. + * @return the style of the object. + * @see evas_object_textblock_style_get + * @since 1.2.0 + */ +EAPI const Evas_Textblock_Style *evas_object_textblock_style_user_peek(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); + +/** * @brief Set the "replacement character" to use for the given textblock object. * * @param obj The given textblock object. @@ -8320,7 +8460,7 @@ EAPI void evas_object_textblock_valign_set(Evas_Object * * @brief Gets the vertical alignment of a textblock * * @param obj The given textblock object. - * @return The elignment set for the object + * @return The alignment set for the object * @since 1.1.0 */ EAPI double evas_object_textblock_valign_get(const Evas_Object *obj); @@ -8524,7 +8664,7 @@ EAPI void evas_textblock_node_format_remove_pair(Evas_Ob * @param n the format node to update according. * @deprecated duplicate of evas_textblock_cursor_at_format_set */ -EINA_DEPRECATED EAPI void evas_textblock_cursor_set_at_format(Evas_Textblock_Cursor *cur, const Evas_Object_Textblock_Node_Format *n) EINA_ARG_NONNULL(1, 2); +EAPI void evas_textblock_cursor_set_at_format(Evas_Textblock_Cursor *cur, const Evas_Object_Textblock_Node_Format *n) EINA_ARG_NONNULL(1, 2); /** * Return the format node at the position pointed by cur. @@ -8847,7 +8987,7 @@ EAPI char *evas_textblock_cursor_content_get(const Evas_T * get, except for the case of the last char of a line which depends on the * paragraph direction. * - * in '|' cursor mode (i.e a line between two chars) it is very varyable. + * in '|' cursor mode (i.e a line between two chars) it is very variable. * For example consider the following visual string: * "abcCBA" (ABC are rtl chars), a cursor pointing on A should actually draw * a '|' between the c and the C. @@ -9348,7 +9488,7 @@ struct _Evas_Smart_Cb_Description return; \ if (!prefix##_parent_sc) \ prefix##_parent_sc = parent_func(); \ - evas_smart_class_inherit(sc, (const Evas_Smart_Class *)prefix##_parent_sc); \ + evas_smart_class_inherit(sc, prefix##_parent_sc); \ prefix##_smart_set_user(api); \ } \ static Evas_Smart * prefix##_smart_class_new(void) \ @@ -9557,7 +9697,7 @@ EAPI int evas_smart_usage_get(const Evas_Smart *s); * @return 1 on success, 0 on failure. * @ingroup Evas_Smart_Group */ -#define evas_smart_class_inherit(sc, parent_sc) evas_smart_class_inherit_full(sc, parent_sc, sizeof(*parent_sc)) +#define evas_smart_class_inherit(sc, parent_sc) evas_smart_class_inherit_full(sc, (Evas_Smart_Class *)parent_sc, sizeof(*parent_sc)) /** * @} @@ -9576,13 +9716,13 @@ EAPI int evas_smart_usage_get(const Evas_Smart *s); * used on the icon object. * * Besides that, generally smart objects implement a specific - * API, so that users interect with its own custom features. The + * API, so that users interact with its own custom features. The * API takes form of explicit exported functions one may call and * smart callbacks. * * @section Evas_Smart_Object_Group_Callbacks Smart events and callbacks * - * Smart objects can elect events (smart events, from now on) ocurring + * Smart objects can elect events (smart events, from now on) occurring * inside of them to be reported back to their users via callback * functions (smart callbacks). This way, you can extend Evas' own * object events. They are defined by an event string, which @@ -9590,7 +9730,7 @@ EAPI int evas_smart_usage_get(const Evas_Smart *s); * definition for the callback functions: #Evas_Smart_Cb. * * When defining an #Evas_Smart_Class, smart object implementors are - * strongly encorauged to properly set the Evas_Smart_Class::callbacks + * strongly encouraged to properly set the Evas_Smart_Class::callbacks * callbacks description array, so that the users of the smart object * can have introspection on its events API at run time. * @@ -9890,7 +10030,7 @@ EAPI void *evas_object_smart_callback_del_full(Evas_Object *obj, con * object should include a list of possible events and what type of @p * event_info to expect for each of them. Also, when defining an * #Evas_Smart_Class, smart object implementors are strongly - * encorauged to properly set the Evas_Smart_Class::callbacks + * encouraged to properly set the Evas_Smart_Class::callbacks * callbacks description array, so that the users of the smart object * can have introspection on its events API at run time. * @@ -9949,7 +10089,7 @@ EAPI Eina_Bool evas_object_smart_callbacks_descriptions_set(Evas_Object * @param instance_count Returns how many instance callbacks * descriptions are known. * - * This call searchs for registered callback descriptions for both + * This call searches for registered callback descriptions for both * instance and class of the given smart object. These arrays will be * sorted by Evas_Smart_Cb_Description::name and also @c NULL * terminated, so both @a class_count and @a instance_count can be @@ -10052,7 +10192,7 @@ EAPI void evas_object_smart_need_recalculate_set(Evas_Object *obj, EAPI Eina_Bool evas_object_smart_need_recalculate_get(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); /** - * Call the @b calculate() smart function immediataly on a given smart + * Call the @b calculate() smart function immediately on a given smart * object. * * @param obj the smart object's handle @@ -10091,7 +10231,7 @@ EAPI void evas_smart_objects_calculate (Evas *e); * that this function returns the value of. It starts at the value of 0 and * will increase (and eventually wrap around to negative values and so on) by * 1 every time objects are calculated. You can use this counter to ensure - * you dont re-do calculations withint the same calculation generation/run + * you don't re-do calculations withint the same calculation generation/run * if the calculations maybe cause self-feeding effects. * * @ingroup Evas_Smart_Object_Group @@ -10348,7 +10488,7 @@ EAPI const Evas_Smart_Class *evas_object_smart_clipped_class_get (void) EINA Evas_Object_Box_Option *(*prepend) (Evas_Object *o, Evas_Object_Box_Data *priv, Evas_Object *child); /**< Smart function to prepend child elements in boxes */ Evas_Object_Box_Option *(*insert_before) (Evas_Object *o, Evas_Object_Box_Data *priv, Evas_Object *child, const Evas_Object *reference); /**< Smart function to insert a child element before another in boxes */ Evas_Object_Box_Option *(*insert_after) (Evas_Object *o, Evas_Object_Box_Data *priv, Evas_Object *child, const Evas_Object *reference); /**< Smart function to insert a child element after another in boxes */ - Evas_Object_Box_Option *(*insert_at) (Evas_Object *o, Evas_Object_Box_Data *priv, Evas_Object *child, unsigned int pos); /**< Smart function to insert a child element at a given positon on boxes */ + Evas_Object_Box_Option *(*insert_at) (Evas_Object *o, Evas_Object_Box_Data *priv, Evas_Object *child, unsigned int pos); /**< Smart function to insert a child element at a given position on boxes */ Evas_Object *(*remove) (Evas_Object *o, Evas_Object_Box_Data *priv, Evas_Object *child); /**< Smart function to remove a child element from boxes */ Evas_Object *(*remove_at) (Evas_Object *o, Evas_Object_Box_Data *priv, unsigned int pos); /**< Smart function to remove a child element from boxes, by its position */ Eina_Bool (*property_set) (Evas_Object *o, Evas_Object_Box_Option *opt, int property, va_list args); /**< Smart function to set a custom property on a box child */ @@ -10472,7 +10612,7 @@ EAPI const Evas_Smart_Class *evas_object_smart_clipped_class_get (void) EINA * with the default values. May be used to extend that API. * * @param api The box API struct to set back, most probably with - * overriden fields (on class extensions scenarios) + * overridden fields (on class extensions scenarios) */ EAPI void evas_object_box_smart_set (Evas_Object_Box_Api *api) EINA_ARG_NONNULL(1); @@ -10697,7 +10837,7 @@ EAPI void evas_object_box_layout_homogeneous_horizontal * of this overall child width in its allocated cell (@c 0.0 to * extreme left, @c 1.0 to extreme right). A value of @c -1.0 to * @c align_x makes the box try to resize this child element to the exact - * width of its cell (respecting the minimun and maximum size hints on + * width of its cell (respecting the minimum and maximum size hints on * the child's width and accounting for its horizontal padding * hints). The child's @c padding_t, @c padding_b and @c align_y * properties apply for padding/alignment relative to the overall @@ -10978,7 +11118,7 @@ EAPI Evas_Object_Box_Option *evas_object_box_insert_at * On removal, you'll get an unparented object again, just as it was * before you inserted it in the box. The * _Evas_Object_Box_Api::option_free box smart callback will be called - * automatilly for you and, also, the @c "child,removed" smart event + * automatically for you and, also, the @c "child,removed" smart event * will take place. * * @note This call will trigger the box's _Evas_Object_Box_Api::remove @@ -10997,7 +11137,7 @@ EAPI Eina_Bool evas_object_box_remove * * On removal, you'll get an unparented object again, just as it was * before you inserted it in the box. The @c option_free() box smart - * callback will be called automatilly for you and, also, the + * callback will be called automatically for you and, also, the * @c "child,removed" smart event will take place. * * @note This function will fail if the given position is invalid, @@ -11589,8 +11729,8 @@ EAPI Eina_List *evas_object_grid_children_get (const { int saved_memory; /**< current amount of saved memory, in bytes */ int wasted_memory; /**< current amount of wasted memory, in bytes */ - int saved_memory_peak; /**< peak ammount of saved memory, in bytes */ - int wasted_memory_peak; /**< peak ammount of wasted memory, in bytes */ + int saved_memory_peak; /**< peak amount of saved memory, in bytes */ + int wasted_memory_peak; /**< peak amount of wasted memory, in bytes */ double saved_time_image_header_load; /**< time, in seconds, saved in header loads by sharing cached loads instead */ double saved_time_image_data_load; /**< time, in seconds, saved in data loads by sharing cached loads instead */ }; @@ -11803,7 +11943,7 @@ EAPI void evas_color_rgb_to_hsv (int r, int g, int b, f * @param g The Green component of the color. * @param b The Blue component of the color. * - * This function pre-multiplies a given rbg triplet by an alpha + * This function pre-multiplies a given rgb triplet by an alpha * factor. Alpha factor is used to define transparency. * * @ingroup Evas_Utils @@ -12233,7 +12373,7 @@ EAPI Evas_Modifier_Mask evas_key_modifier_mask_get (const Evas *e, const c * modifiers that must and mustn't, respectively, be pressed along * with @p keyname key in order to trigger this new key * grab. Modifiers can be things such as Shift and Ctrl as well as - * user defigned types via evas_key_modifier_add(). Retrieve them with + * user defined types via evas_key_modifier_add(). Retrieve them with * evas_key_modifier_mask_get() or use @c 0 for empty masks. * * @p exclusive will make the given object the only one permitted to diff --git a/libraries/evas/src/lib/Evas_GL.h b/libraries/evas/src/lib/Evas_GL.h index fdfbaad..76937eb 100644 --- a/libraries/evas/src/lib/Evas_GL.h +++ b/libraries/evas/src/lib/Evas_GL.h @@ -404,7 +404,7 @@ EAPI void evas_gl_free (Evas_GL *evas_gl) EINA * As long as the Evas creates a config object for the user, it takes care * of the backward compatibility issue. */ -EAPI Evas_GL_Config *evas_gl_config_new (); +EAPI Evas_GL_Config *evas_gl_config_new (void); /** * Frees a config object created from evas_gl_config_new. diff --git a/libraries/evas/src/lib/Makefile.am b/libraries/evas/src/lib/Makefile.am index 2a1a92d..1240b2b 100644 --- a/libraries/evas/src/lib/Makefile.am +++ b/libraries/evas/src/lib/Makefile.am @@ -76,13 +76,11 @@ SUBDIRS += ../modules/engines/software_8_x11/ EVAS_STATIC_MODULE += ../modules/engines/software_8_x11/libevas_engine_software_8_x11.la EVAS_STATIC_LIBADD += @evas_engine_software_8_x11_libs@ endif -if EVAS_STATIC_BUILD_SOFTWARE_SDL +if EVAS_STATIC_BUILD_SOFTWARE_16_SDL SUBDIRS += \ - ../modules/engines/software_16_sdl/ \ - ../modules/engines/software_sdl/ + ../modules/engines/software_16_sdl/ EVAS_STATIC_MODULE += \ - ../modules/engines/software_16_sdl/libevas_engine_software_16_sdl.la \ - ../modules/engines/software_sdl/libevas_engine_software_sdl.la + ../modules/engines/software_16_sdl/libevas_engine_software_16_sdl.la EVAS_STATIC_LIBADD += @SDL_LIBS@ endif if EVAS_STATIC_BUILD_SOFTWARE_DDRAW @@ -201,8 +199,6 @@ AM_CPPFLAGS = \ @pthread_cflags@ \ @PIXMAN_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ - lib_LTLIBRARIES = libevas.la includes_HEADERS = Evas.h Evas_GL.h diff --git a/libraries/evas/src/lib/Makefile.in b/libraries/evas/src/lib/Makefile.in index ffe71d1..cb04330 100644 --- a/libraries/evas/src/lib/Makefile.in +++ b/libraries/evas/src/lib/Makefile.in @@ -83,15 +83,13 @@ host_triplet = @host@ @EVAS_STATIC_BUILD_SOFTWARE_8_X11_TRUE@am__append_36 = ../modules/engines/software_8_x11/ @EVAS_STATIC_BUILD_SOFTWARE_8_X11_TRUE@am__append_37 = ../modules/engines/software_8_x11/libevas_engine_software_8_x11.la @EVAS_STATIC_BUILD_SOFTWARE_8_X11_TRUE@am__append_38 = @evas_engine_software_8_x11_libs@ -@EVAS_STATIC_BUILD_SOFTWARE_SDL_TRUE@am__append_39 = \ -@EVAS_STATIC_BUILD_SOFTWARE_SDL_TRUE@ ../modules/engines/software_16_sdl/ \ -@EVAS_STATIC_BUILD_SOFTWARE_SDL_TRUE@ ../modules/engines/software_sdl/ +@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_TRUE@am__append_39 = \ +@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_TRUE@ ../modules/engines/software_16_sdl/ -@EVAS_STATIC_BUILD_SOFTWARE_SDL_TRUE@am__append_40 = \ -@EVAS_STATIC_BUILD_SOFTWARE_SDL_TRUE@ ../modules/engines/software_16_sdl/libevas_engine_software_16_sdl.la \ -@EVAS_STATIC_BUILD_SOFTWARE_SDL_TRUE@ ../modules/engines/software_sdl/libevas_engine_software_sdl.la +@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_TRUE@am__append_40 = \ +@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_TRUE@ ../modules/engines/software_16_sdl/libevas_engine_software_16_sdl.la -@EVAS_STATIC_BUILD_SOFTWARE_SDL_TRUE@am__append_41 = @SDL_LIBS@ +@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_TRUE@am__append_41 = @SDL_LIBS@ @EVAS_STATIC_BUILD_SOFTWARE_DDRAW_TRUE@am__append_42 = ../modules/engines/software_ddraw/ @EVAS_STATIC_BUILD_SOFTWARE_DDRAW_TRUE@am__append_43 = ../modules/engines/software_ddraw/libevas_engine_software_ddraw.la @EVAS_STATIC_BUILD_SOFTWARE_DDRAW_TRUE@am__append_44 = @evas_engine_software_ddraw_libs@ @@ -346,6 +344,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -396,6 +396,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -414,8 +416,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -489,8 +489,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -625,7 +623,6 @@ AM_CPPFLAGS = \ @pthread_cflags@ \ @PIXMAN_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ lib_LTLIBRARIES = libevas.la includes_HEADERS = Evas.h Evas_GL.h includesdir = $(includedir)/evas-@VMAJ@ diff --git a/libraries/evas/src/lib/cache/Makefile.am b/libraries/evas/src/lib/cache/Makefile.am index d417262..78d58d2 100644 --- a/libraries/evas/src/lib/cache/Makefile.am +++ b/libraries/evas/src/lib/cache/Makefile.am @@ -7,7 +7,6 @@ AM_CPPFLAGS = -I. \ -DPACKAGE_BIN_DIR=\"$(bindir)\" \ -DPACKAGE_LIB_DIR=\"$(libdir)\" \ -DPACKAGE_DATA_DIR=\"$(datadir)/$(PACKAGE)\" \ - @WIN32_CPPFLAGS@ \ @EVIL_CFLAGS@ \ @FREETYPE_CFLAGS@ \ @PIXMAN_CFLAGS@ \ diff --git a/libraries/evas/src/lib/cache/Makefile.in b/libraries/evas/src/lib/cache/Makefile.in index 2b50c81..fce77cc 100644 --- a/libraries/evas/src/lib/cache/Makefile.in +++ b/libraries/evas/src/lib/cache/Makefile.in @@ -147,6 +147,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -197,6 +199,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -215,8 +219,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -290,8 +292,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -381,7 +381,6 @@ AM_CPPFLAGS = -I. \ -DPACKAGE_BIN_DIR=\"$(bindir)\" \ -DPACKAGE_LIB_DIR=\"$(libdir)\" \ -DPACKAGE_DATA_DIR=\"$(datadir)/$(PACKAGE)\" \ - @WIN32_CPPFLAGS@ \ @EVIL_CFLAGS@ \ @FREETYPE_CFLAGS@ \ @PIXMAN_CFLAGS@ \ diff --git a/libraries/evas/src/lib/cache/evas_cache_image.c b/libraries/evas/src/lib/cache/evas_cache_image.c index 73e4f8a..d5b72c5 100644 --- a/libraries/evas/src/lib/cache/evas_cache_image.c +++ b/libraries/evas/src/lib/cache/evas_cache_image.c @@ -42,10 +42,10 @@ static void _evas_cache_image_entry_preload_remove(Image_Entry *ie, const void * #define FREESTRC(Var) \ if (Var) \ - { \ - eina_stringshare_del(Var); \ - Var = NULL; \ - } +{ \ + eina_stringshare_del(Var); \ + Var = NULL; \ +} static void _evas_cache_image_dirty_add(Image_Entry *im); static void _evas_cache_image_dirty_del(Image_Entry *im); @@ -210,9 +210,9 @@ _evas_cache_image_entry_delete(Evas_Cache_Image *cache, Image_Entry *ie) if (ie->flags.delete_me == 1) return; if (ie->preload) { - ie->flags.delete_me = 1; - _evas_cache_image_entry_preload_remove(ie, NULL); - return; + ie->flags.delete_me = 1; + _evas_cache_image_entry_preload_remove(ie, NULL); + return; } #endif @@ -247,10 +247,10 @@ _timestamp_compare(Image_Timestamp *tstamp, struct stat *st) #ifdef _STAT_VER_LINUX #if (defined __USE_MISC && defined st_mtime) if (tstamp->mtime_nsec != (unsigned long int)st->st_mtim.tv_nsec) - return EINA_FALSE; + return EINA_FALSE; #else if (tstamp->mtime_nsec != (unsigned long int)st->st_mtimensec) - return EINA_FALSE; + return EINA_FALSE; #endif #endif return EINA_TRUE; @@ -285,8 +285,8 @@ _evas_cache_image_entry_new(Evas_Cache_Image *cache, ie = cache->func.alloc(); if (!ie) { - *error = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; - return NULL; + *error = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; + return NULL; } ie->cache = cache; if (hkey) ie->cache_key = eina_stringshare_add(hkey); @@ -307,7 +307,7 @@ _evas_cache_image_entry_new(Evas_Cache_Image *cache, LKI(ie->lock); LKI(ie->lock_cancel); #endif - + if (lo) ie->load_opts = *lo; if (ie->file) { @@ -326,8 +326,8 @@ _evas_cache_image_entry_new(Evas_Cache_Image *cache, static void _evas_cache_image_entry_surface_alloc__locked(Evas_Cache_Image *cache, - Image_Entry *ie, - unsigned int wmin, + Image_Entry *ie, + unsigned int wmin, unsigned int hmin) { if ((ie->allocated.w == wmin) && (ie->allocated.h == hmin)) return; @@ -376,16 +376,16 @@ _evas_cache_image_async_heavy(void *data) if ((!current->flags.loaded) && ((Evas_Image_Load_Func*) current->info.module)->threadable) { - error = cache->func.load(current); - if (cache->func.debug) cache->func.debug("load", current); + error = cache->func.load(current); + if (cache->func.debug) cache->func.debug("load", current); current->load_error = error; - if (error != EVAS_LOAD_ERROR_NONE) - { - current->flags.loaded = 0; - _evas_cache_image_entry_surface_alloc(cache, current, - current->w, current->h); - } - else + if (error != EVAS_LOAD_ERROR_NONE) + { + current->flags.loaded = 0; + _evas_cache_image_entry_surface_alloc(cache, current, + current->w, current->h); + } + else { current->flags.loaded = 1; } @@ -416,11 +416,11 @@ _evas_cache_image_async_end(void *data) ie->flags.preload_done = ie->flags.loaded; while ((tmp = ie->targets)) { - evas_object_inform_call_image_preloaded((Evas_Object*) tmp->target); - ie->targets = (Evas_Cache_Target *) + evas_object_inform_call_image_preloaded((Evas_Object*) tmp->target); + ie->targets = (Evas_Cache_Target *) eina_inlist_remove(EINA_INLIST_GET(ie->targets), EINA_INLIST_GET(ie->targets)); - free(tmp); + free(tmp); } } @@ -429,14 +429,14 @@ _evas_cache_image_async_cancel(void *data) { Evas_Cache_Image *cache = NULL; Image_Entry *ie = (Image_Entry *)data; - + ie->preload = NULL; ie->cache->pending = eina_list_remove(ie->cache->pending, ie); if ((ie->flags.delete_me) || (ie->flags.dirty)) { - ie->flags.delete_me = 0; - _evas_cache_image_entry_delete(ie->cache, ie); - return; + ie->flags.delete_me = 0; + _evas_cache_image_entry_delete(ie->cache, ie); + return; } if (ie->flags.loaded) _evas_cache_image_async_end(ie); #ifdef EVAS_FRAME_QUEUING @@ -485,41 +485,41 @@ _evas_cache_image_entry_preload_remove(Image_Entry *ie, const void *target) { if (target) { - Evas_Cache_Target *tg; - - EINA_INLIST_FOREACH(ie->targets, tg) - { - if (tg->target == target) - { - // FIXME: No callback when we cancel only for one target ? - ie->targets = (Evas_Cache_Target *) + Evas_Cache_Target *tg; + + EINA_INLIST_FOREACH(ie->targets, tg) + { + if (tg->target == target) + { + // FIXME: No callback when we cancel only for one target ? + ie->targets = (Evas_Cache_Target *) eina_inlist_remove(EINA_INLIST_GET(ie->targets), EINA_INLIST_GET(tg)); - free(tg); - break; - } - } + free(tg); + break; + } + } } else { - Evas_Cache_Target *tg; + Evas_Cache_Target *tg; - while (ie->targets) - { - tg = ie->targets; - ie->targets = (Evas_Cache_Target *) + while (ie->targets) + { + tg = ie->targets; + ie->targets = (Evas_Cache_Target *) eina_inlist_remove(EINA_INLIST_GET(ie->targets), EINA_INLIST_GET(tg)); - free(tg); - } + free(tg); + } } if ((!ie->targets) && (ie->preload) && (!ie->flags.pending)) { - ie->cache->preload = eina_list_remove(ie->cache->preload, ie); - ie->cache->pending = eina_list_append(ie->cache->pending, ie); - ie->flags.pending = 1; - evas_preload_thread_cancel(ie->preload); + ie->cache->preload = eina_list_remove(ie->cache->preload, ie); + ie->cache->pending = eina_list_append(ie->cache->pending, ie); + ie->flags.pending = 1; + evas_preload_thread_cancel(ie->preload); } } #endif @@ -566,7 +566,7 @@ evas_cache_image_init(const Evas_Cache_Image_Func *cb) { LKI(engine_lock); LKI(wakeup); - eina_condition_new(&cond_wakeup, &wakeup); + eina_condition_new(&cond_wakeup, &wakeup); } #endif @@ -616,9 +616,9 @@ evas_cache_image_shutdown(Evas_Cache_Image *cache) #ifdef BUILD_ASYNC_PRELOAD EINA_LIST_FREE(cache->preload, im) { - /* By doing that we are protecting us from destroying image when the cache is no longer available. */ - im->flags.delete_me = 1; - _evas_cache_image_entry_preload_remove(im, NULL); + /* By doing that we are protecting us from destroying image when the cache is no longer available. */ + im->flags.delete_me = 1; + _evas_cache_image_entry_preload_remove(im, NULL); } evas_async_events_process(); #endif @@ -642,21 +642,21 @@ evas_cache_image_shutdown(Evas_Cache_Image *cache) eina_hash_foreach(cache->activ, _evas_cache_image_free_cb, &delete_list); while (delete_list) { - _evas_cache_image_entry_delete(cache, eina_list_data_get(delete_list)); - delete_list = eina_list_remove_list(delete_list, delete_list); + _evas_cache_image_entry_delete(cache, eina_list_data_get(delete_list)); + delete_list = eina_list_remove_list(delete_list, delete_list); } #ifdef BUILD_ASYNC_PRELOAD /* Now wait for all pending image to die */ while (cache->pending) { - evas_async_events_process(); - LKL(wakeup); + evas_async_events_process(); + LKL(wakeup); // the lazy bum who did eain threads and converted this code // didn't bother to worry about Eina_Lock being a different type // to a pthread mutex. - if (cache->pending) eina_condition_wait(&cond_wakeup); - LKU(wakeup); + if (cache->pending) eina_condition_wait(&cond_wakeup); + LKU(wakeup); } #endif eina_hash_free(cache->activ); @@ -666,7 +666,7 @@ evas_cache_image_shutdown(Evas_Cache_Image *cache) #ifdef BUILD_ASYNC_PRELOAD if (--_evas_cache_mutex_init == 0) { - eina_condition_free(&cond_wakeup); + eina_condition_free(&cond_wakeup); LKD(engine_lock); LKD(wakeup); } @@ -690,8 +690,8 @@ evas_cache_image_request(Evas_Cache_Image *cache, const char *file, if ((!file) || ((!file) && (!key))) { - *error = EVAS_LOAD_ERROR_GENERIC; - return NULL; + *error = EVAS_LOAD_ERROR_GENERIC; + return NULL; } /* generate hkey from file+key+load opts */ @@ -712,45 +712,45 @@ evas_cache_image_request(Evas_Cache_Image *cache, const char *file, (lo->dpi == 0.0) && ((lo->w == 0) || (lo->h == 0)) && ((lo->region.w == 0) || (lo->region.h == 0)) && - (lo->orientation == 0) - )) + (lo->orientation == 0) + )) { lo = &prevent; } else { - memcpy(hkey + size, "//@/", 4); - size += 4; - size += eina_convert_xtoa(lo->scale_down_by, hkey + size); - hkey[size] = '/'; - size += 1; - size += eina_convert_dtoa(lo->dpi, hkey + size); - hkey[size] = '/'; - size += 1; - size += eina_convert_xtoa(lo->w, hkey + size); - hkey[size] = 'x'; - size += 1; - size += eina_convert_xtoa(lo->h, hkey + size); - hkey[size] = '/'; - size += 1; - size += eina_convert_xtoa(lo->region.x, hkey + size); - hkey[size] = '+'; - size += 1; - size += eina_convert_xtoa(lo->region.y, hkey + size); - hkey[size] = '.'; - size += 1; - size += eina_convert_xtoa(lo->region.w, hkey + size); - hkey[size] = 'x'; - size += 1; - size += eina_convert_xtoa(lo->region.h, hkey + size); - - if (lo->orientation) - { + memcpy(hkey + size, "//@/", 4); + size += 4; + size += eina_convert_xtoa(lo->scale_down_by, hkey + size); + hkey[size] = '/'; + size += 1; + size += eina_convert_dtoa(lo->dpi, hkey + size); + hkey[size] = '/'; + size += 1; + size += eina_convert_xtoa(lo->w, hkey + size); + hkey[size] = 'x'; + size += 1; + size += eina_convert_xtoa(lo->h, hkey + size); + hkey[size] = '/'; + size += 1; + size += eina_convert_xtoa(lo->region.x, hkey + size); + hkey[size] = '+'; + size += 1; + size += eina_convert_xtoa(lo->region.y, hkey + size); + hkey[size] = '.'; + size += 1; + size += eina_convert_xtoa(lo->region.w, hkey + size); + hkey[size] = 'x'; + size += 1; + size += eina_convert_xtoa(lo->region.h, hkey + size); + + if (lo->orientation) + { hkey[size] = '/'; size += 1; hkey[size] = 'o'; size += 1; - } + } } hkey[size] = '\0'; @@ -768,10 +768,10 @@ evas_cache_image_request(Evas_Cache_Image *cache, const char *file, stat_done = 1; if (stat(file, &st) < 0) - { - stat_failed = 1; - ok = 0; - } + { + stat_failed = 1; + ok = 0; + } else if (!_timestamp_compare(&(im->tstamp), &st)) ok = 0; if (ok) goto on_ok; /* image we found doesn't match what's on disk (stat info wise) @@ -816,10 +816,12 @@ evas_cache_image_request(Evas_Cache_Image *cache, const char *file, } /* as avtive cache find - if we match in lru and its invalid, dirty */ _evas_cache_image_dirty_add(im); + /* this image never used, so it have to be deleted */ + _evas_cache_image_entry_delete(cache, im); im = NULL; } if (stat_failed) goto on_stat_error; - + if (!stat_done) { if (stat(file, &st) < 0) goto on_stat_error; @@ -830,7 +832,7 @@ evas_cache_image_request(Evas_Cache_Image *cache, const char *file, if (!im) goto on_stat_error; if (cache->func.debug) cache->func.debug("request", im); - on_ok: +on_ok: *error = EVAS_LOAD_ERROR_NONE; #ifdef EVAS_FRAME_QUEUING LKL(im->lock_references); @@ -841,24 +843,24 @@ evas_cache_image_request(Evas_Cache_Image *cache, const char *file, #endif return im; - on_stat_error: +on_stat_error: #ifndef _WIN32 if ((errno == ENOENT) || (errno == ENOTDIR) || (errno == ENAMETOOLONG) || (errno == ELOOP)) #else - if (errno == ENOENT) + if (errno == ENOENT) #endif - *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; + *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; #ifndef _WIN32 - else if ((errno == ENOMEM) || (errno == EOVERFLOW)) + else if ((errno == ENOMEM) || (errno == EOVERFLOW)) #else - else if (errno == ENOMEM) + else if (errno == ENOMEM) #endif - *error = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; - else if (errno == EACCES) - *error = EVAS_LOAD_ERROR_PERMISSION_DENIED; - else - *error = EVAS_LOAD_ERROR_GENERIC; + *error = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; + else if (errno == EACCES) + *error = EVAS_LOAD_ERROR_PERMISSION_DENIED; + else + *error = EVAS_LOAD_ERROR_GENERIC; if (im) _evas_cache_image_entry_delete(cache, im); return NULL; @@ -879,7 +881,7 @@ evas_cache_image_drop(Image_Entry *im) #ifdef EVAS_FRAME_QUEUING LKU(im->lock_references); #endif - + cache = im->cache; if (references == 0) @@ -893,25 +895,25 @@ evas_cache_image_drop(Image_Entry *im) LKU(im->ref_fq_del); return; } - LKU(im->ref_fq_add); - LKU(im->ref_fq_del); + LKU(im->ref_fq_add); + LKU(im->ref_fq_del); #endif #ifdef BUILD_ASYNC_PRELOAD - if (im->preload) - { - _evas_cache_image_entry_preload_remove(im, NULL); - return; - } -#endif - - if (im->flags.dirty) - { - _evas_cache_image_entry_delete(cache, im); - return; - } + if (im->preload) + { + _evas_cache_image_entry_preload_remove(im, NULL); + return; + } +#endif + + if (im->flags.dirty) + { + _evas_cache_image_entry_delete(cache, im); + return; + } _evas_cache_image_lru_add(im); - if (cache) evas_cache_image_flush(cache); + if (cache) evas_cache_image_flush(cache); } } @@ -974,10 +976,10 @@ evas_cache_image_dirty(Image_Entry *im, unsigned int x, unsigned int y, unsigned } _evas_cache_image_dirty_add(im_dirty); } - + if (cache->func.debug) cache->func.debug("dirty-region", im_dirty); if (cache->func.dirty_region) - cache->func.dirty_region(im_dirty, x, y, w, h); + cache->func.dirty_region(im_dirty, x, y, w, h); return im_dirty; on_error: @@ -1026,7 +1028,7 @@ evas_cache_image_alone(Image_Entry *im) evas_cache_image_drop(im); } return im_dirty; - + on_error: if (im_dirty) _evas_cache_image_entry_delete(cache, im_dirty); evas_cache_image_drop(im); @@ -1039,12 +1041,12 @@ evas_cache_image_copied_data(Evas_Cache_Image *cache, DATA32 *image_data, int alpha, int cspace) { Image_Entry *im; - + if ((cspace == EVAS_COLORSPACE_YCBCR422P601_PL) || (cspace == EVAS_COLORSPACE_YCBCR422P709_PL) || (cspace == EVAS_COLORSPACE_YCBCR422601_PL)) - w &= ~0x1; - + w &= ~0x1; + im = _evas_cache_image_entry_new(cache, NULL, NULL, NULL, NULL, NULL, NULL); if (!im) return NULL; im->space = cspace; @@ -1074,8 +1076,8 @@ evas_cache_image_data(Evas_Cache_Image *cache, unsigned int w, unsigned int h, D if ((cspace == EVAS_COLORSPACE_YCBCR422P601_PL) || (cspace == EVAS_COLORSPACE_YCBCR422P709_PL) || (cspace == EVAS_COLORSPACE_YCBCR422601_PL)) - w &= ~0x1; - + w &= ~0x1; + im = _evas_cache_image_entry_new(cache, NULL, NULL, NULL, NULL, NULL, NULL); if (!im) return NULL; im->w = w; @@ -1101,7 +1103,7 @@ EAPI void evas_cache_image_surface_alloc(Image_Entry *im, unsigned int w, unsigned int h) { Evas_Cache_Image *cache = im->cache; - + if ((im->space == EVAS_COLORSPACE_YCBCR422P601_PL) || (im->space == EVAS_COLORSPACE_YCBCR422P709_PL) || (im->space == EVAS_COLORSPACE_YCBCR422601_PL)) @@ -1145,7 +1147,7 @@ evas_cache_image_size_set(Image_Entry *im, unsigned int w, unsigned int h) if (cache->func.debug) cache->func.debug("size_set", im2); return im2; - on_error: +on_error: if (im2) _evas_cache_image_entry_delete(cache, im2); evas_cache_image_drop(im); return NULL; @@ -1163,26 +1165,26 @@ evas_cache_image_load_data(Image_Entry *im) #ifdef BUILD_ASYNC_PRELOAD if (im->preload) { - preload = EINA_TRUE; - if (!im->flags.pending) - { - im->cache->preload = eina_list_remove(im->cache->preload, im); - im->cache->pending = eina_list_append(im->cache->pending, im); - im->flags.pending = 1; - evas_preload_thread_cancel(im->preload); - } - evas_async_events_process(); - LKL(wakeup); - while (im->preload) - { + preload = EINA_TRUE; + if (!im->flags.pending) + { + im->cache->preload = eina_list_remove(im->cache->preload, im); + im->cache->pending = eina_list_append(im->cache->pending, im); + im->flags.pending = 1; + evas_preload_thread_cancel(im->preload); + } + evas_async_events_process(); + LKL(wakeup); + while (im->preload) + { eina_condition_wait(&cond_wakeup); - LKU(wakeup); - evas_async_events_process(); - LKL(wakeup); - } - LKU(wakeup); + LKU(wakeup); + evas_async_events_process(); + LKL(wakeup); + } + LKU(wakeup); } - + if ((im->flags.loaded) && (!im->flags.animated)) return error; LKL(im->lock); #endif @@ -1226,7 +1228,7 @@ evas_cache_image_unload_data(Image_Entry *im) #ifdef BUILD_ASYNC_PRELOAD LKU(im->lock); #endif - return; + return; } im->cache->func.destructor(im); #ifdef BUILD_ASYNC_PRELOAD @@ -1256,8 +1258,8 @@ evas_cache_image_unload_all(Evas_Cache_Image *cache) EAPI Eina_Bool evas_cache_image_is_loaded(Image_Entry *im) { - if (im->flags.loaded) return EINA_TRUE; - return EINA_FALSE; + if (im->flags.loaded) return EINA_TRUE; + return EINA_FALSE; } EAPI void @@ -1265,15 +1267,15 @@ evas_cache_image_preload_data(Image_Entry *im, const void *target) { #ifdef BUILD_ASYNC_PRELOAD RGBA_Image *img = (RGBA_Image *)im; - + if ((im->flags.loaded) && (img->image.data)) { - evas_object_inform_call_image_preloaded((Evas_Object *)target); - return; + evas_object_inform_call_image_preloaded((Evas_Object *)target); + return; } im->flags.loaded = 0; if (!_evas_cache_image_entry_preload_add(im, target)) - evas_object_inform_call_image_preloaded((Evas_Object *)target); + evas_object_inform_call_image_preloaded((Evas_Object *)target); #else evas_cache_image_load_data(im); evas_object_inform_call_image_preloaded((Evas_Object *)target); @@ -1319,7 +1321,7 @@ static void _dump_cache(Evas_Cache_Image *cache) { Image_Entry *im; - + printf("--CACHE DUMP----------------------------------------------------\n"); printf("cache: %ikb / %ikb\n", cache->usage / 1024, @@ -1342,22 +1344,22 @@ EAPI int evas_cache_image_flush(Evas_Cache_Image *cache) { #ifdef CACHEDUMP - _dump_cache(cache); + _dump_cache(cache); #endif if (cache->limit == (unsigned int)-1) return -1; while ((cache->lru) && (cache->limit < (unsigned int)cache->usage)) { Image_Entry *im; - + im = (Image_Entry *)cache->lru->last; _evas_cache_image_entry_delete(cache, im); } - + while ((cache->lru_nodata) && (cache->limit < (unsigned int)cache->usage)) { Image_Entry *im; - + im = (Image_Entry *) cache->lru_nodata->last; _evas_cache_image_lru_nodata_del(im); cache->func.surface_delete(im); diff --git a/libraries/evas/src/lib/canvas/Makefile.am b/libraries/evas/src/lib/canvas/Makefile.am index 79544aa..e302668 100644 --- a/libraries/evas/src/lib/canvas/Makefile.am +++ b/libraries/evas/src/lib/canvas/Makefile.am @@ -8,7 +8,6 @@ AM_CPPFLAGS = \ -DPACKAGE_BIN_DIR=\"$(bindir)\" \ -DPACKAGE_LIB_DIR=\"$(libdir)\" \ -DPACKAGE_DATA_DIR=\"$(datadir)/$(PACKAGE)\" \ -@WIN32_CPPFLAGS@ \ @FREETYPE_CFLAGS@ \ @EET_CFLAGS@ \ @FONTCONFIG_CFLAGS@ \ diff --git a/libraries/evas/src/lib/canvas/Makefile.in b/libraries/evas/src/lib/canvas/Makefile.in index 75da67a..c7e48bc 100644 --- a/libraries/evas/src/lib/canvas/Makefile.in +++ b/libraries/evas/src/lib/canvas/Makefile.in @@ -161,6 +161,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -211,6 +213,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -229,8 +233,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -304,8 +306,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -393,10 +393,9 @@ AM_CPPFLAGS = -I. -I$(top_srcdir)/src/lib \ -I$(top_srcdir)/src/lib/include -I$(top_srcdir)/src/lib/cserve \ -DPACKAGE_BIN_DIR=\"$(bindir)\" \ -DPACKAGE_LIB_DIR=\"$(libdir)\" \ - -DPACKAGE_DATA_DIR=\"$(datadir)/$(PACKAGE)\" @WIN32_CPPFLAGS@ \ - @FREETYPE_CFLAGS@ @EET_CFLAGS@ @FONTCONFIG_CFLAGS@ \ - @EVAS_CFLAGS@ @EINA_CFLAGS@ @EVIL_CFLAGS@ @PIXMAN_CFLAGS@ \ - $(am__append_1) + -DPACKAGE_DATA_DIR=\"$(datadir)/$(PACKAGE)\" @FREETYPE_CFLAGS@ \ + @EET_CFLAGS@ @FONTCONFIG_CFLAGS@ @EVAS_CFLAGS@ @EINA_CFLAGS@ \ + @EVIL_CFLAGS@ @PIXMAN_CFLAGS@ $(am__append_1) noinst_LTLIBRARIES = libevas_canvas.la libevas_canvas_la_SOURCES = \ evas_callbacks.c \ diff --git a/libraries/evas/src/lib/canvas/evas_callbacks.c b/libraries/evas/src/lib/canvas/evas_callbacks.c index 93f34f2..47cfb0c 100644 --- a/libraries/evas/src/lib/canvas/evas_callbacks.c +++ b/libraries/evas/src/lib/canvas/evas_callbacks.c @@ -172,6 +172,15 @@ evas_object_event_callback_call(Evas_Object *obj, Evas_Callback_Type type, void if ((obj->delete_me) || (!obj->layer)) return; if ((obj->last_event == event_id) && (obj->last_event_type == type)) return; + if (obj->last_event > event_id) + { + if ((obj->last_event_type == EVAS_CALLBACK_MOUSE_OUT) && + ((type >= EVAS_CALLBACK_MOUSE_DOWN) && + (type <= EVAS_CALLBACK_MULTI_MOVE))) + { + return; + } + } obj->last_event = event_id; obj->last_event_type = type; if (!(e = obj->layer->evas)) return; diff --git a/libraries/evas/src/lib/canvas/evas_events.c b/libraries/evas/src/lib/canvas/evas_events.c index 9b7077e..1ee8388 100644 --- a/libraries/evas/src/lib/canvas/evas_events.c +++ b/libraries/evas/src/lib/canvas/evas_events.c @@ -486,8 +486,9 @@ evas_event_feed_mouse_up(Evas *e, int b, Evas_Button_Flags flags, unsigned int t } if (!obj->delete_me) { - if (e->events_frozen <= 0) - evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_UP, &ev, event_id); + if ((e->events_frozen <= 0) && + (!evas_event_freezes_through(obj))) + evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_UP, &ev, event_id); } if (e->delete_me) break; if (obj->pointer_mode == EVAS_OBJECT_POINTER_MODE_NOGRAB_NO_REPEAT_UPDOWN) @@ -1668,18 +1669,6 @@ evas_object_freeze_events_set(Evas_Object *obj, Eina_Bool freeze) if (obj->freeze_events == freeze) return; obj->freeze_events = freeze; evas_object_smart_member_cache_invalidate(obj, EINA_FALSE, EINA_TRUE); - if (evas_object_is_in_output_rect(obj, - obj->layer->evas->pointer.x, - obj->layer->evas->pointer.y, 1, 1) && - ((!obj->precise_is_inside) || - (evas_object_is_inside(obj, - obj->layer->evas->pointer.x, - obj->layer->evas->pointer.y)))) - evas_event_feed_mouse_move(obj->layer->evas, - obj->layer->evas->pointer.x, - obj->layer->evas->pointer.y, - obj->layer->evas->last_timestamp, - NULL); } EAPI Eina_Bool diff --git a/libraries/evas/src/lib/canvas/evas_map.c b/libraries/evas/src/lib/canvas/evas_map.c index 2359d5a..5dcb760 100644 --- a/libraries/evas/src/lib/canvas/evas_map.c +++ b/libraries/evas/src/lib/canvas/evas_map.c @@ -35,7 +35,7 @@ _evas_map_calc_geom_change(Evas_Object *obj) static void _evas_map_calc_map_geometry(Evas_Object *obj) { - Evas_Coord x1, x2, y1, y2; + Evas_Coord x1, x2, yy1, yy2; const Evas_Map_Point *p, *p_end; Eina_Bool ch = EINA_FALSE; @@ -82,7 +82,7 @@ _evas_map_calc_map_geometry(Evas_Object *obj) p = obj->cur.map->points; p_end = p + obj->cur.map->count; x1 = x2 = lround(p->x); - y1 = y2 = lround(p->y); + yy1 = yy2 = lround(p->y); p++; for (; p < p_end; p++) { @@ -92,21 +92,21 @@ _evas_map_calc_map_geometry(Evas_Object *obj) y = lround(p->y); if (x < x1) x1 = x; if (x > x2) x2 = x; - if (y < y1) y1 = y; - if (y > y2) y2 = y; + if (y < yy1) yy1 = y; + if (y > yy2) yy2 = y; } // this causes clip-out bugs now mapped objs canbe opaque!!! // // add 1 pixel of fuzz around the map region to ensure updates are correct -// x1 -= 1; y1 -= 1; -// x2 += 1; y2 += 1; +// x1 -= 1; yy1 -= 1; +// x2 += 1; yy2 += 1; if (obj->cur.map->normal_geometry.x != x1) ch = 1; - if (obj->cur.map->normal_geometry.y != y1) ch = 1; + if (obj->cur.map->normal_geometry.y != yy1) ch = 1; if (obj->cur.map->normal_geometry.w != (x2 - x1)) ch = 1; - if (obj->cur.map->normal_geometry.h != (y2 - y1)) ch = 1; + if (obj->cur.map->normal_geometry.h != (yy2 - yy1)) ch = 1; obj->cur.map->normal_geometry.x = x1; - obj->cur.map->normal_geometry.y = y1; + obj->cur.map->normal_geometry.y = yy1; obj->cur.map->normal_geometry.w = (x2 - x1); - obj->cur.map->normal_geometry.h = (y2 - y1); + obj->cur.map->normal_geometry.h = (yy2 - yy1); if (ch) _evas_map_calc_geom_change(obj); } @@ -374,9 +374,11 @@ evas_object_map_enable_set(Evas_Object *obj, Eina_Bool enabled) MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); return; MAGIC_CHECK_END(); + Eina_Bool pchange = EINA_FALSE; enabled = !!enabled; if (obj->cur.usemap == enabled) return; + pchange = obj->changed; obj->cur.usemap = enabled; if (enabled) { @@ -405,6 +407,8 @@ evas_object_map_enable_set(Evas_Object *obj, Eina_Bool enabled) /* This is a bit heavy handed, but it fixes the case of same geometry, but * changed colour or UV settings. */ evas_object_change(obj); + if (!obj->changed_pchange) obj->changed_pchange = pchange; + obj->changed_map = EINA_TRUE; } EAPI Eina_Bool @@ -896,7 +900,7 @@ evas_map_util_3d_lighting(Evas_Map *m, for (i = 0; i < m->count; i++) { double x, y, z; - double nx, ny, nz, x1, y1, z1, x2, y2, z2, ln, br; + double nx, ny, nz, x1, yy1, z1, x2, yy2, z2, ln, br; int h, j, mr, mg, mb; x = m->points[i].x; @@ -907,15 +911,15 @@ evas_map_util_3d_lighting(Evas_Map *m, j = (i + 1) % 4 + (i & ~0x3); // next point x1 = m->points[h].x - x; - y1 = m->points[h].y - y; + yy1 = m->points[h].y - y; z1 = m->points[h].z - z; x2 = m->points[j].x - x; - y2 = m->points[j].y - y; + yy2 = m->points[j].y - y; z2 = m->points[j].z - z; - nx = (y1 * z2) - (z1 * y2); + nx = (yy1 * z2) - (z1 * yy2); ny = (z1 * x2) - (x1 * z2); - nz = (x1 * y2) - (y1 * x2); + nz = (x1 * yy2) - (yy1 * x2); ln = (nx * nx) + (ny * ny) + (nz * nz); ln = sqrt(ln); diff --git a/libraries/evas/src/lib/canvas/evas_object_image.c b/libraries/evas/src/lib/canvas/evas_object_image.c index d9f6378..4ebea08 100644 --- a/libraries/evas/src/lib/canvas/evas_object_image.c +++ b/libraries/evas/src/lib/canvas/evas_object_image.c @@ -2908,11 +2908,31 @@ evas_object_image_render(Evas_Object *obj, void *output, void *context, void *su { Evas_Coord idw, idh, idx, idy; int ix, iy, iw, ih; + int img_set = 0; if (o->dirty_pixels) { if (o->func.get_pixels) { + // Set img object for direct rendering optimization + // Check for image w/h against image geometry w/h + // Check for image color r,g,b,a = {255,255,255,255} + // Check and make sure that there are no maps. + if ( (obj->cur.geometry.w == o->cur.image.w) && + (obj->cur.geometry.h == o->cur.image.h) && + (obj->cur.color.r == 255) && + (obj->cur.color.g == 255) && + (obj->cur.color.b == 255) && + (obj->cur.color.a == 255) && + (!obj->cur.map) ) + { + if (obj->layer->evas->engine.func->gl_img_obj_set) + { + obj->layer->evas->engine.func->gl_img_obj_set(output, obj, o->cur.has_alpha); + img_set = 1; + } + } + o->func.get_pixels(o->func.get_pixels_data, obj); if (o->engine_data != pixels) pixels = o->engine_data; @@ -3152,7 +3172,17 @@ evas_object_image_render(Evas_Object *obj, void *output, void *context, void *su idy = ydy; if (dobreak_w) break; } - } + } + + // Unset img object + if (img_set) + { + if (obj->layer->evas->engine.func->gl_img_obj_set) + { + obj->layer->evas->engine.func->gl_img_obj_set(output, NULL, 0); + img_set = 0; + } + } } } @@ -3371,10 +3401,10 @@ evas_object_image_render_pre(Evas_Object *obj) y = idy; h = ((int)(idy + idh)) - y; - r.x = ((rr->x - 1) * w) / o->cur.image.w; - r.y = ((rr->y - 1) * h) / o->cur.image.h; - r.w = ((rr->w + 2) * w) / o->cur.image.w; - r.h = ((rr->h + 2) * h) / o->cur.image.h; + r.x = (rr->x * w) / o->cur.image.w; + r.y = (rr->y * h) / o->cur.image.h; + r.w = ((rr->w * w) + (o->cur.image.w * 2) - 1) / o->cur.image.w; + r.h = ((rr->h * h) + (o->cur.image.h * 2) - 1) / o->cur.image.h; r.x += obj->cur.geometry.x + x; r.y += obj->cur.geometry.y + y; RECTS_CLIP_TO_RECT(r.x, r.y, r.w, r.h, diff --git a/libraries/evas/src/lib/canvas/evas_object_main.c b/libraries/evas/src/lib/canvas/evas_object_main.c index 86ab498..81fc858 100644 --- a/libraries/evas/src/lib/canvas/evas_object_main.c +++ b/libraries/evas/src/lib/canvas/evas_object_main.c @@ -230,7 +230,7 @@ evas_object_clip_changes_clean(Evas_Object *obj) } void -evas_object_render_pre_effect_updates(Eina_Array *rects, Evas_Object *obj, int is_v, int was_v) +evas_object_render_pre_effect_updates(Eina_Array *rects, Evas_Object *obj, int is_v, int was_v __UNUSED__) { Eina_Rectangle *r; Evas_Object *clipper; @@ -241,7 +241,6 @@ evas_object_render_pre_effect_updates(Eina_Array *rects, Evas_Object *obj, int i if (obj->smart.smart) goto end; /* FIXME: was_v isn't used... why? */ - was_v = 0; if (!obj->clip.clipees) { EINA_ARRAY_ITER_NEXT(rects, i, r, it) @@ -1042,6 +1041,22 @@ evas_object_color_set(Evas_Object *obj, int r, int g, int b, int a) if (g > 255) g = 255; if (g < 0) g = 0; if (b > 255) b = 255; if (b < 0) b = 0; if (a > 255) a = 255; if (a < 0) a = 0; + if (r > a) + { + r = a; + ERR("Evas only handle pre multiplied color !"); + } + if (g > a) + { + g = a; + ERR("Evas only handle pre multiplied color !"); + } + if (b > a) + { + b = a; + ERR("Evas only handle pre multiplied color !"); + } + if (evas_object_intercept_call_color_set(obj, r, g, b, a)) return; if (obj->smart.smart) { diff --git a/libraries/evas/src/lib/canvas/evas_object_textblock.c b/libraries/evas/src/lib/canvas/evas_object_textblock.c index 568911c..ee07e20 100644 --- a/libraries/evas/src/lib/canvas/evas_object_textblock.c +++ b/libraries/evas/src/lib/canvas/evas_object_textblock.c @@ -430,6 +430,7 @@ struct _Evas_Object_Textblock { DATA32 magic; Evas_Textblock_Style *style; + Evas_Textblock_Style *style_user; Evas_Textblock_Cursor *cursor; Eina_List *cursors; Evas_Object_Textblock_Node_Text *text_nodes; @@ -4185,11 +4186,27 @@ _layout(const Evas_Object *obj, int w, int h, int *w_ret, int *h_ret) /* Start of logical layout creation */ /* setup default base style */ - if ((c->o->style) && (c->o->style->default_tag)) { - c->fmt = _layout_format_push(c, NULL, NULL); - _format_fill(c->obj, c->fmt, c->o->style->default_tag); - _format_finalize(c->obj, c->fmt); + Eina_Bool finalize = EINA_FALSE; + if ((c->o->style) && (c->o->style->default_tag)) + { + c->fmt = _layout_format_push(c, NULL, NULL); + _format_fill(c->obj, c->fmt, c->o->style->default_tag); + finalize = EINA_TRUE; + } + + if ((c->o->style_user) && (c->o->style_user->default_tag)) + { + if (!c->fmt) + { + c->fmt = _layout_format_push(c, NULL, NULL); + } + _format_fill(c->obj, c->fmt, c->o->style_user->default_tag); + finalize = EINA_TRUE; + } + + if (finalize) + _format_finalize(c->obj, c->fmt); } if (!c->fmt) { @@ -4485,9 +4502,9 @@ evas_textblock_style_set(Evas_Textblock_Style *ts, const char *text) { // format MUST be KEY='VALUE'[KEY='VALUE']... const char *p; - const char *key_start, *key_stop, *val_start, *val_stop; + const char *key_start, *key_stop, *val_start; - key_start = key_stop = val_start = val_stop = NULL; + key_start = key_stop = val_start = NULL; p = ts->style_text; while (*p) { @@ -4504,19 +4521,54 @@ evas_textblock_style_set(Evas_Textblock_Style *ts, const char *text) else if (!val_start) { if (((*p) == '\'') && (*(p + 1))) - val_start = p + 1; - } - else if (!val_stop) - { - if (((*p) == '\'') && (p > ts->style_text) && (p[-1] != '\\')) - val_stop = p; + { + val_start = ++p; + } } - if ((key_start) && (key_stop) && (val_start) && (val_stop)) + if ((key_start) && (key_stop) && (val_start)) { - char *tags, *replaces; + char *tags, *replaces = NULL; Evas_Object_Style_Tag *tag; - size_t tag_len = key_stop - key_start; - size_t replace_len = val_stop - val_start; + const char *val_stop = NULL; + size_t tag_len; + size_t replace_len; + + { + Eina_Strbuf *buf = eina_strbuf_new(); + val_stop = val_start; + while(*p) + { + if (*p == '\'') + { + /* Break if we found the tag end */ + if (p[-1] != '\\') + { + eina_strbuf_append_length(buf, val_stop, + p - val_stop); + break; + } + else + { + eina_strbuf_append_length(buf, val_stop, + p - val_stop - 1); + eina_strbuf_append_char(buf, '\''); + val_stop = p + 1; + } + } + p++; + } + replaces = eina_strbuf_string_steal(buf); + eina_strbuf_free(buf); + } + /* If we didn't find an end, just aboart. */ + if (!*p) + { + if (replaces) free(replaces); + break; + } + + tag_len = key_stop - key_start; + replace_len = val_stop - val_start; tags = malloc(tag_len + 1); if (tags) @@ -4525,12 +4577,6 @@ evas_textblock_style_set(Evas_Textblock_Style *ts, const char *text) tags[tag_len] = 0; } - replaces = malloc(replace_len + 1); - if (replaces) - { - memcpy(replaces, val_start, replace_len); - replaces[replace_len] = 0; - } if ((tags) && (replaces)) { if (!strcmp(tags, "DEFAULT")) @@ -4561,7 +4607,7 @@ evas_textblock_style_set(Evas_Textblock_Style *ts, const char *text) if (tags) free(tags); if (replaces) free(replaces); } - key_start = key_stop = val_start = val_stop = NULL; + key_start = key_stop = val_start = NULL; } p++; } @@ -4576,13 +4622,15 @@ evas_textblock_style_get(const Evas_Textblock_Style *ts) } /* textblock styles */ -EAPI void -evas_object_textblock_style_set(Evas_Object *obj, Evas_Textblock_Style *ts) + +static void +_textblock_style_generic_set(Evas_Object *obj, Evas_Textblock_Style *ts, + Evas_Textblock_Style **obj_ts) { TB_HEAD(); - if (ts == o->style) return; + if (ts == *obj_ts) return; if ((ts) && (ts->delete_me)) return; - if (o->style) + if (*obj_ts) { Evas_Textblock_Style *old_ts; if (o->markup_text) @@ -4591,7 +4639,7 @@ evas_object_textblock_style_set(Evas_Object *obj, Evas_Textblock_Style *ts) o->markup_text = NULL; } - old_ts = o->style; + old_ts = *obj_ts; old_ts->objects = eina_list_remove(old_ts->objects, obj); if ((old_ts->delete_me) && (!old_ts->objects)) evas_textblock_style_free(old_ts); @@ -4600,12 +4648,19 @@ evas_object_textblock_style_set(Evas_Object *obj, Evas_Textblock_Style *ts) { ts->objects = eina_list_append(ts->objects, obj); } - o->style = ts; + *obj_ts = ts; _evas_textblock_invalidate_all(o); _evas_textblock_changed(o, obj); } +EAPI void +evas_object_textblock_style_set(Evas_Object *obj, Evas_Textblock_Style *ts) +{ + TB_HEAD(); + _textblock_style_generic_set(obj, ts, &(o->style)); +} + EAPI const Evas_Textblock_Style * evas_object_textblock_style_get(const Evas_Object *obj) { @@ -4614,6 +4669,27 @@ evas_object_textblock_style_get(const Evas_Object *obj) } EAPI void +evas_object_textblock_style_user_push(Evas_Object *obj, Evas_Textblock_Style *ts) +{ + TB_HEAD(); + _textblock_style_generic_set(obj, ts, &(o->style_user)); +} + +EAPI const Evas_Textblock_Style * +evas_object_textblock_style_user_peek(const Evas_Object *obj) +{ + TB_HEAD_RETURN(NULL); + return o->style_user; +} + +EAPI void +evas_object_textblock_style_user_pop(Evas_Object *obj) +{ + TB_HEAD(); + _textblock_style_generic_set(obj, NULL, &(o->style_user)); +} + +EAPI void evas_object_textblock_replace_char_set(Evas_Object *obj, const char *ch) { TB_HEAD(); @@ -4902,7 +4978,7 @@ evas_object_textblock_text_markup_set(Evas_Object *obj, const char *text) o->markup_text = NULL; } _nodes_clear(obj); - if (!o->style) + if (!o->style && !o->style_user) { if (text != o->markup_text) { @@ -5244,7 +5320,7 @@ evas_textblock_text_markup_to_utf8(const Evas_Object *obj, const char *text) const char *escape; escape = _escaped_char_get(esc_start, esc_end + 1); - eina_strbuf_append(sbuf, escape); + if (escape) eina_strbuf_append(sbuf, escape); esc_start = esc_end = NULL; } else if (*p == 0) @@ -5650,7 +5726,6 @@ EAPI Eina_Bool evas_textblock_cursor_is_format(const Evas_Textblock_Cursor *cur) { if (!cur || !cur->node) return EINA_FALSE; - if (evas_textblock_cursor_format_is_visible_get(cur)) return EINA_TRUE; return (_evas_textblock_cursor_node_format_at_pos_get(cur)) ? EINA_TRUE : EINA_FALSE; } @@ -5977,9 +6052,9 @@ evas_textblock_cursor_format_prev(Evas_Textblock_Cursor *cur) #else #define BREAK_AFTER(i) \ - ((!str[i + 1]) || \ - (_is_white(str[i]) && !_is_white(str[i + 1])) || \ - (!_is_white(str[i]) && _is_white(str[i + 1]))) + ((!text[i + 1]) || \ + (_is_white(text[i]) && !_is_white(text[i + 1])) || \ + (!_is_white(text[i]) && _is_white(text[i + 1]))) #endif @@ -7241,7 +7316,13 @@ _evas_textblock_node_format_new(Evas_Object_Textblock *o, const char *_format) } } - match = _style_match_tag(o->style, format, format_len, &replace_len); + if (!o->style_user || !(match = _style_match_tag(o->style_user, format, + format_len, &replace_len))) + { + match = _style_match_tag(o->style, format, format_len, + &replace_len); + } + if (match) { if (match[0] != '-') @@ -7633,6 +7714,7 @@ evas_textblock_cursor_range_delete(Evas_Textblock_Cursor *cur1, Evas_Textblock_C } fnode = _evas_textblock_cursor_node_format_at_pos_get(cur1); + n1->dirty = n2->dirty = EINA_TRUE; if (should_merge) { /* We call this function instead of the cursor one because we already @@ -7646,7 +7728,6 @@ evas_textblock_cursor_range_delete(Evas_Textblock_Cursor *cur1, Evas_Textblock_C evas_textblock_cursor_copy(cur1, o->cursor); _evas_textblock_changed(o, cur1->obj); - n1->dirty = n2->dirty = EINA_TRUE; } @@ -8022,6 +8103,7 @@ evas_textblock_cursor_format_is_visible_get(const Evas_Textblock_Cursor *cur) if (!cur) return EINA_FALSE; if (!cur->node) return EINA_FALSE; + if (!evas_textblock_cursor_is_format(cur)) return EINA_FALSE; text = eina_ustrbuf_string_get(cur->node->unicode); return EVAS_TEXTBLOCK_IS_VISIBLE_FORMAT_CHAR(text[cur->pos]); } @@ -9016,12 +9098,22 @@ _size_native_calc_line_finalize(const Evas_Object *obj, Eina_List *items, Eina_List *i; it = eina_list_data_get(items); - /* If there are no text items yet, calc ascent/descent - * according to the current format. */ - if (it && (*ascent + *descent == 0)) - _layout_format_ascent_descent_adjust(obj, ascent, descent, it->format); - *w = 0; + + if (it) + { + /* If there are no text items yet, calc ascent/descent + * according to the current format. */ + if (*ascent + *descent == 0) + _layout_format_ascent_descent_adjust(obj, ascent, descent, + it->format); + + /* Add margins. */ + if (it->format) + *w = it->format->margin.l + it->format->margin.r; + } + + /* Adjust all the item sizes according to the final line size, * and update the x positions of all the items of the line. */ EINA_LIST_FOREACH(items, i, it) @@ -9226,6 +9318,10 @@ evas_object_textblock_free(Evas_Object *obj) evas_object_textblock_clear(obj); evas_object_textblock_style_set(obj, NULL); + while (evas_object_textblock_style_user_peek(obj)) + { + evas_object_textblock_style_user_pop(obj); + } o = (Evas_Object_Textblock *)(obj->object_data); free(o->cursor); while (o->cursors) diff --git a/libraries/evas/src/lib/canvas/evas_render.c b/libraries/evas/src/lib/canvas/evas_render.c index cdedaec..32ce988 100644 --- a/libraries/evas/src/lib/canvas/evas_render.c +++ b/libraries/evas/src/lib/canvas/evas_render.c @@ -612,6 +612,8 @@ pending_change(void *data, void *gdata __UNUSED__) obj->changed_move_only = 0; obj->changed_nomove = 0; obj->changed_move = 0; + obj->changed_map = 0; + obj->changed_pchange = 0; } return obj->changed ? EINA_TRUE : EINA_FALSE; } @@ -984,6 +986,8 @@ evas_render_mapped(Evas *e, Evas_Object *obj, void *context, void *surface, o2->changed_move_only = 0; o2->changed_nomove = 0; o2->changed_move = 0; + o2->changed_map = 0; + o2->changed_pchange = 0; continue; } if (o2->changed) @@ -994,6 +998,8 @@ evas_render_mapped(Evas *e, Evas_Object *obj, void *context, void *surface, o2->changed_move_only = 0; o2->changed_nomove = 0; o2->changed_move = 0; + o2->changed_map = 0; + o2->changed_pchange = 0; break; } } @@ -1002,16 +1008,21 @@ evas_render_mapped(Evas *e, Evas_Object *obj, void *context, void *surface, obj->changed_move_only = 0; obj->changed_nomove = 0; obj->changed_move = 0; + obj->changed_map = 0; + obj->changed_pchange = 0; } else { if (obj->changed) { - changed = 1; + if ((obj->changed_pchange) && (obj->changed_map)) + changed = 1; obj->changed = 0; obj->changed_move_only = 0; obj->changed_nomove = 0; obj->changed_move = 0; + obj->changed_map = 0; + obj->changed_pchange = 0; } } @@ -1144,10 +1155,12 @@ evas_render_mapped(Evas *e, Evas_Object *obj, void *context, void *surface, e->engine.data.context, ecx, ecy, ecw, ech); if (obj->cur.cache.clip.visible) - obj->layer->evas->engine.func->image_map_draw - (e->engine.data.output, e->engine.data.context, surface, - obj->cur.map->surface, obj->cur.map->count, pts, - obj->cur.map->smooth, 0); + { + obj->layer->evas->engine.func->image_map_draw + (e->engine.data.output, e->engine.data.context, surface, + obj->cur.map->surface, obj->cur.map->count, pts, + obj->cur.map->smooth, 0); + } // FIXME: needs to cache these maps and // keep them only rendering updates // obj->layer->evas->engine.func->image_map_surface_free @@ -1500,6 +1513,12 @@ evas_render_updates_internal(Evas *e, off_x = cx - ux; off_y = cy - uy; /* build obscuring objects list (in order from bottom to top) */ + if (alpha) + { + e->engine.func->context_clip_set(e->engine.data.output, + e->engine.data.context, + ux + off_x, uy + off_y, uw, uh); + } for (i = 0; i < e->obscuring_objects.count; ++i) { obj = (Evas_Object *)eina_array_data_get @@ -1515,9 +1534,6 @@ evas_render_updates_internal(Evas *e, } if (alpha) { - e->engine.func->context_clip_set(e->engine.data.output, - e->engine.data.context, - ux + off_x, uy + off_y, uw, uh); e->engine.func->context_color_set(e->engine.data.output, e->engine.data.context, 0, 0, 0, 0); @@ -1548,7 +1564,7 @@ evas_render_updates_internal(Evas *e, (obj->cur.visible) && (!obj->delete_me) && (obj->cur.cache.clip.visible) && - // (!obj->smart.smart) && +// (!obj->smart.smart) && ((obj->cur.color.a > 0 || obj->cur.render_op != EVAS_RENDER_BLEND))) { int x, y, w, h; @@ -1579,6 +1595,9 @@ evas_render_updates_internal(Evas *e, else e->engine.func->context_mask_unset(e->engine.data.output, e->engine.data.context); + e->engine.func->context_clip_set(e->engine.data.output, + e->engine.data.context, + x, y, w, h); #if 1 /* FIXME: this can slow things down... figure out optimum... coverage */ for (j = offset; j < e->temporary_objects.count; ++j) { @@ -1589,9 +1608,6 @@ evas_render_updates_internal(Evas *e, _evas_render_cutout_add(e, obj2, off_x, off_y); } #endif - e->engine.func->context_clip_set(e->engine.data.output, - e->engine.data.context, - x, y, w, h); clean_them |= evas_render_mapped(e, obj, e->engine.data.context, surface, off_x, off_y, 0, cx, cy, cw, ch @@ -1637,6 +1653,8 @@ evas_render_updates_internal(Evas *e, obj->changed_move_only = 0; obj->changed_nomove = 0; obj->changed_move = 0; + obj->changed_map = 0; + obj->changed_pchange = 0; } else if ((obj->cur.map != obj->prev.map) || (obj->cur.usemap != obj->prev.usemap)) @@ -1648,6 +1666,8 @@ evas_render_updates_internal(Evas *e, obj->changed_move_only = 0; obj->changed_nomove = 0; obj->changed_move = 0; + obj->changed_map = 0; + obj->changed_pchange = 0; } /* moved to other pre-process phase 1 if (obj->delete_me == 2) @@ -1684,6 +1704,7 @@ evas_render_updates_internal(Evas *e, e->framespace.changed = 0; e->invalidate = 0; + // always clean... lots of mem waste! /* If their are some object to restack or some object to delete, * it's useless to keep the render object list around. */ if (clean_them) @@ -1693,6 +1714,17 @@ evas_render_updates_internal(Evas *e, eina_array_clean(&e->restack_objects); eina_array_clean(&e->delete_objects); eina_array_clean(&e->obscuring_objects); + eina_array_clean(&e->temporary_objects); + eina_array_clean(&e->clip_changes); +/* we should flush here and have a mempool system for this + eina_array_flush(&e->active_objects); + eina_array_flush(&e->render_objects); + eina_array_flush(&e->restack_objects); + eina_array_flush(&e->delete_objects); + eina_array_flush(&e->obscuring_objects); + eina_array_flush(&e->temporary_objects); + eina_array_flush(&e->clip_changes); + */ e->invalidate = 1; } @@ -1768,11 +1800,14 @@ evas_render_idle_flush(Evas *e) (e->engine.data.output)) e->engine.func->output_idle_flush(e->engine.data.output); - eina_array_flush(&e->delete_objects); eina_array_flush(&e->active_objects); - eina_array_flush(&e->restack_objects); eina_array_flush(&e->render_objects); + eina_array_flush(&e->restack_objects); + eina_array_flush(&e->delete_objects); + eina_array_flush(&e->obscuring_objects); + eina_array_flush(&e->temporary_objects); eina_array_flush(&e->clip_changes); + eina_array_flush(&e->temporary_objects); e->invalidate = 1; } diff --git a/libraries/evas/src/lib/cserve/Makefile.in b/libraries/evas/src/lib/cserve/Makefile.in index 7599ca2..caff4d6 100644 --- a/libraries/evas/src/lib/cserve/Makefile.in +++ b/libraries/evas/src/lib/cserve/Makefile.in @@ -148,6 +148,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -198,6 +200,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -216,8 +220,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -291,8 +293,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/lib/engines/Makefile.in b/libraries/evas/src/lib/engines/Makefile.in index 4c3c1da..b5cf292 100644 --- a/libraries/evas/src/lib/engines/Makefile.in +++ b/libraries/evas/src/lib/engines/Makefile.in @@ -158,6 +158,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -208,6 +210,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -226,8 +230,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -301,8 +303,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/lib/engines/common/Makefile.am b/libraries/evas/src/lib/engines/common/Makefile.am index 9c9918d..0937394 100644 --- a/libraries/evas/src/lib/engines/common/Makefile.am +++ b/libraries/evas/src/lib/engines/common/Makefile.am @@ -13,7 +13,7 @@ AM_CPPFLAGS = -I. \ @FREETYPE_CFLAGS@ @VALGRIND_CFLAGS@ \ @PIXMAN_CFLAGS@ \ @EET_CFLAGS@ @pthread_cflags@ \ - @WIN32_CFLAGS@ @EINA_CFLAGS@ \ + @EINA_CFLAGS@ \ @FRIBIDI_CFLAGS@ @HARFBUZZ_CFLAGS@ \ @PIXMAN_CFLAGS@ diff --git a/libraries/evas/src/lib/engines/common/Makefile.in b/libraries/evas/src/lib/engines/common/Makefile.in index 7d1f20a..08526cd 100644 --- a/libraries/evas/src/lib/engines/common/Makefile.in +++ b/libraries/evas/src/lib/engines/common/Makefile.in @@ -202,6 +202,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -252,6 +254,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -270,8 +274,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -345,8 +347,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -441,7 +441,7 @@ AM_CPPFLAGS = -I. \ @FREETYPE_CFLAGS@ @VALGRIND_CFLAGS@ \ @PIXMAN_CFLAGS@ \ @EET_CFLAGS@ @pthread_cflags@ \ - @WIN32_CFLAGS@ @EINA_CFLAGS@ \ + @EINA_CFLAGS@ \ @FRIBIDI_CFLAGS@ @HARFBUZZ_CFLAGS@ \ @PIXMAN_CFLAGS@ diff --git a/libraries/evas/src/lib/engines/common/evas_draw_main.c b/libraries/evas/src/lib/engines/common/evas_draw_main.c index def19a8..d08e788 100644 --- a/libraries/evas/src/lib/engines/common/evas_draw_main.c +++ b/libraries/evas/src/lib/engines/common/evas_draw_main.c @@ -559,7 +559,7 @@ evas_common_draw_context_cutout_split(Cutout_Rects* res, int idx, Cutout_Rect *s EAPI Cutout_Rects* evas_common_draw_context_apply_cutouts(RGBA_Draw_Context *dc) { - Cutout_Rects* res; + Cutout_Rects* res, *res2; int i; int j; @@ -583,6 +583,69 @@ evas_common_draw_context_apply_cutouts(RGBA_Draw_Context *dc) active--; } } + /* merge rects */ +#define RI res->rects[i] +#define RJ res->rects[j] + if (res->active > 1) + { + int found = 1; + + while (found) + { + found = 0; + for (i = 0; i < res->active; i++) + { + for (j = i + 1; j < res->active; j++) + { + /* skip empty rects we are removing */ + if (RJ.w == 0) continue; + /* check if its same width, immediately above or below */ + if ((RJ.w == RI.w) && (RJ.x == RI.x)) + { + if ((RJ.y + RJ.h) == RI.y) /* above */ + { + RI.y = RJ.y; + RI.h += RJ.h; + RJ.w = 0; + found = 1; + } + else if ((RI.y + RI.h) == RJ.y) /* below */ + { + RI.h += RJ.h; + RJ.w = 0; + found = 1; + } + } + /* check if its same height, immediately left or right */ + else if ((RJ.h == RI.h) && (RJ.y == RI.y)) + { + if ((RJ.x + RJ.w) == RI.x) /* left */ + { + RI.x = RJ.x; + RI.w += RJ.w; + RJ.w = 0; + found = 1; + } + else if ((RI.x + RI.w) == RJ.x) /* right */ + { + RI.w += RJ.w; + RJ.w = 0; + found = 1; + } + } + } + } + } + res2 = evas_common_draw_context_cutouts_new(); + for (i = 0; i < res->active; i++) + { + if (RI.w == 0) continue; + evas_common_draw_context_cutouts_add(res2, RI.x, RI.y, RI.w, RI.h); + } + free(res->rects); + free(res); + return res2; + } return res; } diff --git a/libraries/evas/src/lib/engines/common/evas_font_load.c b/libraries/evas/src/lib/engines/common/evas_font_load.c index 3fc4521..abba9e3 100644 --- a/libraries/evas/src/lib/engines/common/evas_font_load.c +++ b/libraries/evas/src/lib/engines/common/evas_font_load.c @@ -71,9 +71,7 @@ _evas_common_font_int_free(RGBA_Font_Int *fi) _evas_common_font_int_clear(fi); eina_hash_free(fi->kerning); -#ifdef HAVE_PTHREAD - pthread_mutex_destroy(&fi->ft_mutex); -#endif + LKD(fi->ft_mutex); #ifdef USE_HARFBUZZ hb_font_destroy(fi->ft.hb_font); #endif @@ -301,9 +299,7 @@ _evas_common_font_int_cache_init(RGBA_Font_Int *fi) EINA_KEY_CMP(_evas_common_font_double_int_cmp), EINA_KEY_HASH(_evas_common_font_double_int_hash), free, 3); -#ifdef HAVE_PTHREAD - pthread_mutex_init(&fi->ft_mutex, NULL); -#endif + LKI(fi->ft_mutex); } EAPI RGBA_Font_Int * diff --git a/libraries/evas/src/lib/engines/common/evas_image_main.c b/libraries/evas/src/lib/engines/common/evas_image_main.c index d2f8c0b..9c233b3 100644 --- a/libraries/evas/src/lib/engines/common/evas_image_main.c +++ b/libraries/evas/src/lib/engines/common/evas_image_main.c @@ -16,6 +16,8 @@ # include #endif +//#define SURFDBG 1 + static Evas_Cache_Image * eci = NULL; static int reference = 0; @@ -212,6 +214,30 @@ evas_common_rgba_image_free(Image_Entry *ie) _evas_common_rgba_image_delete(ie); } +#ifdef SURFDBG +static Eina_List *surfs = NULL; + +static void +surf_debug(void) +{ + Eina_List *l; + Image_Entry *ie; + RGBA_Image *im; + int i = 0; + + printf("----SURFS----\n"); + EINA_LIST_FOREACH(surfs, l, ie) + { + im = ie; + printf("%i - %p - %ix%i [%s][%s]\n", + i, im->image.data, ie->allocated.w, ie->allocated.h, + ie->file, ie->key + ); + i++; + } +} +#endif + EAPI void evas_common_rgba_image_unload(Image_Entry *ie) { @@ -252,7 +278,12 @@ evas_common_rgba_image_unload(Image_Entry *ie) #endif if (im->image.data && !im->image.no_free) - free(im->image.data); + { + free(im->image.data); +#ifdef SURFDBG + surfs = eina_list_remove(surfs, ie); +#endif + } im->image.data = NULL; ie->allocated.w = 0; ie->allocated.h = 0; @@ -260,6 +291,9 @@ evas_common_rgba_image_unload(Image_Entry *ie) #ifdef BUILD_ASYNC_PRELOAD ie->flags.preload_done = 0; #endif +#ifdef SURFDBG + surf_debug(); +#endif } void @@ -318,10 +352,20 @@ _evas_common_rgba_image_surface_alloc(Image_Entry *ie, unsigned int w, unsigned else siz = w * h * sizeof(DATA32); - if (im->image.data) free(im->image.data); + if (im->image.data) + { + free(im->image.data); +#ifdef SURFDBG + surfs = eina_list_remove(surfs, ie); +#endif + } im->image.data = malloc(siz); if (!im->image.data) return -1; - + ie->allocated.w = w; + ie->allocated.h = h; +#ifdef SURFDBG + surfs = eina_list_append(surfs, ie); +#endif #ifdef HAVE_VALGRIND # ifdef VALGRIND_MAKE_READABLE VALGRIND_MAKE_READABLE(im->image.data, siz); @@ -332,7 +376,9 @@ _evas_common_rgba_image_surface_alloc(Image_Entry *ie, unsigned int w, unsigned # endif #endif _evas_common_rgba_image_post_surface(ie); - +#ifdef SURFDBG + surf_debug(); +#endif return 0; } @@ -366,7 +412,12 @@ _evas_common_rgba_image_surface_delete(Image_Entry *ie) im->cs.data = NULL; if (im->image.data && !im->image.no_free) - free(im->image.data); + { + free(im->image.data); +#ifdef SURFDBG + surfs = eina_list_remove(surfs, ie); +#endif + } #ifdef EVAS_CSERVE else if (ie->data1) evas_cserve_image_free(ie); @@ -380,6 +431,9 @@ _evas_common_rgba_image_surface_delete(Image_Entry *ie) #endif ie->flags.loaded = 0; evas_common_rgba_image_scalecache_dirty(&im->cache_entry); +#ifdef SURFDBG + surf_debug(); +#endif } static void @@ -597,7 +651,15 @@ evas_common_image_colorspace_normalize(RGBA_Image *im) #ifdef EVAS_CSERVE if (((Image_Entry *)im)->data1) evas_cserve_image_free(&im->cache_entry); #endif - if (!im->image.no_free) free(im->image.data); + if (!im->image.no_free) + { + free(im->image.data); +#ifdef SURFDBG + surfs = eina_list_remove(surfs, im); +#endif + ((Image_Entry *)im)->allocated.w = 0; + ((Image_Entry *)im)->allocated.h = 0; + } im->image.data = im->cs.data; im->cs.no_free = im->image.no_free; } @@ -634,6 +696,9 @@ evas_common_image_colorspace_normalize(RGBA_Image *im) break; } im->cs.dirty = 0; +#ifdef SURFDBG + surf_debug(); +#endif } EAPI void diff --git a/libraries/evas/src/lib/engines/common/evas_op_add/Makefile.in b/libraries/evas/src/lib/engines/common/evas_op_add/Makefile.in index 78e893d..61d3479 100644 --- a/libraries/evas/src/lib/engines/common/evas_op_add/Makefile.in +++ b/libraries/evas/src/lib/engines/common/evas_op_add/Makefile.in @@ -116,6 +116,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -166,6 +168,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -184,8 +188,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -259,8 +261,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/lib/engines/common/evas_op_blend/Makefile.am b/libraries/evas/src/lib/engines/common/evas_op_blend/Makefile.am index 84add38..77435c4 100644 --- a/libraries/evas/src/lib/engines/common/evas_op_blend/Makefile.am +++ b/libraries/evas/src/lib/engines/common/evas_op_blend/Makefile.am @@ -40,11 +40,7 @@ libevas_engine_common_op_blend_master_sse3_la_CFLAGS = \ @FREETYPE_CFLAGS@ @VALGRIND_CFLAGS@ \ @PIXMAN_CFLAGS@ \ @EET_CFLAGS@ @pthread_cflags@ \ -@WIN32_CFLAGS@ @EINA_CFLAGS@ \ +@EINA_CFLAGS@ \ @FRIBIDI_CFLAGS@ @HARFBUZZ_CFLAGS@ \ @PIXMAN_CFLAGS@ \ @EVAS_SSE3_CFLAGS@ - -libevas_engine_common_op_blend_master_sse3_la_DEPENENCIES = \ -$(top_builddir)/config.h - diff --git a/libraries/evas/src/lib/engines/common/evas_op_blend/Makefile.in b/libraries/evas/src/lib/engines/common/evas_op_blend/Makefile.in index e00dac8..016b49c 100644 --- a/libraries/evas/src/lib/engines/common/evas_op_blend/Makefile.in +++ b/libraries/evas/src/lib/engines/common/evas_op_blend/Makefile.in @@ -153,6 +153,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -203,6 +205,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -221,8 +225,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -296,8 +298,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -420,14 +420,11 @@ libevas_engine_common_op_blend_master_sse3_la_CFLAGS = \ @FREETYPE_CFLAGS@ @VALGRIND_CFLAGS@ \ @PIXMAN_CFLAGS@ \ @EET_CFLAGS@ @pthread_cflags@ \ -@WIN32_CFLAGS@ @EINA_CFLAGS@ \ +@EINA_CFLAGS@ \ @FRIBIDI_CFLAGS@ @HARFBUZZ_CFLAGS@ \ @PIXMAN_CFLAGS@ \ @EVAS_SSE3_CFLAGS@ -libevas_engine_common_op_blend_master_sse3_la_DEPENENCIES = \ -$(top_builddir)/config.h - all: all-am .SUFFIXES: diff --git a/libraries/evas/src/lib/engines/common/evas_op_copy/Makefile.in b/libraries/evas/src/lib/engines/common/evas_op_copy/Makefile.in index 40536c0..687f34d 100644 --- a/libraries/evas/src/lib/engines/common/evas_op_copy/Makefile.in +++ b/libraries/evas/src/lib/engines/common/evas_op_copy/Makefile.in @@ -116,6 +116,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -166,6 +168,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -184,8 +188,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -259,8 +261,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/lib/engines/common/evas_op_mask/Makefile.in b/libraries/evas/src/lib/engines/common/evas_op_mask/Makefile.in index d5764b1..00b536a 100644 --- a/libraries/evas/src/lib/engines/common/evas_op_mask/Makefile.in +++ b/libraries/evas/src/lib/engines/common/evas_op_mask/Makefile.in @@ -116,6 +116,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -166,6 +168,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -184,8 +188,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -259,8 +261,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/lib/engines/common/evas_op_mul/Makefile.in b/libraries/evas/src/lib/engines/common/evas_op_mul/Makefile.in index d5452fe..849983e 100644 --- a/libraries/evas/src/lib/engines/common/evas_op_mul/Makefile.in +++ b/libraries/evas/src/lib/engines/common/evas_op_mul/Makefile.in @@ -116,6 +116,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -166,6 +168,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -184,8 +188,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -259,8 +261,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/lib/engines/common/evas_op_sub/Makefile.in b/libraries/evas/src/lib/engines/common/evas_op_sub/Makefile.in index 4b93b1b..885465a 100644 --- a/libraries/evas/src/lib/engines/common/evas_op_sub/Makefile.in +++ b/libraries/evas/src/lib/engines/common/evas_op_sub/Makefile.in @@ -116,6 +116,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -166,6 +168,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -184,8 +188,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -259,8 +261,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/lib/engines/common/evas_polygon_main.c b/libraries/evas/src/lib/engines/common/evas_polygon_main.c index ea0bf13..6840d60 100644 --- a/libraries/evas/src/lib/engines/common/evas_polygon_main.c +++ b/libraries/evas/src/lib/engines/common/evas_polygon_main.c @@ -133,7 +133,7 @@ evas_common_polygon_draw(RGBA_Image *dst, RGBA_Draw_Context *dc, RGBA_Polygon_Po int num_active_edges; int n; int i, j, k; - int y0, y1, yi; + int yy0, yy1, yi; int ext_x, ext_y, ext_w, ext_h; int *sorted_index; @@ -211,14 +211,14 @@ evas_common_polygon_draw(RGBA_Image *dst, RGBA_Draw_Context *dc, RGBA_Polygon_Po k++; } - y0 = MAX(ext_y, ceil(point[sorted_index[0]].y - 0.5)); - y1 = MIN(ext_y + ext_h - 1, floor(point[sorted_index[n - 1]].y - 0.5)); + yy0 = MAX(ext_y, ceil(point[sorted_index[0]].y - 0.5)); + yy1 = MIN(ext_y + ext_h - 1, floor(point[sorted_index[n - 1]].y - 0.5)); k = 0; num_active_edges = 0; spans = NULL; - for (yi = y0; yi <= y1; yi++) + for (yi = yy0; yi <= yy1; yi++) { for (; (k < n) && (point[sorted_index[k]].y <= ((double)yi + 0.5)); k++) { diff --git a/libraries/evas/src/lib/engines/common/evas_scale_sample.c b/libraries/evas/src/lib/engines/common/evas_scale_sample.c index a8951b8..c721c5e 100644 --- a/libraries/evas/src/lib/engines/common/evas_scale_sample.c +++ b/libraries/evas/src/lib/engines/common/evas_scale_sample.c @@ -90,7 +90,6 @@ scale_rgba_in_to_out_clip_sample_internal(RGBA_Image *src, RGBA_Image *dst, DATA32 *buf, *dptr; DATA32 **row_ptr; DATA32 *ptr, *dst_ptr, *src_data, *dst_data; - int dst_jump; int dst_clip_x, dst_clip_y, dst_clip_w, dst_clip_h; int m_clip_x = 0, m_clip_y = 0, m_clip_w = 0, m_clip_h = 0, mdx = 0, mdy = 0; int src_w, src_h, dst_w, dst_h; @@ -248,7 +247,7 @@ scale_rgba_in_to_out_clip_sample_internal(RGBA_Image *src, RGBA_Image *dst, row_ptr = alloca(dst_clip_h * sizeof(DATA32 *)); /* figure out dst jump */ - dst_jump = dst_w - dst_clip_w; + //dst_jump = dst_w - dst_clip_w; /* figure out dest start ptr */ dst_ptr = dst_data + dst_clip_x + (dst_clip_y * dst_w); diff --git a/libraries/evas/src/lib/engines/common/evas_scale_smooth_scaler_downx.c b/libraries/evas/src/lib/engines/common/evas_scale_smooth_scaler_downx.c index 50b2e5c..a443c85 100644 --- a/libraries/evas/src/lib/engines/common/evas_scale_smooth_scaler_downx.c +++ b/libraries/evas/src/lib/engines/common/evas_scale_smooth_scaler_downx.c @@ -3,7 +3,7 @@ DATA32 *pix, *dptr, *pbuf, **yp; int r, g, b, a, rr, gg, bb, aa; int *xp, xap, yap, pos; - int dyy, dxx; + //int dyy, dxx; int w = dst_clip_w; #ifdef EVAS_SLI int ysli = dst_clip_y; @@ -11,8 +11,8 @@ dptr = dst_ptr; pos = (src_region_y * src_w) + src_region_x; - dyy = dst_clip_y - dst_region_y; - dxx = dst_clip_x - dst_region_x; + //dyy = dst_clip_y - dst_region_y; + //dxx = dst_clip_x - dst_region_x; xp = xpoints;// + dxx; yp = ypoints;// + dyy; diff --git a/libraries/evas/src/lib/engines/common/evas_scale_smooth_scaler_downx_downy.c b/libraries/evas/src/lib/engines/common/evas_scale_smooth_scaler_downx_downy.c index ab0c74e..73da3a0 100644 --- a/libraries/evas/src/lib/engines/common/evas_scale_smooth_scaler_downx_downy.c +++ b/libraries/evas/src/lib/engines/common/evas_scale_smooth_scaler_downx_downy.c @@ -3,7 +3,7 @@ DATA32 *dptr, *sptr, *pix, *pbuf; int a, r, g, b, rx, gx, bx, ax; int xap, yap, pos; - int dyy, dxx; + //int dyy, dxx; #ifdef EVAS_SLI int ysli = dst_clip_y; #endif @@ -14,8 +14,8 @@ dptr = dst_ptr; pos = (src_region_y * src_w) + src_region_x; - dyy = dst_clip_y - dst_region_y; - dxx = dst_clip_x - dst_region_x; + //dyy = dst_clip_y - dst_region_y; + //dxx = dst_clip_x - dst_region_x; xp = xpoints;// + dxx; yp = ypoints;// + dyy; diff --git a/libraries/evas/src/lib/engines/common/evas_scale_smooth_scaler_downy.c b/libraries/evas/src/lib/engines/common/evas_scale_smooth_scaler_downy.c index 4c5448e..3b7585d 100644 --- a/libraries/evas/src/lib/engines/common/evas_scale_smooth_scaler_downy.c +++ b/libraries/evas/src/lib/engines/common/evas_scale_smooth_scaler_downy.c @@ -3,7 +3,7 @@ DATA32 *dptr, *pix, *pbuf, **yp; int r, g, b, a, rr, gg, bb, aa; int *xp, xap, yap, pos; - int dyy, dxx; + //int dyy, dxx; int w = dst_clip_w; #ifdef EVAS_SLI int ysli = dst_clip_y; @@ -11,8 +11,8 @@ dptr = dst_ptr; pos = (src_region_y * src_w) + src_region_x; - dyy = dst_clip_y - dst_region_y; - dxx = dst_clip_x - dst_region_x; + //dyy = dst_clip_y - dst_region_y; + //dxx = dst_clip_x - dst_region_x; xp = xpoints;// + dxx; yp = ypoints;// + dyy; diff --git a/libraries/evas/src/lib/engines/common/evas_tiler.c b/libraries/evas/src/lib/engines/common/evas_tiler.c index ff359a4..bc5e99c 100644 --- a/libraries/evas/src/lib/engines/common/evas_tiler.c +++ b/libraries/evas/src/lib/engines/common/evas_tiler.c @@ -1167,40 +1167,84 @@ evas_common_tilebuf_get_render_rects(Tilebuf *tb) #elif defined(EVAS_RECT_SPLIT) list_node_t *n; Tilebuf_Rect *rects = NULL; + int bx1 = 0, bx2 = 0, by1 = 0, by2 = 0, num = 0; - if (tb->need_merge) { - list_t to_merge; - to_merge = tb->rects; - tb->rects = list_zeroed; - rect_list_merge_rects(&tb->rects, &to_merge, FUZZ * FUZZ); - tb->need_merge = 0; - } - - for (n = tb->rects.head; n; n = n->next) { - rect_t cur; + if (tb->need_merge) + { + list_t to_merge; + to_merge = tb->rects; + tb->rects = list_zeroed; + rect_list_merge_rects(&tb->rects, &to_merge, FUZZ * FUZZ); + tb->need_merge = 0; + } + + n = tb->rects.head; + if (n) + { + bx1 = ((rect_node_t *)n)->rect.left; + bx2 = bx1 + ((rect_node_t *)n)->rect.width; + by1 = ((rect_node_t *)n)->rect.top; + by2 = by1 + ((rect_node_t *)n)->rect.height; + n = n->next; + for (; n; n = n->next) + { + + int x1, x2, y1, y2; + + x1 = ((rect_node_t *)n)->rect.left; + if (x1 < bx1) bx1 = x1; + x2 = x1 + ((rect_node_t *)n)->rect.width; + if (x2 > bx2) bx2 = x2; + + y1 = ((rect_node_t *)n)->rect.top; + if (y1 < by1) by1 = y1; + y2 = y1 + ((rect_node_t *)n)->rect.height; + if (y2 > by2) by2 = y2; + num++; + } + } +#define MAXREG 24 + /* magic number - but if we have > MAXREG regions to update, take bounding box */ + if (num > MAXREG) + { + Tilebuf_Rect *r; + + r = malloc(sizeof(Tilebuf_Rect)); + r->x = bx1; + r->y = by1; + r->w = bx2 - bx1; + r->h = by2 - by1; + + rects = (Tilebuf_Rect *)eina_inlist_append(EINA_INLIST_GET(rects), EINA_INLIST_GET(r)); + return rects; + } - cur = ((rect_node_t *)n)->rect; + for (n = tb->rects.head; n; n = n->next) + { + rect_t cur; + + cur = ((rect_node_t *)n)->rect; /* disable fuzz - created bugs. cur.left <<= 1; cur.top <<= 1; cur.width <<= 1; cur.height <<= 1; */ - RECTS_CLIP_TO_RECT(cur.left, cur.top, cur.width, cur.height, - 0, 0, tb->outbuf_w, tb->outbuf_h); - if ((cur.width > 0) && (cur.height > 0)) - { - Tilebuf_Rect *r; - - r = malloc(sizeof(Tilebuf_Rect)); - r->x = cur.left; - r->y = cur.top; - r->w = cur.width; - r->h = cur.height; - - rects = (Tilebuf_Rect *)eina_inlist_append(EINA_INLIST_GET(rects), EINA_INLIST_GET(r)); - } - } + RECTS_CLIP_TO_RECT(cur.left, cur.top, cur.width, cur.height, + 0, 0, tb->outbuf_w, tb->outbuf_h); + if ((cur.width > 0) && (cur.height > 0)) + { + Tilebuf_Rect *r; + + r = malloc(sizeof(Tilebuf_Rect)); + r->x = cur.left; + r->y = cur.top; + r->w = cur.width; + r->h = cur.height; + + rects = (Tilebuf_Rect *)eina_inlist_append(EINA_INLIST_GET(rects), EINA_INLIST_GET(r)); + } + } return rects; #else diff --git a/libraries/evas/src/lib/engines/common_16/Makefile.in b/libraries/evas/src/lib/engines/common_16/Makefile.in index 313cbda..196395d 100644 --- a/libraries/evas/src/lib/engines/common_16/Makefile.in +++ b/libraries/evas/src/lib/engines/common_16/Makefile.in @@ -151,6 +151,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -201,6 +203,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -219,8 +223,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -294,8 +296,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/lib/engines/common_8/Makefile.in b/libraries/evas/src/lib/engines/common_8/Makefile.in index 7fa4fbb..11b2454 100644 --- a/libraries/evas/src/lib/engines/common_8/Makefile.in +++ b/libraries/evas/src/lib/engines/common_8/Makefile.in @@ -150,6 +150,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -200,6 +202,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -218,8 +222,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -293,8 +295,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/lib/file/Makefile.am b/libraries/evas/src/lib/file/Makefile.am index 7875fbe..84b12d9 100644 --- a/libraries/evas/src/lib/file/Makefile.am +++ b/libraries/evas/src/lib/file/Makefile.am @@ -11,10 +11,7 @@ AM_CPPFLAGS = \ @FREETYPE_CFLAGS@ \ @EINA_CFLAGS@ \ @EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ \ @PIXMAN_CFLAGS@ - -AM_CFLAGS = @WIN32_CFLAGS@ noinst_LTLIBRARIES = libevas_file.la libevas_file_la_SOURCES = \ diff --git a/libraries/evas/src/lib/file/Makefile.in b/libraries/evas/src/lib/file/Makefile.in index 2ac89b1..52d3608 100644 --- a/libraries/evas/src/lib/file/Makefile.in +++ b/libraries/evas/src/lib/file/Makefile.in @@ -146,6 +146,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -196,6 +198,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -214,8 +218,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -289,8 +291,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -384,10 +384,8 @@ AM_CPPFLAGS = \ @FREETYPE_CFLAGS@ \ @EINA_CFLAGS@ \ @EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ \ @PIXMAN_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ noinst_LTLIBRARIES = libevas_file.la libevas_file_la_SOURCES = \ evas_path.c \ diff --git a/libraries/evas/src/lib/file/evas_module.c b/libraries/evas/src/lib/file/evas_module.c index 21d5cd0..dc0d26b 100644 --- a/libraries/evas/src/lib/file/evas_module.c +++ b/libraries/evas/src/lib/file/evas_module.c @@ -98,7 +98,6 @@ EVAS_EINA_STATIC_MODULE_DEFINE(engine, software_8_x11); EVAS_EINA_STATIC_MODULE_DEFINE(engine, software_ddraw); EVAS_EINA_STATIC_MODULE_DEFINE(engine, software_gdi); EVAS_EINA_STATIC_MODULE_DEFINE(engine, software_generic); -EVAS_EINA_STATIC_MODULE_DEFINE(engine, software_sdl); EVAS_EINA_STATIC_MODULE_DEFINE(engine, software_x11); EVAS_EINA_STATIC_MODULE_DEFINE(image_loader, bmp); EVAS_EINA_STATIC_MODULE_DEFINE(image_loader, edb); @@ -176,9 +175,6 @@ static const struct { #ifdef EVAS_STATIC_BUILD_SOFTWARE_GENERIC EVAS_EINA_STATIC_MODULE_USE(engine, software_generic), #endif -#ifdef EVAS_STATIC_BUILD_SOFTWARE_SDL - EVAS_EINA_STATIC_MODULE_USE(engine, software_sdl), -#endif #ifdef EVAS_STATIC_BUILD_SOFTWARE_X11 EVAS_EINA_STATIC_MODULE_USE(engine, software_x11), #endif diff --git a/libraries/evas/src/lib/file/evas_path.c b/libraries/evas/src/lib/file/evas_path.c index c663c16..2ff646d 100644 --- a/libraries/evas/src/lib/file/evas_path.c +++ b/libraries/evas/src/lib/file/evas_path.c @@ -38,9 +38,7 @@ evas_file_path_is_full_path(const char *path) #if defined _WIN32_WCE if (path[0] == '\\') return 1; #elif defined _WIN32 - if ((path[0] == '\0') || (path[1] == '\0')) - return 0; - if (path[1] == ':') return 1; + if (evil_path_is_absolute(path)) return 1; #else if (path[0] == '/') return 1; #endif diff --git a/libraries/evas/src/lib/include/Makefile.in b/libraries/evas/src/lib/include/Makefile.in index 21f0099..8060178 100644 --- a/libraries/evas/src/lib/include/Makefile.in +++ b/libraries/evas/src/lib/include/Makefile.in @@ -116,6 +116,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -166,6 +168,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -184,8 +188,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -259,8 +261,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/lib/include/evas_blend_ops.h b/libraries/evas/src/lib/include/evas_blend_ops.h index 1ada384..6bd1f16 100644 --- a/libraries/evas/src/lib/include/evas_blend_ops.h +++ b/libraries/evas/src/lib/include/evas_blend_ops.h @@ -200,7 +200,7 @@ static __m128i RGB_MASK_SSE3; static __m128i ALPHA_SSE3; -EFL_ALWAYS_INLINE __m128i +static EFL_ALWAYS_INLINE __m128i mul_256_sse3(__m128i a, __m128i c) { /* prepare alpha for word multiplication */ @@ -228,7 +228,7 @@ mul_256_sse3(__m128i a, __m128i c) { return _mm_add_epi32(c0, c1); } -EFL_ALWAYS_INLINE __m128i +static EFL_ALWAYS_INLINE __m128i sub4_alpha_sse3(__m128i c) { __m128i c0 = c; @@ -237,7 +237,7 @@ sub4_alpha_sse3(__m128i c) { return _mm_sub_epi32(ALPHA_SSE3, c0); } -EFL_ALWAYS_INLINE __m128i +static EFL_ALWAYS_INLINE __m128i interp4_256_sse3(__m128i a, __m128i c0, __m128i c1) { const __m128i zero = _mm_setzero_si128(); @@ -289,7 +289,7 @@ interp4_256_sse3(__m128i a, __m128i c0, __m128i c1) return (__m128i) _mm_shuffle_ps( (__m128)cl_sub, (__m128)ch_sub, 0x44); } -EFL_ALWAYS_INLINE __m128i +static EFL_ALWAYS_INLINE __m128i mul_sym_sse3(__m128i a, __m128i c) { /* Prepare alpha for word mult */ @@ -318,7 +318,7 @@ mul_sym_sse3(__m128i a, __m128i c) { return _mm_add_epi32(c0, c1); } -EFL_ALWAYS_INLINE __m128i +static EFL_ALWAYS_INLINE __m128i mul4_sym_sse3(__m128i x, __m128i y) { const __m128i zero = _mm_setzero_si128(); @@ -341,7 +341,7 @@ mul4_sym_sse3(__m128i x, __m128i y) { return _mm_packus_epi16(r_l, r_h); } -EFL_ALWAYS_INLINE __m128i +static EFL_ALWAYS_INLINE __m128i mul3_sym_sse3(__m128i x, __m128i y) { __m128i res = mul4_sym_sse3(x, y); diff --git a/libraries/evas/src/lib/include/evas_common.h b/libraries/evas/src/lib/include/evas_common.h index a9063e6..e853064 100644 --- a/libraries/evas/src/lib/include/evas_common.h +++ b/libraries/evas/src/lib/include/evas_common.h @@ -5,6 +5,45 @@ #include "config.h" /* so that EAPI in Evas.h is correctly defined */ //#endif +#ifdef STDC_HEADERS +# include +# include +#else +# ifdef HAVE_STDLIB_H +# include +# endif +#endif +#ifdef HAVE_ALLOCA_H +# include +#elif !defined alloca +# ifdef __GNUC__ +# define alloca __builtin_alloca +# elif defined _AIX +# define alloca __alloca +# elif defined _MSC_VER +# include +# define alloca _alloca +# elif !defined HAVE_ALLOCA +# ifdef __cplusplus +extern "C" +# endif +void *alloca (size_t); +# endif +#endif + +#include +#include +#include +#include +#include +#include +#include + +#ifndef _MSC_VER +# include +#include +#endif + #ifdef HAVE_EVIL # include #endif @@ -13,10 +52,6 @@ # include #endif -#include -#include "Evas.h" -//#include "Evas_GL.h" - #ifdef HAVE_PIXMAN #include #endif @@ -25,6 +60,14 @@ #include #include +#ifdef HAVE_EXOTIC +# include +#endif + +#include +#include "Evas.h" +//#include "Evas_GL.h" + #ifndef HAVE_LROUND /* right now i dont care about rendering bugs on platforms without lround (e.g. windows/vc++... yay!) @@ -171,35 +214,6 @@ extern EAPI int _evas_log_dom_global; #endif -#ifdef HAVE_ALLOCA_H -# include -#elif defined __GNUC__ -# define alloca __builtin_alloca -#elif defined _AIX -# define alloca __alloca -#elif defined _MSC_VER -# include -# define alloca _alloca -#else -# include -# ifdef __cplusplus -extern "C" -# endif -void *alloca (size_t); -#endif - -#include -#include -#include -#include -#include -#include -#include - -#ifndef _MSC_VER -# include -#endif - #include #include FT_FREETYPE_H #include FT_GLYPH_H @@ -1005,12 +1019,12 @@ struct list struct rect { - short left; - short top; - short right; - short bottom; - short width; - short height; + int left; + int top; + int right; + int bottom; + int width; + int height; int area; }; diff --git a/libraries/evas/src/lib/include/evas_private.h b/libraries/evas/src/lib/include/evas_private.h index 84c1d36..bf0cfc5 100644 --- a/libraries/evas/src/lib/include/evas_private.h +++ b/libraries/evas/src/lib/include/evas_private.h @@ -615,6 +615,8 @@ struct _Evas_Object Eina_Bool changed_move : 1; Eina_Bool changed_move_only : 1; Eina_Bool changed_nomove : 1; + Eina_Bool changed_map : 1; + Eina_Bool changed_pchange : 1; Eina_Bool del_ref : 1; Eina_Bool is_frame : 1; @@ -850,6 +852,7 @@ struct _Evas_Func void *(*gl_proc_address_get) (void *data, const char *name); int (*gl_native_surface_get) (void *data, void *surface, void *native_surface); void *(*gl_api_get) (void *data); + void (*gl_img_obj_set) (void *data, void *image, int has_alpha); int (*image_load_error_get) (void *data, void *image); int (*font_run_end_get) (void *data, Evas_Font_Set *font, Evas_Font_Instance **script_fi, Evas_Font_Instance **cur_fi, Evas_Script_Type script, const Eina_Unicode *text, int run_len); diff --git a/libraries/evas/src/modules/Makefile.in b/libraries/evas/src/modules/Makefile.in index e4f1cbc..68865f3 100644 --- a/libraries/evas/src/modules/Makefile.in +++ b/libraries/evas/src/modules/Makefile.in @@ -156,6 +156,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -206,6 +208,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -224,8 +228,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -299,8 +301,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/modules/engines/Makefile.am b/libraries/evas/src/modules/engines/Makefile.am index 42585cc..e29fb98 100644 --- a/libraries/evas/src/modules/engines/Makefile.am +++ b/libraries/evas/src/modules/engines/Makefile.am @@ -53,9 +53,6 @@ endif if !EVAS_STATIC_BUILD_SOFTWARE_16_X11 SUBDIRS += software_16_x11 endif -if !EVAS_STATIC_BUILD_SOFTWARE_SDL -SUBDIRS += software_sdl -endif if !EVAS_STATIC_BUILD_SOFTWARE_16_SDL SUBDIRS += software_16_sdl endif diff --git a/libraries/evas/src/modules/engines/Makefile.in b/libraries/evas/src/modules/engines/Makefile.in index 5820026..7388a48 100644 --- a/libraries/evas/src/modules/engines/Makefile.in +++ b/libraries/evas/src/modules/engines/Makefile.in @@ -49,13 +49,12 @@ host_triplet = @host@ @EVAS_STATIC_BUILD_SOFTWARE_16_DDRAW_FALSE@am__append_14 = software_16_ddraw @EVAS_STATIC_BUILD_SOFTWARE_16_WINCE_FALSE@am__append_15 = software_16_wince @EVAS_STATIC_BUILD_SOFTWARE_16_X11_FALSE@am__append_16 = software_16_x11 -@EVAS_STATIC_BUILD_SOFTWARE_SDL_FALSE@am__append_17 = software_sdl -@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_FALSE@am__append_18 = software_16_sdl -@EVAS_STATIC_BUILD_SOFTWARE_DDRAW_FALSE@am__append_19 = software_ddraw -@EVAS_STATIC_BUILD_SOFTWARE_GDI_FALSE@am__append_20 = software_gdi -@EVAS_STATIC_BUILD_SOFTWARE_X11_FALSE@am__append_21 = software_x11 -@EVAS_STATIC_BUILD_WAYLAND_SHM_FALSE@am__append_22 = wayland_shm -@EVAS_STATIC_BUILD_WAYLAND_EGL_FALSE@am__append_23 = wayland_egl +@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_FALSE@am__append_17 = software_16_sdl +@EVAS_STATIC_BUILD_SOFTWARE_DDRAW_FALSE@am__append_18 = software_ddraw +@EVAS_STATIC_BUILD_SOFTWARE_GDI_FALSE@am__append_19 = software_gdi +@EVAS_STATIC_BUILD_SOFTWARE_X11_FALSE@am__append_20 = software_x11 +@EVAS_STATIC_BUILD_WAYLAND_SHM_FALSE@am__append_21 = wayland_shm +@EVAS_STATIC_BUILD_WAYLAND_EGL_FALSE@am__append_22 = wayland_egl subdir = src/modules/engines DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 @@ -103,8 +102,8 @@ CTAGS = ctags DIST_SUBDIRS = software_generic buffer direct3d directfb fb psl1ght \ gl_common gl_x11 gl_sdl gl_cocoa software_8 software_8_x11 \ software_16 software_16_ddraw software_16_wince \ - software_16_x11 software_sdl software_16_sdl software_ddraw \ - software_gdi software_x11 wayland_shm wayland_egl + software_16_x11 software_16_sdl software_ddraw software_gdi \ + software_x11 wayland_shm wayland_egl DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) am__relativize = \ dir0=`pwd`; \ @@ -183,6 +182,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -233,6 +234,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -251,8 +254,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -326,8 +327,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -418,7 +417,7 @@ SUBDIRS = $(am__append_1) $(am__append_2) $(am__append_3) \ $(am__append_13) $(am__append_14) $(am__append_15) \ $(am__append_16) $(am__append_17) $(am__append_18) \ $(am__append_19) $(am__append_20) $(am__append_21) \ - $(am__append_22) $(am__append_23) + $(am__append_22) all: all-recursive .SUFFIXES: diff --git a/libraries/evas/src/modules/engines/buffer/Evas_Engine_Buffer.h b/libraries/evas/src/modules/engines/buffer/Evas_Engine_Buffer.h index e6d11d1..a9cbbfb 100644 --- a/libraries/evas/src/modules/engines/buffer/Evas_Engine_Buffer.h +++ b/libraries/evas/src/modules/engines/buffer/Evas_Engine_Buffer.h @@ -29,7 +29,10 @@ struct _Evas_Engine_Info_Buffer struct { void * (*new_update_region) (int x, int y, int w, int h, int *row_bytes); void (*free_update_region) (int x, int y, int w, int h, void *data); + void * (*switch_buffer) (void *data, void *dest_buffer); } func; + + void *switch_data; } info; /* non-blocking or blocking mode */ diff --git a/libraries/evas/src/modules/engines/buffer/Makefile.am b/libraries/evas/src/modules/engines/buffer/Makefile.am index 19ac5a7..4090b6f 100644 --- a/libraries/evas/src/modules/engines/buffer/Makefile.am +++ b/libraries/evas/src/modules/engines/buffer/Makefile.am @@ -10,8 +10,6 @@ AM_CPPFLAGS = \ @FREETYPE_CFLAGS@ \ @PIXMAN_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ - if BUILD_ENGINE_BUFFER BUFFER_SOURCES = \ diff --git a/libraries/evas/src/modules/engines/buffer/Makefile.in b/libraries/evas/src/modules/engines/buffer/Makefile.in index ec9c0b8..bd9818e 100644 --- a/libraries/evas/src/modules/engines/buffer/Makefile.in +++ b/libraries/evas/src/modules/engines/buffer/Makefile.in @@ -190,6 +190,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -240,6 +242,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -258,8 +262,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -333,8 +335,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -427,7 +427,6 @@ AM_CPPFLAGS = \ @FREETYPE_CFLAGS@ \ @PIXMAN_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ @BUILD_ENGINE_BUFFER_TRUE@BUFFER_SOURCES = \ @BUILD_ENGINE_BUFFER_TRUE@evas_engine.c \ @BUILD_ENGINE_BUFFER_TRUE@evas_outbuf.c diff --git a/libraries/evas/src/modules/engines/buffer/evas_engine.c b/libraries/evas/src/modules/engines/buffer/evas_engine.c index e8dff7a..758ef10 100644 --- a/libraries/evas/src/modules/engines/buffer/evas_engine.c +++ b/libraries/evas/src/modules/engines/buffer/evas_engine.c @@ -25,11 +25,12 @@ struct _Render_Engine Outbuf *ob; Tilebuf_Rect *rects; Eina_Inlist *cur_rect; + Eina_Inarray previous_rects; int end : 1; }; /* prototypes we will use here */ -static void *_output_setup(int w, int h, void *dest_buffer, int dest_buffer_row_bytes, int depth_type, int use_color_key, int alpha_threshold, int color_key_r, int color_key_g, int color_key_b, void *(*new_update_region) (int x, int y, int w, int h, int *row_bytes), void (*free_update_region) (int x, int y, int w, int h, void *data)); +static void *_output_setup(int w, int h, void *dest_buffer, int dest_buffer_row_bytes, int depth_type, int use_color_key, int alpha_threshold, int color_key_r, int color_key_g, int color_key_b, void *(*new_update_region) (int x, int y, int w, int h, int *row_bytes), void (*free_update_region) (int x, int y, int w, int h, void *data), void *(*switch_buffer) (void *data, void *dest_buffer), void *switch_data); static void *eng_info(Evas *e __UNUSED__); static void eng_info_free(Evas *e __UNUSED__, void *info); @@ -58,7 +59,9 @@ _output_setup(int w, int color_key_g, int color_key_b, void *(*new_update_region) (int x, int y, int w, int h, int *row_bytes), - void (*free_update_region) (int x, int y, int w, int h, void *data) + void (*free_update_region) (int x, int y, int w, int h, void *data), + void *(*switch_buffer) (void *data, void *dest_buffer), + void *switch_data ) { Render_Engine *re; @@ -81,7 +84,7 @@ _output_setup(int w, evas_common_tilebuf_init(); evas_buffer_outbuf_buf_init(); - + { Outbuf_Depth dep; DATA32 color_key = 0; @@ -110,10 +113,13 @@ _output_setup(int w, color_key, alpha_threshold, new_update_region, - free_update_region); + free_update_region, + switch_buffer, + switch_data); } re->tb = evas_common_tilebuf_new(w, h); evas_common_tilebuf_set_tile_size(re->tb, TILESIZE, TILESIZE); + eina_inarray_setup(&re->previous_rects, sizeof (Eina_Rectangle), 8); return re; } @@ -155,7 +161,9 @@ eng_setup(Evas *e, void *in) info->info.color_key_g, info->info.color_key_b, info->info.func.new_update_region, - info->info.func.free_update_region); + info->info.func.free_update_region, + info->info.func.switch_buffer, + info->info.switch_data); if (e->engine.data.output) eng_output_free(e->engine.data.output); e->engine.data.output = re; @@ -195,6 +203,8 @@ eng_output_resize(void *data, int w, int h) char use_color_key; void * (*new_update_region) (int x, int y, int w, int h, int *row_bytes); void (*free_update_region) (int x, int y, int w, int h, void *data); + void * (*switch_buffer) (void *switch_data, void *dest); + void *switch_data; depth = re->ob->depth; dest = re->ob->dest; @@ -204,6 +214,8 @@ eng_output_resize(void *data, int w, int h) use_color_key = re->ob->use_color_key; new_update_region = re->ob->func.new_update_region; free_update_region = re->ob->func.free_update_region; + switch_buffer = re->ob->func.switch_buffer; + switch_data = re->ob->switch_data; evas_buffer_outbuf_buf_free(re->ob); re->ob = evas_buffer_outbuf_buf_setup_fb(w, h, @@ -214,7 +226,9 @@ eng_output_resize(void *data, int w, int h) color_key, alpha_level, new_update_region, - free_update_region); + free_update_region, + switch_buffer, + switch_data); } evas_common_tilebuf_free(re->tb); re->tb = evas_common_tilebuf_new(w, h); @@ -275,6 +289,37 @@ eng_output_redraws_next_update_get(void *data, int *x, int *y, int *w, int *h, i if (!re->rects) { re->rects = evas_common_tilebuf_get_render_rects(re->tb); + + /* handle double buffering */ + if (re->ob->func.switch_buffer) + { + Eina_Rectangle *pushing; + + if (re->ob->first_frame && !re->previous_rects.len) + { + evas_common_tilebuf_add_redraw(re->tb, 0, 0, re->ob->w, re->ob->h); + re->ob->first_frame = 0; + } + + /* push previous frame */ + EINA_INARRAY_FOREACH(&re->previous_rects, pushing) + evas_common_tilebuf_add_redraw(re->tb, pushing->x, pushing->y, pushing->w, pushing->h); + eina_inarray_flush(&re->previous_rects); + + /* save current list of damage */ + EINA_INLIST_FOREACH(re->rects, rect) + { + Eina_Rectangle local; + + EINA_RECTANGLE_SET(&local, rect->x, rect->y, rect->w, rect->h); + eina_inarray_append(&re->previous_rects, &local); + } + + /* and regenerate the damage list by tacking into account the damage over two frames */ + evas_common_tilebuf_free_render_rects(re->rects); + re->rects = evas_common_tilebuf_get_render_rects(re->tb); + } + re->cur_rect = EINA_INLIST_GET(re->rects); } if (!re->cur_rect) return NULL; @@ -306,7 +351,7 @@ eng_output_redraws_next_update_push(void *data, void *surface, int x, int y, int re = (Render_Engine *)data; #ifdef BUILD_PIPE_RENDER evas_common_pipe_map_begin(surface); -#endif +#endif evas_buffer_outbuf_buf_push_updated_region(re->ob, surface, x, y, w, h); evas_buffer_outbuf_buf_free_region_for_update(re->ob, surface); evas_common_cpu_end_opt(); @@ -315,17 +360,13 @@ eng_output_redraws_next_update_push(void *data, void *surface, int x, int y, int static void eng_output_flush(void *data) { - Render_Engine *re; - - re = (Render_Engine *)data; + Render_Engine *re = (Render_Engine *)data; + evas_buffer_outbuf_buf_switch_buffer(re->ob); } static void -eng_output_idle_flush(void *data) +eng_output_idle_flush(void *data __UNUSED__) { - Render_Engine *re; - - re = (Render_Engine *)data; } static Eina_Bool diff --git a/libraries/evas/src/modules/engines/buffer/evas_engine.h b/libraries/evas/src/modules/engines/buffer/evas_engine.h index 21c988c..af82477 100644 --- a/libraries/evas/src/modules/engines/buffer/evas_engine.h +++ b/libraries/evas/src/modules/engines/buffer/evas_engine.h @@ -52,14 +52,17 @@ struct _Outbuf void *dest; unsigned int dest_row_bytes; + void *switch_data; int alpha_level; DATA32 color_key; char use_color_key : 1; + char first_frame : 1; struct { void * (*new_update_region) (int x, int y, int w, int h, int *row_bytes); void (*free_update_region) (int x, int y, int w, int h, void *data); + void * (*switch_buffer) (void *data, void *dest_buffer); } func; struct { @@ -74,12 +77,15 @@ void evas_buffer_outbuf_buf_free (Outbuf *buf); Outbuf *evas_buffer_outbuf_buf_setup_fb (int w, int h, Outbuf_Depth depth, void *dest, int dest_row_bytes, int use_color_key, DATA32 color_key, int alpha_level, void * (*new_update_region) (int x, int y, int w, int h, int *row_bytes), - void (*free_update_region) (int x, int y, int w, int h, void *data)); + void (*free_update_region) (int x, int y, int w, int h, void *data), + void * (*switch_buffer)(void *switch_data, void *dest), + void *switch_data); RGBA_Image *evas_buffer_outbuf_buf_new_region_for_update (Outbuf *buf, int x, int y, int w, int h, int *cx, int *cy, int *cw, int *ch); void evas_buffer_outbuf_buf_free_region_for_update (Outbuf *buf, RGBA_Image *update); void evas_buffer_outbuf_buf_push_updated_region (Outbuf *buf, RGBA_Image *update, int x, int y, int w, int h); +void evas_buffer_outbuf_buf_switch_buffer (Outbuf *buf); #endif diff --git a/libraries/evas/src/modules/engines/buffer/evas_outbuf.c b/libraries/evas/src/modules/engines/buffer/evas_outbuf.c index 27f7a2c..0fa1842 100644 --- a/libraries/evas/src/modules/engines/buffer/evas_outbuf.c +++ b/libraries/evas/src/modules/engines/buffer/evas_outbuf.c @@ -19,11 +19,12 @@ evas_buffer_outbuf_buf_free(Outbuf *buf) Outbuf * evas_buffer_outbuf_buf_setup_fb(int w, int h, Outbuf_Depth depth, void *dest, int dest_row_bytes, int use_color_key, DATA32 color_key, int alpha_level, void * (*new_update_region) (int x, int y, int w, int h, int *row_bytes), - void (*free_update_region) (int x, int y, int w, int h, void *data) + void (*free_update_region) (int x, int y, int w, int h, void *data), + void * (*switch_buffer) (void *data, void *dest_buffer), + void *switch_data ) { Outbuf *buf; - int bpp; buf = calloc(1, sizeof(Outbuf)); if (!buf) return NULL; @@ -38,14 +39,12 @@ evas_buffer_outbuf_buf_setup_fb(int w, int h, Outbuf_Depth depth, void *dest, in buf->alpha_level = alpha_level; buf->color_key = color_key; buf->use_color_key = use_color_key; + buf->first_frame = 1; buf->func.new_update_region = new_update_region; buf->func.free_update_region = free_update_region; - - bpp = sizeof(DATA32); - if ((buf->depth == OUTBUF_DEPTH_RGB_24BPP_888_888) || - (buf->depth == OUTBUF_DEPTH_BGR_24BPP_888_888)) - bpp = 3; + buf->func.switch_buffer = switch_buffer; + buf->switch_data = switch_data; if ((buf->depth == OUTBUF_DEPTH_ARGB_32BPP_8888_8888) && (buf->dest) && (buf->dest_row_bytes == (buf->w * sizeof(DATA32)))) @@ -102,6 +101,24 @@ evas_buffer_outbuf_buf_free_region_for_update(Outbuf *buf, RGBA_Image *update) } void +evas_buffer_outbuf_buf_switch_buffer(Outbuf *buf) +{ + if (buf->func.switch_buffer) + { + buf->dest = buf->func.switch_buffer(buf->switch_data, buf->dest); + if (buf->priv.back_buf) + { + evas_cache_image_drop(&buf->priv.back_buf->cache_entry); + buf->priv.back_buf = (RGBA_Image *) evas_cache_image_data(evas_common_image_cache_get(), + buf->w, buf->h, + buf->dest, + buf->depth == OUTBUF_DEPTH_ARGB_32BPP_8888_8888 ? 1 : 0, + EVAS_COLORSPACE_ARGB8888); + } + } +} + +void evas_buffer_outbuf_buf_push_updated_region(Outbuf *buf, RGBA_Image *update, int x, int y, int w, int h) { /* copy update image to out buf & convert */ diff --git a/libraries/evas/src/modules/engines/direct3d/Makefile.in b/libraries/evas/src/modules/engines/direct3d/Makefile.in index 85baff8..fe979a8 100644 --- a/libraries/evas/src/modules/engines/direct3d/Makefile.in +++ b/libraries/evas/src/modules/engines/direct3d/Makefile.in @@ -243,6 +243,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -293,6 +295,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -311,8 +315,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -386,8 +388,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/modules/engines/directfb/Makefile.am b/libraries/evas/src/modules/engines/directfb/Makefile.am index 5b00166..967e594 100644 --- a/libraries/evas/src/modules/engines/directfb/Makefile.am +++ b/libraries/evas/src/modules/engines/directfb/Makefile.am @@ -11,8 +11,6 @@ AM_CPPFLAGS = \ @EINA_CFLAGS@ \ @evas_engine_directfb_cflags@ -AM_CFLAGS = @WIN32_CFLAGS@ - if BUILD_ENGINE_DIRECTFB DIRECTFB_SOURCES = evas_engine.c polygon.c diff --git a/libraries/evas/src/modules/engines/directfb/Makefile.in b/libraries/evas/src/modules/engines/directfb/Makefile.in index df2f63b..7d642c9 100644 --- a/libraries/evas/src/modules/engines/directfb/Makefile.in +++ b/libraries/evas/src/modules/engines/directfb/Makefile.in @@ -190,6 +190,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -240,6 +242,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -258,8 +262,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -333,8 +335,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -428,7 +428,6 @@ AM_CPPFLAGS = \ @EINA_CFLAGS@ \ @evas_engine_directfb_cflags@ -AM_CFLAGS = @WIN32_CFLAGS@ @BUILD_ENGINE_DIRECTFB_TRUE@DIRECTFB_SOURCES = evas_engine.c polygon.c @BUILD_ENGINE_DIRECTFB_TRUE@DIRECTFB_LIBADD = @evas_engine_directfb_libs@ @BUILD_ENGINE_DIRECTFB_TRUE@includes_HEADERS = Evas_Engine_DirectFB.h diff --git a/libraries/evas/src/modules/engines/directfb/evas_engine.c b/libraries/evas/src/modules/engines/directfb/evas_engine.c index 17914ab..5347d2d 100644 --- a/libraries/evas/src/modules/engines/directfb/evas_engine.c +++ b/libraries/evas/src/modules/engines/directfb/evas_engine.c @@ -1138,7 +1138,8 @@ evas_engine_dfb_rectangle_draw(void *data, void *context, void *surface, int x, static void evas_engine_dfb_polygon_draw(void *data __UNUSED__, void *context, void *surface, void *polygon, int x, int y) { - _dfb_polygon_draw(surface, context, polygon, x, y); + DirectFB_Engine_Image_Entry *eim = surface; + _dfb_polygon_draw(eim->surface, context, polygon, x, y); } #else static void diff --git a/libraries/evas/src/modules/engines/fb/Makefile.in b/libraries/evas/src/modules/engines/fb/Makefile.in index 1e82b34..31d222a 100644 --- a/libraries/evas/src/modules/engines/fb/Makefile.in +++ b/libraries/evas/src/modules/engines/fb/Makefile.in @@ -194,6 +194,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -244,6 +246,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -262,8 +266,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -337,8 +339,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/modules/engines/fb/evas_engine.c b/libraries/evas/src/modules/engines/fb/evas_engine.c index 7681b00..e15c02b 100644 --- a/libraries/evas/src/modules/engines/fb/evas_engine.c +++ b/libraries/evas/src/modules/engines/fb/evas_engine.c @@ -74,7 +74,7 @@ _output_setup(int w, int h, int rot, int vt, int dev, int refresh) /* engine api this module provides */ static void * -eng_info(Evas *e) +eng_info(Evas *e __UNUSED__) { Evas_Engine_Info_FB *info; info = calloc(1, sizeof(Evas_Engine_Info_FB)); @@ -82,7 +82,6 @@ eng_info(Evas *e) info->magic.magic = rand(); info->render_mode = EVAS_RENDER_MODE_BLOCKING; return info; - e = NULL; } static void @@ -231,19 +230,13 @@ eng_output_redraws_next_update_push(void *data, void *surface, int x, int y, int } static void -eng_output_flush(void *data) +eng_output_flush(void *data __UNUSED__) { - Render_Engine *re; - - re = (Render_Engine *)data; } static void -eng_output_idle_flush(void *data) +eng_output_idle_flush(void *data __UNUSED__) { - Render_Engine *re; - - re = (Render_Engine *)data; } static Eina_Bool diff --git a/libraries/evas/src/modules/engines/fb/evas_outbuf.c b/libraries/evas/src/modules/engines/fb/evas_outbuf.c index 57cf7a6..7ae24c5 100644 --- a/libraries/evas/src/modules/engines/fb/evas_outbuf.c +++ b/libraries/evas/src/modules/engines/fb/evas_outbuf.c @@ -25,7 +25,7 @@ evas_fb_outbuf_fb_setup_fb(int w, int h, int rot, Outbuf_Depth depth, int vt_no, /* setup window and/or fb */ /* if (dithered) create backbuf */ Outbuf *buf; - int fb_fd = -1; + int fb_fd; int fb_depth; fb_depth = -1; @@ -51,6 +51,11 @@ evas_fb_outbuf_fb_setup_fb(int w, int h, int rot, Outbuf_Depth depth, int vt_no, return NULL; } fb_fd = fb_postinit(buf->priv.fb.fb); + if (fb_fd < 1) + { + free(buf); + return NULL; + } if (rot == 0 || rot == 180) { diff --git a/libraries/evas/src/modules/engines/gl_cocoa/Makefile.in b/libraries/evas/src/modules/engines/gl_cocoa/Makefile.in index 6e616f4..049acb2 100644 --- a/libraries/evas/src/modules/engines/gl_cocoa/Makefile.in +++ b/libraries/evas/src/modules/engines/gl_cocoa/Makefile.in @@ -208,6 +208,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -258,6 +260,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -276,8 +280,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -351,8 +353,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/modules/engines/gl_common/Makefile.in b/libraries/evas/src/modules/engines/gl_common/Makefile.in index 27284f9..5a9a1ef 100644 --- a/libraries/evas/src/modules/engines/gl_common/Makefile.in +++ b/libraries/evas/src/modules/engines/gl_common/Makefile.in @@ -195,6 +195,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -245,6 +247,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -263,8 +267,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -338,8 +340,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/modules/engines/gl_common/evas_gl_line.c b/libraries/evas/src/modules/engines/gl_common/evas_gl_line.c index 48499ea..f8ace2e 100644 --- a/libraries/evas/src/modules/engines/gl_common/evas_gl_line.c +++ b/libraries/evas/src/modules/engines/gl_common/evas_gl_line.c @@ -17,7 +17,10 @@ evas_gl_common_line_draw(Evas_Engine_GL_Context *gc, int x1, int y1, int x2, int } else { - r = g = b = a = 255; + a = (dc->col.col >> 24) & 0xff; + r = (dc->col.col >> 16) & 0xff; + g = (dc->col.col >> 8 ) & 0xff; + b = (dc->col.col ) & 0xff; } glFlush(); diff --git a/libraries/evas/src/modules/engines/gl_common/shader/yuv_frag.h b/libraries/evas/src/modules/engines/gl_common/shader/yuv_frag.h index de9acf8..87f4095 100644 --- a/libraries/evas/src/modules/engines/gl_common/shader/yuv_frag.h +++ b/libraries/evas/src/modules/engines/gl_common/shader/yuv_frag.h @@ -10,11 +10,15 @@ "varying vec2 tex_c, tex_c2, tex_c3;\n" "void main()\n" "{\n" -" const mat4 yuv2rgb = mat4( 1.16400, 1.16400, 1.16400, 0.00000,\n" -" 0.00000, -0.34410, 1.77200, 0.00000,\n" -" 1.40200, -0.71410, 0.00000, 0.00000,\n" -" -0.77380, 0.45630, -0.95880, 1.00000);\n" -" gl_FragColor = (yuv2rgb * vec4(texture2D(tex, tex_c.xy).r,\n" -" texture2D(texu, tex_c2.xy).r,\n" -" texture2D(texv, tex_c3.xy).r, 1.0)) * col;\n" +" float r, g, b, y, u, v;\n" +" y = texture2D(tex, tex_c.xy).r;\n" +" u = texture2D(texu, tex_c2.xy).r;\n" +" v = texture2D(texv, tex_c3.xy).r;\n" +" y = (y - 0.0625) * 1.164;\n" +" u = u - 0.5;\n" +" v = v - 0.5;\n" +" r = y + (1.402 * v);\n" +" g = y - (0.34414 * u) - (0.71414 * v);\n" +" b = y + (1.772 * u);\n" +" gl_FragColor = vec4(r, g, b, 1.0) * col;\n" "}\n" diff --git a/libraries/evas/src/modules/engines/gl_common/shader/yuv_frag.shd b/libraries/evas/src/modules/engines/gl_common/shader/yuv_frag.shd index 8e55d14..367fb55 100644 --- a/libraries/evas/src/modules/engines/gl_common/shader/yuv_frag.shd +++ b/libraries/evas/src/modules/engines/gl_common/shader/yuv_frag.shd @@ -10,11 +10,15 @@ varying vec4 col; varying vec2 tex_c, tex_c2, tex_c3; void main() { - const mat4 yuv2rgb = mat4( 1.16400, 1.16400, 1.16400, 0.00000, - 0.00000, -0.34410, 1.77200, 0.00000, - 1.40200, -0.71410, 0.00000, 0.00000, - -0.77380, 0.45630, -0.95880, 1.00000); - gl_FragColor = (yuv2rgb * vec4(texture2D(tex, tex_c.xy).r, - texture2D(texu, tex_c2.xy).r, - texture2D(texv, tex_c3.xy).r, 1.0)) * col; + float r, g, b, y, u, v; + y = texture2D(tex, tex_c.xy).r; + u = texture2D(texu, tex_c2.xy).r; + v = texture2D(texv, tex_c3.xy).r; + y = (y - 0.0625) * 1.164; + u = u - 0.5; + v = v - 0.5; + r = y + (1.402 * v); + g = y - (0.34414 * u) - (0.71414 * v); + b = y + (1.772 * u); + gl_FragColor = vec4(r, g, b, 1.0) * col; } diff --git a/libraries/evas/src/modules/engines/gl_common/shader/yuv_nomul_frag.h b/libraries/evas/src/modules/engines/gl_common/shader/yuv_nomul_frag.h index ee5855c..0df4b97 100644 --- a/libraries/evas/src/modules/engines/gl_common/shader/yuv_nomul_frag.h +++ b/libraries/evas/src/modules/engines/gl_common/shader/yuv_nomul_frag.h @@ -9,11 +9,15 @@ "varying vec2 tex_c, tex_c2, tex_c3;\n" "void main()\n" "{\n" -" const mat4 yuv2rgb = mat4( 1.16400, 1.16400, 1.16400, 0.00000,\n" -" 0.00000, -0.34410, 1.77200, 0.00000,\n" -" 1.40200, -0.71410, 0.00000, 0.00000,\n" -" -0.77380, 0.45630, -0.95880, 1.00000);\n" -" gl_FragColor = yuv2rgb * vec4(texture2D(tex, tex_c.xy).r,\n" -" texture2D(texu, tex_c2.xy).r,\n" -" texture2D(texv, tex_c3.xy).r, 1.0);\n" +" float r, g, b, y, u, v;\n" +" y = texture2D(tex, tex_c.xy).r;\n" +" u = texture2D(texu, tex_c2.xy).r;\n" +" v = texture2D(texv, tex_c3.xy).r;\n" +" y = (y - 0.0625) * 1.164;\n" +" u = u - 0.5;\n" +" v = v - 0.5;\n" +" r = y + (1.402 * v);\n" +" g = y - (0.34414 * u) - (0.71414 * v);\n" +" b = y + (1.772 * u);\n" +" gl_FragColor = vec4(r, g, b, 1.0);\n" "}\n" diff --git a/libraries/evas/src/modules/engines/gl_common/shader/yuv_nomul_frag.shd b/libraries/evas/src/modules/engines/gl_common/shader/yuv_nomul_frag.shd index 3ec4311..ce24622 100644 --- a/libraries/evas/src/modules/engines/gl_common/shader/yuv_nomul_frag.shd +++ b/libraries/evas/src/modules/engines/gl_common/shader/yuv_nomul_frag.shd @@ -9,11 +9,15 @@ uniform sampler2D tex, texu, texv; varying vec2 tex_c, tex_c2, tex_c3; void main() { - const mat4 yuv2rgb = mat4( 1.16400, 1.16400, 1.16400, 0.00000, - 0.00000, -0.34410, 1.77200, 0.00000, - 1.40200, -0.71410, 0.00000, 0.00000, - -0.77380, 0.45630, -0.95880, 1.00000); - gl_FragColor = yuv2rgb * vec4(texture2D(tex, tex_c.xy).r, - texture2D(texu, tex_c2.xy).r, - texture2D(texv, tex_c3.xy).r, 1.0); + float r, g, b, y, u, v; + y = texture2D(tex, tex_c.xy).r; + u = texture2D(texu, tex_c2.xy).r; + v = texture2D(texv, tex_c3.xy).r; + y = (y - 0.0625) * 1.164; + u = u - 0.5; + v = v - 0.5; + r = y + (1.402 * v); + g = y - (0.34414 * u) - (0.71414 * v); + b = y + (1.772 * u); + gl_FragColor = vec4(r, g, b, 1.0); } diff --git a/libraries/evas/src/modules/engines/gl_sdl/Makefile.in b/libraries/evas/src/modules/engines/gl_sdl/Makefile.in index bfb29ac..4bc9d59 100644 --- a/libraries/evas/src/modules/engines/gl_sdl/Makefile.in +++ b/libraries/evas/src/modules/engines/gl_sdl/Makefile.in @@ -189,6 +189,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -239,6 +241,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -257,8 +261,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -332,8 +334,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/modules/engines/gl_x11/Makefile.in b/libraries/evas/src/modules/engines/gl_x11/Makefile.in index ad4944e..3ac8dff 100644 --- a/libraries/evas/src/modules/engines/gl_x11/Makefile.in +++ b/libraries/evas/src/modules/engines/gl_x11/Makefile.in @@ -192,6 +192,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -242,6 +244,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -260,8 +264,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -335,8 +337,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/modules/engines/gl_x11/evas_engine.c b/libraries/evas/src/modules/engines/gl_x11/evas_engine.c index fbbd1a2..06348b4 100644 --- a/libraries/evas/src/modules/engines/gl_x11/evas_engine.c +++ b/libraries/evas/src/modules/engines/gl_x11/evas_engine.c @@ -41,6 +41,17 @@ struct _Render_Engine int w, h; int vsync; + // Shader used for Evas_GL_Direct Optimization + GLuint df_program; + GLuint df_vtx_shader; + GLuint df_fgmt_shader; + GLuint df_col_attrib; + GLuint df_pos_attrib; + + GLfloat df_clear_color[4]; + GLfloat df_depth_value; + + int df_initialized; }; struct _Render_Engine_GL_Surface @@ -51,6 +62,8 @@ struct _Render_Engine_GL_Surface int depth_bits; int stencil_bits; + int direct_fb_opt; + // Render target texture/buffers GLuint rt_tex; GLint rt_internal_fmt; @@ -60,6 +73,12 @@ struct _Render_Engine_GL_Surface GLuint rb_stencil; GLenum rb_stencil_fmt; +#if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX) + EGLSurface direct_sfc; +#else + Window direct_sfc; +#endif + Render_Engine_GL_Context *current_ctx; }; @@ -74,6 +93,10 @@ struct _Render_Engine_GL_Context GLuint context_fbo; GLuint current_fbo; + + int scissor_enabled; + int scissor_upated; + Render_Engine_GL_Surface *current_sfc; }; @@ -99,8 +122,11 @@ struct _Extension_Entry static int initted = 0; static int gl_wins = 0; -static Render_Engine_GL_Context *current_evgl_ctx; -static Render_Engine *current_engine; +static int gl_direct_override = 0; +static int gl_direct_enabled = 0; +static Render_Engine_GL_Context *current_evgl_ctx = NULL; +static Render_Engine *current_engine = NULL; +static Evas_Object *gl_direct_img_obj = NULL; static char _gl_ext_string[1024]; static char _evasgl_ext_string[1024]; @@ -2514,11 +2540,15 @@ eng_image_data_put(void *data, void *image, DATA32 *image_data) if (im->tex->pt->dyn.data == image_data) { - im->tex->pt->dyn.checked_out--; + if (im->tex->pt->dyn.checked_out > 0) + { + im->tex->pt->dyn.checked_out--; #if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX) - if (im->tex->pt->dyn.checked_out == 0) - glsym_eglUnmapImageSEC(re->win->egl_disp, im->tex->pt->dyn.img); + if (im->tex->pt->dyn.checked_out == 0) + glsym_eglUnmapImageSEC(re->win->egl_disp, im->tex->pt->dyn.img); #endif + } + return image; } @@ -2605,13 +2635,22 @@ eng_image_draw(void *data, void *context, void *surface, void *image, int src_x, re = (Render_Engine *)data; if (!image) return; - eng_window_use(re->win); - evas_gl_common_context_target_surface_set(re->win->gl_context, surface); - re->win->gl_context->dc = context; - evas_gl_common_image_draw(re->win->gl_context, image, - src_x, src_y, src_w, src_h, - dst_x, dst_y, dst_w, dst_h, - smooth); + + if ((gl_direct_img_obj) && (gl_direct_enabled)) + { + DBG("Rendering Directly to the window"); + evas_object_image_pixels_dirty_set(gl_direct_img_obj, EINA_TRUE); + } + else + { + eng_window_use(re->win); + evas_gl_common_context_target_surface_set(re->win->gl_context, surface); + re->win->gl_context->dc = context; + evas_gl_common_image_draw(re->win->gl_context, image, + src_x, src_y, src_w, src_h, + dst_x, dst_y, dst_w, dst_h, + smooth); + } } static void @@ -2794,7 +2833,7 @@ static int _set_internal_config(Render_Engine_GL_Surface *sfc, Evas_GL_Config *cfg) { // Also initialize pixel format here as well... - switch(cfg->color_format) + switch((int)cfg->color_format) { case EVAS_GL_RGB_888: sfc->rt_fmt = GL_RGB; @@ -2849,7 +2888,12 @@ _set_internal_config(Render_Engine_GL_Surface *sfc, Evas_GL_Config *cfg) return 0; } - // Do Packed Depth24_Stencil8 Later... + if (cfg->options_bits) + { + if (cfg->options_bits & EVAS_GL_OPTIONS_DIRECT) + sfc->direct_fb_opt = 1; + // Add other options here... + } return 1; } @@ -2954,6 +2998,11 @@ eng_gl_surface_create(void *data, void *config, int w, int h) sfc->rb_depth = 0; sfc->rb_stencil = 0; + /* Allow alpha for evas gl direct rendering */ + // FIXME!!!: A little out of place for for now... + if (!gl_direct_override) + if (getenv("EVAS_GL_DIRECT_OVERRIDE")) gl_direct_override = 1; + // Set the internal format based on the config if (!_set_internal_config(sfc, cfg)) { @@ -2962,6 +3011,16 @@ eng_gl_surface_create(void *data, void *config, int w, int h) return NULL; } + if (sfc->direct_fb_opt) + { + DBG("Enabling Direct rendering to the Evas' window."); +#if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX) + sfc->direct_sfc = re->win->egl_surface[0]; +#else + sfc->direct_sfc = re->win->win; +#endif + } + // Create internal resource context if it hasn't been created already if ((rsc = eina_tls_get(resource_key)) == NULL) { @@ -3039,6 +3098,17 @@ eng_gl_surface_destroy(void *data, void *surface) return 0; } + // Reset the Framebuffer binding point + if ((current_evgl_ctx) && (current_evgl_ctx->current_fbo == current_evgl_ctx->context_fbo)) + { + //glBindFramebuffer(GL_FRAMEBUFFER, 0); + current_evgl_ctx->current_fbo = 0; + current_evgl_ctx->current_sfc = NULL; + } + + // Clear direct rendering flag + gl_direct_enabled = 0; + // Delete FBO/RBO and Texture here if (sfc->rt_tex) glDeleteTextures(1, &sfc->rt_tex); @@ -3049,6 +3119,8 @@ eng_gl_surface_destroy(void *data, void *surface) if (sfc->rb_stencil) glDeleteRenderbuffers(1, &sfc->rb_stencil); + + #if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX) ret = eglMakeCurrent(re->win->egl_disp, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT); #else @@ -3158,7 +3230,7 @@ eng_gl_context_destroy(void *data, void *context) if ((rsc = eina_tls_get(resource_key)) == EINA_FALSE) return 0; - // 1. Do a make current with the given context + // Do a make current with the given context #if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX) ret = eglMakeCurrent(re->win->egl_disp, rsc->surface, rsc->surface, ctx->context); @@ -3172,11 +3244,11 @@ eng_gl_context_destroy(void *data, void *context) return 0; } - // 2. Delete the FBO + // Delete the FBO if (ctx->context_fbo) glDeleteFramebuffers(1, &ctx->context_fbo); - // 3. Destroy the Context + // Destroy the Context #if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX) eglDestroyContext(re->win->egl_disp, ctx->context); @@ -3239,67 +3311,127 @@ eng_gl_make_current(void *data __UNUSED__, void *surface, void *context) return 1; } - // Do a make current only if it's not already current -#if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX) - if ((rsc = eina_tls_get(resource_key)) == EINA_FALSE) return 0; + // Check if direct rendering is possible: + // It's possible when direct_fb_opt is on and either current image + // object is valid or gl_direct_override is on. Override allows + // rendering outside of pixel getter but it doesn't guarantee + // correct rendering. + if ((sfc->direct_fb_opt) && (gl_direct_img_obj || gl_direct_override)) + gl_direct_enabled = 1; + else + gl_direct_enabled = 0; - if ((eglGetCurrentContext() != ctx->context) || - (eglGetCurrentSurface(EGL_READ) != rsc->surface) || - (eglGetCurrentSurface(EGL_DRAW) != rsc->surface) ) + if (gl_direct_enabled) { - // Flush remainder of what's in Evas' pipeline - if (re->win) eng_window_use(NULL); + // Do a make current only if it's not already current +#if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX) + if ((eglGetCurrentContext() != ctx->context) || + (eglGetCurrentSurface(EGL_READ) != sfc->direct_sfc) || + (eglGetCurrentSurface(EGL_DRAW) != sfc->direct_sfc) ) + { + int curr_fbo = 0; + DBG("Rendering Directly to the window\n"); - // Do a make current - ret = eglMakeCurrent(re->win->egl_disp, rsc->surface, - rsc->surface, ctx->context); - if (!ret) + // Flush remainder of what's in Evas' pipeline + if (re->win) eng_window_use(NULL); + + // Do a make current + ret = eglMakeCurrent(re->win->egl_disp, sfc->direct_sfc, + sfc->direct_sfc, ctx->context); + if (!ret) + { + ERR("xxxMakeCurrent() failed! code=%#x", eglGetError()); + //ERR("xxxMakeCurrent() failed!"); + return 0; + } + + glGetIntegerv(GL_FRAMEBUFFER_BINDING, &curr_fbo); + if (ctx->context_fbo == curr_fbo) + { + ctx->current_fbo = 0; + glBindFramebuffer(GL_FRAMEBUFFER, 0); + } + } +#else + if ((glXGetCurrentContext() != ctx->context)) { - ERR("xxxMakeCurrent() failed!"); - return 0; + // Flush remainder of what's in Evas' pipeline + if (re->win) eng_window_use(NULL); + + // Do a make current + ret = glXMakeCurrent(re->info->info.display, sfc->direct_sfc, ctx->context); + if (!ret) + { + ERR("xxxMakeCurrent() failed!"); + return 0; + } } +#endif } -#else - if ((glXGetCurrentContext() != ctx->context) || - (glXGetCurrentDrawable() != re->win->win) ) + else { - // Flush remainder of what's in Evas' pipeline - if (re->win) eng_window_use(NULL); + // Do a make current only if it's not already current +#if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX) + if ((rsc = eina_tls_get(resource_key)) == EINA_FALSE) return 0; - // Do a make current - ret = glXMakeCurrent(re->info->info.display, re->win->win, ctx->context); - if (!ret) + if ((eglGetCurrentContext() != ctx->context) || + (eglGetCurrentSurface(EGL_READ) != rsc->surface) || + (eglGetCurrentSurface(EGL_DRAW) != rsc->surface) ) { - ERR("xxxMakeCurrent() failed!"); - return 0; + // Flush remainder of what's in Evas' pipeline + if (re->win) eng_window_use(NULL); + + // Do a make current + ret = eglMakeCurrent(re->win->egl_disp, rsc->surface, + rsc->surface, ctx->context); + if (!ret) + { + ERR("xxxMakeCurrent() failed!"); + return 0; + } } - } -#endif +#else + if ((glXGetCurrentContext() != ctx->context) || + (glXGetCurrentDrawable() != re->win->win) ) + { + // Flush remainder of what's in Evas' pipeline + if (re->win) eng_window_use(NULL); - // Create FBO if not already created - if (!ctx->initialized) - { - glGenFramebuffers(1, &ctx->context_fbo); - ctx->initialized = 1; - } + // Do a make current + ret = glXMakeCurrent(re->info->info.display, re->win->win, ctx->context); + if (!ret) + { + ERR("xxxMakeCurrent() failed!"); + return 0; + } + } +#endif - // Attach FBO if it hasn't been attached or if surface changed - if ((!sfc->fbo_attached) || (ctx->current_sfc != sfc)) - { - if (!_attach_fbo_surface(re, sfc, ctx)) + // Create FBO if not already created + if (!ctx->initialized) { - ERR("_attach_fbo_surface() failed."); - return 0; + glGenFramebuffers(1, &ctx->context_fbo); + ctx->initialized = 1; } - if (ctx->current_fbo) - // Bind to the previously bound buffer - glBindFramebuffer(GL_FRAMEBUFFER, ctx->current_fbo); - else - // Bind FBO - glBindFramebuffer(GL_FRAMEBUFFER, ctx->context_fbo); + // Attach FBO if it hasn't been attached or if surface changed + if ((!sfc->fbo_attached) || (ctx->current_sfc != sfc)) + { + if (!_attach_fbo_surface(re, sfc, ctx)) + { + ERR("_attach_fbo_surface() failed."); + return 0; + } - sfc->fbo_attached = 1; + if (ctx->current_fbo) + // Bind to the previously bound buffer + glBindFramebuffer(GL_FRAMEBUFFER, ctx->current_fbo); + else + // Bind FBO + glBindFramebuffer(GL_FRAMEBUFFER, ctx->context_fbo); + + sfc->fbo_attached = 1; + } } // Set the current surface/context @@ -3345,13 +3477,28 @@ eng_gl_native_surface_get(void *data, void *surface, void *native_surface) sfc = (Render_Engine_GL_Surface*)surface; ns = (Evas_Native_Surface*)native_surface; - ns->type = EVAS_NATIVE_SURFACE_OPENGL; - ns->version = EVAS_NATIVE_SURFACE_VERSION; - ns->data.opengl.texture_id = sfc->rt_tex; - ns->data.opengl.x = 0; - ns->data.opengl.y = 0; - ns->data.opengl.w = sfc->w; - ns->data.opengl.h = sfc->h; + if (sfc->direct_fb_opt) + { + ns->type = EVAS_NATIVE_SURFACE_OPENGL; + ns->version = EVAS_NATIVE_SURFACE_VERSION; + ns->data.opengl.texture_id = sfc->rt_tex; + ns->data.opengl.framebuffer_id = 0; + ns->data.opengl.x = 0; + ns->data.opengl.y = 0; + ns->data.opengl.w = sfc->w; + ns->data.opengl.h = sfc->h; + } + else + { + ns->type = EVAS_NATIVE_SURFACE_OPENGL; + ns->version = EVAS_NATIVE_SURFACE_VERSION; + ns->data.opengl.texture_id = sfc->rt_tex; + ns->data.opengl.framebuffer_id = sfc->rt_tex; + ns->data.opengl.x = 0; + ns->data.opengl.y = 0; + ns->data.opengl.w = sfc->w; + ns->data.opengl.h = sfc->h; + } return 1; } @@ -3371,22 +3518,27 @@ evgl_glBindFramebuffer(GLenum target, GLuint framebuffer) { Render_Engine_GL_Context *ctx = current_evgl_ctx; + if (!ctx) + { + ERR("No current context set."); + return; + } + // Take care of BindFramebuffer 0 issue if (framebuffer==0) { - if (ctx) - { - glBindFramebuffer(target, ctx->context_fbo); - ctx->current_fbo = 0; - } + if (gl_direct_enabled) + glBindFramebuffer(target, 0); + else + glBindFramebuffer(target, ctx->context_fbo); + ctx->current_fbo = 0; } else { glBindFramebuffer(target, framebuffer); // Save this for restore when doing make current - if (ctx) - ctx->current_fbo = framebuffer; + ctx->current_fbo = framebuffer; } } @@ -3398,6 +3550,225 @@ evgl_glBindRenderbuffer(GLenum target, GLuint renderbuffer) glBindRenderbuffer(target, renderbuffer); } +// Transform from Evas Coordinat to GL Coordinate +// returns: oc[4] original image object dimension in gl coord +// returns: nc[4] tranformed (x, y, width, heigth) in gl coord +static void +compute_gl_coordinates(Evas_Object *obj, int rot, int clip, + int x, int y, int width, int height, + int imgc[4], int objc[4]) +{ + if (rot == 0) + { + // oringinal image object coordinate in gl coordinate + imgc[0] = obj->cur.geometry.x; + imgc[1] = obj->layer->evas->output.h - obj->cur.geometry.y - obj->cur.geometry.h; + imgc[2] = imgc[0] + obj->cur.geometry.w; + imgc[3] = imgc[1] + obj->cur.geometry.h; + + // transformed (x,y,width,height) in gl coordinate + objc[0] = imgc[0] + x; + objc[1] = imgc[1] + y; + objc[2] = objc[0] + width; + objc[3] = objc[1] + height; + } + else if (rot == 180) + { + // oringinal image object coordinate in gl coordinate + imgc[0] = obj->layer->evas->output.w - obj->cur.geometry.x - obj->cur.geometry.w; + imgc[1] = obj->cur.geometry.y; + imgc[2] = imgc[0] + obj->cur.geometry.w; + imgc[3] = imgc[1] + obj->cur.geometry.h; + + // transformed (x,y,width,height) in gl coordinate + objc[0] = imgc[0] + obj->cur.geometry.w - x - width; + objc[1] = imgc[1] + obj->cur.geometry.h - y - height; + objc[2] = objc[0] + width; + objc[3] = objc[1] + height; + + } + else if (rot == 90) + { + // oringinal image object coordinate in gl coordinate + imgc[0] = obj->cur.geometry.y; + imgc[1] = obj->cur.geometry.x; + imgc[2] = imgc[0] + obj->cur.geometry.h; + imgc[3] = imgc[1] + obj->cur.geometry.w; + + // transformed (x,y,width,height) in gl coordinate + objc[0] = imgc[0] + obj->cur.geometry.h - y - height; + objc[1] = imgc[1] + x; + objc[2] = objc[0] + height; + objc[3] = objc[1] + width; + } + else if (rot == 270) + { + // oringinal image object coordinate in gl coordinate + imgc[0] = obj->layer->evas->output.h - obj->cur.geometry.y - obj->cur.geometry.h; + imgc[1] = obj->layer->evas->output.w - obj->cur.geometry.x - obj->cur.geometry.w; + imgc[2] = imgc[0] + obj->cur.geometry.h; + imgc[3] = imgc[1] + obj->cur.geometry.w; + + // transformed (x,y,width,height) in gl coordinate + objc[0] = imgc[0] + y; + objc[1] = imgc[1] + obj->cur.geometry.w - x - width; + objc[2] = objc[0] + height; + objc[3] = objc[1] + width; + } + else + { + ERR("Invalid rotation angle %d.", rot); + return; + } + + if (clip) + { + // Clip against original image object + if (objc[0] < imgc[0]) objc[0] = imgc[0]; + if (objc[0] > imgc[2]) objc[0] = 0; + + if (objc[1] < imgc[1]) objc[1] = imgc[1]; + if (objc[1] > imgc[3]) objc[1] = 0; + + if (objc[2] < imgc[0]) objc[0] = 0; + if (objc[2] > imgc[2]) objc[2] = imgc[2]; + + if (objc[3] < imgc[1]) objc[1] = 0; + if (objc[3] > imgc[3]) objc[3] = imgc[3]; + } + + imgc[2] = imgc[2]-imgc[0]; // width + imgc[3] = imgc[3]-imgc[1]; // height + + objc[2] = objc[2]-objc[0]; // width + objc[3] = objc[3]-objc[1]; // height +} + +static void +evgl_glClear(GLbitfield mask) +{ + Render_Engine_GL_Context *ctx = current_evgl_ctx; + int rot = 0; + int oc[4], nc[4]; + + if ((gl_direct_img_obj) && (gl_direct_enabled) && (ctx) && (!ctx->current_fbo)) + { + if ((current_engine) && (current_engine->win) && (current_engine->win->gl_context)) + rot = current_engine->win->gl_context->rot; + else + ERR("Unable to retrieve rotation angle: %d", rot); + + compute_gl_coordinates(gl_direct_img_obj, rot, 0, 0, 0, 0, 0, oc, nc); + glScissor(oc[0], oc[1], oc[2], oc[3]); + glClear(mask); + } + else + glClear(mask); +} + +static void +evgl_glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) +{ + current_engine->df_clear_color[0] = red; + current_engine->df_clear_color[1] = green; + current_engine->df_clear_color[2] = blue; + current_engine->df_clear_color[3] = alpha; + + glClearColor(red, green, blue, alpha); + +} + +static void +evgl_glEnable(GLenum cap) +{ + Render_Engine_GL_Context *ctx = current_evgl_ctx; + + if (cap == GL_SCISSOR_TEST) + if (ctx) ctx->scissor_enabled = 1; + glEnable(cap); +} + +static void +evgl_glDisable(GLenum cap) +{ + Render_Engine_GL_Context *ctx = current_evgl_ctx; + + if (cap == GL_SCISSOR_TEST) + if (ctx) ctx->scissor_enabled = 0; + glDisable(cap); +} + + +static void +evgl_glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void* pixels) +{ + Render_Engine_GL_Context *ctx = current_evgl_ctx; + int rot = 0; + int oc[4], nc[4]; + + if ((gl_direct_img_obj) && (gl_direct_enabled) && (ctx) && (!ctx->current_fbo)) + { + if ((current_engine) && (current_engine->win) && (current_engine->win->gl_context)) + rot = current_engine->win->gl_context->rot; + else + ERR("Unable to retrieve rotation angle: %d", rot); + + compute_gl_coordinates(gl_direct_img_obj, rot, 1, x, y, width, height, oc, nc); + glReadPixels(nc[0], nc[1], nc[2], nc[3], format, type, pixels); + } + else + glReadPixels(x, y, width, height, format, type, pixels); +} + +static void +evgl_glScissor(GLint x, GLint y, GLsizei width, GLsizei height) +{ + Render_Engine_GL_Context *ctx = current_evgl_ctx; + int rot = 0; + int oc[4], nc[4]; + + if ((gl_direct_img_obj) && (gl_direct_enabled) && (ctx) && (!ctx->current_fbo)) + { + if ((current_engine) && (current_engine->win) && (current_engine->win->gl_context)) + rot = current_engine->win->gl_context->rot; + else + ERR("Unable to retrieve rotation angle: %d", rot); + + compute_gl_coordinates(gl_direct_img_obj, rot, 1, x, y, width, height, oc, nc); + glScissor(nc[0], nc[1], nc[2], nc[3]); + ctx->scissor_upated = 1; + } + else + glScissor(x, y, width, height); +} + +static void +evgl_glViewport(GLint x, GLint y, GLsizei width, GLsizei height) +{ + Render_Engine_GL_Context *ctx = current_evgl_ctx; + int rot = 0; + int oc[4], nc[4]; + + if ((gl_direct_img_obj) && (gl_direct_enabled) && (ctx) && (!ctx->current_fbo)) + { + if ((current_engine) && (current_engine->win) && (current_engine->win->gl_context)) + rot = current_engine->win->gl_context->rot; + else + ERR("Unable to retrieve rotation angle: %d", rot); + + compute_gl_coordinates(gl_direct_img_obj, rot, 0, x, y, width, height, oc, nc); + glEnable(GL_SCISSOR_TEST); + glScissor(oc[0], oc[1], oc[2], oc[3]); + glViewport(nc[0], nc[1], nc[2], nc[3]); + } + else + glViewport(x, y, width, height); + +} + + +//----------------------------------------------// + static void evgl_glClearDepthf(GLclampf depth) { @@ -3531,8 +3902,8 @@ eng_gl_api_get(void *data) ORD(glBufferData); ORD(glBufferSubData); ORD(glCheckFramebufferStatus); - ORD(glClear); - ORD(glClearColor); +// ORD(glClear); +// ORD(glClearColor); // ORD(glClearDepthf); ORD(glClearStencil); ORD(glColorMask); @@ -3554,11 +3925,11 @@ eng_gl_api_get(void *data) ORD(glDepthMask); // ORD(glDepthRangef); ORD(glDetachShader); - ORD(glDisable); +// ORD(glDisable); ORD(glDisableVertexAttribArray); ORD(glDrawArrays); ORD(glDrawElements); - ORD(glEnable); +// ORD(glEnable); ORD(glEnableVertexAttribArray); ORD(glFinish); ORD(glFlush); @@ -3612,7 +3983,7 @@ eng_gl_api_get(void *data) // ORD(glReleaseShaderCompiler); ORD(glRenderbufferStorage); ORD(glSampleCoverage); - ORD(glScissor); +// ORD(glScissor); // ORD(glShaderBinary); ORD(glShaderSource); ORD(glStencilFunc); @@ -3657,7 +4028,7 @@ eng_gl_api_get(void *data) ORD(glVertexAttrib4f); ORD(glVertexAttrib4fv); ORD(glVertexAttribPointer); - ORD(glViewport); +// ORD(glViewport); #undef ORD #define ORD(f) EVAS_API_OVERRIDE(f, &gl_funcs, glsym_) @@ -3717,6 +4088,14 @@ eng_gl_api_get(void *data) ORD(glBindFramebuffer); ORD(glBindRenderbuffer); + ORD(glClear); + ORD(glClearColor); + ORD(glEnable); + ORD(glDisable); + ORD(glReadPixels); + ORD(glScissor); + ORD(glViewport); + // GLES2.0 API compat on top of desktop gl ORD(glClearDepthf); ORD(glDepthRangef); @@ -3739,6 +4118,24 @@ eng_gl_api_get(void *data) return &gl_funcs; } +static void +eng_gl_img_obj_set(void *data, void *image, int has_alpha) +{ + Render_Engine *re = (Render_Engine *)data; + + gl_direct_img_obj = NULL; + + // Normally direct rendering isn't allowed if alpha is on and + // rotation is not 0. BUT, if override is on, allow it. + if ((has_alpha) || (re->win->gl_context->rot!=0)) + { + if (gl_direct_override) + gl_direct_img_obj = image; + } + else + gl_direct_img_obj = image; +} + static int eng_image_load_error_get(void *data __UNUSED__, void *image) { @@ -3877,6 +4274,9 @@ module_open(Evas_Module *em) EINA_LOG_ERR("Can not create a module log domain."); return 0; } + /* Allow alpha for evas gl direct rendering */ + if (getenv("EVAS_GL_DIRECT_OVERRIDE")) gl_direct_override = 1; + /* store it for later use */ func = pfunc; /* now to override methods */ @@ -3961,6 +4361,7 @@ module_open(Evas_Module *em) ORD(gl_proc_address_get); ORD(gl_native_surface_get); ORD(gl_api_get); + ORD(gl_img_obj_set); ORD(image_load_error_get); diff --git a/libraries/evas/src/modules/engines/psl1ght/Makefile.in b/libraries/evas/src/modules/engines/psl1ght/Makefile.in index f8524a4..9593d02 100644 --- a/libraries/evas/src/modules/engines/psl1ght/Makefile.in +++ b/libraries/evas/src/modules/engines/psl1ght/Makefile.in @@ -190,6 +190,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -240,6 +242,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -258,8 +262,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -333,8 +335,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/modules/engines/software_16/Makefile.am b/libraries/evas/src/modules/engines/software_16/Makefile.am index 070d610..fec60ac 100644 --- a/libraries/evas/src/modules/engines/software_16/Makefile.am +++ b/libraries/evas/src/modules/engines/software_16/Makefile.am @@ -10,8 +10,6 @@ AM_CPPFLAGS = \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ - if BUILD_ENGINE_SOFTWARE_16 SOFTWARE_16_SOURCES = evas_engine.c diff --git a/libraries/evas/src/modules/engines/software_16/Makefile.in b/libraries/evas/src/modules/engines/software_16/Makefile.in index 88164e1..bca2deb 100644 --- a/libraries/evas/src/modules/engines/software_16/Makefile.in +++ b/libraries/evas/src/modules/engines/software_16/Makefile.in @@ -185,6 +185,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -235,6 +237,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -253,8 +257,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -328,8 +330,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -422,7 +422,6 @@ AM_CPPFLAGS = \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ @BUILD_ENGINE_SOFTWARE_16_TRUE@SOFTWARE_16_SOURCES = evas_engine.c @BUILD_ENGINE_SOFTWARE_16_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_FALSE@pkgdir = $(libdir)/evas/modules/engines/software_16/$(MODULE_ARCH) @BUILD_ENGINE_SOFTWARE_16_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_FALSE@pkg_LTLIBRARIES = module.la diff --git a/libraries/evas/src/modules/engines/software_16_ddraw/Makefile.in b/libraries/evas/src/modules/engines/software_16_ddraw/Makefile.in index 0039410..014411c 100644 --- a/libraries/evas/src/modules/engines/software_16_ddraw/Makefile.in +++ b/libraries/evas/src/modules/engines/software_16_ddraw/Makefile.in @@ -215,6 +215,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -265,6 +267,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -283,8 +287,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -358,8 +360,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/modules/engines/software_16_sdl/Makefile.am b/libraries/evas/src/modules/engines/software_16_sdl/Makefile.am index af0197d..88204c0 100644 --- a/libraries/evas/src/modules/engines/software_16_sdl/Makefile.am +++ b/libraries/evas/src/modules/engines/software_16_sdl/Makefile.am @@ -4,7 +4,7 @@ MAINTAINERCLEANFILES = Makefile.in INCLUDES = -I. -I$(top_srcdir)/src/lib -I$(top_srcdir)/src/lib/include @FREETYPE_CFLAGS@ @PIXMAN_CFLAGS@ @SDL_CFLAGS@ @EINA_CFLAGS@ -if BUILD_ENGINE_SOFTWARE_SDL +if BUILD_ENGINE_SOFTWARE_16_SDL SOFTWARE_SDL_SOURCES = \ evas_engine.c \ @@ -14,7 +14,7 @@ evas_engine.h includes_HEADERS = Evas_Engine_SDL_16.h includesdir = $(includedir)/evas-@VMAJ@ -if !EVAS_STATIC_BUILD_SOFTWARE_SDL +if !EVAS_STATIC_BUILD_SOFTWARE_16_SDL pkgdir = $(libdir)/evas/modules/engines/software_16_sdl/$(MODULE_ARCH) pkg_LTLIBRARIES = module.la diff --git a/libraries/evas/src/modules/engines/software_16_sdl/Makefile.in b/libraries/evas/src/modules/engines/software_16_sdl/Makefile.in index 6ebf0db..a8f2cc9 100644 --- a/libraries/evas/src/modules/engines/software_16_sdl/Makefile.in +++ b/libraries/evas/src/modules/engines/software_16_sdl/Makefile.in @@ -84,23 +84,23 @@ LTLIBRARIES = $(noinst_LTLIBRARIES) $(pkg_LTLIBRARIES) libevas_engine_software_16_sdl_la_DEPENDENCIES = am__libevas_engine_software_16_sdl_la_SOURCES_DIST = evas_engine.c \ evas_engine.h -@BUILD_ENGINE_SOFTWARE_SDL_TRUE@am__objects_1 = evas_engine.lo -@BUILD_ENGINE_SOFTWARE_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_SDL_TRUE@am_libevas_engine_software_16_sdl_la_OBJECTS = $(am__objects_1) +@BUILD_ENGINE_SOFTWARE_16_SDL_TRUE@am__objects_1 = evas_engine.lo +@BUILD_ENGINE_SOFTWARE_16_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_TRUE@am_libevas_engine_software_16_sdl_la_OBJECTS = $(am__objects_1) libevas_engine_software_16_sdl_la_OBJECTS = \ $(am_libevas_engine_software_16_sdl_la_OBJECTS) AM_V_lt = $(am__v_lt_$(V)) am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) am__v_lt_0 = --silent -@BUILD_ENGINE_SOFTWARE_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_SDL_TRUE@am_libevas_engine_software_16_sdl_la_rpath = -@BUILD_ENGINE_SOFTWARE_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_SDL_FALSE@module_la_DEPENDENCIES = $(top_builddir)/src/lib/libevas.la +@BUILD_ENGINE_SOFTWARE_16_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_TRUE@am_libevas_engine_software_16_sdl_la_rpath = +@BUILD_ENGINE_SOFTWARE_16_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_FALSE@module_la_DEPENDENCIES = $(top_builddir)/src/lib/libevas.la am__module_la_SOURCES_DIST = evas_engine.c evas_engine.h -@BUILD_ENGINE_SOFTWARE_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_SDL_FALSE@am_module_la_OBJECTS = $(am__objects_1) +@BUILD_ENGINE_SOFTWARE_16_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_FALSE@am_module_la_OBJECTS = $(am__objects_1) module_la_OBJECTS = $(am_module_la_OBJECTS) module_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(module_la_LDFLAGS) $(LDFLAGS) -o $@ -@BUILD_ENGINE_SOFTWARE_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_SDL_FALSE@am_module_la_rpath = -rpath \ -@BUILD_ENGINE_SOFTWARE_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_SDL_FALSE@ $(pkgdir) +@BUILD_ENGINE_SOFTWARE_16_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_FALSE@am_module_la_rpath = -rpath \ +@BUILD_ENGINE_SOFTWARE_16_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_FALSE@ $(pkgdir) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles @@ -188,6 +188,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -238,6 +240,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -256,8 +260,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -331,8 +333,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -418,20 +418,20 @@ version_info = @version_info@ AUTOMAKE_OPTIONS = 1.4 foreign MAINTAINERCLEANFILES = Makefile.in INCLUDES = -I. -I$(top_srcdir)/src/lib -I$(top_srcdir)/src/lib/include @FREETYPE_CFLAGS@ @PIXMAN_CFLAGS@ @SDL_CFLAGS@ @EINA_CFLAGS@ -@BUILD_ENGINE_SOFTWARE_SDL_TRUE@SOFTWARE_SDL_SOURCES = \ -@BUILD_ENGINE_SOFTWARE_SDL_TRUE@evas_engine.c \ -@BUILD_ENGINE_SOFTWARE_SDL_TRUE@evas_engine.h - -@BUILD_ENGINE_SOFTWARE_SDL_TRUE@includes_HEADERS = Evas_Engine_SDL_16.h -@BUILD_ENGINE_SOFTWARE_SDL_TRUE@includesdir = $(includedir)/evas-@VMAJ@ -@BUILD_ENGINE_SOFTWARE_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_SDL_FALSE@pkgdir = $(libdir)/evas/modules/engines/software_16_sdl/$(MODULE_ARCH) -@BUILD_ENGINE_SOFTWARE_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_SDL_FALSE@pkg_LTLIBRARIES = module.la -@BUILD_ENGINE_SOFTWARE_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_SDL_FALSE@module_la_SOURCES = $(SOFTWARE_SDL_SOURCES) -@BUILD_ENGINE_SOFTWARE_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_SDL_FALSE@module_la_LIBADD = @EINA_LIBS@ @SDL_LIBS@ $(top_builddir)/src/lib/libevas.la -@BUILD_ENGINE_SOFTWARE_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_SDL_FALSE@module_la_LDFLAGS = -no-undefined -module -avoid-version -L$(top_builddir)/src/lib -L$(top_builddir)/src/lib/.libs -@BUILD_ENGINE_SOFTWARE_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_SDL_TRUE@noinst_LTLIBRARIES = libevas_engine_software_16_sdl.la -@BUILD_ENGINE_SOFTWARE_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_SDL_TRUE@libevas_engine_software_16_sdl_la_SOURCES = $(SOFTWARE_SDL_SOURCES) -@BUILD_ENGINE_SOFTWARE_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_SDL_TRUE@libevas_engine_software_16_sdl_la_LIBADD = @SDL_LIBS@ +@BUILD_ENGINE_SOFTWARE_16_SDL_TRUE@SOFTWARE_SDL_SOURCES = \ +@BUILD_ENGINE_SOFTWARE_16_SDL_TRUE@evas_engine.c \ +@BUILD_ENGINE_SOFTWARE_16_SDL_TRUE@evas_engine.h + +@BUILD_ENGINE_SOFTWARE_16_SDL_TRUE@includes_HEADERS = Evas_Engine_SDL_16.h +@BUILD_ENGINE_SOFTWARE_16_SDL_TRUE@includesdir = $(includedir)/evas-@VMAJ@ +@BUILD_ENGINE_SOFTWARE_16_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_FALSE@pkgdir = $(libdir)/evas/modules/engines/software_16_sdl/$(MODULE_ARCH) +@BUILD_ENGINE_SOFTWARE_16_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_FALSE@pkg_LTLIBRARIES = module.la +@BUILD_ENGINE_SOFTWARE_16_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_FALSE@module_la_SOURCES = $(SOFTWARE_SDL_SOURCES) +@BUILD_ENGINE_SOFTWARE_16_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_FALSE@module_la_LIBADD = @EINA_LIBS@ @SDL_LIBS@ $(top_builddir)/src/lib/libevas.la +@BUILD_ENGINE_SOFTWARE_16_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_FALSE@module_la_LDFLAGS = -no-undefined -module -avoid-version -L$(top_builddir)/src/lib -L$(top_builddir)/src/lib/.libs +@BUILD_ENGINE_SOFTWARE_16_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_TRUE@noinst_LTLIBRARIES = libevas_engine_software_16_sdl.la +@BUILD_ENGINE_SOFTWARE_16_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_TRUE@libevas_engine_software_16_sdl_la_SOURCES = $(SOFTWARE_SDL_SOURCES) +@BUILD_ENGINE_SOFTWARE_16_SDL_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_SDL_TRUE@libevas_engine_software_16_sdl_la_LIBADD = @SDL_LIBS@ EXTRA_DIST = \ evas_engine.c \ evas_engine.h \ diff --git a/libraries/evas/src/modules/engines/software_16_wince/Makefile.am b/libraries/evas/src/modules/engines/software_16_wince/Makefile.am index 7f0c666..fcd21b1 100644 --- a/libraries/evas/src/modules/engines/software_16_wince/Makefile.am +++ b/libraries/evas/src/modules/engines/software_16_wince/Makefile.am @@ -33,7 +33,6 @@ pkgdir = $(libdir)/evas/modules/engines/software_16_wince/$(MODULE_ARCH) pkg_LTLIBRARIES = module.la module_la_SOURCES = $(SOFTWARE_16_WINCE_SOURCE) -module_la_CFLAGS = @WIN32_CFLAGS@ module_la_CXXFLAGS = -fno-rtti -fno-exceptions module_la_LIBADD = @EINA_LIBS@ $(top_builddir)/src/lib/libevas.la $(SOFTWARE_16_WINCE_LIBADD) module_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ -module -avoid-version diff --git a/libraries/evas/src/modules/engines/software_16_wince/Makefile.in b/libraries/evas/src/modules/engines/software_16_wince/Makefile.in index 95c484e..d371be5 100644 --- a/libraries/evas/src/modules/engines/software_16_wince/Makefile.in +++ b/libraries/evas/src/modules/engines/software_16_wince/Makefile.in @@ -221,6 +221,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -271,6 +273,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -289,8 +293,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -364,8 +366,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -473,7 +473,6 @@ AM_CPPFLAGS = \ @BUILD_ENGINE_SOFTWARE_16_WINCE_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_WINCE_FALSE@pkgdir = $(libdir)/evas/modules/engines/software_16_wince/$(MODULE_ARCH) @BUILD_ENGINE_SOFTWARE_16_WINCE_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_WINCE_FALSE@pkg_LTLIBRARIES = module.la @BUILD_ENGINE_SOFTWARE_16_WINCE_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_WINCE_FALSE@module_la_SOURCES = $(SOFTWARE_16_WINCE_SOURCE) -@BUILD_ENGINE_SOFTWARE_16_WINCE_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_WINCE_FALSE@module_la_CFLAGS = @WIN32_CFLAGS@ @BUILD_ENGINE_SOFTWARE_16_WINCE_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_WINCE_FALSE@module_la_CXXFLAGS = -fno-rtti -fno-exceptions @BUILD_ENGINE_SOFTWARE_16_WINCE_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_WINCE_FALSE@module_la_LIBADD = @EINA_LIBS@ $(top_builddir)/src/lib/libevas.la $(SOFTWARE_16_WINCE_LIBADD) @BUILD_ENGINE_SOFTWARE_16_WINCE_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_16_WINCE_FALSE@module_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ -module -avoid-version @@ -603,36 +602,36 @@ distclean-compile: @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< module_la-evas_engine.lo: evas_engine.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(module_la_CFLAGS) $(CFLAGS) -MT module_la-evas_engine.lo -MD -MP -MF $(DEPDIR)/module_la-evas_engine.Tpo -c -o module_la-evas_engine.lo `test -f 'evas_engine.c' || echo '$(srcdir)/'`evas_engine.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT module_la-evas_engine.lo -MD -MP -MF $(DEPDIR)/module_la-evas_engine.Tpo -c -o module_la-evas_engine.lo `test -f 'evas_engine.c' || echo '$(srcdir)/'`evas_engine.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/module_la-evas_engine.Tpo $(DEPDIR)/module_la-evas_engine.Plo @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='evas_engine.c' object='module_la-evas_engine.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(module_la_CFLAGS) $(CFLAGS) -c -o module_la-evas_engine.lo `test -f 'evas_engine.c' || echo '$(srcdir)/'`evas_engine.c +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o module_la-evas_engine.lo `test -f 'evas_engine.c' || echo '$(srcdir)/'`evas_engine.c module_la-evas_wince_fb_buffer.lo: evas_wince_fb_buffer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(module_la_CFLAGS) $(CFLAGS) -MT module_la-evas_wince_fb_buffer.lo -MD -MP -MF $(DEPDIR)/module_la-evas_wince_fb_buffer.Tpo -c -o module_la-evas_wince_fb_buffer.lo `test -f 'evas_wince_fb_buffer.c' || echo '$(srcdir)/'`evas_wince_fb_buffer.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT module_la-evas_wince_fb_buffer.lo -MD -MP -MF $(DEPDIR)/module_la-evas_wince_fb_buffer.Tpo -c -o module_la-evas_wince_fb_buffer.lo `test -f 'evas_wince_fb_buffer.c' || echo '$(srcdir)/'`evas_wince_fb_buffer.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/module_la-evas_wince_fb_buffer.Tpo $(DEPDIR)/module_la-evas_wince_fb_buffer.Plo @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='evas_wince_fb_buffer.c' object='module_la-evas_wince_fb_buffer.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(module_la_CFLAGS) $(CFLAGS) -c -o module_la-evas_wince_fb_buffer.lo `test -f 'evas_wince_fb_buffer.c' || echo '$(srcdir)/'`evas_wince_fb_buffer.c +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o module_la-evas_wince_fb_buffer.lo `test -f 'evas_wince_fb_buffer.c' || echo '$(srcdir)/'`evas_wince_fb_buffer.c module_la-evas_wince_gapi_buffer.lo: evas_wince_gapi_buffer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(module_la_CFLAGS) $(CFLAGS) -MT module_la-evas_wince_gapi_buffer.lo -MD -MP -MF $(DEPDIR)/module_la-evas_wince_gapi_buffer.Tpo -c -o module_la-evas_wince_gapi_buffer.lo `test -f 'evas_wince_gapi_buffer.c' || echo '$(srcdir)/'`evas_wince_gapi_buffer.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT module_la-evas_wince_gapi_buffer.lo -MD -MP -MF $(DEPDIR)/module_la-evas_wince_gapi_buffer.Tpo -c -o module_la-evas_wince_gapi_buffer.lo `test -f 'evas_wince_gapi_buffer.c' || echo '$(srcdir)/'`evas_wince_gapi_buffer.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/module_la-evas_wince_gapi_buffer.Tpo $(DEPDIR)/module_la-evas_wince_gapi_buffer.Plo @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='evas_wince_gapi_buffer.c' object='module_la-evas_wince_gapi_buffer.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(module_la_CFLAGS) $(CFLAGS) -c -o module_la-evas_wince_gapi_buffer.lo `test -f 'evas_wince_gapi_buffer.c' || echo '$(srcdir)/'`evas_wince_gapi_buffer.c +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o module_la-evas_wince_gapi_buffer.lo `test -f 'evas_wince_gapi_buffer.c' || echo '$(srcdir)/'`evas_wince_gapi_buffer.c module_la-evas_wince_gdi_buffer.lo: evas_wince_gdi_buffer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(module_la_CFLAGS) $(CFLAGS) -MT module_la-evas_wince_gdi_buffer.lo -MD -MP -MF $(DEPDIR)/module_la-evas_wince_gdi_buffer.Tpo -c -o module_la-evas_wince_gdi_buffer.lo `test -f 'evas_wince_gdi_buffer.c' || echo '$(srcdir)/'`evas_wince_gdi_buffer.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT module_la-evas_wince_gdi_buffer.lo -MD -MP -MF $(DEPDIR)/module_la-evas_wince_gdi_buffer.Tpo -c -o module_la-evas_wince_gdi_buffer.lo `test -f 'evas_wince_gdi_buffer.c' || echo '$(srcdir)/'`evas_wince_gdi_buffer.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/module_la-evas_wince_gdi_buffer.Tpo $(DEPDIR)/module_la-evas_wince_gdi_buffer.Plo @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='evas_wince_gdi_buffer.c' object='module_la-evas_wince_gdi_buffer.lo' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(module_la_CFLAGS) $(CFLAGS) -c -o module_la-evas_wince_gdi_buffer.lo `test -f 'evas_wince_gdi_buffer.c' || echo '$(srcdir)/'`evas_wince_gdi_buffer.c +@am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o module_la-evas_wince_gdi_buffer.lo `test -f 'evas_wince_gdi_buffer.c' || echo '$(srcdir)/'`evas_wince_gdi_buffer.c .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< diff --git a/libraries/evas/src/modules/engines/software_16_x11/Makefile.in b/libraries/evas/src/modules/engines/software_16_x11/Makefile.in index 3232681..2ce18e6 100644 --- a/libraries/evas/src/modules/engines/software_16_x11/Makefile.in +++ b/libraries/evas/src/modules/engines/software_16_x11/Makefile.in @@ -194,6 +194,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -244,6 +246,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -262,8 +266,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -337,8 +339,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/modules/engines/software_8/Makefile.am b/libraries/evas/src/modules/engines/software_8/Makefile.am index 145b766..46637fb 100644 --- a/libraries/evas/src/modules/engines/software_8/Makefile.am +++ b/libraries/evas/src/modules/engines/software_8/Makefile.am @@ -10,8 +10,6 @@ AM_CPPFLAGS = \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ - if BUILD_ENGINE_SOFTWARE_8 SOFTWARE_8_SOURCES = evas_engine.c diff --git a/libraries/evas/src/modules/engines/software_8/Makefile.in b/libraries/evas/src/modules/engines/software_8/Makefile.in index 3ee42fd..6da6bbb 100644 --- a/libraries/evas/src/modules/engines/software_8/Makefile.in +++ b/libraries/evas/src/modules/engines/software_8/Makefile.in @@ -184,6 +184,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -234,6 +236,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -252,8 +256,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -327,8 +329,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -421,7 +421,6 @@ AM_CPPFLAGS = \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ @BUILD_ENGINE_SOFTWARE_8_TRUE@SOFTWARE_8_SOURCES = evas_engine.c @BUILD_ENGINE_SOFTWARE_8_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_8_X11_FALSE@pkgdir = $(libdir)/evas/modules/engines/software_8/$(MODULE_ARCH) @BUILD_ENGINE_SOFTWARE_8_TRUE@@EVAS_STATIC_BUILD_SOFTWARE_8_X11_FALSE@pkg_LTLIBRARIES = module.la diff --git a/libraries/evas/src/modules/engines/software_8_x11/Makefile.in b/libraries/evas/src/modules/engines/software_8_x11/Makefile.in index 22577af..3231fd1 100644 --- a/libraries/evas/src/modules/engines/software_8_x11/Makefile.in +++ b/libraries/evas/src/modules/engines/software_8_x11/Makefile.in @@ -194,6 +194,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -244,6 +246,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -262,8 +266,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -337,8 +339,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/modules/engines/software_ddraw/Makefile.in b/libraries/evas/src/modules/engines/software_ddraw/Makefile.in index da65f92..629b413 100644 --- a/libraries/evas/src/modules/engines/software_ddraw/Makefile.in +++ b/libraries/evas/src/modules/engines/software_ddraw/Makefile.in @@ -216,6 +216,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -266,6 +268,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -284,8 +288,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -359,8 +361,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/modules/engines/software_gdi/Makefile.in b/libraries/evas/src/modules/engines/software_gdi/Makefile.in index a2421ef..507926d 100644 --- a/libraries/evas/src/modules/engines/software_gdi/Makefile.in +++ b/libraries/evas/src/modules/engines/software_gdi/Makefile.in @@ -199,6 +199,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -249,6 +251,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -267,8 +271,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -342,8 +344,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/modules/engines/software_generic/Makefile.am b/libraries/evas/src/modules/engines/software_generic/Makefile.am index d7986f1..e605dac 100644 --- a/libraries/evas/src/modules/engines/software_generic/Makefile.am +++ b/libraries/evas/src/modules/engines/software_generic/Makefile.am @@ -10,8 +10,6 @@ AM_CPPFLAGS = \ @FREETYPE_CFLAGS@ \ @PIXMAN_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ - SOFTWARE_GENERIC_SOURCES = evas_engine.c @@ -22,7 +20,7 @@ pkg_LTLIBRARIES = module.la module_la_SOURCES = $(SOFTWARE_GENERIC_SOURCES) -module_la_LIBADD = @EINA_LIBS@ $(top_builddir)/src/lib/libevas.la +module_la_LIBADD = @EINA_LIBS@ @dlopen_libs@ $(top_builddir)/src/lib/libevas.la module_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ -module -avoid-version module_la_LIBTOOLFLAGS = --tag=disable-static diff --git a/libraries/evas/src/modules/engines/software_generic/Makefile.in b/libraries/evas/src/modules/engines/software_generic/Makefile.in index 4f66536..fe0ac3d 100644 --- a/libraries/evas/src/modules/engines/software_generic/Makefile.in +++ b/libraries/evas/src/modules/engines/software_generic/Makefile.in @@ -186,6 +186,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -236,6 +238,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -254,8 +258,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -329,8 +331,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -423,12 +423,11 @@ AM_CPPFLAGS = \ @FREETYPE_CFLAGS@ \ @PIXMAN_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ SOFTWARE_GENERIC_SOURCES = evas_engine.c @EVAS_STATIC_BUILD_SOFTWARE_GENERIC_FALSE@pkgdir = $(libdir)/evas/modules/engines/software_generic/$(MODULE_ARCH) @EVAS_STATIC_BUILD_SOFTWARE_GENERIC_FALSE@pkg_LTLIBRARIES = module.la @EVAS_STATIC_BUILD_SOFTWARE_GENERIC_FALSE@module_la_SOURCES = $(SOFTWARE_GENERIC_SOURCES) -@EVAS_STATIC_BUILD_SOFTWARE_GENERIC_FALSE@module_la_LIBADD = @EINA_LIBS@ $(top_builddir)/src/lib/libevas.la +@EVAS_STATIC_BUILD_SOFTWARE_GENERIC_FALSE@module_la_LIBADD = @EINA_LIBS@ @dlopen_libs@ $(top_builddir)/src/lib/libevas.la @EVAS_STATIC_BUILD_SOFTWARE_GENERIC_FALSE@module_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ -module -avoid-version @EVAS_STATIC_BUILD_SOFTWARE_GENERIC_FALSE@module_la_LIBTOOLFLAGS = --tag=disable-static @EVAS_STATIC_BUILD_SOFTWARE_GENERIC_TRUE@noinst_LTLIBRARIES = libevas_engine_software_generic.la diff --git a/libraries/evas/src/modules/engines/software_generic/evas_engine.c b/libraries/evas/src/modules/engines/software_generic/evas_engine.c index 48944dd..4667f6b 100644 --- a/libraries/evas/src/modules/engines/software_generic/evas_engine.c +++ b/libraries/evas/src/modules/engines/software_generic/evas_engine.c @@ -591,11 +591,8 @@ eng_image_border_set(void *data __UNUSED__, void *image, int l __UNUSED__, int r } static void -eng_image_border_get(void *data __UNUSED__, void *image, int *l __UNUSED__, int *r __UNUSED__, int *t __UNUSED__, int *b __UNUSED__) +eng_image_border_get(void *data __UNUSED__, void *image __UNUSED__, int *l __UNUSED__, int *r __UNUSED__, int *t __UNUSED__, int *b __UNUSED__) { - RGBA_Image *im; - - im = image; } static char * @@ -704,18 +701,16 @@ eng_image_size_get(void *data __UNUSED__, void *image, int *w, int *h) static void * eng_image_size_set(void *data __UNUSED__, void *image, int w, int h) { - Image_Entry *im; - - im = image; - return evas_cache_image_size_set(image, w, h); + Image_Entry *im = image; + if (!im) return NULL; + return evas_cache_image_size_set(im, w, h); } static void * eng_image_dirty_region(void *data __UNUSED__, void *image, int x, int y, int w, int h) { Image_Entry *im = image; - - if (!image) return NULL; + if (!im) return NULL; return evas_cache_image_dirty(im, x, y, w, h); } @@ -931,11 +926,10 @@ static void * eng_image_map_surface_new(void *data __UNUSED__, int w, int h, int alpha) { void *surface; - DATA32 *pixels; surface = evas_cache_image_copied_data(evas_common_image_cache_get(), w, h, NULL, alpha, EVAS_COLORSPACE_ARGB8888); - pixels = evas_cache_image_pixels(surface); + evas_cache_image_pixels(surface); return surface; } @@ -1784,6 +1778,7 @@ static Evas_Func func = NULL, // need software mesa for gl rendering <- gl_proc_address_get NULL, // need software mesa for gl rendering <- gl_native_surface_get NULL, // need software mesa for gl rendering <- gl_api_get + NULL, // need software mesa for gl rendering <- gl_img_obj_set eng_image_load_error_get, eng_font_run_font_end_get, eng_image_animated_get, @@ -2519,7 +2514,7 @@ evgl_glShaderSource(GLuint shader, GLsizei count, const char** string, const GLi static void -evgl_glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision) +evgl_glGetShaderPrecisionFormat(GLenum shadertype __UNUSED__, GLenum precisiontype __UNUSED__, GLint* range, GLint* precision) { if (range) { @@ -2531,7 +2526,6 @@ evgl_glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint* precision[0] = 24; // floor(-log2((1.0/16777218.0))); } return; - shadertype = precisiontype = 0; } static void @@ -2567,6 +2561,8 @@ override_gl_apis(Evas_GL_API *api) ORD(glAttachShader); ORD(glBindAttribLocation); ORD(glBindBuffer); + ORD(glBindFramebuffer); + ORD(glBindRenderbuffer); ORD(glBindTexture); ORD(glBlendColor); ORD(glBlendEquation); diff --git a/libraries/evas/src/modules/engines/software_x11/Makefile.in b/libraries/evas/src/modules/engines/software_x11/Makefile.in index 5fd2971..caab918 100644 --- a/libraries/evas/src/modules/engines/software_x11/Makefile.in +++ b/libraries/evas/src/modules/engines/software_x11/Makefile.in @@ -232,6 +232,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -282,6 +284,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -300,8 +304,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -375,8 +377,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/modules/engines/wayland_egl/Makefile.am b/libraries/evas/src/modules/engines/wayland_egl/Makefile.am index 100614f..9234b33 100644 --- a/libraries/evas/src/modules/engines/wayland_egl/Makefile.am +++ b/libraries/evas/src/modules/engines/wayland_egl/Makefile.am @@ -18,7 +18,7 @@ WAYLAND_EGL_SOURCES = \ evas_engine.c \ evas_wl_main.c -WAYLAND_EGL_LIBADD = @FREETYPE_LIBS@ @GL_EET_LIBS@ @EINA_LIBS@ @evas_engine_wayland_egl_libs@ $(top_builddir)/src/modules/engines/gl_common/libevas_engine_gl_common.la +WAYLAND_EGL_LIBADD = @FREETYPE_LIBS@ @GL_EET_LIBS@ @EINA_LIBS@ @evas_engine_wayland_egl_libs@ @dlopen_libs@ $(top_builddir)/src/modules/engines/gl_common/libevas_engine_gl_common.la includes_HEADERS = Evas_Engine_Wayland_Egl.h includesdir = $(includedir)/evas-@VMAJ@ diff --git a/libraries/evas/src/modules/engines/wayland_egl/Makefile.in b/libraries/evas/src/modules/engines/wayland_egl/Makefile.in index 0df0c63..90aa36b 100644 --- a/libraries/evas/src/modules/engines/wayland_egl/Makefile.in +++ b/libraries/evas/src/modules/engines/wayland_egl/Makefile.in @@ -194,6 +194,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -244,6 +246,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -262,8 +266,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -337,8 +339,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -437,7 +437,7 @@ AM_CPPFLAGS = \ @BUILD_ENGINE_WAYLAND_EGL_TRUE@evas_engine.c \ @BUILD_ENGINE_WAYLAND_EGL_TRUE@evas_wl_main.c -@BUILD_ENGINE_WAYLAND_EGL_TRUE@WAYLAND_EGL_LIBADD = @FREETYPE_LIBS@ @GL_EET_LIBS@ @EINA_LIBS@ @evas_engine_wayland_egl_libs@ $(top_builddir)/src/modules/engines/gl_common/libevas_engine_gl_common.la +@BUILD_ENGINE_WAYLAND_EGL_TRUE@WAYLAND_EGL_LIBADD = @FREETYPE_LIBS@ @GL_EET_LIBS@ @EINA_LIBS@ @evas_engine_wayland_egl_libs@ @dlopen_libs@ $(top_builddir)/src/modules/engines/gl_common/libevas_engine_gl_common.la @BUILD_ENGINE_WAYLAND_EGL_TRUE@includes_HEADERS = Evas_Engine_Wayland_Egl.h @BUILD_ENGINE_WAYLAND_EGL_TRUE@includesdir = $(includedir)/evas-@VMAJ@ @BUILD_ENGINE_WAYLAND_EGL_TRUE@@EVAS_STATIC_BUILD_WAYLAND_EGL_FALSE@pkgdir = $(libdir)/evas/modules/engines/wayland_egl/$(MODULE_ARCH) diff --git a/libraries/evas/src/modules/engines/wayland_egl/evas_engine.c b/libraries/evas/src/modules/engines/wayland_egl/evas_engine.c index d2a6a0d..4f5102e 100644 --- a/libraries/evas/src/modules/engines/wayland_egl/evas_engine.c +++ b/libraries/evas/src/modules/engines/wayland_egl/evas_engine.c @@ -25,7 +25,6 @@ struct _Render_Engine int end; int w, h; int vsync; - }; struct _Render_Engine_GL_Surface @@ -1320,76 +1319,6 @@ struct _Native // //#define GLX_TEX_PIXMAP_RECREATE 1 -static void -_native_bind_cb(void *data, void *image) -{ - Evas_GL_Image *im = image; - Native *n = im->native.data; - - if (n->egl_surface) - { - if (glsym_glEGLImageTargetTexture2DOES) - { - glsym_glEGLImageTargetTexture2DOES(GL_TEXTURE_2D, n->egl_surface); - if (eglGetError() != EGL_SUCCESS) - ERR("glEGLImageTargetTexture2DOES() failed."); - } - else - ERR("Try glEGLImageTargetTexture2DOES on EGL with no support"); - } - return; - data = NULL; -} - -static void -_native_unbind_cb(void *data, void *image) -{ - Evas_GL_Image *im = image; - /* Native *n = im->native.data; */ - - /* if (n->ns.type == EVAS_NATIVE_SURFACE_X11) */ - /* { */ - /* // nothing */ - /* } */ - /* else if (n->ns.type == EVAS_NATIVE_SURFACE_OPENGL) */ - /* { */ - /* glBindTexture(GL_TEXTURE_2D, 0); */ - /* GLERR(__FUNCTION__, __FILE__, __LINE__, ""); */ - /* } */ - return; - data = NULL; -} - -static void -_native_free_cb(void *data, void *image) -{ - Render_Engine *re = data; - Evas_GL_Image *im = image; - Native *n = im->native.data; - uint32_t texid; -// uint32_t pmid, texid; - - /* eina_hash_del(re->win->gl_context->shared->native_pm_hash, &pmid, im); */ - if (n->egl_surface) - { - if (glsym_eglDestroyImage) - { - glsym_eglDestroyImage(re->win->egl_disp, n->egl_surface); - if (eglGetError() != EGL_SUCCESS) - ERR("eglDestroyImage() failed."); - } - else - ERR("Try eglDestroyImage on EGL with no support"); - } - - im->native.data = NULL; - im->native.func.data = NULL; - im->native.func.bind = NULL; - im->native.func.unbind = NULL; - im->native.func.free = NULL; - free(n); -} - static void * eng_image_native_set(void *data, void *image, void *native) { @@ -1397,10 +1326,6 @@ eng_image_native_set(void *data, void *image, void *native) Evas_Native_Surface *ns = native; Evas_GL_Image *im = image, *im2 = NULL; Native *n = NULL; -// uint32_t pmid; -// uint32_t texid; - unsigned int tex = 0; - unsigned int fbo = 0; if (!im) { @@ -1418,15 +1343,7 @@ eng_image_native_set(void *data, void *image, void *native) if (ns) { - /* vis = ns->data.x11.visual; */ - /* pm = ns->data.x11.pixmap; */ - if (im->native.data) - { - Evas_Native_Surface *ens = im->native.data; - /* if ((ens->data.x11.visual == vis) && */ - /* (ens->data.x11.pixmap == pm)) */ - return im; - } + if (im->native.data) return im; } if ((!ns) && (!im->native.data)) return im; @@ -1441,94 +1358,35 @@ eng_image_native_set(void *data, void *image, void *native) if (!ns) return im; - /* if (ns->type == EVAS_NATIVE_SURFACE_X11) */ - /* { */ - /* pmid = pm; */ - /* im2 = eina_hash_find(re->win->gl_context->shared->native_pm_hash, &pmid); */ - if (im2 == im) return im; - if (im2) - { - n = im2->native.data; - if (n) - { - evas_gl_common_image_ref(im2); - evas_gl_common_image_free(im); - return im2; - } - } + if (im2 == im) return im; + if (im2) + { + n = im2->native.data; + if (n) + { + evas_gl_common_image_ref(im2); + evas_gl_common_image_free(im); + return im2; + } + } im2 = evas_gl_common_image_new_from_data(re->win->gl_context, - im->w, im->h, NULL, im->alpha, - EVAS_COLORSPACE_ARGB8888); - evas_gl_common_image_free(im); - im = im2; - /* if (native) */ - /* { */ - /* n = calloc(1, sizeof(Native)); */ - /* if (n) */ - /* { */ - /* EGLConfig egl_config; */ - /* int config_attrs[20]; */ - /* int num_config, i = 0; */ - - /* eina_hash_add(re->win->gl_context->shared->native_pm_hash, &pmid, im); */ - - /* config_attrs[i++] = EGL_RED_SIZE; */ - /* config_attrs[i++] = 8; */ - /* config_attrs[i++] = EGL_GREEN_SIZE; */ - /* config_attrs[i++] = 8; */ - /* config_attrs[i++] = EGL_BLUE_SIZE; */ - /* config_attrs[i++] = 8; */ - /* config_attrs[i++] = EGL_ALPHA_SIZE; */ - /* config_attrs[i++] = 8; */ - /* config_attrs[i++] = EGL_DEPTH_SIZE; */ - /* config_attrs[i++] = 0; */ - /* config_attrs[i++] = EGL_STENCIL_SIZE; */ - /* config_attrs[i++] = 0; */ - /* config_attrs[i++] = EGL_RENDERABLE_TYPE; */ - /* config_attrs[i++] = EGL_OPENGL_ES2_BIT; */ - /* config_attrs[i++] = EGL_SURFACE_TYPE; */ - /* config_attrs[i++] = EGL_PIXMAP_BIT; */ - /* config_attrs[i++] = EGL_NONE; */ - - /* if (!eglChooseConfig(re->win->egl_disp, config_attrs, */ - /* &egl_config, 1, &num_config)) */ - /* ERR("eglChooseConfig() failed for, num_config = %i", num_config); */ - /* memcpy(&(n->ns), ns, sizeof(Evas_Native_Surface)); */ - /* n->pixmap = pm; */ - /* if (glsym_eglCreateImage) */ - /* n->egl_surface = glsym_eglCreateImage(re->win->egl_disp, */ - /* EGL_NO_CONTEXT, */ - /* EGL_NATIVE_PIXMAP_KHR, */ - /* (void *)pm, */ - /* NULL); */ - /* else */ - /* ERR("Try eglCreateImage on EGL with no support"); */ - /* if (!n->egl_surface) */ - /* ERR("eglCreatePixmapSurface() for 0x%x failed", (unsigned int)pm); */ - /* im->native.yinvert = 1; */ - /* im->native.loose = 0; */ - /* im->native.data = n; */ - /* im->native.func.data = re; */ - /* im->native.func.bind = _native_bind_cb; */ - /* im->native.func.unbind = _native_unbind_cb; */ - /* im->native.func.free = _native_free_cb; */ - /* im->native.target = GL_TEXTURE_2D; */ - /* im->native.mipmap = 0; */ - /* evas_gl_common_image_native_enable(im); */ - /* } */ - /* } */ + im->w, im->h, NULL, im->alpha, + EVAS_COLORSPACE_ARGB8888); + evas_gl_common_image_free(im); + im = im2; + return im; } static void * eng_image_native_get(void *data __UNUSED__, void *image) { - Evas_GL_Image *im = image; + Evas_GL_Image *im; Native *n; - if (!im) return NULL; - n = im->native.data; - if (!n) return NULL; + + if (!(im = image)) return NULL; + if (!(n = im->native.data)) return NULL; return &(n->ns); } diff --git a/libraries/evas/src/modules/engines/wayland_egl/evas_wl_main.c b/libraries/evas/src/modules/engines/wayland_egl/evas_wl_main.c index 537fcc6..60a2371 100644 --- a/libraries/evas/src/modules/engines/wayland_egl/evas_wl_main.c +++ b/libraries/evas/src/modules/engines/wayland_egl/evas_wl_main.c @@ -217,7 +217,9 @@ eng_window_free(Evas_GL_Wl_Window *gw) { if (context) eglDestroyContext(gw->egl_disp, context); context = EGL_NO_CONTEXT; - eglTerminate(gw->egl_disp); + /* NB: This is causing an unknown hang when we run elm apps as + * wayland clients inside the weston compositor */ + /* eglTerminate(gw->egl_disp); */ eglReleaseThread(); } free(gw); diff --git a/libraries/evas/src/modules/engines/wayland_shm/Evas_Engine_Wayland_Shm.h b/libraries/evas/src/modules/engines/wayland_shm/Evas_Engine_Wayland_Shm.h index b34b2c1..2b5c2c7 100644 --- a/libraries/evas/src/modules/engines/wayland_shm/Evas_Engine_Wayland_Shm.h +++ b/libraries/evas/src/modules/engines/wayland_shm/Evas_Engine_Wayland_Shm.h @@ -11,7 +11,8 @@ struct _Evas_Engine_Info_Wayland_Shm void *dest; int rotation; - unsigned char debug : 1; + Eina_Bool destination_alpha : 1; + Eina_Bool debug : 1; } info; Evas_Engine_Render_Mode render_mode; diff --git a/libraries/evas/src/modules/engines/wayland_shm/Makefile.am b/libraries/evas/src/modules/engines/wayland_shm/Makefile.am index 455b82c..2a5901f 100644 --- a/libraries/evas/src/modules/engines/wayland_shm/Makefile.am +++ b/libraries/evas/src/modules/engines/wayland_shm/Makefile.am @@ -7,6 +7,7 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/src/lib/include \ -I$(top_srcdir)/src/modules/engines \ @FREETYPE_CFLAGS@ \ +@PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ @evas_engine_wayland_shm_cflags@ @@ -16,7 +17,7 @@ WAYLAND_SHM_SOURCES = \ evas_engine.c \ evas_outbuf.c -WAYLAND_SHM_LIBADD = @FREETYPE_LIBS@ @EINA_LIBS@ @evas_engine_wayland_shm_libs@ +WAYLAND_SHM_LIBADD = @FREETYPE_LIBS@ @PIXMAN_LIBS@ @EINA_LIBS@ @evas_engine_wayland_shm_libs@ includes_HEADERS = Evas_Engine_Wayland_Shm.h includesdir = $(includedir)/evas-@VMAJ@ diff --git a/libraries/evas/src/modules/engines/wayland_shm/Makefile.in b/libraries/evas/src/modules/engines/wayland_shm/Makefile.in index 4d69209..e70210b 100644 --- a/libraries/evas/src/modules/engines/wayland_shm/Makefile.in +++ b/libraries/evas/src/modules/engines/wayland_shm/Makefile.in @@ -194,6 +194,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -244,6 +246,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -262,8 +266,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -337,8 +339,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -428,6 +428,7 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/src/lib/include \ -I$(top_srcdir)/src/modules/engines \ @FREETYPE_CFLAGS@ \ +@PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ @evas_engine_wayland_shm_cflags@ @@ -435,7 +436,7 @@ AM_CPPFLAGS = \ @BUILD_ENGINE_WAYLAND_SHM_TRUE@evas_engine.c \ @BUILD_ENGINE_WAYLAND_SHM_TRUE@evas_outbuf.c -@BUILD_ENGINE_WAYLAND_SHM_TRUE@WAYLAND_SHM_LIBADD = @FREETYPE_LIBS@ @EINA_LIBS@ @evas_engine_wayland_shm_libs@ +@BUILD_ENGINE_WAYLAND_SHM_TRUE@WAYLAND_SHM_LIBADD = @FREETYPE_LIBS@ @PIXMAN_LIBS@ @EINA_LIBS@ @evas_engine_wayland_shm_libs@ @BUILD_ENGINE_WAYLAND_SHM_TRUE@includes_HEADERS = Evas_Engine_Wayland_Shm.h @BUILD_ENGINE_WAYLAND_SHM_TRUE@includesdir = $(includedir)/evas-@VMAJ@ @BUILD_ENGINE_WAYLAND_SHM_TRUE@@EVAS_STATIC_BUILD_WAYLAND_SHM_FALSE@pkgdir = $(libdir)/evas/modules/engines/wayland_shm/$(MODULE_ARCH) diff --git a/libraries/evas/src/modules/engines/wayland_shm/evas_engine.c b/libraries/evas/src/modules/engines/wayland_shm/evas_engine.c index 7c55517..17b17bf 100644 --- a/libraries/evas/src/modules/engines/wayland_shm/evas_engine.c +++ b/libraries/evas/src/modules/engines/wayland_shm/evas_engine.c @@ -28,7 +28,7 @@ static Evas_Func func, pfunc; int _evas_engine_way_shm_log_dom = -1; /* local function prototypes */ -static void *_output_setup(int w, int h, int rotation, void *dest); +static void *_output_setup(int w, int h, int rotation, Eina_Bool alpha, void *dest); /* engine function prototypes */ static void *eng_info(Evas *evas __UNUSED__); @@ -48,7 +48,7 @@ static Eina_Bool eng_canvas_alpha_get(void *data, void *context __UNUSED__); /* local functions */ static void * -_output_setup(int w, int h, int rotation, void *dest) +_output_setup(int w, int h, int rotation, Eina_Bool alpha, void *dest) { Render_Engine *re = NULL; @@ -56,7 +56,7 @@ _output_setup(int w, int h, int rotation, void *dest) if (!(re = calloc(1, sizeof(Render_Engine)))) return NULL; - if (!(re->ob = evas_outbuf_setup(w, h, rotation, dest))) + if (!(re->ob = evas_outbuf_setup(w, h, rotation, alpha, dest))) { free(re); return NULL; @@ -127,7 +127,8 @@ eng_setup(Evas *evas, void *info) evas_common_tilebuf_init(); re = _output_setup(evas->output.w, evas->output.h, - in->info.rotation, in->info.dest); + in->info.rotation, in->info.destination_alpha, + in->info.dest); if (!re) return 0; re->outbuf_free = evas_outbuf_free; @@ -141,7 +142,8 @@ eng_setup(Evas *evas, void *info) if (!(re = evas->engine.data.output)) return 0; if (re->ob) re->outbuf_free(re->ob); re->ob = evas_outbuf_setup(evas->output.w, evas->output.h, - in->info.rotation, in->info.dest); + in->info.rotation, + in->info.destination_alpha, in->info.dest); if (re->tb) evas_common_tilebuf_free(re->tb); if ((re->tb = evas_common_tilebuf_new(evas->output.w, evas->output.h))) evas_common_tilebuf_set_tile_size(re->tb, TILESIZE, TILESIZE); diff --git a/libraries/evas/src/modules/engines/wayland_shm/evas_engine.h b/libraries/evas/src/modules/engines/wayland_shm/evas_engine.h index 878851a..1869d16 100644 --- a/libraries/evas/src/modules/engines/wayland_shm/evas_engine.h +++ b/libraries/evas/src/modules/engines/wayland_shm/evas_engine.h @@ -47,12 +47,13 @@ struct _Outbuf { void *dest; RGBA_Image *buffer; + Eina_Bool destination_alpha : 1; } priv; }; void evas_outbuf_free(Outbuf *ob); void evas_outbuf_resize(Outbuf *ob, int w, int h); -Outbuf *evas_outbuf_setup(int w, int h, int rot, void *dest); +Outbuf *evas_outbuf_setup(int w, int h, int rot, Eina_Bool alpha, void *dest); RGBA_Image *evas_outbuf_new_region_for_update(Outbuf *ob, int x, int y, int w, int h, int *cx, int *cy, int *cw, int *ch); void evas_outbuf_push_updated_region(Outbuf *ob, RGBA_Image *update, int x __UNUSED__, int y, int w, int h); void evas_outbuf_free_region_for_update(Outbuf *ob, RGBA_Image *update); diff --git a/libraries/evas/src/modules/engines/wayland_shm/evas_outbuf.c b/libraries/evas/src/modules/engines/wayland_shm/evas_outbuf.c index 490a978..4dee9a2 100644 --- a/libraries/evas/src/modules/engines/wayland_shm/evas_outbuf.c +++ b/libraries/evas/src/modules/engines/wayland_shm/evas_outbuf.c @@ -21,7 +21,7 @@ evas_outbuf_resize(Outbuf *ob, int w, int h) } Outbuf * -evas_outbuf_setup(int w, int h, int rot, void *dest) +evas_outbuf_setup(int w, int h, int rot, Eina_Bool alpha, void *dest) { Outbuf *ob = NULL; @@ -31,6 +31,7 @@ evas_outbuf_setup(int w, int h, int rot, void *dest) ob->h = h; ob->rotation = rot; ob->priv.dest = dest; + ob->priv.destination_alpha = alpha; ob->priv.buffer = (RGBA_Image *)evas_cache_image_data(evas_common_image_cache_get(), @@ -56,7 +57,7 @@ evas_outbuf_new_region_for_update(Outbuf *ob, int x, int y, int w, int h, int *c im = (RGBA_Image *)evas_cache_image_empty(evas_common_image_cache_get()); if (im) { - im->cache_entry.flags.alpha = 1; + im->cache_entry.flags.alpha = ob->priv.destination_alpha; im = (RGBA_Image *)evas_cache_image_size_set(&im->cache_entry, w, h); } diff --git a/libraries/evas/src/modules/loaders/Makefile.in b/libraries/evas/src/modules/loaders/Makefile.in index 454dcd8..f37032a 100644 --- a/libraries/evas/src/modules/loaders/Makefile.in +++ b/libraries/evas/src/modules/loaders/Makefile.in @@ -49,7 +49,7 @@ host_triplet = @host@ @BUILD_LOADER_WBMP_TRUE@@EVAS_STATIC_BUILD_WBMP_FALSE@am__append_14 = wbmp @BUILD_LOADER_XPM_TRUE@@EVAS_STATIC_BUILD_XPM_FALSE@am__append_15 = xpm subdir = src/modules/loaders -DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in TODO ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/efl_attribute.m4 \ $(top_srcdir)/m4/efl_coverage.m4 \ @@ -172,6 +172,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -222,6 +224,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -240,8 +244,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -315,8 +317,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/modules/loaders/bmp/Makefile.am b/libraries/evas/src/modules/loaders/bmp/Makefile.am index 857f3b9..0a04790 100644 --- a/libraries/evas/src/modules/loaders/bmp/Makefile.am +++ b/libraries/evas/src/modules/loaders/bmp/Makefile.am @@ -8,8 +8,7 @@ AM_CPPFLAGS = \ @FREETYPE_CFLAGS@ \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ +@EVIL_CFLAGS@ if BUILD_LOADER_BMP if !EVAS_STATIC_BUILD_BMP @@ -19,7 +18,7 @@ pkg_LTLIBRARIES = module.la module_la_SOURCES = evas_image_load_bmp.c -module_la_LIBADD = @EINA_LIBS@ @EVIL_LIBS@ $(top_builddir)/src/lib/libevas.la +module_la_LIBADD = @EINA_LIBS@ @EVIL_LIBS@ -lm $(top_builddir)/src/lib/libevas.la module_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ -module -avoid-version module_la_LIBTOOLFLAGS = --tag=disable-static @@ -27,7 +26,7 @@ else noinst_LTLIBRARIES = libevas_loader_bmp.la libevas_loader_bmp_la_SOURCES = evas_image_load_bmp.c -libevas_loader_bmp_la_LIBADD = +libevas_loader_bmp_la_LIBADD = endif endif diff --git a/libraries/evas/src/modules/loaders/bmp/Makefile.in b/libraries/evas/src/modules/loaders/bmp/Makefile.in index 943fb74..40600cc 100644 --- a/libraries/evas/src/modules/loaders/bmp/Makefile.in +++ b/libraries/evas/src/modules/loaders/bmp/Makefile.in @@ -181,6 +181,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -231,6 +233,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -249,8 +253,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -324,8 +326,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -416,13 +416,12 @@ AM_CPPFLAGS = \ @FREETYPE_CFLAGS@ \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ +@EVIL_CFLAGS@ @BUILD_LOADER_BMP_TRUE@@EVAS_STATIC_BUILD_BMP_FALSE@pkgdir = $(libdir)/evas/modules/loaders/bmp/$(MODULE_ARCH) @BUILD_LOADER_BMP_TRUE@@EVAS_STATIC_BUILD_BMP_FALSE@pkg_LTLIBRARIES = module.la @BUILD_LOADER_BMP_TRUE@@EVAS_STATIC_BUILD_BMP_FALSE@module_la_SOURCES = evas_image_load_bmp.c -@BUILD_LOADER_BMP_TRUE@@EVAS_STATIC_BUILD_BMP_FALSE@module_la_LIBADD = @EINA_LIBS@ @EVIL_LIBS@ $(top_builddir)/src/lib/libevas.la +@BUILD_LOADER_BMP_TRUE@@EVAS_STATIC_BUILD_BMP_FALSE@module_la_LIBADD = @EINA_LIBS@ @EVIL_LIBS@ -lm $(top_builddir)/src/lib/libevas.la @BUILD_LOADER_BMP_TRUE@@EVAS_STATIC_BUILD_BMP_FALSE@module_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ -module -avoid-version @BUILD_LOADER_BMP_TRUE@@EVAS_STATIC_BUILD_BMP_FALSE@module_la_LIBTOOLFLAGS = --tag=disable-static @BUILD_LOADER_BMP_TRUE@@EVAS_STATIC_BUILD_BMP_TRUE@noinst_LTLIBRARIES = libevas_loader_bmp.la diff --git a/libraries/evas/src/modules/loaders/bmp/evas_image_load_bmp.c b/libraries/evas/src/modules/loaders/bmp/evas_image_load_bmp.c index 6d15783..9453ceb 100644 --- a/libraries/evas/src/modules/loaders/bmp/evas_image_load_bmp.c +++ b/libraries/evas/src/modules/loaders/bmp/evas_image_load_bmp.c @@ -107,12 +107,8 @@ evas_image_load_file_head_bmp(Image_Entry *ie, const char *file, const char *key void *map = NULL; size_t position = 0; char hasa = 0; - int w = 0, h = 0, planes = 0, bit_count = 0, - image_size = 0, comp = 0, hdpi = 0, vdpi = 0, - palette_size = -1, important_colors = 0; - unsigned int offset, head_size, rmask = 0, gmask = 0, bmask = 0, amask = 0; - unsigned int pal_num = 0; - int right_way_up = 0; + int w = 0, h = 0, bit_count = 0, image_size = 0, comp = 0; + unsigned int offset, head_size, amask = 0; int fsize = 0; unsigned int bmpsize; unsigned short res1, res2; @@ -148,7 +144,7 @@ evas_image_load_file_head_bmp(Image_Entry *ie, const char *file, const char *key if (!read_short(map, fsize, &position, &tmp)) goto close_file; h = tmp; // height if (!read_short(map, fsize, &position, &tmp)) goto close_file; - planes = tmp; // must be 1 + //planes = tmp; // must be 1 if (!read_short(map, fsize, &position, &tmp)) goto close_file; bit_count = tmp; // bits per pixel: 1, 4, 8 & 24 } @@ -162,7 +158,7 @@ evas_image_load_file_head_bmp(Image_Entry *ie, const char *file, const char *key if (!read_int(map, fsize, &position, &tmp2)) goto close_file; h = tmp2; // height if (!read_short(map, fsize, &position, &tmp)) goto close_file; - planes = tmp; // must be 1 + //planes = tmp; // must be 1 if (!read_short(map, fsize, &position, &tmp)) goto close_file; bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 if (!read_int(map, fsize, &position, &tmp2)) goto close_file; @@ -170,13 +166,13 @@ evas_image_load_file_head_bmp(Image_Entry *ie, const char *file, const char *key if (!read_int(map, fsize, &position, &tmp2)) goto close_file; image_size = tmp2; // bitmap data size if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter + //hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter + //vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) + //palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - important_colors = tmp2; // number of important colors - 0 if all + //important_colors = tmp2; // number of important colors - 0 if all if (!read_skip(fsize, &position, 24)) goto close_file; // skip unused header if (image_size == 0) image_size = fsize - offset; } @@ -190,7 +186,7 @@ evas_image_load_file_head_bmp(Image_Entry *ie, const char *file, const char *key if (!read_int(map, fsize, &position, &tmp2)) goto close_file; h = tmp2; // height if (!read_short(map, fsize, &position, &tmp)) goto close_file; - planes = tmp; // must be 1 + //planes = tmp; // must be 1 if (!read_short(map, fsize, &position, &tmp)) goto close_file; bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 if (!read_int(map, fsize, &position, &tmp2)) goto close_file; @@ -198,13 +194,13 @@ evas_image_load_file_head_bmp(Image_Entry *ie, const char *file, const char *key if (!read_int(map, fsize, &position, &tmp2)) goto close_file; image_size = tmp2; // bitmap data size if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter + //hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter + //vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) + //palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - important_colors = tmp2; // number of important colors - 0 if all + //important_colors = tmp2; // number of important colors - 0 if all if (image_size == 0) image_size = fsize - offset; if ((comp == 0) && (bit_count == 32)) hasa = 1; // GIMP seems to store it this way } @@ -218,7 +214,7 @@ evas_image_load_file_head_bmp(Image_Entry *ie, const char *file, const char *key if (!read_int(map, fsize, &position, &tmp2)) goto close_file; h = tmp2; // height if (!read_short(map, fsize, &position, &tmp)) goto close_file; - planes = tmp; // must be 1 + //planes = tmp; // must be 1 if (!read_short(map, fsize, &position, &tmp)) goto close_file; bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 if (!read_int(map, fsize, &position, &tmp2)) goto close_file; @@ -226,19 +222,19 @@ evas_image_load_file_head_bmp(Image_Entry *ie, const char *file, const char *key if (!read_int(map, fsize, &position, &tmp2)) goto close_file; image_size = tmp2; // bitmap data size if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter + //hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter + //vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) + //palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - important_colors = tmp2; // number of important colors - 0 if all + //important_colors = tmp2; // number of important colors - 0 if all if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - rmask = tmp2; // red mask + //rmask = tmp2; // red mask if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - gmask = tmp2; // green mask + //gmask = tmp2; // green mask if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - bmask = tmp2; // blue mask + //bmask = tmp2; // blue mask if (!read_int(map, fsize, &position, &tmp2)) goto close_file; amask = tmp2; // alpha mask if (!read_skip(fsize, &position, 36)) goto close_file; // skip unused cie @@ -256,27 +252,27 @@ evas_image_load_file_head_bmp(Image_Entry *ie, const char *file, const char *key if (!read_int(map, fsize, &position, &tmp2)) goto close_file; h = tmp2; // height if (!read_short(map, fsize, &position, &tmp)) goto close_file; - planes = tmp; // must be 1 + //planes = tmp; // must be 1 if (!read_short(map, fsize, &position, &tmp)) goto close_file; bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 if (!read_int(map, fsize, &position, &tmp2)) goto close_file; comp = tmp2; // compression method if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - image_size = tmp2; // bitmap data size + //image_size = tmp2; // bitmap data size if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter + //hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter + //vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) + //palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - important_colors = tmp2; // number of important colors - 0 if all + //important_colors = tmp2; // number of important colors - 0 if all if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - rmask = tmp2; // red mask + //rmask = tmp2; // red mask if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - gmask = tmp2; // green mask + //gmask = tmp2; // green mask if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - bmask = tmp2; // blue mask + //bmask = tmp2; // blue mask if (!read_int(map, fsize, &position, &tmp2)) goto close_file; amask = tmp2; // alpha mask if (!read_skip(fsize, &position, 36)) goto close_file; // skip unused cie @@ -291,7 +287,7 @@ evas_image_load_file_head_bmp(Image_Entry *ie, const char *file, const char *key if (h < 0) { h = -h; - right_way_up = 1; + //right_way_up = 1; } if ((w < 1) || (h < 1) || (w > IMG_MAX_SIZE) || (h > IMG_MAX_SIZE) || @@ -313,8 +309,8 @@ evas_image_load_file_head_bmp(Image_Entry *ie, const char *file, const char *key if (bit_count < 16) { - if ((palette_size < 0) || (palette_size > 256)) pal_num = 256; - else pal_num = palette_size; + //if ((palette_size < 0) || (palette_size > 256)) pal_num = 256; + //else pal_num = palette_size; if (bit_count == 1) { if (comp == 0) // no compression @@ -389,8 +385,8 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key size_t position = 0; unsigned char *buffer = NULL, *buffer_end = NULL, *p; char hasa = 0; - int x = 0, y = 0, w = 0, h = 0, planes = 0, bit_count = 0, image_size = 0, - comp = 0, hdpi = 0, vdpi = 0, palette_size = -1, important_colors = 0; + int x = 0, y = 0, w = 0, h = 0, bit_count = 0, image_size = 0, + comp = 0, palette_size = -1; unsigned int offset = 0, head_size = 0; unsigned int *pal = NULL, pal_num = 0, *pix = NULL, *surface = NULL, fix, rmask = 0, gmask = 0, bmask = 0, amask = 0; @@ -440,7 +436,7 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key if (!read_short(map, fsize, &position, &tmp)) goto close_file; h = tmp; // height if (!read_short(map, fsize, &position, &tmp)) goto close_file; - planes = tmp; // must be 1 + //planes = tmp; // must be 1 if (!read_short(map, fsize, &position, &tmp)) goto close_file; bit_count = tmp; // bits per pixel: 1, 4, 8 & 24 } @@ -454,7 +450,7 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key if (!read_int(map, fsize, &position, &tmp2)) goto close_file; h = tmp2; // height if (!read_short(map, fsize, &position, &tmp)) goto close_file; - planes = tmp; // must be 1 + //planes = tmp; // must be 1 if (!read_short(map, fsize, &position, &tmp)) goto close_file; bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 if (!read_int(map, fsize, &position, &tmp2)) goto close_file; @@ -462,13 +458,13 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key if (!read_int(map, fsize, &position, &tmp2)) goto close_file; image_size = tmp2; // bitmap data size if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter + //hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter + //vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter if (!read_int(map, fsize, &position, &tmp2)) goto close_file; palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - important_colors = tmp2; // number of important colors - 0 if all + //important_colors = tmp2; // number of important colors - 0 if all if (!read_skip(fsize, &position, 24)) goto close_file; // skip unused header if (image_size == 0) image_size = fsize - offset; } @@ -482,7 +478,7 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key if (!read_int(map, fsize, &position, &tmp2)) goto close_file; h = tmp2; // height if (!read_short(map, fsize, &position, &tmp)) goto close_file; - planes = tmp; // must be 1 + //planes = tmp; // must be 1 if (!read_short(map, fsize, &position, &tmp)) goto close_file; bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 if (!read_int(map, fsize, &position, &tmp2)) goto close_file; @@ -490,13 +486,13 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key if (!read_int(map, fsize, &position, &tmp2)) goto close_file; image_size = tmp2; // bitmap data size if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter + //hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter + //vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter if (!read_int(map, fsize, &position, &tmp2)) goto close_file; palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - important_colors = tmp2; // number of important colors - 0 if all + //important_colors = tmp2; // number of important colors - 0 if all if (image_size == 0) image_size = fsize - offset; if ((comp == 0) && (bit_count == 32)) hasa = 1; // GIMP seems to store it this way } @@ -510,7 +506,7 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key if (!read_int(map, fsize, &position, &tmp2)) goto close_file; h = tmp2; // height if (!read_short(map, fsize, &position, &tmp)) goto close_file; - planes = tmp; // must be 1 + //planes = tmp; // must be 1 if (!read_short(map, fsize, &position, &tmp)) goto close_file; bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 if (!read_int(map, fsize, &position, &tmp2)) goto close_file; @@ -518,13 +514,13 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key if (!read_int(map, fsize, &position, &tmp2)) goto close_file; image_size = tmp2; // bitmap data size if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter + //hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter + //vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter if (!read_int(map, fsize, &position, &tmp2)) goto close_file; palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - important_colors = tmp2; // number of important colors - 0 if all + //important_colors = tmp2; // number of important colors - 0 if all if (!read_int(map, fsize, &position, &tmp2)) goto close_file; rmask = tmp2; // red mask if (!read_int(map, fsize, &position, &tmp2)) goto close_file; @@ -548,7 +544,7 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key if (!read_int(map, fsize, &position, &tmp2)) goto close_file; h = tmp2; // height if (!read_short(map, fsize, &position, &tmp)) goto close_file; - planes = tmp; // must be 1 + //planes = tmp; // must be 1 if (!read_short(map, fsize, &position, &tmp)) goto close_file; bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 if (!read_int(map, fsize, &position, &tmp2)) goto close_file; @@ -556,13 +552,13 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key if (!read_int(map, fsize, &position, &tmp2)) goto close_file; image_size = tmp2; // bitmap data size if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter + //hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter + //vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter if (!read_int(map, fsize, &position, &tmp2)) goto close_file; palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) if (!read_int(map, fsize, &position, &tmp2)) goto close_file; - important_colors = tmp2; // number of important colors - 0 if all + //important_colors = tmp2; // number of important colors - 0 if all if (!read_int(map, fsize, &position, &tmp2)) goto close_file; rmask = tmp2; // red mask if (!read_int(map, fsize, &position, &tmp2)) goto close_file; diff --git a/libraries/evas/src/modules/loaders/edb/Makefile.in b/libraries/evas/src/modules/loaders/edb/Makefile.in index 87356b4..19f906f 100644 --- a/libraries/evas/src/modules/loaders/edb/Makefile.in +++ b/libraries/evas/src/modules/loaders/edb/Makefile.in @@ -181,6 +181,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -231,6 +233,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -249,8 +253,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -324,8 +326,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/modules/loaders/eet/Makefile.am b/libraries/evas/src/modules/loaders/eet/Makefile.am index c96a8d3..44270e5 100644 --- a/libraries/evas/src/modules/loaders/eet/Makefile.am +++ b/libraries/evas/src/modules/loaders/eet/Makefile.am @@ -10,8 +10,6 @@ AM_CPPFLAGS = \ @evas_image_loader_eet_cflags@ \ @EINA_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ - if BUILD_LOADER_EET if !EVAS_STATIC_BUILD_EET diff --git a/libraries/evas/src/modules/loaders/eet/Makefile.in b/libraries/evas/src/modules/loaders/eet/Makefile.in index 25a30cf..b144d3a 100644 --- a/libraries/evas/src/modules/loaders/eet/Makefile.in +++ b/libraries/evas/src/modules/loaders/eet/Makefile.in @@ -181,6 +181,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -231,6 +233,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -249,8 +253,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -324,8 +326,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -418,7 +418,6 @@ AM_CPPFLAGS = \ @evas_image_loader_eet_cflags@ \ @EINA_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ @BUILD_LOADER_EET_TRUE@@EVAS_STATIC_BUILD_EET_FALSE@pkgdir = $(libdir)/evas/modules/loaders/eet/$(MODULE_ARCH) @BUILD_LOADER_EET_TRUE@@EVAS_STATIC_BUILD_EET_FALSE@pkg_LTLIBRARIES = module.la @BUILD_LOADER_EET_TRUE@@EVAS_STATIC_BUILD_EET_FALSE@module_la_SOURCES = evas_image_load_eet.c diff --git a/libraries/evas/src/modules/loaders/generic/Makefile.am b/libraries/evas/src/modules/loaders/generic/Makefile.am index a9e522e..1f72bfc 100644 --- a/libraries/evas/src/modules/loaders/generic/Makefile.am +++ b/libraries/evas/src/modules/loaders/generic/Makefile.am @@ -9,10 +9,7 @@ AM_CPPFLAGS = \ @PIXMAN_CFLAGS@ \ @evas_image_loader_generic_cflags@ \ @EINA_CFLAGS@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ - -AM_CFLAGS = @WIN32_CFLAGS@ +@EVIL_CFLAGS@ if BUILD_LOADER_GENERIC diff --git a/libraries/evas/src/modules/loaders/generic/Makefile.in b/libraries/evas/src/modules/loaders/generic/Makefile.in index dfd5294..98bb45b 100644 --- a/libraries/evas/src/modules/loaders/generic/Makefile.in +++ b/libraries/evas/src/modules/loaders/generic/Makefile.in @@ -182,6 +182,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -232,6 +234,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -250,8 +254,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -325,8 +327,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -418,10 +418,8 @@ AM_CPPFLAGS = \ @PIXMAN_CFLAGS@ \ @evas_image_loader_generic_cflags@ \ @EINA_CFLAGS@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ +@EVIL_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ @BUILD_LOADER_GENERIC_TRUE@@EVAS_STATIC_BUILD_GENERIC_FALSE@pkgdir = $(libdir)/evas/modules/loaders/generic/$(MODULE_ARCH) @BUILD_LOADER_GENERIC_TRUE@@EVAS_STATIC_BUILD_GENERIC_FALSE@pkg_LTLIBRARIES = module.la @BUILD_LOADER_GENERIC_TRUE@@EVAS_STATIC_BUILD_GENERIC_FALSE@module_la_SOURCES = evas_image_load_generic.c diff --git a/libraries/evas/src/modules/loaders/gif/Makefile.am b/libraries/evas/src/modules/loaders/gif/Makefile.am index 9234370..3ae57a0 100644 --- a/libraries/evas/src/modules/loaders/gif/Makefile.am +++ b/libraries/evas/src/modules/loaders/gif/Makefile.am @@ -10,8 +10,6 @@ AM_CPPFLAGS = \ @evas_image_loader_gif_cflags@ \ @EINA_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ - if BUILD_LOADER_GIF if !EVAS_STATIC_BUILD_GIF diff --git a/libraries/evas/src/modules/loaders/gif/Makefile.in b/libraries/evas/src/modules/loaders/gif/Makefile.in index f32fcf4..a7fae36 100644 --- a/libraries/evas/src/modules/loaders/gif/Makefile.in +++ b/libraries/evas/src/modules/loaders/gif/Makefile.in @@ -181,6 +181,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -231,6 +233,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -249,8 +253,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -324,8 +326,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -418,7 +418,6 @@ AM_CPPFLAGS = \ @evas_image_loader_gif_cflags@ \ @EINA_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ @BUILD_LOADER_GIF_TRUE@@EVAS_STATIC_BUILD_GIF_FALSE@pkgdir = $(libdir)/evas/modules/loaders/gif/$(MODULE_ARCH) @BUILD_LOADER_GIF_TRUE@@EVAS_STATIC_BUILD_GIF_FALSE@pkg_LTLIBRARIES = module.la @BUILD_LOADER_GIF_TRUE@@EVAS_STATIC_BUILD_GIF_FALSE@module_la_SOURCES = evas_image_load_gif.c diff --git a/libraries/evas/src/modules/loaders/gif/evas_image_load_gif.c b/libraries/evas/src/modules/loaders/gif/evas_image_load_gif.c index 9cd6f6e..dbb3584 100644 --- a/libraries/evas/src/modules/loaders/gif/evas_image_load_gif.c +++ b/libraries/evas/src/modules/loaders/gif/evas_image_load_gif.c @@ -483,10 +483,17 @@ _evas_image_load_frame_image_data(Image_Entry *ie, GifFileType *gif, Image_Entry } else { - r = cmap->Colors[rows[i1][j1]].Red; - g = cmap->Colors[rows[i1][j1]].Green; - b = cmap->Colors[rows[i1][j1]].Blue; - *ptr++ = ARGB_JOIN(0xff, r, g, b); + if (rows[i1][j1] == alpha) + { + ptr++ ; + } + else + { + r = cmap->Colors[rows[i1][j1]].Red; + g = cmap->Colors[rows[i1][j1]].Green; + b = cmap->Colors[rows[i1][j1]].Blue; + *ptr++ = ARGB_JOIN(0xff, r, g, b); + } } } } diff --git a/libraries/evas/src/modules/loaders/ico/Makefile.am b/libraries/evas/src/modules/loaders/ico/Makefile.am index 044dd0d..5f9b313 100644 --- a/libraries/evas/src/modules/loaders/ico/Makefile.am +++ b/libraries/evas/src/modules/loaders/ico/Makefile.am @@ -8,8 +8,7 @@ AM_CPPFLAGS = \ @FREETYPE_CFLAGS@ \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ +@EVIL_CFLAGS@ if BUILD_LOADER_ICO if !EVAS_STATIC_BUILD_ICO @@ -27,7 +26,7 @@ else noinst_LTLIBRARIES = libevas_loader_ico.la libevas_loader_ico_la_SOURCES = evas_image_load_ico.c -libevas_loader_ico_la_LIBADD = +libevas_loader_ico_la_LIBADD = endif endif diff --git a/libraries/evas/src/modules/loaders/ico/Makefile.in b/libraries/evas/src/modules/loaders/ico/Makefile.in index f65ace0..2c9c95f 100644 --- a/libraries/evas/src/modules/loaders/ico/Makefile.in +++ b/libraries/evas/src/modules/loaders/ico/Makefile.in @@ -181,6 +181,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -231,6 +233,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -249,8 +253,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -324,8 +326,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -416,8 +416,7 @@ AM_CPPFLAGS = \ @FREETYPE_CFLAGS@ \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ +@EVIL_CFLAGS@ @BUILD_LOADER_ICO_TRUE@@EVAS_STATIC_BUILD_ICO_FALSE@pkgdir = $(libdir)/evas/modules/loaders/ico/$(MODULE_ARCH) @BUILD_LOADER_ICO_TRUE@@EVAS_STATIC_BUILD_ICO_FALSE@pkg_LTLIBRARIES = module.la diff --git a/libraries/evas/src/modules/loaders/ico/evas_image_load_ico.c b/libraries/evas/src/modules/loaders/ico/evas_image_load_ico.c index 6e31191..4239407 100644 --- a/libraries/evas/src/modules/loaders/ico/evas_image_load_ico.c +++ b/libraries/evas/src/modules/loaders/ico/evas_image_load_ico.c @@ -88,7 +88,7 @@ evas_image_load_file_head_ico(Image_Entry *ie, const char *file, const char *key unsigned short word; unsigned char byte; int wanted_w = 0, wanted_h = 0, w, h, cols, i, planes = 0, - hot_x = 0, hot_y = 0, bpp = 0, pdelta, search = -1, have_choice = 0, + bpp = 0, pdelta, search = -1, have_choice = 0, hasa = 1; unsigned int bmoffset, bmsize, fsize; unsigned short reserved, type, count; @@ -182,10 +182,10 @@ evas_image_load_file_head_ico(Image_Entry *ie, const char *file, const char *key if (!read_uchar(map, fsize, &position, &byte)) goto close_file; if (!read_ushort(map, fsize, &position, &word)) goto close_file; if (type == CURSOR) planes = word; - else hot_x = word; + //else hot_x = word; if (!read_ushort(map, fsize, &position, &word)) goto close_file; if (type == CURSOR) bpp = word; - else hot_y = word; + //else hot_y = word; if (!read_uint(map, fsize, &position, &bmsize)) goto close_file; if (!read_uint(map, fsize, &position, &bmoffset)) goto close_file; if ((bmsize <= 0) || (bmoffset <= 0) || (bmoffset >= fsize)) goto close_file; @@ -315,11 +315,11 @@ evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key unsigned char byte; unsigned int dword; int wanted_w = 0, wanted_h = 0, w, h, cols, i, planes = 0, - hot_x = 0, hot_y = 0, bpp = 0, pdelta, search = -1, have_choice = 0, + bpp = 0, pdelta, search = -1, have_choice = 0, stride, pstride, j, right_way_up = 0, diff_size = 0, cols2; - unsigned int bmoffset, bmsize, bitcount, compression, imagesize, fsize, - colorsused, colorsimportant, *pal, *surface, *pix, none_zero_alpha = 0; - unsigned short reserved, type, count, planes2; + unsigned int bmoffset, bmsize, bitcount, fsize, + *pal, *surface, *pix, none_zero_alpha = 0; + unsigned short reserved, type, count; unsigned char *maskbuf, *pixbuf, *p; struct { int pdelta; @@ -411,10 +411,10 @@ evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key if (!read_uchar(map, fsize, &position, &byte)) goto close_file; if (!read_ushort(map, fsize, &position, &word)) goto close_file; if (type == 1) planes = word; - else hot_x = word; + //else hot_x = word; if (!read_ushort(map, fsize, &position, &word)) goto close_file; if (type == 1) bpp = word; - else hot_y = word; + //else hot_y = word; if (!read_uint(map, fsize, &position, &bmsize)) goto close_file; if (!read_uint(map, fsize, &position, &bmoffset)) goto close_file; if ((bmsize <= 0) || (bmoffset <= 0) || (bmoffset >= fsize)) goto close_file; @@ -540,19 +540,19 @@ evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key file, ie->w, ie->h, w, h); } if (!read_ushort(map, fsize, &position, &word)) goto close_file; // planes - planes2 = word; + //planes2 = word; if (!read_ushort(map, fsize, &position, &word)) goto close_file; // bitcount bitcount = word; if (!read_uint(map, fsize, &position, &dword)) goto close_file; // compression - compression = dword; + //compression = dword; if (!read_uint(map, fsize, &position, &dword)) goto close_file; // imagesize - imagesize = dword; + //imagesize = dword; if (!read_uint(map, fsize, &position, &dword)) goto close_file; // z pixels per m if (!read_uint(map, fsize, &position, &dword)) goto close_file; // y pizels per m if (!read_uint(map, fsize, &position, &dword)) goto close_file; // colors used - colorsused = dword; + //colorsused = dword; if (!read_uint(map, fsize, &position, &dword)) goto close_file; // colors important - colorsimportant = dword; + //colorsimportant = dword; evas_cache_image_surface_alloc(ie, ie->w, ie->h); surface = evas_cache_image_pixels(ie); diff --git a/libraries/evas/src/modules/loaders/jpeg/Makefile.am b/libraries/evas/src/modules/loaders/jpeg/Makefile.am index 2088ba8..a7a19ab 100644 --- a/libraries/evas/src/modules/loaders/jpeg/Makefile.am +++ b/libraries/evas/src/modules/loaders/jpeg/Makefile.am @@ -9,10 +9,7 @@ AM_CPPFLAGS = \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ @evas_image_loader_jpeg_cflags@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ - -AM_CFLAGS = @WIN32_CFLAGS@ +@EVIL_CFLAGS@ if BUILD_LOADER_JPEG if !EVAS_STATIC_BUILD_JPEG diff --git a/libraries/evas/src/modules/loaders/jpeg/Makefile.in b/libraries/evas/src/modules/loaders/jpeg/Makefile.in index 7c0ca18..4945f85 100644 --- a/libraries/evas/src/modules/loaders/jpeg/Makefile.in +++ b/libraries/evas/src/modules/loaders/jpeg/Makefile.in @@ -181,6 +181,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -231,6 +233,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -249,8 +253,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -324,8 +326,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -417,10 +417,8 @@ AM_CPPFLAGS = \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ @evas_image_loader_jpeg_cflags@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ +@EVIL_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ @BUILD_LOADER_JPEG_TRUE@@EVAS_STATIC_BUILD_JPEG_FALSE@pkgdir = $(libdir)/evas/modules/loaders/jpeg/$(MODULE_ARCH) @BUILD_LOADER_JPEG_TRUE@@EVAS_STATIC_BUILD_JPEG_FALSE@pkg_LTLIBRARIES = module.la @BUILD_LOADER_JPEG_TRUE@@EVAS_STATIC_BUILD_JPEG_FALSE@module_la_SOURCES = evas_image_load_jpeg.c diff --git a/libraries/evas/src/modules/loaders/jpeg/evas_image_load_jpeg.c b/libraries/evas/src/modules/loaders/jpeg/evas_image_load_jpeg.c index 797c76d..73a7310 100644 --- a/libraries/evas/src/modules/loaders/jpeg/evas_image_load_jpeg.c +++ b/libraries/evas/src/modules/loaders/jpeg/evas_image_load_jpeg.c @@ -272,7 +272,7 @@ evas_image_load_file_head_jpeg_internal(Image_Entry *ie, *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; return EINA_FALSE; } - jpeg_create_decompress(&cinfo); + jpeg_create_decompress(&cinfo); if (_evas_jpeg_membuf_src(&cinfo, map, length)) { @@ -508,11 +508,11 @@ evas_image_load_file_data_jpeg_internal(Image_Entry *ie, unsigned int x, y, l, i, scans; int region = 0; /* rotation setting */ - unsigned int tmp; + unsigned int ie_w = 0, ie_h = 0; unsigned int load_region_x = 0, load_region_y = 0; unsigned int load_region_w = 0, load_region_h = 0; - int degree = 0; - Eina_Bool change_wh = EINA_FALSE; + volatile int degree = 0; + volatile Eina_Bool change_wh = EINA_FALSE; Eina_Bool line_done = EINA_FALSE; if (ie->flags.rotated) @@ -582,9 +582,13 @@ evas_image_load_file_data_jpeg_internal(Image_Entry *ie, if (change_wh) { - tmp = ie->w; - ie->w = ie->h; - ie->h = tmp; + ie_w = ie->h; + ie_h = ie->w; + } + else + { + ie_w = ie->w; + ie_h = ie->h; } if ((ie->load_opts.region.w > 0) && (ie->load_opts.region.h > 0)) @@ -629,20 +633,31 @@ evas_image_load_file_data_jpeg_internal(Image_Entry *ie, cinfo.region_h = ie->load_opts.region.h; #endif } - if ((!region) && ((w != ie->w) || (h != ie->h))) + if ((!region) && ((w != ie_w) || (h != ie_h))) { - // race condition, the file could have change from when we call header - // this test will not solve the problem with region code. - jpeg_destroy_decompress(&cinfo); + // race condition, the file could have change from when we call header + // this test will not solve the problem with region code. + jpeg_destroy_decompress(&cinfo); _evas_jpeg_membuf_src_term(&cinfo); - *error = EVAS_LOAD_ERROR_GENERIC; - return EINA_FALSE; + *error = EVAS_LOAD_ERROR_GENERIC; + return EINA_FALSE; } if ((region) && - ((ie->w != ie->load_opts.region.w) || (ie->h != ie->load_opts.region.h))) + ((ie_w != ie->load_opts.region.w) || (ie_h != ie->load_opts.region.h))) { - ie->w = ie->load_opts.region.w; - ie->h = ie->load_opts.region.h; + ie_w = ie->load_opts.region.w; + ie_h = ie->load_opts.region.h; + if (change_wh) + { + ie->w = ie_h; + ie->h = ie_w; + } + else + { + ie->w = ie_w; + ie->h = ie_h; + } + } if (!(((cinfo.out_color_space == JCS_RGB) && @@ -971,31 +986,24 @@ done: if (ie->flags.rotated) { DATA32 *data1, *data2, *to, *from; - int x, y, w, h, hw; - - if (change_wh) - { - tmp = ie->w; - ie->w = ie->h; - ie->h = tmp; - } + int lx, ly, lw, lh, hw; - w = ie->w; - h = ie->h; - hw =w * h; + lw = ie->w; + lh = ie->h; + hw =lw * lh; data1 = evas_cache_image_pixels(ie); if (degree == 180) { - DATA32 tmp; + DATA32 tmpd; - data2 = data1 + (h * w) -1; - for (x = (w * h) / 2; --x >= 0;) + data2 = data1 + (lh * lw) -1; + for (lx = (lw * lh) / 2; --lx >= 0;) { - tmp = *data1; + tmpd = *data1; *data1 = *data2; - *data2 = tmp; + *data2 = tmpd; data1++; data2--; } @@ -1008,26 +1016,26 @@ done: if (degree == 90) { - to = data1 + w - 1; + to = data1 + lw - 1; hw = -hw - 1; } else if (degree == 270) { - to = data1 + hw - w; - w = -w; + to = data1 + hw - lw; + lw = -lw; hw = hw + 1; } if (to) { from = data2; - for (x = ie->w; --x >= 0;) + for (lx = ie->w; --lx >= 0;) { - for (y =ie->h; --y >= 0;) + for (ly =ie->h; --ly >= 0;) { *to = *from; from++; - to += w; + to += lw; } to += hw; } @@ -1046,6 +1054,7 @@ done: ie->load_opts.region.h = load_region_h; } } + if (line_done) { jpeg_destroy_decompress(&cinfo); diff --git a/libraries/evas/src/modules/loaders/pmaps/Makefile.am b/libraries/evas/src/modules/loaders/pmaps/Makefile.am index dc07a32..6fc3d6d 100644 --- a/libraries/evas/src/modules/loaders/pmaps/Makefile.am +++ b/libraries/evas/src/modules/loaders/pmaps/Makefile.am @@ -9,10 +9,7 @@ AM_CPPFLAGS = \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ @evas_image_loader_pmaps_cflags@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ - -AM_CFLAGS = @WIN32_CFLAGS@ +@EVIL_CFLAGS@ if BUILD_LOADER_PMAPS if !EVAS_STATIC_BUILD_PMAPS diff --git a/libraries/evas/src/modules/loaders/pmaps/Makefile.in b/libraries/evas/src/modules/loaders/pmaps/Makefile.in index 745e79b..c44904a 100644 --- a/libraries/evas/src/modules/loaders/pmaps/Makefile.in +++ b/libraries/evas/src/modules/loaders/pmaps/Makefile.in @@ -181,6 +181,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -231,6 +233,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -249,8 +253,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -324,8 +326,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -417,10 +417,8 @@ AM_CPPFLAGS = \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ @evas_image_loader_pmaps_cflags@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ +@EVIL_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ @BUILD_LOADER_PMAPS_TRUE@@EVAS_STATIC_BUILD_PMAPS_FALSE@pkgdir = $(libdir)/evas/modules/loaders/pmaps/$(MODULE_ARCH) @BUILD_LOADER_PMAPS_TRUE@@EVAS_STATIC_BUILD_PMAPS_FALSE@pkg_LTLIBRARIES = module.la @BUILD_LOADER_PMAPS_TRUE@@EVAS_STATIC_BUILD_PMAPS_FALSE@module_la_SOURCES = evas_image_load_pmaps.c diff --git a/libraries/evas/src/modules/loaders/png/Makefile.am b/libraries/evas/src/modules/loaders/png/Makefile.am index f9387a5..884cdec 100644 --- a/libraries/evas/src/modules/loaders/png/Makefile.am +++ b/libraries/evas/src/modules/loaders/png/Makefile.am @@ -9,8 +9,7 @@ AM_CPPFLAGS = \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ @evas_image_loader_png_cflags@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ +@EVIL_CFLAGS@ if BUILD_LOADER_PNG if !EVAS_STATIC_BUILD_PNG diff --git a/libraries/evas/src/modules/loaders/png/Makefile.in b/libraries/evas/src/modules/loaders/png/Makefile.in index 3bd4919..13352bc 100644 --- a/libraries/evas/src/modules/loaders/png/Makefile.in +++ b/libraries/evas/src/modules/loaders/png/Makefile.in @@ -181,6 +181,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -231,6 +233,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -249,8 +253,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -324,8 +326,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -417,8 +417,7 @@ AM_CPPFLAGS = \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ @evas_image_loader_png_cflags@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ +@EVIL_CFLAGS@ @BUILD_LOADER_PNG_TRUE@@EVAS_STATIC_BUILD_PNG_FALSE@pkgdir = $(libdir)/evas/modules/loaders/png/$(MODULE_ARCH) @BUILD_LOADER_PNG_TRUE@@EVAS_STATIC_BUILD_PNG_FALSE@pkg_LTLIBRARIES = module.la diff --git a/libraries/evas/src/modules/loaders/psd/Makefile.am b/libraries/evas/src/modules/loaders/psd/Makefile.am index 8b06348..a87e492 100644 --- a/libraries/evas/src/modules/loaders/psd/Makefile.am +++ b/libraries/evas/src/modules/loaders/psd/Makefile.am @@ -8,8 +8,7 @@ AM_CPPFLAGS = \ @FREETYPE_CFLAGS@ \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ +@EVIL_CFLAGS@ if BUILD_LOADER_PSD if !EVAS_STATIC_BUILD_PSD @@ -27,7 +26,7 @@ else noinst_LTLIBRARIES = libevas_loader_psd.la libevas_loader_psd_la_SOURCES = evas_image_load_psd.c -libevas_loader_psd_la_LIBADD = +libevas_loader_psd_la_LIBADD = endif endif diff --git a/libraries/evas/src/modules/loaders/psd/Makefile.in b/libraries/evas/src/modules/loaders/psd/Makefile.in index 3dc9c38..b1987c6 100644 --- a/libraries/evas/src/modules/loaders/psd/Makefile.in +++ b/libraries/evas/src/modules/loaders/psd/Makefile.in @@ -181,6 +181,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -231,6 +233,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -249,8 +253,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -324,8 +326,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -416,8 +416,7 @@ AM_CPPFLAGS = \ @FREETYPE_CFLAGS@ \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ +@EVIL_CFLAGS@ @BUILD_LOADER_PSD_TRUE@@EVAS_STATIC_BUILD_PSD_FALSE@pkgdir = $(libdir)/evas/modules/loaders/psd/$(MODULE_ARCH) @BUILD_LOADER_PSD_TRUE@@EVAS_STATIC_BUILD_PSD_FALSE@pkg_LTLIBRARIES = module.la diff --git a/libraries/evas/src/modules/loaders/psd/evas_image_load_psd.c b/libraries/evas/src/modules/loaders/psd/evas_image_load_psd.c index 27f5f24..4449db0 100644 --- a/libraries/evas/src/modules/loaders/psd/evas_image_load_psd.c +++ b/libraries/evas/src/modules/loaders/psd/evas_image_load_psd.c @@ -509,12 +509,10 @@ get_single_channel(Image_Entry *ie __UNUSED__, Eina_Bool compressed) { unsigned int i, bpc; - unsigned short *tmp; char headbyte; int c; int pixels_count; - tmp = (unsigned short*)buffer; bpc = (head->depth / 8); pixels_count = head->width * head->height; @@ -569,7 +567,6 @@ read_psd_grey(Image_Entry *ie, PSD_Header *head, const unsigned char *map, size_ { unsigned int color_mode, resource_size, misc_info; unsigned short compressed; - unsigned int type; void *surface = NULL; *error = EVAS_LOAD_ERROR_CORRUPT_FILE; @@ -602,10 +599,7 @@ read_psd_grey(Image_Entry *ie, PSD_Header *head, const unsigned char *map, size_ switch (head->depth) { case 8: - type = 1; - break; case 16: - type = 2; break; default: *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; @@ -697,7 +691,6 @@ read_psd_rgb(Image_Entry *ie, PSD_Header *head, const unsigned char *map, size_t { unsigned int color_mode, resource_size, misc_info; unsigned short compressed; - unsigned int type; void *surface; #define CHECK_RET(Call) \ @@ -721,10 +714,7 @@ read_psd_rgb(Image_Entry *ie, PSD_Header *head, const unsigned char *map, size_t switch (head->depth) { case 8: - type = 1; - break; case 16: - type = 2; break; default: *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; @@ -758,7 +748,7 @@ read_psd_rgb(Image_Entry *ie, PSD_Header *head, const unsigned char *map, size_t Eina_Bool read_psd_cmyk(Image_Entry *ie, PSD_Header *head, const unsigned char *map, size_t length, size_t *position, int *error) { - unsigned int color_mode, resource_size, misc_info, size, i, j, data_size; + unsigned int color_mode, resource_size, misc_info, size, j, data_size; unsigned short compressed; unsigned int format, type; unsigned char *kchannel = NULL; @@ -841,7 +831,7 @@ read_psd_cmyk(Image_Entry *ie, PSD_Header *head, const unsigned char *map, size_ unsigned char *tmp = surface; const unsigned char *limit = tmp + data_size; - for (i = 0, j = 0; tmp < limit; tmp++, j++) + for (j = 0; tmp < limit; tmp++, j++) { int k; @@ -857,7 +847,7 @@ read_psd_cmyk(Image_Entry *ie, PSD_Header *head, const unsigned char *map, size_ const unsigned char *limit = tmp + data_size; // The KChannel array really holds the alpha channel on this one. - for (i = 0, j = 0; tmp < limit; tmp += 4, j++) + for (j = 0; tmp < limit; tmp += 4, j++) { tmp[0] = (tmp[0] * tmp[3]) >> 8; tmp[1] = (tmp[1] * tmp[3]) >> 8; diff --git a/libraries/evas/src/modules/loaders/svg/Makefile.am b/libraries/evas/src/modules/loaders/svg/Makefile.am index 4b8d1b5..65820ce 100644 --- a/libraries/evas/src/modules/loaders/svg/Makefile.am +++ b/libraries/evas/src/modules/loaders/svg/Makefile.am @@ -10,8 +10,6 @@ AM_CPPFLAGS = \ @EINA_CFLAGS@ \ @evas_image_loader_svg_cflags@ -AM_CFLAGS = @WIN32_CFLAGS@ - if BUILD_LOADER_SVG if !EVAS_STATIC_BUILD_SVG diff --git a/libraries/evas/src/modules/loaders/svg/Makefile.in b/libraries/evas/src/modules/loaders/svg/Makefile.in index b742842..4d23de1 100644 --- a/libraries/evas/src/modules/loaders/svg/Makefile.in +++ b/libraries/evas/src/modules/loaders/svg/Makefile.in @@ -181,6 +181,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -231,6 +233,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -249,8 +253,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -324,8 +326,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -418,7 +418,6 @@ AM_CPPFLAGS = \ @EINA_CFLAGS@ \ @evas_image_loader_svg_cflags@ -AM_CFLAGS = @WIN32_CFLAGS@ @BUILD_LOADER_SVG_TRUE@@EVAS_STATIC_BUILD_SVG_FALSE@pkgdir = $(libdir)/evas/modules/loaders/svg/$(MODULE_ARCH) @BUILD_LOADER_SVG_TRUE@@EVAS_STATIC_BUILD_SVG_FALSE@pkg_LTLIBRARIES = module.la @BUILD_LOADER_SVG_TRUE@@EVAS_STATIC_BUILD_SVG_FALSE@module_la_SOURCES = evas_image_load_svg.c diff --git a/libraries/evas/src/modules/loaders/tga/Makefile.am b/libraries/evas/src/modules/loaders/tga/Makefile.am index 4d9e240..7cd8fed 100644 --- a/libraries/evas/src/modules/loaders/tga/Makefile.am +++ b/libraries/evas/src/modules/loaders/tga/Makefile.am @@ -8,8 +8,7 @@ AM_CPPFLAGS = \ @FREETYPE_CFLAGS@ \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ +@EVIL_CFLAGS@ if BUILD_LOADER_TGA if !EVAS_STATIC_BUILD_TGA @@ -27,7 +26,7 @@ else noinst_LTLIBRARIES = libevas_loader_tga.la libevas_loader_tga_la_SOURCES = evas_image_load_tga.c -libevas_loader_tga_la_LIBADD = +libevas_loader_tga_la_LIBADD = endif endif diff --git a/libraries/evas/src/modules/loaders/tga/Makefile.in b/libraries/evas/src/modules/loaders/tga/Makefile.in index 4d822d1..d2a9271 100644 --- a/libraries/evas/src/modules/loaders/tga/Makefile.in +++ b/libraries/evas/src/modules/loaders/tga/Makefile.in @@ -181,6 +181,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -231,6 +233,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -249,8 +253,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -324,8 +326,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -416,8 +416,7 @@ AM_CPPFLAGS = \ @FREETYPE_CFLAGS@ \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ +@EVIL_CFLAGS@ @BUILD_LOADER_TGA_TRUE@@EVAS_STATIC_BUILD_TGA_FALSE@pkgdir = $(libdir)/evas/modules/loaders/tga/$(MODULE_ARCH) @BUILD_LOADER_TGA_TRUE@@EVAS_STATIC_BUILD_TGA_FALSE@pkg_LTLIBRARIES = module.la diff --git a/libraries/evas/src/modules/loaders/tga/evas_image_load_tga.c b/libraries/evas/src/modules/loaders/tga/evas_image_load_tga.c index 9b4073c..bab169b 100644 --- a/libraries/evas/src/modules/loaders/tga/evas_image_load_tga.c +++ b/libraries/evas/src/modules/loaders/tga/evas_image_load_tga.c @@ -76,10 +76,9 @@ evas_image_load_file_head_tga(Image_Entry *ie, const char *file, const char *key unsigned char *seg = NULL, *filedata; tga_header *header; tga_footer *footer, tfooter; - char hasa = 0, footer_present = 0, vinverted = 0; + char hasa = 0; int w = 0, h = 0, bpp; int x, y; - int abits; f = eina_file_open(file, EINA_FALSE); *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; @@ -98,7 +97,7 @@ evas_image_load_file_head_tga(Image_Entry *ie, const char *file, const char *key memcpy((unsigned char *)(&tfooter), (unsigned char *)footer, sizeof(tga_footer)); - printf("0\n"); + //printf("0\n"); if (!memcmp(tfooter.signature, TGA_SIGNATURE, sizeof(tfooter.signature))) { if ((tfooter.dot == '.') && (tfooter.null == 0)) @@ -106,14 +105,12 @@ evas_image_load_file_head_tga(Image_Entry *ie, const char *file, const char *key // footer is there and matches. this is a tga file - any problems now // are a corrupt file *error = EVAS_LOAD_ERROR_CORRUPT_FILE; - footer_present = 1; } } // else goto close_file; - printf("1\n"); + //printf("1\n"); filedata = (unsigned char *)filedata + sizeof(tga_header); - vinverted = !(header->descriptor & TGA_DESC_VERTICAL); switch (header->imageType) { case TGA_TYPE_COLOR_RLE: @@ -131,7 +128,6 @@ evas_image_load_file_head_tga(Image_Entry *ie, const char *file, const char *key if (!((bpp == 32) || (bpp == 24) || (bpp == 16) || (bpp == 8))) goto close_file; if ((bpp == 32) && (header->descriptor & TGA_DESC_ABITS)) hasa = 1; - abits = header->descriptor & TGA_DESC_ABITS; // don't handle colormapped images if ((header->colorMapType) != 0) goto close_file; diff --git a/libraries/evas/src/modules/loaders/tiff/Makefile.am b/libraries/evas/src/modules/loaders/tiff/Makefile.am index f617c5e..1a53686 100644 --- a/libraries/evas/src/modules/loaders/tiff/Makefile.am +++ b/libraries/evas/src/modules/loaders/tiff/Makefile.am @@ -9,10 +9,7 @@ AM_CPPFLAGS = \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ @evas_image_loader_tiff_cflags@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ - -AM_CFLAGS = @WIN32_CFLAGS@ +@EVIL_CFLAGS@ if BUILD_LOADER_TIFF if !EVAS_STATIC_BUILD_TIFF diff --git a/libraries/evas/src/modules/loaders/tiff/Makefile.in b/libraries/evas/src/modules/loaders/tiff/Makefile.in index 2b102a1..5976b63 100644 --- a/libraries/evas/src/modules/loaders/tiff/Makefile.in +++ b/libraries/evas/src/modules/loaders/tiff/Makefile.in @@ -181,6 +181,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -231,6 +233,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -249,8 +253,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -324,8 +326,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -417,10 +417,8 @@ AM_CPPFLAGS = \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ @evas_image_loader_tiff_cflags@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ +@EVIL_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ @BUILD_LOADER_TIFF_TRUE@@EVAS_STATIC_BUILD_TIFF_FALSE@pkgdir = $(libdir)/evas/modules/loaders/tiff/$(MODULE_ARCH) @BUILD_LOADER_TIFF_TRUE@@EVAS_STATIC_BUILD_TIFF_FALSE@pkg_LTLIBRARIES = module.la @BUILD_LOADER_TIFF_TRUE@@EVAS_STATIC_BUILD_TIFF_FALSE@module_la_SOURCES = evas_image_load_tiff.c diff --git a/libraries/evas/src/modules/loaders/wbmp/Makefile.am b/libraries/evas/src/modules/loaders/wbmp/Makefile.am index eed287a..61a4def 100644 --- a/libraries/evas/src/modules/loaders/wbmp/Makefile.am +++ b/libraries/evas/src/modules/loaders/wbmp/Makefile.am @@ -8,8 +8,7 @@ AM_CPPFLAGS = \ @FREETYPE_CFLAGS@ \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ +@EVIL_CFLAGS@ if BUILD_LOADER_WBMP if !EVAS_STATIC_BUILD_WBMP @@ -27,7 +26,7 @@ else noinst_LTLIBRARIES = libevas_loader_wbmp.la libevas_loader_wbmp_la_SOURCES = evas_image_load_wbmp.c -libevas_loader_wbmp_la_LIBADD = +libevas_loader_wbmp_la_LIBADD = endif endif diff --git a/libraries/evas/src/modules/loaders/wbmp/Makefile.in b/libraries/evas/src/modules/loaders/wbmp/Makefile.in index 5c01e1c..aba23a2 100644 --- a/libraries/evas/src/modules/loaders/wbmp/Makefile.in +++ b/libraries/evas/src/modules/loaders/wbmp/Makefile.in @@ -181,6 +181,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -231,6 +233,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -249,8 +253,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -324,8 +326,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -416,8 +416,7 @@ AM_CPPFLAGS = \ @FREETYPE_CFLAGS@ \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ +@EVIL_CFLAGS@ @BUILD_LOADER_WBMP_TRUE@@EVAS_STATIC_BUILD_WBMP_FALSE@pkgdir = $(libdir)/evas/modules/loaders/wbmp/$(MODULE_ARCH) @BUILD_LOADER_WBMP_TRUE@@EVAS_STATIC_BUILD_WBMP_FALSE@pkg_LTLIBRARIES = module.la diff --git a/libraries/evas/src/modules/loaders/xpm/Makefile.am b/libraries/evas/src/modules/loaders/xpm/Makefile.am index b8cb1fa..83c9970 100644 --- a/libraries/evas/src/modules/loaders/xpm/Makefile.am +++ b/libraries/evas/src/modules/loaders/xpm/Makefile.am @@ -9,10 +9,7 @@ AM_CPPFLAGS = \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ @evas_image_loader_xpm_cflags@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ - -AM_CFLAGS = @WIN32_CFLAGS@ +@EVIL_CFLAGS@ if BUILD_LOADER_XPM if !EVAS_STATIC_BUILD_XPM diff --git a/libraries/evas/src/modules/loaders/xpm/Makefile.in b/libraries/evas/src/modules/loaders/xpm/Makefile.in index 6383d9e..cfce4ad 100644 --- a/libraries/evas/src/modules/loaders/xpm/Makefile.in +++ b/libraries/evas/src/modules/loaders/xpm/Makefile.in @@ -181,6 +181,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -231,6 +233,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -249,8 +253,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -324,8 +326,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -417,10 +417,8 @@ AM_CPPFLAGS = \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ @evas_image_loader_xpm_cflags@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ +@EVIL_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ @BUILD_LOADER_XPM_TRUE@@EVAS_STATIC_BUILD_XPM_FALSE@pkgdir = $(libdir)/evas/modules/loaders/xpm/$(MODULE_ARCH) @BUILD_LOADER_XPM_TRUE@@EVAS_STATIC_BUILD_XPM_FALSE@pkg_LTLIBRARIES = module.la @BUILD_LOADER_XPM_TRUE@@EVAS_STATIC_BUILD_XPM_FALSE@module_la_SOURCES = evas_image_load_xpm.c diff --git a/libraries/evas/src/modules/loaders/xpm/evas_image_load_xpm.c b/libraries/evas/src/modules/loaders/xpm/evas_image_load_xpm.c index c764f6d..f00f92d 100644 --- a/libraries/evas/src/modules/loaders/xpm/evas_image_load_xpm.c +++ b/libraries/evas/src/modules/loaders/xpm/evas_image_load_xpm.c @@ -153,7 +153,7 @@ evas_image_load_file_xpm(Image_Entry *ie, const char *file, const char *key __UN position = 0; if (length < 9) { - ERR("XPM ERROR: file size, %i, is to small", length); + ERR("XPM ERROR: file size, %zd, is to small", length); eina_file_close(f); *error = EVAS_LOAD_ERROR_CORRUPT_FILE; return EINA_FALSE; @@ -170,7 +170,6 @@ evas_image_load_file_xpm(Image_Entry *ie, const char *file, const char *key __UN if (strncmp("/* XPM */", map, 9)) { - ERR("XPM ERROR: header not found"); *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; goto on_error; } diff --git a/libraries/evas/src/modules/savers/Makefile.in b/libraries/evas/src/modules/savers/Makefile.in index 28236d9..629961c 100644 --- a/libraries/evas/src/modules/savers/Makefile.in +++ b/libraries/evas/src/modules/savers/Makefile.in @@ -161,6 +161,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -211,6 +213,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -229,8 +233,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -304,8 +306,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/modules/savers/edb/Makefile.in b/libraries/evas/src/modules/savers/edb/Makefile.in index 2ed29ec..7637c35 100644 --- a/libraries/evas/src/modules/savers/edb/Makefile.in +++ b/libraries/evas/src/modules/savers/edb/Makefile.in @@ -181,6 +181,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -231,6 +233,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -249,8 +253,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -324,8 +326,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/modules/savers/eet/Makefile.am b/libraries/evas/src/modules/savers/eet/Makefile.am index 1c7f71c..ffa5bb5 100644 --- a/libraries/evas/src/modules/savers/eet/Makefile.am +++ b/libraries/evas/src/modules/savers/eet/Makefile.am @@ -10,8 +10,6 @@ AM_CPPFLAGS = \ @EINA_CFLAGS@ \ @evas_image_loader_eet_cflags@ -AM_CFLAGS = @WIN32_CFLAGS@ - if BUILD_LOADER_EET if !EVAS_STATIC_BUILD_EET diff --git a/libraries/evas/src/modules/savers/eet/Makefile.in b/libraries/evas/src/modules/savers/eet/Makefile.in index 6564c18..70c76d1 100644 --- a/libraries/evas/src/modules/savers/eet/Makefile.in +++ b/libraries/evas/src/modules/savers/eet/Makefile.in @@ -181,6 +181,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -231,6 +233,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -249,8 +253,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -324,8 +326,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -418,7 +418,6 @@ AM_CPPFLAGS = \ @EINA_CFLAGS@ \ @evas_image_loader_eet_cflags@ -AM_CFLAGS = @WIN32_CFLAGS@ @BUILD_LOADER_EET_TRUE@@EVAS_STATIC_BUILD_EET_FALSE@pkgdir = $(libdir)/evas/modules/savers/eet/$(MODULE_ARCH) @BUILD_LOADER_EET_TRUE@@EVAS_STATIC_BUILD_EET_FALSE@pkg_LTLIBRARIES = module.la @BUILD_LOADER_EET_TRUE@@EVAS_STATIC_BUILD_EET_FALSE@module_la_SOURCES = evas_image_save_eet.c diff --git a/libraries/evas/src/modules/savers/jpeg/Makefile.am b/libraries/evas/src/modules/savers/jpeg/Makefile.am index 82a40ac..fee6cc3 100644 --- a/libraries/evas/src/modules/savers/jpeg/Makefile.am +++ b/libraries/evas/src/modules/savers/jpeg/Makefile.am @@ -10,8 +10,6 @@ AM_CPPFLAGS= \ @EINA_CFLAGS@ \ @evas_image_loader_jpeg_cflags@ -AM_CFLAGS = @WIN32_CFLAGS@ - if BUILD_SAVER_JPEG if !EVAS_STATIC_BUILD_JPEG diff --git a/libraries/evas/src/modules/savers/jpeg/Makefile.in b/libraries/evas/src/modules/savers/jpeg/Makefile.in index e57c4f9..3e17f5b 100644 --- a/libraries/evas/src/modules/savers/jpeg/Makefile.in +++ b/libraries/evas/src/modules/savers/jpeg/Makefile.in @@ -181,6 +181,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -231,6 +233,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -249,8 +253,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -324,8 +326,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -418,7 +418,6 @@ AM_CPPFLAGS = \ @EINA_CFLAGS@ \ @evas_image_loader_jpeg_cflags@ -AM_CFLAGS = @WIN32_CFLAGS@ @BUILD_SAVER_JPEG_TRUE@@EVAS_STATIC_BUILD_JPEG_FALSE@pkgdir = $(libdir)/evas/modules/savers/jpeg/$(MODULE_ARCH) @BUILD_SAVER_JPEG_TRUE@@EVAS_STATIC_BUILD_JPEG_FALSE@pkg_LTLIBRARIES = module.la @BUILD_SAVER_JPEG_TRUE@@EVAS_STATIC_BUILD_JPEG_FALSE@module_la_SOURCES = evas_image_save_jpeg.c diff --git a/libraries/evas/src/modules/savers/png/Makefile.am b/libraries/evas/src/modules/savers/png/Makefile.am index 1429f2e..84b3325 100644 --- a/libraries/evas/src/modules/savers/png/Makefile.am +++ b/libraries/evas/src/modules/savers/png/Makefile.am @@ -9,10 +9,7 @@ AM_CPPFLAGS = \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ @evas_image_loader_png_cflags@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ - -AM_CFLAGS = @WIN32_CFLAGS@ +@EVIL_CFLAGS@ if BUILD_LOADER_PNG if !EVAS_STATIC_BUILD_PNG diff --git a/libraries/evas/src/modules/savers/png/Makefile.in b/libraries/evas/src/modules/savers/png/Makefile.in index da04ff2..e6f26ca 100644 --- a/libraries/evas/src/modules/savers/png/Makefile.in +++ b/libraries/evas/src/modules/savers/png/Makefile.in @@ -181,6 +181,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -231,6 +233,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -249,8 +253,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -324,8 +326,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -417,10 +417,8 @@ AM_CPPFLAGS = \ @PIXMAN_CFLAGS@ \ @EINA_CFLAGS@ \ @evas_image_loader_png_cflags@ \ -@EVIL_CFLAGS@ \ -@WIN32_CPPFLAGS@ +@EVIL_CFLAGS@ -AM_CFLAGS = @WIN32_CFLAGS@ @BUILD_LOADER_PNG_TRUE@@EVAS_STATIC_BUILD_PNG_FALSE@pkgdir = $(libdir)/evas/modules/savers/png/$(MODULE_ARCH) @BUILD_LOADER_PNG_TRUE@@EVAS_STATIC_BUILD_PNG_FALSE@pkg_LTLIBRARIES = module.la @BUILD_LOADER_PNG_TRUE@@EVAS_STATIC_BUILD_PNG_FALSE@module_la_SOURCES = evas_image_save_png.c diff --git a/libraries/evas/src/modules/savers/tiff/Makefile.am b/libraries/evas/src/modules/savers/tiff/Makefile.am index 6d58d26..b75064f 100644 --- a/libraries/evas/src/modules/savers/tiff/Makefile.am +++ b/libraries/evas/src/modules/savers/tiff/Makefile.am @@ -10,8 +10,6 @@ AM_CPPFLAGS = \ @EINA_CFLAGS@ \ @evas_image_loader_tiff_cflags@ -AM_CFLAGS = @WIN32_CFLAGS@ - if BUILD_LOADER_TIFF if !EVAS_STATIC_BUILD_TIFF diff --git a/libraries/evas/src/modules/savers/tiff/Makefile.in b/libraries/evas/src/modules/savers/tiff/Makefile.in index 8f4411f..3272ba9 100644 --- a/libraries/evas/src/modules/savers/tiff/Makefile.in +++ b/libraries/evas/src/modules/savers/tiff/Makefile.in @@ -181,6 +181,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -231,6 +233,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -249,8 +253,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -324,8 +326,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ @@ -418,7 +418,6 @@ AM_CPPFLAGS = \ @EINA_CFLAGS@ \ @evas_image_loader_tiff_cflags@ -AM_CFLAGS = @WIN32_CFLAGS@ @BUILD_LOADER_TIFF_TRUE@@EVAS_STATIC_BUILD_TIFF_FALSE@pkgdir = $(libdir)/evas/modules/savers/tiff/$(MODULE_ARCH) @BUILD_LOADER_TIFF_TRUE@@EVAS_STATIC_BUILD_TIFF_FALSE@pkg_LTLIBRARIES = module.la @BUILD_LOADER_TIFF_TRUE@@EVAS_STATIC_BUILD_TIFF_FALSE@module_la_SOURCES = evas_image_save_tiff.c diff --git a/libraries/evas/src/static_deps/Makefile.in b/libraries/evas/src/static_deps/Makefile.in index 514e79c..dd23c0c 100644 --- a/libraries/evas/src/static_deps/Makefile.in +++ b/libraries/evas/src/static_deps/Makefile.in @@ -157,6 +157,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -207,6 +209,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -225,8 +229,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -300,8 +302,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/static_deps/liblinebreak/Makefile.in b/libraries/evas/src/static_deps/liblinebreak/Makefile.in index 9d44327..b26a9eb 100644 --- a/libraries/evas/src/static_deps/liblinebreak/Makefile.in +++ b/libraries/evas/src/static_deps/liblinebreak/Makefile.in @@ -150,6 +150,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -200,6 +202,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -218,8 +222,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -293,8 +295,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/tests/Makefile.in b/libraries/evas/src/tests/Makefile.in index 8790c33..f3c46d3 100644 --- a/libraries/evas/src/tests/Makefile.in +++ b/libraries/evas/src/tests/Makefile.in @@ -153,6 +153,8 @@ EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ EVIL_CFLAGS = @EVIL_CFLAGS@ EVIL_LIBS = @EVIL_LIBS@ EXEEXT = @EXEEXT@ +EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ +EXOTIC_LIBS = @EXOTIC_LIBS@ FGREP = @FGREP@ FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ @@ -203,6 +205,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ PIXMAN_LIBS = @PIXMAN_LIBS@ PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ PNG_CFLAGS = @PNG_CFLAGS@ PNG_LIBS = @PNG_LIBS@ RANLIB = @RANLIB@ @@ -221,8 +225,6 @@ VERSION = @VERSION@ VMAJ = @VMAJ@ WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ -WIN32_CFLAGS = @WIN32_CFLAGS@ -WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ XCB_CFLAGS = @XCB_CFLAGS@ XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ XCB_GL_LIBS = @XCB_GL_LIBS@ @@ -296,8 +298,6 @@ evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ -evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ -evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ diff --git a/libraries/evas/src/tests/evas_test_textblock.c b/libraries/evas/src/tests/evas_test_textblock.c index cf6a78b..983a2fc 100644 --- a/libraries/evas/src/tests/evas_test_textblock.c +++ b/libraries/evas/src/tests/evas_test_textblock.c @@ -1283,6 +1283,15 @@ START_TEST(evas_textblock_various) evas_object_textblock_text_markup_set(tb, "aaa"); fail_if(!_evas_textblock_check_item_node_link(tb)); + /* These shouldn't crash (although the desired outcome is not yet defined) */ + evas_object_textblock_text_markup_set(tb, ""); + evas_textblock_cursor_pos_set(cur, 0); + evas_textblock_cursor_char_delete(cur); + + evas_object_textblock_text_markup_set(tb, "\xEF\xBF\xBC"); + evas_textblock_cursor_pos_set(cur, 0); + evas_textblock_cursor_char_delete(cur); + END_TB_TEST(); } END_TEST @@ -2090,6 +2099,29 @@ START_TEST(evas_textblock_size) fail_if((w != nw) || (h != nh)); fail_if(w <= 0); + /* This time with margins. */ + { + Evas_Textblock_Style *newst; + Evas_Coord oldw, oldh, oldnw, oldnh; + + evas_object_textblock_text_markup_set(tb, buf); + evas_object_textblock_size_formatted_get(tb, &oldw, &oldh); + evas_object_textblock_size_native_get(tb, &oldnw, &oldnh); + + + newst = evas_textblock_style_new(); + fail_if(!newst); + evas_textblock_style_set(newst, + "DEFAULT='left_margin=4 right_margin=4'"); + evas_object_textblock_style_user_push(tb, newst); + + evas_object_textblock_size_formatted_get(tb, &w, &h); + evas_object_textblock_size_native_get(tb, &nw, &nh); + + fail_if((w != oldw + 8) || (h != oldh) || + (nw != oldnw + 8) || (nh != oldnh)); + } + /* FIXME: There is a lot more to be done. */ END_TB_TEST(); } -- cgit v1.1