Commit Graph

891 Commits

Author SHA1 Message Date
Carsten Haitzler 3fa85660f8 fix gl engine make current impl (for ne evas gl stuff so no chlog
needed)  to handle make current return value right



SVN revision: 59834
2011-05-31 07:10:37 +00:00
Lucas De Marchi 10237c5b56 evas: fix misspellings
Misspellings found by codespell



SVN revision: 59822
2011-05-30 16:45:08 +00:00
Tom Hacohen a8ddf9b1f8 Evas engines: Adjust all the rest of the engines to use Evas_Font_Set.
SVN revision: 59784
2011-05-29 13:56:23 +00:00
Tom Hacohen 60aa86a0ef Evas font-engine: Added two font opaque types.
Added Evas_Font_Instance and Evas_Font_Set which correspond to
RGBA_Font_Int and RGBA_Font. This is very important for strict type
checking which we now finally have.

This commit does not include logic changes, only casting and changing
types of pointers to the opaque pointer types.

SVN revision: 59782
2011-05-29 13:00:54 +00:00
Tom Hacohen 81b217f8c4 Evas font-engine: Fixed font fallback in the same script run.
SVN revision: 59777
2011-05-29 09:20:18 +00:00
Christopher Michael 943cd64c7f Evas: Png Loader: Fix shadow declaration of variable 'compress'.
SVN revision: 59718
2011-05-27 02:00:15 +00:00
Cedric BAIL 2600ac9160 evas: use Eina_File when possible.
SVN revision: 59645
2011-05-24 10:19:06 +00:00
Carsten Haitzler f854f1f275 fix glpipe optimization that stops the pipes from being used with many
maps



SVN revision: 59638
2011-05-24 06:51:47 +00:00
Vincent Torri 70c27550cf Evas: Fix compilation with libjpeg 8 on Windows.
SVN revision: 59609
2011-05-23 06:45:19 +00:00
Christopher Michael 8c2397f8c2 Evas: Add UNUSED to evas_engine function 'eng_image_load_error_get'
for data paramater (it is not used in the function).



SVN revision: 59547
2011-05-20 01:35:41 +00:00
Carsten Haitzler 4dd1d5cf62 fix load of data to ACTUALLY set the load error in evas's image
objects. including preload.



SVN revision: 59529
2011-05-19 11:19:22 +00:00
Carsten Haitzler 59bc413e1f handle surf alloc failures.
SVN revision: 59524
2011-05-19 09:28:43 +00:00
Carsten Haitzler 3789e32040 check return of alloc surf for eet loader.
SVN revision: 59523
2011-05-19 09:25:31 +00:00
Carsten Haitzler 19b70919ad small fix - check surface alloc return and reurn alloc failure.
SVN revision: 59522
2011-05-19 09:22:35 +00:00
Carsten Haitzler 23c715b282 fixed issues on evas gl suport from sungwoo.
SVN revision: 59492
2011-05-18 09:49:58 +00:00
Vincent Torri f0cbd4add5 add some guards for non Windows headers and reorder
alphabetically some autotools stuff

SVN revision: 59393
2011-05-15 05:42:30 +00:00
Carsten Haitzler 9d945dd593 fix svg load WITH scaling - scale down size request broken. 2
different sizing methods.



SVN revision: 59329
2011-05-11 11:26:51 +00:00
Carsten Haitzler a5d62bdbcd Fix: egl mode in engine forgot to call pre/post swap callback. thanks
guanglim!



SVN revision: 59322
2011-05-11 09:14:59 +00:00
Cedric BAIL 21971b92a0 evas: fix xcb build.
SVN revision: 59302
2011-05-09 15:18:03 +00:00
Cedric BAIL 849eea718d evas: fix software 16 sdl.
SVN revision: 59290
2011-05-09 10:56:32 +00:00
Cedric BAIL ba96d1220f evas: actually check if loading header was fine.
SVN revision: 59232
2011-05-06 09:01:18 +00:00
Carsten Haitzler 97a12de552 make get program binary able to be disabled via env var and display if
wee find the extn too. tested on gles now too.



SVN revision: 59178
2011-05-04 08:05:46 +00:00
Jiyoun Park 56111d2b69 From: Jiyoun Park <jy0703.park@samsung.com>
Subject: [E-devel] [Patch] Evas gl shader use binary shader

I make patch related with evas gl binary shader.
 
The concept of binary shader is  compile shader only once.
 
Some people want to use binary shader because of performance issue.
 
In current evas gl engine, every application have to compile shader each
time. 

But I modify code , so only first running application need compile shader.

Other application use already compiled shader(binary shader)

 
The binary shader is made under HOME/.evas/gl_common_shaders directory. 

Binary shader is created according to GL vendor,GL renderer, GL version and
Module_arch.

The basic flow is
 
1.     First running application which use gl engine check binary shader
directory, but it can't find binary shader. 
2.     After compiling shader, It saves compiled shaders..
3.     Other application checks shader directory, it can use binary
shaders.
 
In mobile target, using binary shader, I can save 150ms. (that time, there
is 11 shaders).

If there is more shaders and more applications, this flow maybe save more
total time. 

(the above is now in, changelog coming, with change to using ~/.cache,
some formatting fixes, make ity do the desktop gl one right with the
retrievable hint parameter ont he program etc. - doesn't break desktop
gl at least. yay. a,so fixes to mke it compile at all).



SVN revision: 59167
2011-05-04 06:15:00 +00:00
Carsten Haitzler 569ca2b315 wrn--
SVN revision: 59139
2011-05-03 03:11:08 +00:00
Tom Hacohen e93f10b8aa Evas font-engine: Remove passing of strings to font_draw.
This is not needed anymore because we have working string objects.

SVN revision: 59133
2011-05-02 15:33:46 +00:00
Sung W. Park bc8af94bfa From: "Sung W. Park" <sungwoo@gmail.com>
Subject: evas_gl_api_get patch.

Here's a patch that simply overrides the GL functions for Evas_GL
except for two functions that I provide on my own.  It may have some symbol
resolving warnings but that'll all go away eventually when we do everything
via dlsym or getProcAddress.
 
You can apply the patch to the latest revision of evas.  (I've just
updated them) I'm also attaching a sample GLES program that uses
evas_gl_api_get. You don't need to link it to -lGL.



SVN revision: 59092
2011-05-02 02:14:00 +00:00
Vincent Torri c7b9d3d14e whitespaces--
SVN revision: 59062
2011-05-01 06:06:56 +00:00
Carsten Haitzler 54f2389187 make generic loader 2 stage (head + data)
SVN revision: 58927
2011-04-26 09:41:07 +00:00
Carsten Haitzler 4af57920a8 fixme++
SVN revision: 58923
2011-04-26 08:45:21 +00:00
Carsten Haitzler 0e57095d06 add generic image loader. allows for GPL loaders, unstable loaders and
more. making a loader is a matter of a binary of a specific name and
evas passes certain input on the cmd-line and your binary produces
output on stdout (and also optionally additionally in a shm or tmp
file).



SVN revision: 58914
2011-04-26 01:03:06 +00:00
Sung W. Park d12e4f28d4 From: "Sung W. Park" <sungwoo@gmail.com>
Subject: [E-devel] [Review] [Patch] Evas - OpenGL on Evas: surface
texture creation patch

I'm attaching a patch that addresses the awkward usage case. It's something
that didn't bother me initially but the more I look at it, i think
it's a little off. :-)

The initial version of the evas_gl that I've submitted had the
following use case.

   evasgl = evas_gl_new(e);
   sfc = evas_gl_surface_create(...);
   ctx = evas_gl_context_create(...);

// Make current triggers surface texture and FBO to be created
   evas_gl_make_current(evasgl, sfc, ctx);

// Then you can do a surface_get to retrieve the proper texture and set it
   evas_gl_native_surface_get(evasgl, sfc, &ns);
   evas_object_image_native_surface_set(img_obj, &ns);
   
   The unnatural thing about this use case is that you have to call the make_current
one time in order for evas_gl to generate a surface texture.  This is because
you need a context to create a texture.  Unfortunately, this makes the usage
case really awkward.

So, instead, I've decided to get rid of the need for calling the make_current
by generating a surface texture when evas_gl_surface_create() is called
by using the evas' gl context.  This works because the newly created context
shares resources with evas.  in fact, this is what i'm currently doing with surface
deletion anyway so I thought this solution was reasonable.

Here's how it looks after you get rid of the make_current:

   evasgl = evas_gl_new(e);
   sfc = evas_gl_surface_create(...);
   ctx = evas_gl_context_create(...);

   evas_gl_native_surface_get(evasgl, sfc, &ns);
   evas_object_image_native_surface_set(img_obj, &ns);

The patch is pretty small and straightforward.
            


SVN revision: 58892
2011-04-25 08:41:36 +00:00
Carsten Haitzler 15d22f9c47 warnings--
SVN revision: 58884
2011-04-25 02:36:14 +00:00
Carsten Haitzler 75292cc435 lets have a Makefile.am shall we?
SVN revision: 58882
2011-04-25 02:28:42 +00:00
Cedric BAIL 0cef5e41fe evas: add psd file format support.
Patch from Thierry el Borgi with some rework of myself.

NOTE: I don't have much file to test, so if some don't
contact us with those file and we will fix the loader
if needed.


SVN revision: 58873
2011-04-24 19:45:43 +00:00
Carsten Haitzler c885080057 an initial test at trying pixman instead of evas software rendering.
results... in comments. disabled atm unless u --enable it. only
replaces 1 operation in 2 cases.



SVN revision: 58824
2011-04-22 11:47:14 +00:00
Christopher Michael 2dce8da128 Evas: Fix typos from 'old mans' recent commit sot hings build again
wrt xcb.



SVN revision: 58804
2011-04-21 15:21:40 +00:00
Carsten Haitzler b1285ae71a add in lots of ptr checks to sw-x11 outbut code... this may only
happen if we ran out of mem and mallocs failed... but we can avoid a
crash.



SVN revision: 58797
2011-04-21 12:33:35 +00:00
Sung W. Park db20d2aeab From: "Sung W. Park" <sungwoo@gmail.com>
(part of the evas-gl work)

the patch basically checks to see if the current context is evas' gl context
and if it is, it'll call evas_gl_common_context_flush().  I think this
is the proper



SVN revision: 58786
2011-04-21 09:23:42 +00:00
Brett Nash 5c88b6c8f2 Evas: filter: Remove warning from evil type things.
SVN revision: 58780
2011-04-21 06:26:49 +00:00
Brett Nash d157c43997 Evas: Mask: Add the part where evas actually uses the mask in GL.
SVN revision: 58778
2011-04-21 06:22:06 +00:00
Carsten Haitzler 7ed47808cb more bad code - why pass in void * image and data? sero point.. and it
totally is out of step with the rest of the api for gl_common.. that
alone would tell you "dont so that". ugh. more filter fixes.



SVN revision: 58746
2011-04-20 08:05:23 +00:00
Carsten Haitzler 18619830c4 oh god. more warning fixes...
SVN revision: 58745
2011-04-20 08:01:04 +00:00
Carsten Haitzler 384892d7fa start fixing shader mess. at least add mask compile to scripts. need
to do filters.



SVN revision: 58743
2011-04-20 07:12:51 +00:00
Brett Nash 9eaea94252 Evas: Filters:
More work, proudly supported by Samsung.  Filters!

So now you can apply a whole host of cheesy visual effects to objects at
runtime.  This is the first commit, there are a couple of more to come as I
tweak the filters, and fix blur with GL[1].

Please direct bugs to me nash@nash.id.au.

[1] You'd think shaders would be good at this.. but no, generic blur and GL
are like trying to get an apple product to work with Linux.

SVN revision: 58726
2011-04-19 05:47:56 +00:00
Brett Nash 36370ae91e Evas: Filter: Add the shaders - nice and safe change here.
SVN revision: 58725
2011-04-19 05:47:51 +00:00
Carsten Haitzler 7722171b96 fix binary ppm loading. that was odd.
SVN revision: 58681
2011-04-15 07:08:14 +00:00
Tom Hacohen 1dac813ace Evas font-engine: Fix the fallback fribidi shaper.
Just keep the shaped string in the string object if fribidi is used
without harfbuzz.

SVN revision: 58620
2011-04-13 08:37:01 +00:00
Tom Hacohen 682c7dcdc5 Evas font-engine: Fixed *props_info_create to accept a const string.
We don't want to have to alloc just for the engine. We want to be able to
pass our own const copy.

SVN revision: 58618
2011-04-13 08:36:54 +00:00
Tom Hacohen ad3b167e88 Evas font-engine: Added support for runtime-italic/bold.
Now when setting :style=Oblique/Italic/Cursiva/Bold and etc and there's
no matching font found in the system, adjustments will be done on
runtime to support that feature.

Patch by Myoungwoon Roy Kim (roy_kim).

SVN revision: 58584
2011-04-12 09:05:47 +00:00
Carsten Haitzler 578ac6f0b6 simplify tiff loader. hoping 64bit bug goes away. :) can't test right
now.



SVN revision: 58577
2011-04-12 06:20:38 +00:00