Commit Graph

52761 Commits

Author SHA1 Message Date
Jean-Philippe Andre 9dcf2d3965 evas: Set thread name for preload
This can be useful during debugging.
2017-03-08 11:25:40 +09:00
Jean Guyomarc'h 566b23dcb8 ecore_evas/x: don't mark as unused a used parameter 2017-03-07 20:23:12 +01:00
Jean Guyomarc'h 6f80616a4d ecore_evas/cocoa: fix cursor's visibility
Fixes T5238
2017-03-07 20:23:12 +01:00
Cedric BAIL 4e1567b41e ecore: switch back to use ecore_thread_wait.
We need to make sure that we wait properly on the animator thread
otherwise we end up with the animator finish callback being called
later on during the shutdown process which means trouble.
2017-03-07 11:08:52 -08:00
Daniel Kolesa bf7b3e5dfc docgen: include C usage snippet on event pages 2017-03-07 17:15:24 +01:00
Daniel Kolesa 2b02dd56fd docgen: better event C info, show private/protected in listing 2017-03-07 16:42:22 +01:00
Chris Michael 927dc167ec ecore-wl2: Remove some debugging printouts
These prints were left over from
5b9374583e and should not have been pushed.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-03-07 08:19:26 -05:00
Jaehyun Cho f3647f24d5 edje_cc_parse: Support edje_cc in path containing space character
Previously, edje_cc in a path containing space character was not
supported. (e.g. "/usr/local/s p a c e/bin/edje_cc")

Now, to resolve above issue, edje_cc path is treated with double
quotation marks.

On Windows, if command begins with double quotation marks, then the
first and the last double quotation marks may be either deleted or not.
(See "help cmd" on Windows.)
Therefore, to preserve the string between the first and the last double
quotation marks, "cmd /S /C" and additional outer double quotation marks
are added.
2017-03-07 19:46:19 +09:00
Ivan Furs 3d6212b8f2 removing duplicates winsock2.h
Summary:
winsock2.h included in Ecore.h
But Ecore.h ' is included in
/bin/efreet/efreet_desktop_cache_create.c
src/bin/efreet/efreet_mime_cache_create.c
src/tests/ecore_con/ecore_con_test_efl_net_ip_address.c

Reviewers: NikaWhite, cedric, raster, an.kroitor

Reviewed By: raster

Subscribers: artem.popov, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4687
2017-03-07 13:59:54 +09:00
Jean-Philippe Andre aacd25ef6b evas: Fix layer usage count and deletion
When using smart objects (quite likely, isn't it?), the internal
layer usage count was not perfectly tracked. This was especially
true if layer_set() was called on a (top-level) smart object.
As a consequence, there could be no objects in the layer but the
usage would still be > 0. Thus, the layer was not deleted, not
removed from the inlist of layers, and efl_gfx_stack_above_get()
could return NULL as the layer above a certain object was empty.

Fixes T5201
2017-03-07 11:04:34 +09:00
Cedric Bail 500401364d elementary: fix tests build. 2017-03-06 17:03:19 -08:00
Jean Guyomarc'h ccbab08a4b ecore: fix build when debugging threads 2017-03-07 00:52:28 +01:00
Ivan Furs 8a10ef10cb eina_file: delete handle->fm(handel of function CreateFileMapping)
Summary: CreateFileMapping return handle. The handle before use is always closed. This handle can be immediately closed after use.

Reviewers: cedric, raster, vtorri, rimmed, an.kroitor, FurryMyad, NikaWhite

Reviewed By: raster

Subscribers: artem.popov, cedric, jpeg

Tags: #windows

Differential Revision: https://phab.enlightenment.org/D4699
2017-03-06 19:18:46 +09:00
Ivan Furs f7c1ac94f7 eet_lib: changed unlink to eina_file_unlink
Summary: changed unlink to eina_file_unlink

Reviewers: cedric, raster, an.kroitor, rimmed, FurryMyad, NikaWhite, vtorri

Subscribers: artem.popov, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4698
2017-03-06 18:02:11 +09:00
Jean-Philippe Andre 1bfce47bf3 evas: Fix non-disappearance of text entry cursor
The mouse cursor in a text entry tends to not disappear even when
the mouse moves out of the entry. This seems to happen more when
the cursor was visible for a single frame only (although I'm not
100% sure about this condition).

One important difference with previous versions of EFL is that
the cursor is now part of the theme, so it is an image object
and not set by the compositor (it looks vastly different).

Anyway, when processing the list of pending_objects, we look at
the flags render_pre and rect_del which were (re)set during the
previous frame. Those flags are then (re)set during phase 1 which
happens after processing the pending objects list... only if
needed. So, phase 1 sets the condition to invalidate the current
lists of objects but that condition is checked for before phase 1.

This patch adds a check on delete_me which should hopefully make
it a rare enough case, for performance, but still force correct
rendering.

This is all spaghetti code, sorry if this explanation also reads
like pasta.

Note that exactness tests may still be broken because earlier
versions of EFL simply did not have the cursor inside the canvas
itself.

Fixes T5231
2017-03-06 17:04:26 +09:00
Jean-Philippe Andre 38446d8daf tests: Remove CPU affinity from all threads
I believe that all the threads created in our test suite should
be spawned without any special CPU affinity. The default parameter
is not 0 (corresponds to the first CPU, known as CPU 0) but -1.

Similarily the default priority is NORMAL (1), not 0 (URGENT).

This also affects two unused code paths: evas render2 and gl preload.

@fix
2017-03-06 17:03:47 +09:00
Jiyoun Park a6c0e9b067 ecore_evas_extn: add shared lock mode to the ecore_extn.
Currently, ecore_evas_extn only use exclusive lock.
so if there are many ecore_extn_plugs , there is competition among the ecore_extn_plugs.
since the ecore_extn_plugs dont need to use exclusive lock, add the shred lock mode.
2017-03-06 12:39:53 +09:00
Andy Williams c19d3b402a elm_code: Fix missing syntax for .eo files
This was accidentally removed in the transition from edi.
using text/x-eolian which is not well reported by the FS yet.
@fix
2017-03-04 15:42:33 +00:00
Derek Foreman 3c3808acc5 ecore_evas_wayland: fix session recovery crash with async render
We need a display unset path for software render to prevent an async
render completing after a disconnect from posting a frame and crashing
us.

As of this commit both software and gl session recovery work for me.

fix T5005

 #SessionRecoveryWorksHere
2017-03-03 13:30:01 -06:00
Derek Foreman 706a1a33a4 ecore_evas_wayland: Use surface from engine info
Calling ecore_wl2_window_surface_get() has the side effect of creating
a new wayland surface if we don't already have one.  If we do that
during a session recovery, we can try to create a new surface while
we have no connection to a compositor - that's Bad.

So we just use the one we already have stored - which we NULL out on
disconnect.
2017-03-03 13:30:01 -06:00
Derek Foreman f53f873b58 wayland_egl: recreate outbuf on session restore
If we get an eng_update with no outbuf, try to create one.
2017-03-03 13:30:00 -06:00
Derek Foreman 18224858f3 wayland_egl: Destroy the outbuf when we lose our surface
This way we properly shut down when we get disconnected from the
compositor, and can reconnect later.
2017-03-03 13:30:00 -06:00
Derek Foreman eacd67498c wayland_egl: Don't crash when asked to dump with no outbuf
Another session recovery corner case.
2017-03-03 13:30:00 -06:00
Derek Foreman 1639e99305 wayland_egl: Don't crash if gl context queried when no outbuf
We can get here on session restore when we haven't had a chance
to recreate the outbuf yet.
2017-03-03 13:30:00 -06:00
Derek Foreman 49e7932c86 gl_generic: Add null checks in some cache functions
When wayland session recovery happens, we can end up down this path
with no gl context when elm reprocesses its config file.

That callback fires long before we've re-set up our wayland connection
so we can't possibly have a valid gl context yet.

Prevent that from crashing.
2017-03-03 13:30:00 -06:00
Mike Blumenkrantz e263cbf9d0 Revert "ecore: forcefully flush pending event when ecore_shutdown is called."
This reverts commit 2c6808e4ee.

this breaks a number of expectations and guarantees in efl:

* causes unexpected event iteration during app startup before main loop begins
  - leads to event loss
* causes unexpected event iteration during app shutdown after main loop quits
  - leads to invalid memory access
* causes recursive event iteration during event handler callbacks
  - leads to ?????????????????????????????????????????????????????????????????

all of these can be easily seen by running enlightenment, and all of these cause
unexpected behaviors in enlightenment including, but not limited to, a lot of crashes

fix T5232
2017-03-03 11:56:04 -05:00
Daniel Kolesa 3d3ea8dd92 docgen: run types/vars together with classes in parallel script 2017-03-03 17:51:50 +01:00
Daniel Kolesa 0a252c4463 docgen: add a simple script that does doc generation in parallel 2017-03-03 17:46:40 +01:00
Daniel Kolesa bfeddb8e09 docgen: only parse the necessary class when generating only one 2017-03-03 17:34:40 +01:00
Daniel Kolesa 7ef2e4dfd4 docgen: do not generate foreign classes' functions and events
Only generate the classes' own funcs/events (and overridden). Let other
classes generate their own stuff. This prevents some files from being
generated multiple times, which more than halves generation time.
2017-03-03 16:36:47 +01:00
Daniel Kolesa 81c84999fd docgen: add a pass to generate individual classes 2017-03-03 16:35:03 +01:00
Daniel Kolesa bc7561d8d5 docgen: add clist pass to list all classes 2017-03-03 16:18:21 +01:00
Daniel Kolesa ea436e49d1 docgen: initial support for multipass gen 2017-03-03 16:16:05 +01:00
Daniel Kolesa 79f10fc0a0 docgen: move stats and keyref build into later stage
That way we can multipass the doc build without worrying about stats.
2017-03-03 15:53:59 +01:00
Jiyoun Park ffa2d37462 ecore_evas_wayland: remove useless code 2017-03-03 12:44:35 +09:00
Jiyoun Park 89c6a316f6 ecore_evas_wayland: remove useless code 2017-03-03 11:28:52 +09:00
Jiyoun Park fb730c1fd7 ecore_evas_wayland: fix bug ee's width and height were updated wrong place.
ecore evas manages the width and height using the ee->w/h and ee->req.w/h.
but sometimes only ee->req value can be updated.
2017-03-03 11:06:50 +09:00
Jihoon Kim 591db71120 ecore_imf/xim: Fix memory leak
64 bytes in 1 blocks are definitely lost in loss record 152 of 258
   at 0x4C2AB80: malloc (vg_replace_malloc.c:296)
   by 0xC786A77: ??? (in /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0)
   by 0xC78747B: _XimDecodeIMATTRIBUTE (in /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0)
   by 0xC77A7EF: ??? (in /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0)
   by 0xC767771: XGetIMValues (in /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0)
   by 0x113CFE09: ???
   by 0x113D08F7: ???
   by 0x83DD329: ecore_imf_context_client_window_set (ecore_imf_context.c:240)
   by 0x530779D: _edje_entry_real_part_init (edje_entry.c:2937)
   by 0x5311C20: _edje_object_file_set_internal (edje_load.c:1079)
   by 0x5328665: _edje_object_efl_file_mmap_set (edje_smart.c:438)
   by 0x775BD3A: efl_file_mmap_set (in /usr/local/lib/libefl.so.1.18.4)
2017-03-03 10:12:30 +09:00
Marcel Hollerbach 097f9cfe5f ecore_thread: do not override the data field of a thread
otherwise a currently executed ecore_thread is going to pass a complete
wrong data to its callbacks.

fix T5175
fix T5173
2017-03-02 20:13:58 +01:00
Guilherme Iscaro 347c75fbe3 Efl.Canvas.Object: Multi-seat API should not be exposed to legacy.
Summary: This new kind of APIs should be EO only.

Reviewers: jpeg, cedric, barbieri, bdilly, stefan_schmidt

Reviewed By: cedric, barbieri

Subscribers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-03-02 11:06:20 -08:00
Daniel Kolesa 3f5e1b4e1e docgen: add info about protected/private methods/properties in listing 2017-03-02 16:34:22 +01:00
jiin.moon f506f65141 evas: Fix double clipping issue with map
If object's parent has map and object also has map, the evas
clip would be applied twice.

The context already applied clip area when drawing on map_surface.
So don't need more clipping when drawing map_image.

Also, make sure to apply the framespace clip when drawing the map
surface onto the final canvas. Thanks @jiin.moon for the initial
patch (see D4694).

@fix

Signed-off-by: Jean-Philippe Andre <jp.andre@samsung.com>
2017-03-02 16:43:47 +09:00
Jiwon Kim e6a1e456cb genlist: Remove weird behavior about item_show, bring_in
Summary:
When if item_show / bring_in is proceeded as 'deferred_show'
sequence, Scrollto_Type does not be checked perfectly.
As a result,
ELM_GENLIST_ITEM_SCROLLTO_NONE and any other integer values
are worked such as ELM_GENLIST_ITEM_SCROLLTO_BRING_IN.

As doxygen of Elm_Genlist_Item_Scrollto_Type,
ELM_GENLIST_ITEM_SCROLLTO_NONE and other incorrect number
should not work.

Fixes T4854

@fix

Reviewers: SanghyeonLee, woohyun, jpeg

Reviewed By: jpeg

Subscribers: id213sin, conr2d, cedric

Maniphest Tasks: T4854

Differential Revision: https://phab.enlightenment.org/D4684
2017-03-02 16:43:47 +09:00
Carsten Haitzler 9f535a3f3c emotion - fix empty video data frame update when using vdpau accel
fixes a segfault when using vdpau+gst and where the first frame seems to
be empty/zero.

@fix
2017-03-02 15:31:07 +09:00
Jeeyong Um 5d2a167958 doc: Fix invalid group classification for Edje_Audio
Summary: Edje_Audio group should belong to Edje group.

Reviewers: cedric, jpeg

Reviewed By: jpeg

Differential Revision: https://phab.enlightenment.org/D4693
2017-03-02 14:59:35 +09:00
Bryce Harrington ad109b0bc4 ecore: Fix typo in error message
Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: jpeg, cedric

Differential Revision: https://phab.enlightenment.org/D4689
2017-03-02 11:52:22 +09:00
Jihoon Kim 777b9beb23 ecore_imf/ibus: Fix memory leak allocated by ibus_bus_new 2017-03-02 10:19:53 +09:00
Derek Foreman b7f1c66d3a ecore-evas-wayland: Fix yet another wayland session recovery break
commit 81783ec75c combined two "identical"
pieces of code that weren't identical.  The removed code never checked
if the evas was visible before performing operations to make it so,
the code left behind would bail if the evas was visible.

Reset the visible status during disconnect to make sure we properly show
windows after a session recovery.

ref https://phab.enlightenment.org/T5005

@fix

Session works on the software engines at this point.  Use this as a bisect
point next time someone fubars it.

GL still broken.  Window geometry seems like it doesn't get updated right
either, but at least clients reconnect again.

 #SessionRecoveryWorksHere
2017-03-01 14:47:21 -06:00
Derek Foreman 16a1f8f188 ecore_wl2: Fix a wayland session recovery breaker... again
We need to bind a shell on reconnect, but dfb2af697 made sure
we only bind a single shell per wayland display for the life of
the display object - which lives longer than the connection.

That means when session recovery tries to reconnect it never bothers
to bind a shell, so the client can never post buffers.

ref https://phab.enlightenment.org/T5226
ref https://phab.enlightenment.org/T5005

@fix
2017-03-01 13:49:02 -06:00
Chris Michael cb39bd158e Revert "ecore-wl2: Send surface_commit after ack_configure"
Reverting this as apparently one source says to send a commit after
ack_configure, and another source says its wrong...

This reverts commit 1187035fe6.
2017-03-01 13:14:50 -05:00