Commit Graph

5132 Commits

Author SHA1 Message Date
Vincent Torri 99c074f23f Evas: check static inline functions, not just inline ones
SVN revision: 68448
2012-02-26 07:09:07 +00:00
Jonas M. Gastal 058d798bb8 Evas generic object group documentation improvement.
SVN revision: 68425
2012-02-24 17:05:44 +00:00
Cedric BAIL 37a231afae ecore,embryo,evas: fix copy & paste issue.
SVN revision: 68417
2012-02-24 14:07:57 +00:00
Cedric BAIL cd9cb6abb5 evas: add Exotic support.
SVN revision: 68404
2012-02-24 11:21:57 +00:00
Sung Park ac0d52f04d Fixed glBindFramebuffer(0) issue for Direct Rendering
optimization.  current_fbo wasn't being set to 0 
so the above case wasn't being handled properly. 



SVN revision: 68392
2012-02-24 08:13:48 +00:00
Seungsoo Woo cf926fda0b From: Seungsoo Woo <om101.woo@samsung.com>
subject: [E-devel] [Patch] Add override gl apis for osmesa

When an application use glBindFramebuffer or glBindRenderbuffer via 
evas_gl after loding libosmesa.so,it shows segment fault.

Because glBindFramebuffer and glBindRenderbuffer are not overrided.
So, I fixed it.



SVN revision: 68391
2012-02-24 07:55:04 +00:00
Carsten Haitzler 354ccb36b4 yes - inow. this managed to get out in 1.1 being deprecated. lets not
mark the func as deprecated tho - keep in docs.



SVN revision: 68370
2012-02-24 00:52:29 +00:00
Jonas M. Gastal cbff250f77 Better evas rectangle docs.
SVN revision: 68356
2012-02-23 18:14:30 +00:00
Cedric BAIL 0dbc99f33a evas: remove software SDL engine, use buffer engine directly.
NOTE: I would like to do the same with software SDL 16bits engine.
But as we don't have a buffer_16 backend, I am likely to just remove
it and use buffer conversion code to match a 16bits target. This
will come with a performance impact, that will make it useless. So
I am just tempted to completly remove it.


SVN revision: 68352
2012-02-23 16:25:07 +00:00
Carsten Haitzler c29416e0d8 fix update region handling with scaling.
SVN revision: 68303
2012-02-23 06:07:37 +00:00
Carsten Haitzler 978448d656 since too many people make this mistake of not reading evas's docs and
seeing color is PREMULTIPLIED ARGB... evas_object_color_set is just
going to enforce it and limit r, g and b to a.



SVN revision: 68299
2012-02-23 04:53:19 +00:00
Mike Blumenkrantz c7297f530f silence annoying xpm header not found error message; this is frequently caused (erroneously) when reading images of unknown format
SVN revision: 68289
2012-02-22 23:58:46 +00:00
Carsten Haitzler 396572a355 fix regression during 1.1 dev (towards 1.2) that made evas over-render
way too much! FIXED



SVN revision: 68204
2012-02-21 07:01:39 +00:00
Carsten Haitzler ad09d3dcb8 shut gcc warning up - pointless but hey - 1 warn less.
SVN revision: 68102
2012-02-18 08:56:00 +00:00
Vincent Torri 189ee16538 missed this file
SVN revision: 68101
2012-02-18 08:33:36 +00:00
Vincent Torri 4060b7d96e Evas: remove WIN32_CPPFLAGS and WIN32_CFLAGS are there are not used anymore. Move some headers in evas_common.h
SVN revision: 68100
2012-02-18 08:33:00 +00:00
Vincent Torri 937eb5a4a6 Evas: use evil_path_is_absolute()
SVN revision: 68092
2012-02-17 21:35:57 +00:00
Gustavo Lima Chaves c0e58279f5 [Evas] Use the right size for parent smart class on
inheritance.



SVN revision: 68029
2012-02-16 16:27:21 +00:00
Carsten Haitzler 6ead226a93 while looking into the infintie loop issue - update regions can become
a lot in these pathological cases, so limit them to 24 and if > use
bounding box as a single region.



SVN revision: 67917
2012-02-14 11:45:23 +00:00
Carsten Haitzler e669719714 make rect_t use int's... no overflow. yay!
SVN revision: 67884
2012-02-13 14:37:41 +00:00
Hyoyoung Chang 0c74d1c82d From: Hyoyoung Chang <hyoyoung@gmail.com>
Subject: [E-devel] [patch] evas - preventing retard mouse event
process in evas_object_event_callback_call

I made a small patch to prevent retard mouse event process.
At certain circumstance (like as genlist select callback + naviframe
item push),
some events are repeat processed.

If some evas_objects're iterating in evas_event_feed_mouse_up and
mouse_out event's emitted by other interrupt(such as naviframe item
push),
then some evas_objects events are multiple processed by
evas_object_event_callback_call.

More elaborating it with a example.
There are a genlist and a multibuttonentry on genlist item.
When a user clicks multibuttonentry then evas will process mouse down
and up.
in evas_event_feed_mouse_up, it gets evas object list to process mouse
events.
Then in the evas object list, there are two evas objects - rect and
textblock.
Two objects have its own parents.

the rect has below parents.
----------------------------------------
edje  - genlist item
elm_genlist_pan
edje
multibuttonentry
box
entry
els_scroller  (0x2a601788)
rect                                      <== the rect

the textblock has below parents.
----------------------------------------------
edje - genlist item
elm_genlist_pan
edje
multibuttonentry
box
entry
els_scroller(0x2a601788)
edje
elm_pan
edje
textblock                           <== the textblock

(note : two evas object have same parent (els_scroller))

So normally mouse up callbacks event propagates to its own parent.
the rect is processed to genlist item. and the textblock is processed
to genlist item.
but when els_scroller is processed, it's blocked by checking event
type and event id checking.

Mouse Up(rect) ->  Mouse Up(textblock)
event_id (3)      ->   event_id (3)

evas_object_event_callback_call(Evas_Object *obj, Evas_Callback_Type
type, void *event_info, int event_id)
{
   ...
      if ((obj->delete_me) || (!obj->layer)) return;
         if ((obj->last_event == event_id) &&
                (obj->last_event_type == type)) return;
                     <=== blocked
                     
                     However if naviframe item is pushed in the middle
of mouse up processing.
It can break into mouse up. So it's processed like below.

Mouse Up(rect) -> Mouse Out(rect) -> Mouse Out(textblock) -> Mouse
Up(textblock)
event_id (3)      -> event_id(4)         -> event_id(4)
-> event_id(3)
(note Mouse_Out is made by naviframe item push for event freezing)

If that, there's no mechanism to block that repeat processing same
event.
So I suggest this patch.
This patch blocks old events if there's no reason to process.
(It blocks old mouse_up event because mouse_out is processed.)

And I think it also clear the bug in
"[E-devel] event repetition with elm_naviframe/elm_genlist"



SVN revision: 67879
2012-02-13 11:25:23 +00:00
ChunEon Park 839b56769a evas/gl_common - set line color with draw context.
SVN revision: 67870
2012-02-13 05:05:59 +00:00
ChunEon Park f6db68d6f5 evas/evas_events - do not call the up event when obj is freezed and removed useless codes.
SVN revision: 67828
2012-02-10 13:39:15 +00:00
Tom Hacohen 8a1351b5f0 Evas textblock: Better handle visible formats.
Fixed a crash. Thanks WooHyun for making me fix it now. :)

SVN revision: 67790
2012-02-09 12:21:18 +00:00
Tom Hacohen edbdd6a1ad Evas jpeg loader: Fixed a couple of compilation warnings.
There are a couple more *important* warnings. The switch case at line 564
does not cover all options.

SVN revision: 67784
2012-02-09 10:21:17 +00:00
Carsten Haitzler 3c9c59c5a5 hmm no - we shouldnt delete here.. we just find it in the active image
hash. as such the image is dirtied and thus removed from this hash
anyway so it doesnt need deleting.



SVN revision: 67778
2012-02-09 03:50:10 +00:00
Carsten Haitzler b7efefd294 some more debug for surfs
SVN revision: 67758
2012-02-08 12:25:50 +00:00
Carsten Haitzler d279c4e97c add some definable surf debug code... and STORE allocated size on
alloc so cache doesnt overfill!!!!!!!!!!!!!!!



SVN revision: 67757
2012-02-08 12:08:41 +00:00
Carsten Haitzler 767e40227c revert cedricism's. this just creates an infintie evas_image_entry leak.
SVN revision: 67755
2012-02-08 11:22:09 +00:00
Carsten Haitzler a3672c0048 let's link to the right libs for wayland shm eh?
SVN revision: 67754
2012-02-08 11:21:05 +00:00
Jihoon Kim 36c2029d0a fix @dates in each header file
SVN revision: 67705
2012-02-05 23:37:45 +00:00
WooHyun Jung 768b9af1fb [evas/evas_object_textblock] When markup_to_utf8 is tried with an invalid
escape tag, escape will be NULL. "eina_strbuf_append" should not be
called with NULL string.


SVN revision: 67696
2012-02-03 11:24:44 +00:00
Cedric BAIL 7055227957 evas: use evas_image_cache_drop instead of plain wrong call to free.
SVN revision: 67681
2012-02-01 17:28:30 +00:00
Tom Hacohen f91a385b62 Evas textblock: Fixed native size calculation - margins were not used.
SVN revision: 67631
2012-01-31 11:32:48 +00:00
Jiyoun Park 64e2d7fee5 fix memory leak of dirty image
if file was chaned by somebody, it was added to dirty list during cache request.
currently this dirty image added to cache->dirty list and never freed until image shutdown.
but dirty image of chaned file never used so add delete code for memory efficiency.
and fix bad indentation.


SVN revision: 67604
2012-01-30 14:36:15 +00:00
Sung Park 4f4a904816 Fixing my silly mistake before someone else catches it.
I was accessing a variable before it was NULL checked. 
Fixed now.



SVN revision: 67601
2012-01-30 11:21:38 +00:00
Tom Hacohen 107d92d428 Evas textblock: Fixed a possible invalid mem write.
SVN revision: 67580
2012-01-29 10:01:27 +00:00
Christopher Michael 279a7c3c91 Evas (m4): Use simpler check for wayland egl. Don't reset
'gl_flavor_gles' when checking for sgx support (if we reset
gl_flavor_gles here, then the autofoo output always returns 'NO' for
gles.



SVN revision: 67572
2012-01-28 13:47:12 +00:00
Christopher Michael f267c9f556 Evas: Fix typo in autofoo output.
SVN revision: 67571
2012-01-28 13:40:21 +00:00
Tom Hacohen a64d78e07a Evas textblock: Fixed style user memory leak.
Thanks to Hermet for spotting it.

SVN revision: 67548
2012-01-26 14:02:59 +00:00
Gustavo Sverzut Barbieri 8ca2f1bcaa The polygon drawing code for the DirectFB backend incorrectly casts a
void pointer causing a segfault. The attached patch fixes the issue
and allows an expedite run to complete.

By: Will Newton <will.newton@gmail.com>



SVN revision: 67543
2012-01-25 18:40:22 +00:00
Sung Park 14a94f1a8f Fixed a logic error for Evas GL Direct rendering override
option.

It should have been OR instead of AND operator.

When the image object alpha is on "OR" the rotation angle 
is not "0", direct rendering isn't allowed.  However,  
allow direct rendering if EVAS_GL_DIRECT_OVERRIDE=1 is set. 




SVN revision: 67521
2012-01-25 05:08:23 +00:00
Tom Hacohen 98c61bfe6c Evas textblock: Added user style support.
This should make it easier to override the style set in textblock.

SVN revision: 67473
2012-01-23 16:08:36 +00:00
Gustavo Sverzut Barbieri 022434a0bb enable coverage for evas as well.
also print out the docs, so the buildbot gets it.



SVN revision: 67460
2012-01-22 23:09:47 +00:00
Boris Faure 72165a3f49 evas: use correct format for size_t
SVN revision: 67457
2012-01-22 19:52:02 +00:00
Boris Faure 2b1c8050fb evas: fix strict prototypes
SVN revision: 67456
2012-01-22 19:51:49 +00:00
Sung Park 9afd5b3f3f Added Direct Rendering to Evas' window instead of an FBO in Evas_GL.
This optimization is significant for rendering to a large surface 
because it'l save an extra copy overhead as well as an extra rendering pass.

To enable it, you can give EVAS_GL_OPTIONS_DIRECT hint in the surface
config options_bits. The following conditions have to be met in order
for evas to render directly into the Evas' window. If they are not met, the 
engine will fallback to rendering to an FBO as it normally does. 

conditions: 
1.) All the GL calls have to be called using the pixel_get_callback function.
This is necessary for the evas object order to be maintained.
2.) Alpha must be disabled on the image ojbect that renders evas_gl.
3.) No rotation allowed.

One way to override above condition is to set EVAS_GL_DIRECT_OVERRIDE=1 but 
there is no guarantee in its behavior.

Currently, this optimization is added for gl_x11 engine only. 




SVN revision: 67388
2012-01-20 12:29:14 +00:00
Stefan Schmidt 0802e6a28d evas_blend_ops: Fix gcc complains about static used in non static inline functions.
Make the functions static as well to avoid gcc warnings like this:
warning: 'ALPHA_SSE3' is static but used in inline function 'sub4_alpha_sse3' which is not static

Signed-off-by: Stefan Schmidt <stefan@datenfreihafen.org>



SVN revision: 67355
2012-01-19 16:55:17 +00:00
Gustavo Sverzut Barbieri 30a5c9e1f7 oopps!
SVN revision: 67354
2012-01-19 16:52:58 +00:00
Gustavo Sverzut Barbieri 9a47bffc98 fix gcc warnings about set-but-unused and shadows of y1.
NOTE: did not touch mess that is jpeg, someone else can deal with it :-P



SVN revision: 67353
2012-01-19 16:49:47 +00:00
Gustavo Sverzut Barbieri 883923028e fix set-but-not-used errors from newer gcc.
SVN revision: 67352
2012-01-19 16:35:47 +00:00
Cedric BAIL 54fdc48d6a evas: add double buffer support to buffer engine.
NOTE: This patch is a first step to replace and remove
Evas SDL Software backend.


SVN revision: 67347
2012-01-19 15:17:24 +00:00
Tom Hacohen 7266659814 Evas textblock: Fix a bug with ellipsis and word-wrap.
Ellipsis didn't work well with word wrapping textblocks.

SVN revision: 67333
2012-01-19 12:11:44 +00:00
Tom Hacohen 5b8302468c Evas textblock tests: Fix tests warnings.
SVN revision: 67329
2012-01-19 09:02:12 +00:00
Tom Hacohen 1941918cdd Evas textblock: Also add tab support to prev commit, oops.
SVN revision: 67328
2012-01-19 08:44:01 +00:00
Tom Hacohen c6d242426f Evas textblock: Filter out illegal chars from format.
This really just filters them out. The solution is not complete, nor is
it the best one. But this fixes the bugs for the meanwhile.

SVN revision: 67327
2012-01-19 08:41:37 +00:00
Tom Hacohen e37d4495d3 Evas textblock: Indentation adjustment for the previous commit.
(I wanted the actual changes to be clear for review, so I split the
commit to two).

SVN revision: 67321
2012-01-19 07:52:37 +00:00
Tom Hacohen ef0ac9d69a Evas textblock: Merge text and format wrapping handling.
This should add a more standard compliant line breaking for format items
as well.

SVN revision: 67320
2012-01-19 07:52:34 +00:00
Sebastian Dransfeld 7f9dc64529 evas: correct notation to indicate unused variable
SVN revision: 67305
2012-01-18 23:34:05 +00:00
Sebastian Dransfeld 45f0dcbd45 evas: only check references ifndef EVAS_CSERVE
We only check the value of references if EVAS_CSERVE isn't defined, so
no need to define it or assign it if EVAS_CSERVE isn't defined.

SVN revision: 67304
2012-01-18 23:33:54 +00:00
Sebastian Dransfeld 26de65cf2c evas: before_char is only used with BIDI_SUPPORT
SVN revision: 67303
2012-01-18 23:33:43 +00:00
Sebastian Dransfeld c9abcf691d evas: Remove unused variables
SVN revision: 67302
2012-01-18 23:33:33 +00:00
Sebastian Dransfeld ccfb163282 evas: par_len is only used with BIDI_SUPPORT
SVN revision: 67301
2012-01-18 23:33:21 +00:00
Sebastian Dransfeld 28dff90eff evas: Fix shadow warnings
SVN revision: 67300
2012-01-18 23:33:07 +00:00
Carsten Haitzler 0e9a475092 update all minor versions to 2 (or 6) - and yes. i missed making most
be 1.1 (or 1.5) for the last release. too late. THIS is why i'm sick
and tired of all the bloody separate libs that have to be versiioned
and build and released separately. :( too many places to go fix up per
release.



SVN revision: 67284
2012-01-18 02:32:36 +00:00
Tom Hacohen 47d0c9c67b Evas tests: use unitptr_t in callback test.
SVN revision: 67277
2012-01-17 15:08:38 +00:00
Carsten Haitzler a70fc50208 we can optimize matching by breaking loop when match becomes 0 :)
SVN revision: 67267
2012-01-17 09:15:31 +00:00
Carsten Haitzler ad3aca617f and in a fit of rage... i'm removing those EINA_PURE's - one of them i
found was causing compiler optimizations to, in some compielr versions
and optimization levels, to skip a func in the eva stest suites...
which is wrong. no more pure mumbo. gone entirely.
evas_textblock_string_escape_get() was the one.



SVN revision: 67266
2012-01-17 09:15:05 +00:00
Carsten Haitzler 4ae6816486 add EVAS_OBJECT_POINTER_MODE_NOGRAB_NO_REPEAT_UPDOWN for accessibility
:)



SVN revision: 67264
2012-01-17 08:35:32 +00:00
Iván Briano 11d67f493d Add evas_object_smart_callback_del_full API
Patch by Raphael Kubo Costas (rakuco)


SVN revision: 67246
2012-01-16 17:25:40 +00:00
Christopher Michael 1a34b86f34 Evas (wayland_egl): Fix 'close' of windows. Basically, we will check
if the eng setup has a NULL surface, and if the RenderEngine has an
existing surface, that means we are hiding/closing the window, and
thus should free the existing RenderEngine Window.



SVN revision: 67160
2012-01-12 23:58:17 +00:00
Sung Park 20b3d52669 Added new Evas GL api called evas_gl_config_new/free()
to ensure backward compatibility.  Previously, the user
simply declared a Evas_GL_Config object but this can
cause problems if more config options are added.  So,
we have Evas allocate the config object for the user
so it can handle addition in the future.

Also, added some safety code around _extensions_init


SVN revision: 67141
2012-01-12 13:54:06 +00:00
Christopher Michael 71e63d268f Evas (wayland_egl): Remove printfs (done debugging that).
SVN revision: 67140
2012-01-12 13:10:53 +00:00
Christopher Michael a75b3126b2 Evas (gl_x11): Move make current so we only have one if.
SVN revision: 67137
2012-01-12 12:25:21 +00:00
Christopher Michael c0dd6f7975 Evas (wayland_egl): Fix egl detection in check_engine. (In theory, the
old version of this w/ the 3 includes Should be working, but I've
tested it on 2 machines now, and it fails on both with those lines in
there, so I am removing them).

Make wayland_egl engine Actually work and draw stuff now (too many
code changes to list them all separately). See http://i.imgur.com/i2eBE.png.




SVN revision: 67128
2012-01-12 09:01:37 +00:00
Christopher Michael dd7d556916 Evas (gl_x11): We cannot call eglMakeCurrent if we have already called
eglTerminate prior (eg: eglTerminate was in the wrong place here).



SVN revision: 67119
2012-01-12 06:06:07 +00:00
Christopher Michael f33a71339c Evas (wayland_egl): Oops, missed one rename on the engine info
structure.



SVN revision: 67102
2012-01-11 23:32:58 +00:00
Christopher Michael 42e82f9092 Evas (wayland_egl): Update code to use more descriptive name for
engine_info_structure.



SVN revision: 67100
2012-01-11 23:28:39 +00:00
Christopher Michael 17b8c59425 Evas (wayland_egl): Use a more descriptive name for the engine info
structure.



SVN revision: 67099
2012-01-11 23:28:01 +00:00
Christopher Michael b6b56af57e Evas: Also enable gl_common if we are building wayland_egl engine.
SVN revision: 67098
2012-01-11 23:17:54 +00:00
Christopher Michael 34ab2ff6cd Evas (wayland_egl): Destroy the wl_egl_window also when we free.
SVN revision: 67075
2012-01-11 12:58:59 +00:00
Christopher Michael e89e7d8ef5 Evas (wayland_egl): Use proper header name. Remove commented line.
SVN revision: 67074
2012-01-11 12:41:08 +00:00
Christopher Michael ad8ca8457c Evas (wayland_egl): Redo wayland egl engine code to more closely match
gl_x11.

NB: Not fully functional yet, but does build.



SVN revision: 67073
2012-01-11 12:23:44 +00:00
Christopher Michael 98f19e05fe Evas (wayland_egl): Remove obsolete file (replacing in a minute).
SVN revision: 67072
2012-01-11 12:22:36 +00:00
Christopher Michael 0b6f56aa34 Evas (software_generic): Add UNUSED for params that are not used
(where missing).
Remove unused variables.
Comment out functions that were defined but not used.



SVN revision: 67066
2012-01-11 10:40:17 +00:00
Christopher Michael dec27dd7de Evas (gl_common): Remove unused variable.
SVN revision: 67064
2012-01-11 10:35:52 +00:00
Christopher Michael 4e103ad78c Evas (gl_x11): Fix no return value in function that is supposed to
have Something returned.



SVN revision: 67063
2012-01-11 10:34:03 +00:00
Christopher Michael 2e70a02465 Evas (gl_x11 engine): Fix compiler warning about get_time function.
SVN revision: 67058
2012-01-11 09:48:47 +00:00
Daniel Juyung Seo d6c052a65a evas: applied eina_array_count_get -> eina_array_count change.
SVN revision: 67020
2012-01-10 15:34:39 +00:00
Youness Alaoui 8c91b5b493 Evas: Do not build altivec feature if disabled in configure
On macosx i386, that code fails because even though __VEC__ is defined,
the compiler doesn't understand the 'vector' keyword (that macro is
irrelevent here). So there was no way to make evas compile for ppc if
altivec was not supported by the compiler.

SVN revision: 66966
2012-01-08 07:22:01 +00:00
Youness Alaoui 3cbe46ccc9 Evas: engine for Mac is GL_COCOA not GL_QUARTZ
SVN revision: 66964
2012-01-08 07:21:35 +00:00
Cedric BAIL 8a4dfb08c1 evas: just disable Evas_GL support in software engine when we don't have dlopen.
NOTE: there is many system without dlopen and we do support them. Please keep it
this way in the future.


SVN revision: 66901
2012-01-05 12:59:08 +00:00
Carsten Haitzler c3a3eb0583 someone added an awesome bug to bmp loader some time recently. fix!
SVN revision: 66897
2012-01-05 10:06:49 +00:00
Sung Park 2f6b837c7c Added EvasGL support for software backend finally.
* This feature requires libOSMesa to be installed.   

One caveat with OSMesa is that a surface config (ie. Depth Buffer and etc)
is associated with a context rather than a surface, which is the case 
in EvasGL.  So for now, when a user specifies a surface config, it gets 
associated with the first context that the surface does a make current to.
For typical usage case, this shouldn't be a prolem. Will need to fix it 
eventually.




SVN revision: 66896
2012-01-05 07:55:23 +00:00
Daniel Juyung Seo 6bdf286cdb evas Evas.h: Fixed documentation.
SVN revision: 66888
2012-01-05 02:07:50 +00:00
Cedric BAIL b39ff33ff7 evas: disable dead code.
SVN revision: 66867
2012-01-04 11:46:39 +00:00
Cedric BAIL 1400dc9892 evas: forgotten inclusion of config.h.
SVN revision: 66866
2012-01-04 11:45:22 +00:00
Tom Hacohen 2d1166d846 Evas textblock: Fixed a possible bug with generic poppers removal.
Patch by Hyoyoung Chang.

SVN revision: 66798
2012-01-03 14:33:35 +00:00
Cedric BAIL 5438cc6844 evas: use Eina_File for PSD loader.
SVN revision: 66787
2012-01-03 10:26:53 +00:00
Christopher Michael e98c22f96c Evas: Framespace width & height Could be zero (it is possible), so
remove checks.



SVN revision: 66762
2012-01-03 01:01:58 +00:00