Summary:
When fd handler is deleted by ECORE_CALLBACK_CANCEL, _ecore_main_fdh_poll_del() is not called.
So fd still exists in epoll's event pool.
Reviewers: raster, seoz, woohyun, Hermet, cedric
Reviewed By: cedric
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D3131
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
so there is an issue that e brings out where configure events get
queued and deferred AND e ends up requesting a new size, but new size
is wrong as its read from an old event (requested size is updated) and
in the end ecore-evas doesnt request the actual new size because
current w/h is "the same" even though it isn't... bah - it's complex
and a self-feeding event issue. just doing the move/resize solves it.
@fix
Summary: A previous code change to the common code which processes
updates is relying on having the ecore_evas->draw_ok flag set in order
to process updates. This change makes sure that ee->draw_ok is in sync
with canvas visibility.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
processing updates
Summary: When processing render updates, we should be checking if the
Ecore_Evas "should be visible" property is set.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: As we loop the regions of the output buffer and accumulate
changes to post, we should be freeing the rectangles when we are done
with them.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
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>
If the filtered object (text or image object) was deleted, its
output image (cached inside the filter data) would be freed
immediately. This could cause crashes in case of async rendering.
@fix
if there is an identity signaure at the end, ONLY check it if it looks
like a real one (correct magic number, cert and sig size fields are
sane etc.). this means eet opens dont fail for files that may have
trailing garbage or padding that is not an eet identity signature.
If the textblock object was not visible in the main canvas, but
still needs to be rendered in a proxy surface, then _relayout may
not have been called. This forces generation of paragraphs based on
the current geometry.
This patch is ugly. I know. This is evas render :)
This is an ugly hack to fix an issue reported in D3114. I don't
understand how the proposed patch could even fix anything given
the current situation.
Test case:
- Create edje object with textblock inside
- Clip out edje object (--> all children become not visible)
- Take textblock from edje and set it as source of a proxy
- Mark proxy as source_clip
Result: Nothing visible.
Expected: Proxy should contain the textblock object, since
source_clip means we ignore the edje object's clipper, and
only care about the textblock's clipper (entire canvas).
Here's what was happening:
- During a first pass, textblock is not visible, cur->cache.clip
is calculated, marked as clip_use=1 with geom 0,0 0x0
- In a second pass, the proxy is rendered, which needs to draw
the textblock in a surface. But cache.clip was used and it was
wrong.
Solution:
- Ignore cache.clip when rendering inside a proxy. I'm pretty
sure there are other instances where cache.clip will still
be a problem.
Problem: textblock never called relayout since it was not
visible.
Conclusion: cache.clip needs to die. It's a legacy optimization
that now causes more issues than it fixes.
Summary:
Xprint has been deprecated since 2008.
It's recently (August 2015) been removed from debian.
Reviewers: zmike, devilhorns
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D3150
Summary: Disable async rendering for EGL engine as EGL is sync only.
This fixes gl_drm engine to work (in my tests) using ecore_evas
example apps.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary: This adds support for ecore_wl to handle ecore animators and
thus the egl engine can receive frame callbacks now.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
the overhead didnt show up in y tests. do show up with certain
expedite tests. hmmm. last time i messed with region code it was
actually same speed as tiler. bonus was it was fully accurate.
calculating updates has been re-rendering centers fo solid rects if
the solid rects moves/resizes with a lot of overlap and objects
underneath changes - their changes show through. this fixes that
@fix
I'm not actually sure if it's a false, because finding the possible
options is hard. Just to be safe, it's better to set buf to "" in the
else case. I'm doing this instead of initialising the variable so the
compiler/static analyser will be able to warn us if there are other code
paths that should probably set buf, but don't.
CID 1316016
@fix
Gist of it: we check, and then there's a window between our check and
the mkdir. We don't really need it anyway, because we just want to mkdir
and if it exists, just go on and do nothing.
CID 1039559
CID 1039558
@fix
Coverity was complaining about a possible integer overflow. This isn't
actually possible, but coverity has no way to know that because we were
in fact using a too big of a type. I fixed it to be the right type so
now everything should work.
CID 98384
@fix
Summary:
There were warnings after adding primitive in the same frame more then once, the check was added to avoid it
@fix
Reviewers: cedric, raster, Hermet
Subscribers: cedric, artem.popov
Differential Revision: https://phab.enlightenment.org/D3090
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
Fix children size and position calculation when padding is used
For each child size calculation padding is adjusted
but box height should include padding.
Secondly, x and y position of children should not include
the vertical and horizonatal padding as child size has already
included the given paddings.
@fix
Test Plan:
Please modify test_box.c file in
function test_box_vert2 as follows:
bx = elm_box_add(win);
evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
elm_win_resize_object_add(win, bx);
elm_box_padding_set(bx, 50, 50);
elm_box_layout_set(bx, evas_object_box_layout_flow_horizontal, NULL, NULL);
evas_object_show(bx);
Now,
1. open elementary_test
2. box
3. Box vert 2 (observe box is broken)
4. Try resizing the window (observe)
Reviewers: raster, cedric
Reviewed By: cedric
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D3049
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary: The current poll backend code uses only filename when reporting changes, while eio tests (and presumably other backends) use absolute path. This makes poll backends behavior more consistent with other backends.
Test Plan: Ran eio test suite with poll backend.
Reviewers: cedric
Reviewed By: cedric
Subscribers: cedric
Projects: #efl
Differential Revision: https://phab.enlightenment.org/D3083
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
This removes code that became dead in commit:
389c6d35f2
The commit doesn't explain why we don't shrink or grow when using mmap,
but this is how it is. No reason to keep old code there.
CID 1240224
@fix
This reverts commit 05c18876b3.
i endabled backtraces by DEFAULT because it is otherwise pretty damned
hard to get them from things like enlightenment, or on tizen apps as
running them on the cmdline and having them work is close to
impossible. yes it's noise. FIX THE ERRORS then. this commit is just
like turning off gcc etc. warnings because the code is too noisy in
compilation with them on. it's a bug. fix it. the bt lets you do that
without gdb or re-executing AGAIN with an env var and HOPING to find
the bug the next time around.
not to mention efl programming docs cover this backtrace and say it
is on by default and how to get useful info out of this. this makes
the elf docs a lie by removing what is documented as default.
@fix
changes zmike made to e's systray make e abort due to libdbus seeing
the bus name as invalid. it actually is. it's
/org/ayatana/NotificationItem/steam for example - instead of
or.whatever.blah - thuis e aborts continually if you run steam at all.
eldbus should be more crash-proof thus this adds checks so dbus fun
doesnt cause an app to crash if it happens to call incorrect dbus names.
@fix
valgrind pointed this one out. we access freed memory when we dup a
context because the context CONTAINS ptrs to things like rects for
cutouts. we didnt dup these. use the proper context dup call (and
properly ref pixman color image too). this was a random bug/crash
waiting to happen and valgrind caught it. suprising it hasnt turned up
before :/
@fix