Commit Graph

32152 Commits

Author SHA1 Message Date
Tom Hacohen f7f7fc69cf Eo: Split object checking from class checking and simplify.
The check there was wrong for objects anyway, and was ultra conservative
for classes.
2015-11-09 11:43:04 +00:00
Tom Hacohen f7196513d0 Eo callback call: Remove redundant safety checks.
This is already being checked by eo_do, no need to duplicate this here.
2015-11-09 11:43:04 +00:00
Tom Hacohen 5661f96c05 Eo callback call: Remove redundant refcounting.
We already get refcounting from eo_do, no need to have more refcounting here.
2015-11-09 11:43:04 +00:00
Tom Hacohen 0908422084 Eo callback call: Simplify callback desc matching code.
As part of this change, we also error on adding invalid callbacks.
2015-11-09 11:43:04 +00:00
Tom Hacohen 9d68b14313 Eo callbacks: simplify callback call code a bit.
We don't need this check because it's already checked in the match function.
2015-11-09 11:43:04 +00:00
Tom Hacohen 4bf0f6455d Eo benchmarks: Add basic callbacks benchmarks. 2015-11-09 11:43:04 +00:00
Tom Hacohen 862372ed23 Eo benchmarks: Improve benchmarks.
Add more cases, and tune the number of times we test.
2015-11-09 11:43:04 +00:00
Tom Hacohen 9f6ec045a7 Eo benchmark: Fix super benchmark. 2015-11-09 11:43:04 +00:00
Tom Hacohen 680388472e Eo: Reduce call stack memory footprint.
We don't really need the eo_id most of the time, and when we do, it's
very easy to get it. It's better if we just don't save the eo_id on the
stack, and just save if it's an object or a class instead.
2015-11-09 11:43:04 +00:00
Tom Hacohen adbc534703 Eo: Remove useless optimisation that is more harm than good.
It seems that the idea behind that optimisation, is to save object data
fetching when calling functions implemented by the object's class inside
functions implemented by the object's class. This should be rare enough
not to worth the upkeep, memory reads and memory writes, especially
since for all cases apart of mixins (for which this optimisation won't
work for anyway), the upkeep is more costly than fetching the data
again.
2015-11-09 11:43:04 +00:00
Tom Hacohen 748b90d295 Eo: use correct mask when checking if an id is a class 2015-11-09 11:43:04 +00:00
Tom Hacohen 44ca3a3669 Eo: Optimise object data fetching a bit more.
Removed safety check that is not necessary. This may seem small,
but this in addition to the previous commit, account for around
2% of CPU usage.
2015-11-09 11:43:04 +00:00
Tom Hacohen 1ed0edfb9e Eo: Optimise object data fetching (minor).
Pre-calculate object data offset for improved performance.
2015-11-09 11:43:04 +00:00
Stefan Schmidt 5e870cd388 configure: Switch to dev mode again. Merge window for 1.17 is open now 2015-11-09 11:45:24 +01:00
Stefan Schmidt 37a1e0112d release: Update NEWS and bump version for 1.16.0 release 2015-11-09 10:46:03 +01:00
Stefan Schmidt 76f86e355a po: update po files before release 2015-11-09 10:44:06 +01:00
Jean-Philippe Andre 16195d3100 doc: Deprecate filter reference page and link to the wiki 2015-11-09 16:21:45 +09:00
Jean-Philippe Andre cb2530d921 doc: Fixup EDC doc for Evas 3D stuff
Use same paragraph title format
2015-11-09 16:11:35 +09:00
Jean-Philippe Andre b52e9202cc doc: Add EDC doc for desc.proxy, fix for desc.fill 2015-11-09 16:11:34 +09:00
Cedric BAIL be99d11662 ecore: remove useless printf in Win32 main loop. 2015-11-06 10:53:29 -08:00
Vincent Torri a1243410a7 eina/efreet: open file with binary file on Windows
@fix

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-06 10:53:29 -08:00
Chris Michael ebf6d95ed6 ecore-drm: Remove unused function
As we no longer have an fd handler to listen on the drm fd, we don't
need this function anymore

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-05 09:37:48 -05:00
Chris Michael ff8b141f87 ecore-drm: Fix issue of hanging in read()
Summary: As we already call drmHandleEvent when we pageflip, we don't
need to be using an fd handler to catch them. This should fix T2791

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-05 09:01:36 -05:00
Chris Michael ae7a243c99 ecore-drm: Fix issue of duplicate page flips
Summary: If we already have a pending pageflip scheduled for a given
framebuffer, don't reschedule another one. This also includes a minor
fix when mmap'ing the framebuffer (previously was also mapped
PROT_READ).

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-05 09:01:36 -05:00
Carsten Haitzler 483cec924b evas - patch in one more if check for obj layer to avoid shutdown crash
this should fix T2715
2015-11-05 09:41:35 +09:00
Mike Blumenkrantz 6b1af3c55a evas gl-x11: add missing EVAS_NATIVE_SURFACE_WL support
copy/pasted from other engines, only functional with gles+wayland,
A Thoroughly Tested Calculated Risk™

ref 1dbecbb676
2015-11-04 14:14:16 -05:00
Chris Michael f77ba645d5 ecore-drm: Check return value of drmHandleEvent and cleanup
Summary: drmHandleEvent will return 0 on success, or -1 on error. We
should trap for the error case so that we can cleanup any allocated
callback structures.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-04 12:44:29 -05:00
Chris Michael 962059dd0a evas-gl-drm: Implement eglSetDamageRegionKHR
Summary: In efforts to reduce tearing in the gl_drm engine, implement
support for eglSetDamageRegionKHR to mark parts of a surface as being
damaged.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-04 11:20:39 -05:00
Chris Michael b2785f01c5 evas-gl-drm: Find symlink for eglSetDamageRegionKHR
In efforts to reduce tearing in the gl_drm engine, find and link to
the eglSetDamageRegionKHR function so we can mark damaged regions of a
surface

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-04 11:18:25 -05:00
Chris Michael b8ebd5b356 ecore-evas-gl-drm: Don't create software dumb buffers when using gl
Summary: If we are rendering using gl_drm, then we don't need to be
creating extra software dumb buffers.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-04 09:43:35 -05:00
Chris Michael 49d9b3d303 ecore-drm: Don't always check fb size against dumb buffer
Summary: If we are running using gl_drm, then we don't need to create
software dumb buffers on the drm device. Since we may not have the
dumb buffers (only used in software rendering), then we should not
always be checking the framebuffer size against the dumb buffer size.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-04 09:40:54 -05:00
Chris Michael f55d0a3d07 evas-gl-drm: Set Outbuf vsync according to engine
The engine setup code already checks if we are disabling vsync
(defaults to on), so we should be setting the Outbuf vsync according
to what the engine info has

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-04 09:24:18 -05:00
Jean-Philippe Andre a2b64d9772 Evas: minor whitespace and debug changes 2015-11-04 15:15:05 +09:00
Vitalii Vorobiov aefcb11444 Evas Text: avoid SIGSEV while ellipsis recalculation
Summary:
Fix Segmentation Fault when TEXT part getting resized and when it has
some params (for example ellipsis).

Fix T2640
@fix

Test Plan: Refer to T2640

Reviewers: raster, Hermet, seoz, herdsman, cedric, reutskiy.v.v, NikaWhite

Subscribers: stefan_schmidt, tasn, cedric

Maniphest Tasks: T2640

Differential Revision: https://phab.enlightenment.org/D2944
2015-11-04 13:58:59 +09:00
Daniel Kolesa 4ce59a4f08 eolian: fix function parameter memory leak with value 2015-11-03 13:40:17 +00:00
Stefan Schmidt c74e03fda4 tests/ecore_con: check saved env variables before setting them again.
We see segfaults on Jenkins with these two test cases. Better check
before setting them as we had similar problems before on this setup
as XDG_RUNTIME_DIR might never be set.
2015-11-03 12:50:50 +01:00
Cedric BAIL ae5e2c8284 emile/ecore_con: drop SSLv3 support due to security issue.
SSLv3 has been compromised a year ago by what is known as POODLE
(https://en.wikipedia.org/wiki/POODLE). Every major browser have now
dropped support for SSLv3 and distribution are starting to do so also.
It is a good timing for us to do so, especially as it breaks build on
some distribution.
2015-11-02 14:22:42 -08:00
Mike Blumenkrantz 99d0f03c6f evas gl_drm: don't deref null ptr on output free 2015-11-02 16:21:56 -05:00
Chris Michael 2469106831 evas-wayland-egl: Add missing include header for gl_common
@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-02 16:15:21 -05:00
Chris Michael 1dbecbb676 evas-wayland-egl: Fix missing support for EVAS_NATIVE_SURFACE_WL
Summary: Support for using EVAS_NATIVE_SURFACE_WL was missing/incomplete in the
wayland_egl engine. This commit addresses that issue so that now the
wayland_egl engine can support both EVAS_NATIVE_SURFACE_OPENGL and
EVAS_NATIVE_SURFACE_WL.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-02 16:08:27 -05:00
pierre lamot c3f40bd0f9 ecore_cocoa: prevent mouse event loss when clicking in titlebar
fix
2015-11-02 20:15:59 +01:00
Chris Michael 0c9011d9e0 evas-gl-drm: Fix issue of gl_drm engine not working
Summary: With linux kernels >= 4.2.x, the gl_drm engine was not
functional. This is due to the egl config returning an improper config
which did not match the expected pixel format. This commit fixes that
issue and gl_drm evas engine works again. Should fix ticket T2807

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-02 09:30:30 -05:00
Chris Michael 444926923f ecore-evas-drm: Use GBM_FORMAT_XRGB8888 when creating new canvas
Summary: With linux kernels >= 4.2.x, we need to use
GBM_FORMAT_XRGB8888 when creating a new canvas else we end up with a
format mismatch when trying to add the framebuffer

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-02 09:30:19 -05:00
Jean-Philippe Andre 6e96d75c76 Evas: Remove dead code (cached surfaces)
While cached surfaces is a topic we're discussing recently,
this code is dead right now, and we will have to redesign the
buffer caching better to handle proxies, maps, smart objects, etc...
2015-11-02 16:22:19 +09:00
Jean-Philippe Andre 0a5b28eba8 tests: Fix build warning 2015-11-02 15:08:05 +09:00
Jean-Philippe Andre b4fc15311c Evas render: Fix 'no_render' when object is proxy source
When the no_render flag was set on a proxy source, the object would
not be visible, but it would also not render inside the proxy surface,
which completely beats the purpose of this flag. This patch makes
the objects render inside a proxy surface.
2015-11-02 13:40:00 +09:00
Jean-Philippe Andre 4da3e70301 ecore_evas_convert: Improve cmdline help a bit 2015-11-02 13:39:28 +09:00
Jaehyun Cho 39f154f8ca ecore_file: Fix ecore_file_file_get function on Windows.
On Windows, both backslash and slash can be used as file path
separators. Therefore, it is fixed to consider backslash as a file path
separator as well on Windows.

@fix
2015-11-02 10:32:10 +09:00
Carsten Haitzler bd7ccd45b6 efreet - fix efreetd to not exit on $home being in extra app dirs
if a client added $home in the efreet extra desktops dirs, then
efreetd would detect and nuke cache, exit, causing a restart cycle
forever. this makes efreet simply ignore the errant dir so it can keep
working.

@fix
2015-11-02 10:11:53 +09:00
Carsten Haitzler 14d5fde2d7 ecore imf - fix modules that are x11 based to only load in x11 and in wl
use env vars to determine module init for ecore-imf so you don't have
things like e locking up trying to init scim when running in wl mode.
do the same for ibus and xim modules too. do the inverse for wayland
imf module but here add also the check for ELM_DISPLAY that wasn't
there (like it is now in the other modules) so it is only initted on
wayland.

@fix
2015-10-31 11:40:05 +09:00