Commit Graph

299 Commits

Author SHA1 Message Date
Henrique Dante de Almeida ca8fc827a3 efl: Fixes to support compiling with CFLAGS=-Werror
This allows compiling with gcc 4.7.2 without errors (using the
default configuration).
2013-02-26 10:55:04 -03:00
Christopher Michael cbc203e0bf Evas: Fixed wrong EINA_UNUSED usage in the gl_x11 engine. 2013-02-26 13:52:54 +00:00
Henrique Dante de Almeida 211c33ff6e evas: Deal with double glShaderSource signature
The function glShaderSource may have 2 signatures:
http://stackoverflow.com/questions/12586695/signature-difference-in-openglshadersource-between-opengl-es-2-revisions
http://www.opengl.org/sdk/docs/man/xhtml/glShaderSource.xml
http://www.khronos.org/opengles/sdk/docs/man/xhtml/glShaderSource.xml

This patch changes all internal signatures to use the most restrictive signature.
2013-02-26 10:17:28 -03:00
Henrique Dante de Almeida 2656d7097e evas: Fix PSD image loading 2013-02-26 10:17:28 -03:00
Carsten Haitzler 683e5d7d08 Fix evas GL common engine to have a shader to do oversampling on
downscaling. This makes quality much better and "at best"
equates to a 16 point sample (2x2 linear interpolation samples,
where a linear interpolation sample equates to a 2x2 sample).
This will have perfomance impact, but the quality is worth it and
makes it closer to software downscaling in quality. It supports
2x2, 2x1 and 1x2 oversampling. YUV not done, nor image mask
(font shaders not needed).
2013-02-26 22:07:30 +09:00
Christopher Michael 1b5ffada1b Evas: Fixed wrong if in the x11 engine. 2013-02-25 10:35:54 +00:00
Stefan Schmidt 5e99f9b968 Revert "Refactor evas_sw_xlib_outbuf to allocate less in case of rotations."
This reverts commit 139737247d.

THis fix was completely wrong.

Conflicts:

	ChangeLog
2013-02-20 17:21:30 +00:00
Rafael Antognolli 8be4940bb3 evas/wayland_shm: Remove x,y offsets from swapbuf related APIs.
These offsets can be calculated later during the resize operations.
2013-02-19 10:42:39 -03:00
Rafael Antognolli dc0d88df9c ecore_evas/wayland_shm: Fixed window resize.
Using the server_allocation/allocation to determine the resize offset
was not completely precise, and causing the window to not always resize
correctly.

Additionally, calling evas_engine_info_set() on every resize step caused
the window content to blink and resize very slow, because the swap
buffer, swapper, and everything were being destroyed and recreated. Now
only the swapbuf_reconfigure is being called during the resize, which is
way faster.
2013-02-19 10:18:03 -03:00
Christopher Michael cf67e69b50 Fix swapper to take resize edges into account.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
2013-02-19 10:18:03 -03:00
Christopher Michael 232ea5b875 Fix function prototypes to take resize edges into account.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
2013-02-19 10:18:03 -03:00
Christopher Michael 899e4f745c Fix swapbuf setup to take resize edges into account.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
2013-02-19 10:18:02 -03:00
Christopher Michael 5dde66b4e4 Fix function prototypes to take x & y as params. Fix functions to take x & y as params (for resize edges).
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
2013-02-19 10:18:02 -03:00
Christopher Michael b717e948af Fix new shm engine to take resize edges into account.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
2013-02-19 10:18:02 -03:00
Christopher Michael c95160baae Fix swapper_setup function prototype to take x & y as params.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
2013-02-19 10:18:02 -03:00
Christopher Michael e4aae7301f Add x & y to Output buffer.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
2013-02-19 10:18:02 -03:00
Christopher Michael ef76f3caab Remove blank line.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
2013-02-19 10:18:02 -03:00
Christopher Michael f541b8af90 Add edges struct to engine information.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
2013-02-19 10:18:02 -03:00
Christopher Michael 886768b1e1 Remove old shm information from the private data structure.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
2013-02-19 10:18:02 -03:00
Christopher Michael 9e6b41e629 Fix formatting.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
2013-02-19 10:18:02 -03:00
Christopher Michael 5526a29417 Remove extra whitespace.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
2013-02-19 10:18:01 -03:00
Daniel Willmann c0fc75b78d xpm_loader: Make tok larger so strcpy will fit
Found through klocwork. It seems there are more potential issues here.

Signed-off-by: Daniel Willmann <d.willmann@samsung.com>
2013-02-18 12:18:33 +00:00
Ivan Briano 61b8e2aefe More removal of \r 2013-02-17 14:53:25 -03:00
Ivan Briano d0c0a21240 Remove \r from end of line.
No functional changes here.
2013-02-17 14:30:11 -03:00
Paulo C. A. Cavalcanti Jr 04e660c5c7 evas: Introduce pixel_alpha_get()
The _pixel_alpha_get() function used in evas_object_image_is_inside won't
work with engines other than software - since it relies on engine data
being *always* RGBA_Image * - which is wrong for OpenGL backend that uses
Evas_GL_Image * for "engine_data" pointer.
2013-02-16 11:14:40 +01:00
Cedric BAIL 74aa601afc evas: improve portability of bmp loader.
On system like 64bits windows it is not a guaranty that a
sizeof (long) == sizeof (void*), we are better using the right type.
This generate a warning that we could have seen with just cross compilation.
2013-02-16 10:36:41 +01:00
Jiyoun Park c5a8a6b5ff Add infrastructure to handle message between ecore and parent ecore in Ecore_Evas
I add new example related with this. (ecore_evas_extn_socket & plug example)
ecore extn use this infrasturcture, server app and client app can communicate each other
later, this can be used to contorl access message


SVN revision: 83942
2013-02-15 09:32:40 +00:00
Carsten Haitzler f4da5922d3 swapper -> use buf pitch, not swp->w * 4 ... if we have a buf and
pitch. :) (tnks wonsik!)



SVN revision: 83889
2013-02-14 10:39:59 +00:00
Carsten Haitzler 4452fad7a3 fix up apparent problem with egl context and sizing/rotation... need
to test more though.



SVN revision: 83878
2013-02-14 03:27:23 +00:00
Stefan Schmidt a9b1e78916 efl/evas: Remove stray ; from evas_gl_core.
SVN revision: 83830
2013-02-11 15:03:56 +00:00
Stefan Schmidt 62a20b6e95 efl/evas_w32/engine: Add interface name and version.
Again they are already used but nobody did bother to declare or define them.
I have choosen the name with what came into my head first and version seem
to be 1 in other engines, too. Evas engine gods please review.

SVN revision: 83826
2013-02-11 13:39:16 +00:00
Stefan Schmidt 4ae1c0d1cb efl/evas_w32/engine: Add and declare a variable.
iface is already be used in the code but not available as variable at all.

*spank, spank*

SVN revision: 83825
2013-02-11 13:27:20 +00:00
Stefan Schmidt 6ef1fc791a efl/evas_w32/engine: Fix typo to have a functional #endif
SVN revision: 83824
2013-02-11 13:18:23 +00:00
Stefan Schmidt c24aaf9bd0 efl/emotion: Fix memory leak in gstreamer_ecore_x_check().
The suported atom gets allocated in the ecore_x call but we leave
the scope here without freeing the resource again. Free it when
going out of scope.

SVN revision: 83790
2013-02-08 15:49:56 +00:00
Daniel Willmann 139737247d Refactor evas_sw_xlib_outbuf to allocate less in case of rotations.
Previously whenever evas_software_xlib_outbuf_new_region_for_update was
called for images that were rotated (!= 0) we created a new
evas_cache_image. This resulted in (quite severe) memory spikes whenever
an image was rotated.

Now we try to get the original image first and only if that fails allocate
a new one.

TDevilhorns is already working on the port to the xcb backend.

Signed-off-by: Daniel Willmann <d.willmann@samsung.com>
Signed-off-by: Stefan Schmidt <s.schmidt@samsung.com>

SVN revision: 83789
2013-02-08 15:49:50 +00:00
Carsten Haitzler dbaf2b8fde and handle rotated swapbuf if bufsz doesnt match... PROPERLY.
SVN revision: 83781
2013-02-08 12:22:04 +00:00
Rafael Antognolli d74b652b29 evas/wayland_egl: Fix Evas pointer assignment.
Don't assign the public data to an Evas *.

SVN revision: 83778
2013-02-08 11:50:06 +00:00
Carsten Haitzler 5a80685803 swapper infra work - handle if buffer sizes dont match... :)
SVN revision: 83764
2013-02-08 07:23:31 +00:00
Rafael Antognolli 74cb944f25 ecore/wayland: Add window state changed callback to Ecore_Wl_Window.
This will allow it to report to Ecore_Evas that the window has changed
its state. Elementary uses this to update its maximized/fullscreen/other
window states internal information.

The code that uses this callback is also added to Ecore_Evas.

SVN revision: 83625
2013-02-05 12:19:40 +00:00
Rafael Antognolli cc2b953b65 ecore_evas/wayland_egl: Fix window resize when using meta+middle click.
It's needed to set the edge where the middle click is being done in
order to allow Evas know which direction the resize should take.

SVN revision: 83610
2013-02-04 18:40:14 +00:00
Christopher Michael c951fb5a2d Use palette mode none for conversion.
Comment out idle_flush (for now) as it is causing some segfaults with
elm_win_util_standard_add for some strange reason.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83436
2013-01-29 14:40:21 +00:00
Carsten Haitzler 6bf7dd8775 also check priv->o before..
SVN revision: 83428
2013-01-29 10:45:31 +00:00
Carsten Haitzler c73bf6fd00 emotion - be gooder. (use DEL callback not fREE and .. check priv->o!
SVN revision: 83427
2013-01-29 10:44:44 +00:00
Rafael Antognolli c46b096c78 ecore_evas/wayland: Merge code from egl and shm engines into common.
Since the render code on both engines is using the frame callback, let's
merge it to avoid code duplication.

SVN revision: 83390
2013-01-28 20:28:19 +00:00
Rafael Antognolli 9afa66d722 evas/wayland_egl: Add do_async flag to this engine, but don't use it.
SVN revision: 83389
2013-01-28 20:00:03 +00:00
Rafael Antognolli f75b01b545 ecore_evas/wayland: Add _ecore_evas_wl_common_render_updates back.
It shouldn't be removed, since it's still being used.

SVN revision: 83388
2013-01-28 19:45:41 +00:00
Rafael Antognolli 1210067fbe ecore_evas/wayland_egl: Only render if last frame has been presented.
This avoids blocking in eglSwapBuffers and has the side effect of
avoiding doing unnecessary work - painting where a frame won't be
presented.

We do this by using the event that the wayland compositor will send us
to tell us that the frame has been presented. Due to the fact that
evas_render_updates() could do no work and not cause a eglSwapBuffers we
must always have a frame callback listener setup.

Original patch by: Rob Bradford <rob@linux.intel.com>

(I just adjusted the patch to the single efl tree)

SVN revision: 83387
2013-01-28 19:13:46 +00:00
Daniel Willmann d2f926a449 edje-multisense: Get rid of the old files
Signed-off-by: Daniel Willmann <d.willmann@samsung.com>

SVN revision: 83382
2013-01-28 15:15:37 +00:00
Christopher Michael 5df48569c8 Free the swapper when we remove the Outbuf.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83378
2013-01-28 08:31:22 +00:00
Carsten Haitzler a8b7d8551d oops - forgot to free swapper on swapbuf free! :)
SVN revision: 83377
2013-01-28 04:00:36 +00:00