Commit Graph

87 Commits

Author SHA1 Message Date
Minkyoung Kim f10672dd74 evas : remove native.func.data variable and data argument of native calblacks.
Summary:
Evas Image should be independent of render engine.
So remove native.func.data member of RGBA_Image, Evas_GL_Image struct.
And remove data argument,too.

Test Plan: Local test, Tizen3.0 mobile, Desktop englitenment

Reviewers: jpeg, spacegrapher, wonsik

Subscribers: cedric, dkdk

Differential Revision: https://phab.enlightenment.org/D3850
2016-04-01 12:09:06 +09:00
Chris Michael 6418810307 evas-wayland-shm: Override image_native init and shutdown functions
A previous commit added these functions so we can test if native image
is supported, however that commit did not actually override this
functions (evas api override). This small patch simply does that.

ref 20b4d9dd6a

@fix

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-03-18 08:53:35 -04:00
Jean-Philippe Andre 20b4d9dd6a Evas engines: Add internal functions for native images
- image_native_init
- image_native_shutdown

init() will be used to test whether the engine supports a
certain type of native image.

Note: Native image support is very much dependent on the engine,
and some stuff like opengl should work everywhere (even in sw
with osmesa) but that's not the case.
2016-03-15 11:11:59 +09:00
Chris Michael fecdb54674 evas-wayland-shm: Fix compiler warning about incompatible pointer type
This patch fixes some compiler warnings about assignment from
incompatible pointer type when getting image data from evas_cache. The
simple fix is to cast the return value to RGBA_Image.

Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-02-05 08:41:35 -05:00
Wonsik Jung 02d724e716 evas: add native surface with TBM Surface for wayland_shm engine
Summary: @feature  add evas object image's native surface with TBM surface for wayland_shm

Test Plan: Making tbm test sample and testing on Tizen Device/Emulator

Reviewers: raster, cedric, spacegrapher, jpeg

Reviewed By: spacegrapher

Subscribers: mer.kim, JoogabYun, scholb.kim, dkdk

Differential Revision: https://phab.enlightenment.org/D3618

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-02-05 07:50:25 +01:00
Jean-Philippe Andre 3593186a60 wayland: Add support for TBM buffers
This is a follow up on the previous commits.
The original patch on Phab was split in 3 parts (factorization,
fix & this one).

Adds support to both SHM and EGL.

See D3501.
2016-01-05 17:08:22 +09:00
Wonsik Jung 7db9613e8c Evas_Engine: add TBM surface and clean up Native Struct
Summary:
Add TBM surface in wayland and clean up Native struct on Evas Engine.
Previous TBM surface for evas_object_image's native_surface_set is only in Evas X11 backend.
This patch has the code for wayland backend.
In addition, evas_native_tbm.c is moved to software_generic. Becuase this file is common.
And, Native in Evas_Engine is clean-up.

@feature

Test Plan:
TBM surface is tested with spacegrapher's test app(tbm.c) in Tizen Device.
Pixmap surface is tested in ubuntu with same test app.
EvasGL is tested with elementary_test.

Reviewers: jpeg, spacegrapher, raster, cedric

Subscribers: dkdk, scholb.kim, JoogabYun

Differential Revision: https://phab.enlightenment.org/D3501
2016-01-05 17:01:45 +09:00
Derek Foreman ddae80af1d wayland: use wl_surface.damage_buffer if available
Summary:
wl_surface.damage_buffer() takes surface damage in buffer co-ordinates.

Right now since we don't use wayland's scaling, transforms, or viewports
it's exactly the same as wl_surface.damage().  In the future if we start
using those features it's much easier to do so with damage_buffer().

Reviewers: zmike, devilhorns

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3457
2015-12-28 09:09:04 -05:00
Chris Michael bf1eef174b evas-wayland-shm: Fix to add support for MERGE_MODE Smart
Summary: Seems we were never setting any merge_mode for the
wayland-shm engine. This fix implements setting merge_mode

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-10-07 11:01:21 -04:00
Chris Michael b1bb88b8f2 evas-wayland-shm: Modify existing engine functions to take a wl_display parameter
Summary: These functions need to have an additional wl_display
parameter so that we can set the field inside the Surface structure

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-30 15:09:55 -04:00
Derek Foreman ebea504cbc wayland-shm: rename _evas_outbuf_swapmode_get() to _evas_outbuf_swap_mode_get()
Summary: Everyone else calls it swap_mode, let's be trendy.

Reviewers: zmike, devilhorns

Reviewed By: devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2891
2015-07-30 11:45:26 -04:00
Chris Michael 7c1da6cdfa evas-wayland-shm: Update software_generic render engine size on output resize
Summary: As we override the software_generic function for
eng_output_resize, so we can handle resize edges, we should also be
updating the software_generic's render engine size here because the
function for software_generic->output_resize never gets called.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-29 14:23:24 -04:00
Chris Michael 3ebe41af18 evas-wayland-shm: Refactor Evas Wayland Shm Engine (Fix T2201)
Summary: This patch set fixes the issue of Evas wayland shm engine
causing crashes when resizing efl apps in the E wayland compositor. It
refactors the evas engine to wait for release events on buffers, and
hooks into frame callbacks so that release events will get triggered
at the appropriate time.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-03-17 15:49:09 -04:00
Cedric BAIL 93333ede15 evas: refactor shutdown. 2015-02-23 11:35:29 +01:00
Cedric BAIL 552a38cde5 evas: refactor software engine initialisation. 2015-02-20 15:04:52 +01:00
Cedric BAIL 289b3691b0 evas: add more infrastructure to software_generic backend to be ready for GL_X11 migration. 2014-07-04 15:11:22 +02:00
Cedric BAIL 0fdf8fab3a evas: simplify Wayland_SHM backend to use software generic infrastructure. 2014-07-04 15:11:22 +02:00
Tom Hacohen 7f3a44894b Evas canvas eolian: Fix namespace and class name for the evas canvas. 2014-06-30 17:47:06 +01:00
Chris Michael f940f11a9b Fix copy/paste issue.
Use proper width & height for the new tilebuffer.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-29 09:06:53 +01:00
Chris Michael ce716ff052 Avoid potential memleak on rotation of tilebuf.
Port of 70f443d8a8 to wayland_shm

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-29 08:21:36 +01:00
Chris Michael a9853f96f7 Port 1f82fbe14d to wayland shm engine
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-29 08:11:16 +01:00
Sebastian Dransfeld 51023d2d4f evas: Keep sane name for public header
Evas_Common.h should be used for the public header, and rather rename
evas_common.h internal header to another name.

Sa:
Evas_Common_Header.h -> Evas_Common.h
evas_common.h -> evas_common_private.h

Shouldn't have both Evas_Common.h and evas_common.h because of case
insensitive filesystems.
2013-06-20 12:53:29 +02:00
Carsten Haitzler f8c9a8d167 revert the revert... damn you git!
Revert "Revert "Efl: replace eo_data_get for objects data referencing.""

This reverts commit b64a2994b3.
2013-05-02 16:47:16 +09:00
Carsten Haitzler b64a2994b3 Revert "Efl: replace eo_data_get for objects data referencing."
This reverts commit 654a3f5f94.
2013-05-02 14:17:19 +09:00
Daniel Zaoui 654a3f5f94 Efl: replace eo_data_get for objects data referencing. 2013-05-01 10:37:08 +03:00
Chris Michael 53fd97fd08 Add missing braces
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-04-29 12:58:02 +01:00
Chris Michael 66d258d17b Be sure to set the Render_Engine's info to the new engine info.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-04-29 11:32:18 +01:00
Chris Michael 1435a48d4d Remove blank line
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-04-26 07:14:58 +01:00
Rafael Antognolli 6890a0e452 evas/wayland_shm: Fix resize to the left or top when rotated. 2013-04-25 19:58:05 -03:00
Christopher Michael ba86389448 Fix valid variable check.
When doing double/triple buffering, and we go to merge the rectangles,
if we are triple buffering then we should not use the double-buffer
rectangles as a valid check for triple-buffer rectangles.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>
2013-02-27 10:19:06 +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 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 cfbdc648d1 Add logging functions
Remove dead commented out code
Do not call wl_surface_attach if the buffer is the same as the one
already attached.

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

SVN revision: 83293
2013-01-24 12:15:07 +00:00
Christopher Michael 0e6b2ad6f7 Reset Render_Engine onebuf if it was set previously.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83286
2013-01-24 09:21:27 +00:00
Christopher Michael 313e82c680 Rename the env variable that we will check for buffering support.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83279
2013-01-24 09:21:06 +00:00
Christopher Michael fa783d8e75 Fix typo.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83276
2013-01-24 09:20:58 +00:00
Christopher Michael aed4b4e7b6 Remove included evas_outbuf.h
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83272
2013-01-24 09:20:36 +00:00
Christopher Michael ac1ecc770a Add engine output redraws next update get code.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83266
2013-01-24 09:18:19 +00:00
Christopher Michael 17225d31e8 Add merge rectangles code (borrowed from the x11 engine).
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83265
2013-01-24 09:18:15 +00:00
Christopher Michael 824971a110 Add local function prototype for mergine rectangles.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83264
2013-01-24 09:18:09 +00:00
Christopher Michael 082f2c8f83 Add engine idle flush code.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83263
2013-01-24 09:18:03 +00:00
Christopher Michael b5ac8fe948 Add engine output flush code.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83262
2013-01-24 09:17:56 +00:00
Christopher Michael a3559d4c88 Add code for engine redraws push.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83261
2013-01-24 09:17:51 +00:00
Christopher Michael 4c04c1bb54 Add engine output redraws clear code.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83260
2013-01-24 09:17:47 +00:00
Christopher Michael 866576b89b Add engine output redraws rectangle del code.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83259
2013-01-24 09:17:40 +00:00
Christopher Michael 7de14722fe Add engine output redraws rectangle add code.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83258
2013-01-24 09:17:37 +00:00
Christopher Michael 25e5af9ae6 Add engine tile size set function code.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83257
2013-01-24 09:17:34 +00:00
Christopher Michael 6eda15c183 Add eng_output_resize code.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83256
2013-01-24 09:17:30 +00:00
Christopher Michael 3dcaec35b5 Add code to the eng_output_free function to do any cleanup.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 83255
2013-01-24 09:17:26 +00:00