Commit Graph

1762 Commits

Author SHA1 Message Date
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 c4e9d29441 evas-wayland-shm: Minimize race condition when finding free leaf
Summary: This fixes a possible race condition that could happen when
using more than 2 buffers. Instead of searching for a free buffer in
various places, find a free buffer when evas requests the buffer data
and save that free buffer as the 'current buffer'

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-29 11:49:49 -04:00
Chris Michael a3969b4d3a evas-wayland-shm: Use size of buffer when caching
Summary: evas_cache and evas_cache2 are expecting the width of the
buffer when caching so just use that directly rather than calculating
bpl.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-29 11:14:38 -04:00
Mun, Gwan-gyeong 648091a1ad evas-drm: Fix evas-gl_drm picking incorrect resolution/mode for outputs
Summary:
Fix evas-gl_drm picking incorrect resolution/mode for outputs
   reference,  commit: d3a207bf9a

Reviewers: zmike, cedric, raster, gwanglim, devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2447
2015-04-29 08:49:06 -04:00
Cedric BAIL a9911f5fd8 emotion: trying to fix gstreamer backend build on Windows. 2015-04-28 11:37:11 +02:00
Cedric BAIL f93cc6fe3b evas: fix issue of using two times the same image with different orient in software.
Fixing T2338
2015-04-27 19:18:04 +02:00
Cedric BAIL d22155487b evas: get rid of clobbered warning. 2015-04-25 19:59:18 +02:00
Cedric BAIL 1b91101966 evas: fix usage of the same ressource in the GL backend with orient.
When we set orient we actually need to return a new image or it will confuse
evas a lot.
2015-04-25 10:15:13 +02:00
Jean-Philippe Andre 52c7cbddf5 Evas GL common: Avoid excessive pipe flushes in image free
This should boost performance a little bit when an image is
just unref'ed but not deleted (thus doesn't need a pipe flush).
2015-04-24 11:12:30 +09:00
Jean-Philippe Andre 1ffe82fb7c Evas GL masking: Improve performance with scaled images
The GL scaled images is a fast path for masking where
the shader scales masks on the fly.
This optimization actually fixes some issues where the current
texture binding was incorrect.
2015-04-24 11:12:30 +09:00
kabeer khan ce45d443c1 evas: fix rotation and flipping of image in gl engine
Summary:
fix rotation(90, 180, 270) and flipping(vertical, horizontal, transpose,
transverse) of evas image in gl engine backend.

@fix

T2338

Signed-off-by: kabeer khan <kabeer.khan@samsung.com>

Reviewers: cedric, jpeg

Subscribers: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-04-22 15:10:19 +02:00
Tom Hacohen 5b5b7113b7 Ecore_evas wayland: remove double parenthesis around comparison.
Double praenthesis should be used around assignments, not comparisons.
Doing this correctly all aronud lets the compiler warn us about potential
mistakes.
2015-04-22 13:13:21 +01:00
Chris Michael 92fc46cc16 ecore-evas-drm: Fix issue of fullscreen surfaces not getting focus on show
Summary: This fixed T2349 where elm apps would not get initial focus
on show when running via drm. This also addresses the issue of always
sending the state_change event even when not an override.

NB: Thanks to bu5hm4n for reporting ... and even providing a potential fix ;)

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-21 13:44:36 -04:00
Marcel Hollerbach c77812d8b0 ecore_imf: init wayland before using wayland calls.
Summary:
ecore_imf: init wayland if wayland env var exists

Otherwise ecore-wl functions could return some invalid values. The env var check to avoid error messages.

@fix

Reviewers: Sergeant_Whitespace, devilhorns

Reviewed By: Sergeant_Whitespace

Subscribers: Sergeant_Whitespace, cedric

Differential Revision: https://phab.enlightenment.org/D2253
2015-04-21 10:06:39 -04:00
Jean-Philippe Andre 2e49f60f61 Evas 3d: Fix clang warning
Unused function
2015-04-21 21:08:30 +09:00
Jean-Philippe Andre 8e8444bf35 Evas GL common: Fix clang warnings
Mooooarrr!
2015-04-21 20:11:02 +09:00
Jean-Philippe Andre c98a8eb70a Evas 3d: Fix clang warnings 2015-04-21 20:11:02 +09:00
Jean-Philippe Andre 64ca10bcf6 Evas DDS: Fix clang warning
This one was almost a real catch by clang. Too bad we don't actually
support DXT3.
2015-04-21 20:11:02 +09:00
Jean-Philippe Andre 20dac6d27a Evas: Fix clang warning in generated shaders file
Use const char a[] instead of const char const a[].
2015-04-21 20:11:01 +09:00
Carsten Haitzler 39bbfc3030 ecore_evas extn module - fix coverity complaint
coverity is right. CID 1295139 fixed here. tmpstr_free on sometimes
uninitialized local var.
2015-04-21 10:19:28 +09:00
Chris Michael ea77578ad6 ecore-evas-extn: Use eina_mkstemp in place of mkstemp
Summary: This fixes Coverity CID1039610 'calling mkstemp without
securely setting umask first'. Since we have eina_mkstemp which
already handles creating temporary files in the proper directory,
let's use it.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-20 13:23:47 -04:00
Chris Michael c66275c99b ecore-evas-x: Fix issue of wrong interface function pointer being set
Summary: This fixes Coverity CID1267461 where the pointer to the
interface shape_input_reset function was being assigned multiple
times. It looks like this is just a copy/paste error.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-20 12:58:42 -04:00
Carsten Haitzler 425de99145 emotion gst1 module - remove printf
this debugging printf seems to have been left around - remove it so we
don't get unexpected noise in gst playback
2015-04-20 18:34:58 +09:00
Carsten Haitzler 6458ca32bc emotion - gst1 module - handle long standing bad map/unmap of gst buf
this fixes a pending XXX where we didnt keep the buffer mapped as long
as the evas image object pointed to the video pixel data. this fixes
this along with less over-zealous refinf to make things more obvious
(now last_buffer actualyl really matters and if it was mapped and
refed).

@fix
2015-04-20 18:34:58 +09:00
Jean-Philippe Andre 1804d460ee Evas: Fix memory leak
Fixes CID 1293000
2015-04-20 17:34:15 +09:00
Jean-Philippe Andre 6e587b5479 Evas GL_X11: Fix memory leak 2015-04-20 16:36:49 +09:00
Cedric BAIL c006f64f79 evas: more fix for include order in an attempt to fix Windows build. 2015-04-17 11:54:11 +02:00
Jaeun Choi a09fccd88b evas: restore the value of "do_region" in jpeg loader as EINA_TRUE
this was an unwanted change from 1ab8cc75c4

@fix
2015-04-17 17:09:51 +09:00
Chris Michael 46a04d8803 evas-drm: Mark the Ecore_Drm_Fb as complete when we get the page flip event.
Summary: This fixes Ticket T2289 where the mouse pointer was leaving a
trail while moving. This was caused due to not waiting for the page
flip to complete

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-16 10:25:46 -04:00
Chris Michael eff4a0abe7 evas-drm: Handle render mode for 4 buffers
Summary: If we are using 4 buffers, we should be returning
MODE_QUADRUPLE for render_mode_get function

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-16 10:25:46 -04:00
Mike Blumenkrantz 1aa26c644f evas sw: fix compile warning
modules/evas/engines/software_generic/ector_surface.c: In function '_ector_cairo_software_surface_surface_set':
modules/evas/engines/software_generic/ector_surface.c:89:4: warning: implicit declaration of function 'evas_common_cpu_end_opt' [-Wimplicit-function-declaration]
    evas_common_cpu_end_opt();
    ^
2015-04-14 21:09:27 -04:00
Cedric BAIL 74d27d6a27 evas: split ector surface from gl generic backend in an attempt to fix windows build. 2015-04-14 21:40:32 +02:00
Cedric BAIL 2260b9e328 evas: split software backend use of ector surface in an attempt to fix windows build. 2015-04-14 21:40:32 +02:00
Jean-Philippe Andre 9b6db6b3b5 Evas GL: Add some safety code
Set some pointers to NULL to avoid invalid accesses after free.
Move the similar condition for sfc after the make_current check.
2015-04-14 21:19:13 +09:00
Jean-Philippe Andre 5e832dfa76 Evas GL: Disable direct rendering if there is a map
The engine itself (gl_generic) will detect whether the target
surface (canvas where to draw the gl stuff) is the window
backbuffer or not.
2015-04-14 21:19:13 +09:00
Jean-Philippe Andre c2f5d41f39 Evas GL generic: Fix log domain
The log domain EvasGL is used by evas_gl_common and initialized
only when an Evas GL surface is created.
2015-04-14 17:29:59 +09:00
Jean-Philippe Andre 404ecdd8d7 Evas GL common: Fix RGB+A textures
Since the shaders system rewrite, RGB+A (used for ETC1+Alpha encoding)
did not work anymore.
2015-04-14 16:37:12 +09:00
Jean-Philippe Andre 99347e9178 Evas GL common: Fix texture preload with RGB+Alpha 2015-04-14 16:37:12 +09:00
Jean-Philippe Andre 78cd7336aa Evas GL masking: Skip fast path if colorspace is not supported
Masking in GL assumes only one texture to sample from. This means
RGB+Alpha and YUV types are not supported. While it would
make sense for RGB+Alpha, it doesn't make any sense for YUV (because
masks are alpha planes and YUV is opaque...)
2015-04-14 16:37:12 +09:00
Jean-Philippe Andre be40389bea Evas GL common: Fix masking of maps based on RGB+A textures
That's like a case that will never happen.
Apply a map on an image loaded from an ETC1_ALPHA image. Oh, and
also add a mask on top of that.
2015-04-14 16:37:12 +09:00
Jean-Philippe Andre c646b0ace5 Evas GL common: Properly disable texuv3 when only texuv2 is used
Yet another vertex array fix (GL crash).
2015-04-13 17:43:52 +09:00
Jean-Philippe Andre 0c7857024b Evas GL common: Enable vertex arrays only when requested
This should fix Dave's crash with the GL engine.

Indeed the pointer to the color array is passed directly
to the driver, without memcpy. Then, during glDrawArrays, the
driver will try to address it... but it could as well be NULL or
invalid. So, crashes would occur.

Also mark use_vertex as always true. We keep this field only for the
alloc() function.
2015-04-13 17:43:42 +09:00
Jean-Philippe Andre 21c91928d2 Evas GL common: Fix size of vertices data buffer
This actually has more chances of fixing Dave's GL crash.
2015-04-13 13:51:53 +09:00
Jean-Philippe Andre be45a45a26 Evas GL common: Only push color VBO for map when required
Since the new shader selection system is able to check the
value of nomul, we can avoid pushing color when they are not
required (color is opaque white).

Hopefully this will fix Dave's crash (mayyyyybe...)
2015-04-13 11:40:04 +09:00
Chris Michael 1438a980dd evas-software-x11: Fix dereference before null check(s)
Summary: This fixes Coverity CID1270028, CID1270029, CID1270030 where
variables RGBA_Image and Native where dereferencing function input
paramaters Before null checking them.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-12 21:13:18 -04:00
Chris Michael 2a7640cb4e evas-gl-x11: Fix dereference before null check
Summary: This fixes Coverity CID1293519 where einfo was being used
Before it was being null checked (which Could have caused a crash if
in fact einfo Was NULL).

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-12 21:13:18 -04:00
Chris Michael 3b4902e17e evas: Fix CID1293000 (resource leak)
Summary: This fixes a resource leak of eina_array in
eng_ector_renderer_draw which would return without freeing an
allocated array.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-12 21:13:18 -04:00
Carsten Haitzler f022c23166 evas - gl common engine - dont complain on every surace opt fetch
this causes a complint every single frame - not a good idea.
2015-04-12 11:36:28 +09:00
Chris Michael 9349c44537 evas-drm: Add back in the r, g, b masks for conversion
Summary: This is a big oopsie !! Should not have been removed during
previous commit.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-10 11:09:51 +02:00
Chris Michael e2e3e77010 evas-drm: Remove evas_drm file from build order
Summary: The Evas Drm engine makes use of Ecore_Drm functions now so
we no longer need private versions of the same code

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-04-10 11:09:51 +02:00