path: root/src (follow)
AgeCommit message (Collapse)Author
2017-03-08evas gl: Add missing GLES 3.1 definitionsJean-Philippe Andre
Evas_GL_API supports the GLES 3.1 functions but the required macros were not present. Thanks Brokenshakles for the tip.
2017-03-08naviframe: keep unfocusable state of item before finishing item push/popYoungbok Shin
If item pop was started without focus at a naviframe object and the naviframe object got focus before finising item pop, the naviframe object could give focus to its first object of prev item. It could ruin focus orders and failed to restore previous focused object in the item. To keep consistency of focus policy, same logic will be applied to item push scenario. @fix Change-Id: Ia74bdce3620bd59622ef32a0cedf5fbd84815400
2017-03-08evas: Print CRI message in case of bad event usageJean-Philippe Andre
This will abort E when using Bryce and EINA_LOG_ABORT is enabled (it is enabled by default when running a non-release version of E). That's on purpose, as that code needs fixing :) Ref T3144
2017-03-08ecore_evas_cocoa: remove a lot of useless codeJean Guyomarc'h
I still don't know what's going on with the rendering problems, but at least now I have less dead code in my way...
2017-03-08ecore_evas_cocoa: set the render func at initializationJean Guyomarc'h
2017-03-08ecore_evas: process mouse move even when there is no cursorJean Guyomarc'h
2017-03-08tests: Don't print garbageJean-Philippe Andre
GLView tends to print some random garbage when using the GLView Gears test. That's because we're allocating and printing a 0 byte buffer. Don't do that.
2017-03-08evas gl: Fix version detection for GLES 3.1Jean-Philippe Andre
It was assumed that GLES 3 would only work with EGL but in fact OpenGL 4.3 & 4.5 are supersets of GLES 3.0 & 3.1 respectively. So GLX should also support GLES 3.0 or GLES 3.1 for evas gl, if the driver supports it, of course. Of course while doing this patch things didn't go like they were supposed to go. I'm currently using NVIDIA's proprietary driver, that conveniently provides EGL with GLES 3.2. But wait, there's a catch: GL_VERSION is "OpenGL ES 3.2 NVIDIA" except that none of the functions of GLES 3.1 or GLES 3.2 are actually supported. Those functions are only present in the GLX/OpenGL variant of the driver. Thanks so much for making my life easier... So yeah, this patch contains a hack for those invalid versions of GLES 3.x. What was supposed to be a small fix became a huge mess. Also add a comment about the possibly invalid auto-upgrade from GLES 2 to GLES 3. This adds a test case in elm_test, but only to verify that elm_glview_version_add(3) actually works. We need a proper GLES 3 test case, eventually (and 3.1, 3.2 of course).
2017-03-08evas: Set thread name for preloadJean-Philippe Andre
This can be useful during debugging.
2017-03-07ecore_evas/x: don't mark as unused a used parameterJean Guyomarc'h
2017-03-07ecore_evas/cocoa: fix cursor's visibilityJean Guyomarc'h
Fixes T5238
2017-03-07ecore: switch back to use ecore_thread_wait.Cedric BAIL
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-07docgen: include C usage snippet on event pagesDaniel Kolesa
2017-03-07docgen: better event C info, show private/protected in listingDaniel Kolesa
2017-03-07ecore-wl2: Remove some debugging printoutsChris Michael
These prints were left over from 5b9374583e3fd450ac53c566095c398f0d6c5cfe and should not have been pushed. Signed-off-by: Chris Michael <>
2017-03-07edje_cc_parse: Support edje_cc in path containing space characterJaehyun Cho
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-07removing duplicates winsock2.hIvan Furs
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:
2017-03-07evas: Fix layer usage count and deletionJean-Philippe Andre
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-06elementary: fix tests build.Cedric Bail
2017-03-07ecore: fix build when debugging threadsJean Guyomarc'h
2017-03-06eina_file: delete handle->fm(handel of function CreateFileMapping)Ivan Furs
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:
2017-03-06eet_lib: changed unlink to eina_file_unlinkIvan Furs
Summary: changed unlink to eina_file_unlink Reviewers: cedric, raster, an.kroitor, rimmed, FurryMyad, NikaWhite, vtorri Subscribers: artem.popov, cedric, jpeg Differential Revision:
2017-03-06evas: Fix non-disappearance of text entry cursorJean-Philippe Andre
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-06tests: Remove CPU affinity from all threadsJean-Philippe Andre
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-06ecore_evas_extn: add shared lock mode to the ecore_extn.Jiyoun Park
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-04elm_code: Fix missing syntax for .eo filesAndy Williams
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-03ecore_evas_wayland: fix session recovery crash with async renderDerek Foreman
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-03ecore_evas_wayland: Use surface from engine infoDerek Foreman
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-03wayland_egl: recreate outbuf on session restoreDerek Foreman
If we get an eng_update with no outbuf, try to create one.
2017-03-03wayland_egl: Destroy the outbuf when we lose our surfaceDerek Foreman
This way we properly shut down when we get disconnected from the compositor, and can reconnect later.
2017-03-03wayland_egl: Don't crash when asked to dump with no outbufDerek Foreman
Another session recovery corner case.
2017-03-03wayland_egl: Don't crash if gl context queried when no outbufDerek Foreman
We can get here on session restore when we haven't had a chance to recreate the outbuf yet.
2017-03-03gl_generic: Add null checks in some cache functionsDerek Foreman
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-03Revert "ecore: forcefully flush pending event when ecore_shutdown is called."Mike Blumenkrantz
This reverts commit 2c6808e4eed28d5b93d2f10b558b168aa365364e. 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-03docgen: run types/vars together with classes in parallel scriptDaniel Kolesa
2017-03-03docgen: add a simple script that does doc generation in parallelDaniel Kolesa
2017-03-03docgen: only parse the necessary class when generating only oneDaniel Kolesa
2017-03-03docgen: do not generate foreign classes' functions and eventsDaniel Kolesa
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-03docgen: add a pass to generate individual classesDaniel Kolesa
2017-03-03docgen: add clist pass to list all classesDaniel Kolesa
2017-03-03docgen: initial support for multipass genDaniel Kolesa
2017-03-03docgen: move stats and keyref build into later stageDaniel Kolesa
That way we can multipass the doc build without worrying about stats.
2017-03-03ecore_evas_wayland: remove useless codeJiyoun Park
2017-03-03ecore_evas_wayland: remove useless codeJiyoun Park
2017-03-03ecore_evas_wayland: fix bug ee's width and height were updated wrong place.Jiyoun Park
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-03ecore_imf/xim: Fix memory leakJihoon Kim
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/ by 0xC78747B: _XimDecodeIMATTRIBUTE (in /usr/lib/x86_64-linux-gnu/ by 0xC77A7EF: ??? (in /usr/lib/x86_64-linux-gnu/ by 0xC767771: XGetIMValues (in /usr/lib/x86_64-linux-gnu/ 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/
2017-03-02ecore_thread: do not override the data field of a threadMarcel Hollerbach
otherwise a currently executed ecore_thread is going to pass a complete wrong data to its callbacks. fix T5175 fix T5173
2017-03-02Efl.Canvas.Object: Multi-seat API should not be exposed to legacy.Guilherme Iscaro
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: Signed-off-by: Cedric BAIL <>
2017-03-02docgen: add info about protected/private methods/properties in listingDaniel Kolesa
2017-03-02evas: Fix double clipping issue with mapjiin.moon
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 <>