WooHyun Jung [Wed, 25 Oct 2017 07:44:25 +0000 (16:44 +0900)]
efl_ui_clock: changed property name from value to time
Amitesh Singh [Wed, 25 Oct 2017 07:30:02 +0000 (16:30 +0900)]
Efl.Ui.Slider: call format_free_cb() when object destroys
fix mistake done in previous patch
8661fe234c7e68b
Amitesh Singh [Tue, 24 Oct 2017 07:36:03 +0000 (16:36 +0900)]
Efl.Ui.Slider: implement format_cb for units
Ref T6204
Jaehyun Cho [Wed, 25 Oct 2017 05:54:41 +0000 (14:54 +0900)]
efl_animation: Remove duration_only_set and total_duration_set methods
Remove unnecessary methods, duration_only_set and total_duration_set.
Vincent Torri [Tue, 24 Oct 2017 23:12:09 +0000 (16:12 -0700)]
Evil: really drop Windows XP support
Summary: set WINVER macro to at least Vista macro value
Test Plan: compilation
Reviewers: cedric
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D5369
Daniel Kolesa [Tue, 24 Oct 2017 21:41:59 +0000 (23:41 +0200)]
eolian: only check for validation where really necessary
Daniel Kolesa [Tue, 24 Oct 2017 21:39:14 +0000 (23:39 +0200)]
eolian: check for inheritance tree function conflicts
Now a class cannot define a method/property of some name if there
already is something of the same name within the inheritance tree.
Daniel Kolesa [Tue, 24 Oct 2017 21:19:22 +0000 (23:19 +0200)]
eolian: validate classes in a recursive manner
This allows for proper order of validation which will improve our
performance when also validating for name duplicates.
Daniel Kolesa [Tue, 24 Oct 2017 15:48:57 +0000 (17:48 +0200)]
eolian: keep track of which objects are validated
Marcel Hollerbach [Tue, 24 Oct 2017 15:27:53 +0000 (17:27 +0200)]
elm_widget: also delay focus set if something is not registered
this fixes a infinite loop
Marcel Hollerbach [Tue, 24 Oct 2017 15:27:10 +0000 (17:27 +0200)]
efl_ui_focus_manager: reset when a redirect is unset
this keeps the history clear
Daniel Kolesa [Tue, 24 Oct 2017 15:32:58 +0000 (17:32 +0200)]
eolian: initial parsing for parts in eo files
Amitesh Singh [Tue, 24 Oct 2017 13:48:01 +0000 (22:48 +0900)]
examples: eina strbuf - fix the example
Woochan Lee [Fri, 15 Sep 2017 08:13:30 +0000 (17:13 +0900)]
elm: rename elm_multibuttonentry to Efl.Ui.Multibuttonentry
Summary: @ref T5358
Reviewers: woohyun, jpeg, cedric, Jaehyun_Cho
Reviewed By: Jaehyun_Cho
Subscribers: Jaehyun, bu5hm4n, cedric, jpeg
Maniphest Tasks: T5358
Differential Revision: https://phab.enlightenment.org/D5169
JP's note:
MBE currently has quite a few issues, probably related to focus
handling. This needs to be fixed.
Jean-Philippe Andre [Tue, 24 Oct 2017 07:03:00 +0000 (16:03 +0900)]
evas: Fix oopsie in previous patch (evas vg)
Ref
880dd63a0c884642a0f87aa3a08338a7b244e37a
Thiep Ha [Tue, 24 Oct 2017 06:13:07 +0000 (15:13 +0900)]
doc: add missing parameters and fix references for some elm widgets
Thiep Ha [Tue, 24 Oct 2017 03:09:19 +0000 (12:09 +0900)]
doc: enable elementary_examples building
The elementary examples were built before, but not now.
I guess it was missed when we merged elementary to efl source tree.
This enables it and fixes some references.
Prince Kumar Dubey [Tue, 24 Oct 2017 06:29:22 +0000 (15:29 +0900)]
example: improve location example, fix crash
Summary: Printing Address detail with Position. Label added to show the
detail of address.
Test Plan:
Compiled with cmd:
gcc -o location_example_01 \
location_example_01.c -g `pkg-config --cflags --libs elementary \
elocation`
Reviewers: raster, cedric
Subscribers: rajeshps, jpeg
Differential Revision: https://phab.enlightenment.org/D5356
subhransu mohanty [Tue, 24 Oct 2017 06:19:52 +0000 (15:19 +0900)]
evas/vg: renamed the evas_vg class to efl_canvas_vg
Reviewers: jpeg
Subscribers: jenkins, cedric
Differential Revision: https://phab.enlightenment.org/D5357
Jean-Philippe Andre [Tue, 24 Oct 2017 05:43:43 +0000 (14:43 +0900)]
elm: Use auto_unref for parts
This avoids leaks.
Jean-Philippe Andre [Tue, 24 Oct 2017 05:29:16 +0000 (14:29 +0900)]
widget: Rename events to EFL_UI_WIDGET_EVENT_XXX
This only affects the events (and the data type has an alias).
Ref T5363
Jean-Philippe Andre [Tue, 24 Oct 2017 05:03:46 +0000 (14:03 +0900)]
widget: Rename EO APIs to efl_ui_widget_xxx
This only changes the eo_prefix for APIs.
Ref T5363
Lukasz Stanislawski [Tue, 24 Oct 2017 03:01:50 +0000 (12:01 +0900)]
elm: add prefixes to Efl.Access.Action to avoid clashes
Summary:
Prefix methods/properties of Efl.Access.Action mixin to avoid potential
clashes in genrated bindings.
This is first of series of patches removing potential name clashes
in accessibility interfaces.
Reviewers: jpeg
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D5213
Jean-Philippe Andre [Tue, 24 Oct 2017 02:13:51 +0000 (11:13 +0900)]
nstate: Remove some legacy code
This uses constructor/destructor instead of group_add/group_del.
Note: finalize can't be used for theme loading as any action done inside
efl_add(...) would be lost (eg. part text set).
subhransu mohanty [Mon, 23 Oct 2017 18:05:34 +0000 (11:05 -0700)]
evas: add set function for root_node property.
Summary:
Currently user ask for the root_node from the evas_vg object and then attach its tree by setting the root node as parent.
With this change this process will be explicit. user has to set the root node to the evas_vg object and the object will take the ownership
of the tree. User can query the current vg_tree by root_node_get api.
Test Plan:
Fixed the test app to reflects this change.
Reviewers: jpeg, cedric
Reviewed By: jpeg, cedric
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D5347
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
Jaehyun Cho [Mon, 23 Oct 2017 04:58:59 +0000 (13:58 +0900)]
efl_animation: Remove unnecessary macro
Bowon Ryu [Mon, 23 Oct 2017 04:40:37 +0000 (13:40 +0900)]
edje: add missing documentation.
Summary: This adds missing doxgen documentation for Edje_Common.h
Test Plan: API Doxygen Revision
Reviewers: cedric, jpeg, myoungwoon
Differential Revision: https://phab.enlightenment.org/D5345
Bowon Ryu [Mon, 23 Oct 2017 04:40:27 +0000 (13:40 +0900)]
eet: add missing documentation.
Summary: This adds missing doxgen documentation for eet.
Test Plan: API Doxygen Revision
Reviewers: cedric, jpeg, myoungwoon
Differential Revision: https://phab.enlightenment.org/D5344
Andy Williams [Sun, 22 Oct 2017 19:21:12 +0000 (20:21 +0100)]
Fix building on windows
@author vtorri
Derek Foreman [Sun, 22 Oct 2017 15:19:50 +0000 (10:19 -0500)]
ecore_wl2: Remove just the flush from the idle handler
Flushing should be done where it's needed now, but we still
need the rest of the idle handler as something like mesa may
have dispatched its queue, which reads all the pending wayland
events. In that case we have events to process but the fd will
not poll readable.
@fix T6250
Derek Foreman [Sun, 22 Oct 2017 15:16:57 +0000 (10:16 -0500)]
Revert "ecore_wl2: Kill the wl idle enterer"
This reverts commit
57d5b5921e8a4a05f4a1b468f1cfed74d28b95f9.
We need the dispatch, not the flush...
Andy Williams [Sat, 21 Oct 2017 15:38:57 +0000 (16:38 +0100)]
Docs location moved
Al Poole [Sat, 21 Oct 2017 00:28:06 +0000 (01:28 +0100)]
elm_code_widget: make sure the widget is cleared properly.
This ensures the widget is clearer if the file has been cleared.
@fix T6185
Marcel Hollerbach [Fri, 20 Oct 2017 15:21:19 +0000 (17:21 +0200)]
elm_gengrid: add pseudo widget into the item if there are no focusable
widgets
Marcel Hollerbach [Fri, 20 Oct 2017 14:31:05 +0000 (16:31 +0200)]
efl_ui_focus_manager: new api
Can be used to fetch a focusable widget that has child as parent.
Daniel Kolesa [Fri, 20 Oct 2017 12:29:04 +0000 (14:29 +0200)]
docs: move write_include out of the writer backend
This is a large chunk shared between backends.
Daniel Kolesa [Fri, 20 Oct 2017 12:17:10 +0000 (14:17 +0200)]
docs: prepare for markdown gendoc backend
Marcel Hollerbach [Fri, 20 Oct 2017 09:46:51 +0000 (11:46 +0200)]
efl_ui_focus_manager: unfocus even logical elements
entry for example is here a specialcase since it registeres itself as
logical with a redirect manager that is then empty and only has a root
element, which is again itself.
Marcel Hollerbach [Fri, 20 Oct 2017 09:45:07 +0000 (11:45 +0200)]
elm_entry: correctly emit unfocus signals to the edje object
Carsten Haitzler (Rasterman) [Fri, 20 Oct 2017 09:30:03 +0000 (18:30 +0900)]
elm config - check if _elm_config is null - makes coveirty happy
it really should never be null though... or else really bad things
just happened (allocations failed etc.)
Cedric BAIL [Thu, 19 Oct 2017 23:34:25 +0000 (16:34 -0700)]
eina: silence warning.
Cedric BAIL [Thu, 19 Oct 2017 23:14:48 +0000 (16:14 -0700)]
evas: propagate object data to evas_object_inform_call_changed_size_hints instead of fetching it again.
Cedric BAIL [Thu, 19 Oct 2017 23:11:30 +0000 (16:11 -0700)]
evas: propagate object data to evas_object_inform_call_restack instead of fetching it again.
Cedric BAIL [Thu, 19 Oct 2017 23:07:39 +0000 (16:07 -0700)]
evas: propagate object data to evas_object_inform_call_resize instead of fetching it again.
Cedric BAIL [Thu, 19 Oct 2017 23:05:30 +0000 (16:05 -0700)]
evas: propagate object data to evas_object_inform_call_hide instead of fetching it again.
Cedric BAIL [Thu, 19 Oct 2017 23:04:12 +0000 (16:04 -0700)]
evas: propagate object data to evas_object_inform_call_show instead of fetching it again.
Cedric BAIL [Thu, 19 Oct 2017 20:41:32 +0000 (13:41 -0700)]
eolian: there should be nothing depending on efl config in our public header.
Cedric BAIL [Thu, 19 Oct 2017 20:40:36 +0000 (13:40 -0700)]
eina: add Evil include on Windows as strndup is provided by it.
Daniel Kolesa [Thu, 19 Oct 2017 18:17:14 +0000 (20:17 +0200)]
elua, js: also update build after evas changes
Daniel Kolesa [Thu, 19 Oct 2017 18:11:49 +0000 (20:11 +0200)]
cxx build: update after the evas gesture build fix
The changes in
f334f2a5042734218d599f189fda615db47be766 also need
an update in the C++ build.
Cedric BAIL [Thu, 19 Oct 2017 17:28:31 +0000 (10:28 -0700)]
eina: forgotten label on eina_file_unlink on Windows.
Cedric BAIL [Thu, 19 Oct 2017 17:26:26 +0000 (10:26 -0700)]
eina: downgrad ERR to WRN when not finding a file.
Daniel Kolesa [Thu, 19 Oct 2017 13:59:16 +0000 (15:59 +0200)]
evas build: fix installation paths for new gesture stuff
EFL-using things wouldn't build after addition of the new gesture
stuff because gesture headers would get installed into the
$PREFIX/evas-1/canvas instead of $PREFIX/evas-1/gesture
directory and Evas_Eo.h is including headers from the gesture/
directory. This fixes the problem by installing the headers into
their correct location.
Spanks go to @jpeg for not reviewing things properly.
Marcel Hollerbach [Thu, 19 Oct 2017 13:19:55 +0000 (15:19 +0200)]
efl_ui_focus_manager_calc: really free all direction
i must have been have asleep when i wrote this, we need to iterate all
directions not only to the max id of 4
Marcel Hollerbach [Thu, 19 Oct 2017 12:15:08 +0000 (14:15 +0200)]
elm_gengrid: bring in item once focused
and select & focus the item where the widget is in
Marcel Hollerbach [Thu, 19 Oct 2017 12:02:46 +0000 (14:02 +0200)]
elm_scroller: scroll to a focused element
Marcel Hollerbach [Thu, 19 Oct 2017 12:02:11 +0000 (14:02 +0200)]
elm_interface_scrollable: do not scroll to a focused element by default
this can be done in the implementing other widgets
Marcel Hollerbach [Thu, 19 Oct 2017 11:47:15 +0000 (13:47 +0200)]
elm_widget: update parent instead of unregister for the case of parent
change
This means we maintain the focus state over a parent change
Marcel Hollerbach [Thu, 19 Oct 2017 11:29:03 +0000 (13:29 +0200)]
efl_ui_focus_parent_provider_gen: looks to get the last widget before
gengrid
This means we are garanteed to find the item
Marcel Hollerbach [Thu, 19 Oct 2017 09:53:08 +0000 (11:53 +0200)]
elm_gengrid: force the item to be added _again_ as subobj
so we make sure the registering fetches the correct element
Marcel Hollerbach [Thu, 19 Oct 2017 09:52:26 +0000 (11:52 +0200)]
elm_gengrid: force the item to be realized once we try to move focus
So the widget is there, once we try to register it
Marcel Hollerbach [Thu, 19 Oct 2017 09:33:53 +0000 (11:33 +0200)]
efl_ui_focus_manager_calc: move the debug output in there
reduces the load of debug messages, and the debug messages are now only
emitted from the manager that is not the redirect. And the real elements
that are focused are printed
Carsten Haitzler (Rasterman) [Thu, 19 Oct 2017 08:31:40 +0000 (17:31 +0900)]
elm config - finish flagging all other values that can be set by api
this now means any app that called elm_config_*set on any field at all
will keep what it set forever until it changes it even if shared/core
config changed.
Carsten Haitzler (Rasterman) [Wed, 18 Oct 2017 09:33:11 +0000 (18:33 +0900)]
elm config - track which vars you set locally and keep them as-is
this now flags about 1/4 of the config vars in elm config if you set
them locally so they wont change on conifg reload. i have just started
and this is the first batch. needs more work.
Marcel Hollerbach [Thu, 19 Oct 2017 07:52:48 +0000 (09:52 +0200)]
elm_interface_scrollable: make sure this region is really visual
right now we just request the complete geom to be visible since there
seems to be no way ot checking where the new widgets will be in. This
needs some improvements.
Marcel Hollerbach [Tue, 17 Oct 2017 18:06:28 +0000 (20:06 +0200)]
efl_ui_focus_manager_calc: reimplement move to be more compact & small
this fixes a bug when a redirect was unset while going the prev
direction.
Marcel Hollerbach [Tue, 17 Oct 2017 17:42:32 +0000 (19:42 +0200)]
efl_ui_focus_manager_calc: put every element on the focus stack
move the addition to the focus stack to the general path. This means
every element is now on the focus stack.
Marcel Hollerbach [Tue, 17 Oct 2017 17:35:59 +0000 (19:35 +0200)]
efl_ui_focus_manager_calc: move unfocusing the last element into its own
function
Marcel Hollerbach [Tue, 17 Oct 2017 17:30:15 +0000 (19:30 +0200)]
efl_ui_focus_manager_calc: check if we are already focused earlier
if we dont do that we may unset a redirect just to set the same redirect
again.
Jean-Philippe Andre [Thu, 19 Oct 2017 02:05:28 +0000 (11:05 +0900)]
evas/gesture: Fix up a couple of APIs, add some FIXME
Some things have clearly not been tested. Some APIs have not been
modified after repeated review comments. C++ failed to build due to
"long" being used as a namespace.
Remaining issues:
- The original finger_list API was broken by design. I didn't try to
replace it yet.
- Long tap is also broken by design: if no move happens the recognizer
gets no event, and doesn't trigger anything when the timeout is
reached. An API or event is lacking here.
- Only 2 very basic gestures have been implemented. All the gestures
from elm_gesture_layer need to be covered. None of the multi touch
support has been really implemented, except for a single bool flag.
- The configuration must be loaded from elm_config, passed on to the
recognizers.
- Some micro optimization may be required, especially if the input
device is high frequency (eg. 1KHz gaming mouse).
smohanty [Fri, 22 Sep 2017 04:46:39 +0000 (13:46 +0900)]
evas/gesture: Enabled efl_provider_get() to find gesture manager
smohanty [Thu, 21 Sep 2017 00:37:40 +0000 (09:37 +0900)]
elementary_test: Added test case for log_tap gesture
smohanty [Thu, 21 Sep 2017 01:23:18 +0000 (10:23 +0900)]
evas/gesture: Added long_tap gesture to gesture framework
smohanty [Thu, 21 Sep 2017 01:11:53 +0000 (10:11 +0900)]
elementary_test: Added gesture_framework test to the elementary test suit.
smohanty [Tue, 19 Sep 2017 08:17:39 +0000 (17:17 +0900)]
evas/gesture: Integrated gesture framework to evas.
smohanty [Tue, 19 Sep 2017 08:11:31 +0000 (17:11 +0900)]
evas/gesture: Added gesture manager implementaion.
smohanty [Tue, 19 Sep 2017 08:05:48 +0000 (17:05 +0900)]
evas/gesture: added recognizer and tap recognizer implementation
smohanty [Mon, 25 Sep 2017 06:25:42 +0000 (15:25 +0900)]
evas/gesture: Added gesture and tap gesture implementation.
smohanty [Tue, 19 Sep 2017 07:55:45 +0000 (16:55 +0900)]
evas/gesture: Added touch accumulator class implementation.
smohanty [Tue, 19 Sep 2017 06:09:49 +0000 (15:09 +0900)]
evas/gesture: Added gesture_private header file.
smohanty [Tue, 19 Sep 2017 06:03:42 +0000 (15:03 +0900)]
evas/gesture: Added Eo classes for evas gesture framework.
Lukasz Stanislawski [Thu, 19 Oct 2017 01:13:54 +0000 (10:13 +0900)]
elm: rename Elm_Interface_Atspi_Accessible interface
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D5341
Jean-Philippe Andre [Wed, 18 Oct 2017 12:40:01 +0000 (21:40 +0900)]
evas: Prevent crash with image_data_get
If the image has no data, it may get an allocated surface of 1x1 but it
is not sane to return the pointer to that data, as the user would expect
a normally sized image (in my case, 1920x1080).
I do not fully understand what is going on with this image. But at least
this transforms a crash into a simple ERR in ~/.xessions-errors
Two similar crashes happened:
- SIGSEGV by writing data outside of the image data
- abort() in free() because the malloc metadata has been overridden
when writing outside of the image data (newly allocated 1x1).
Fixes T5957
@fix
Jean-Philippe Andre [Wed, 18 Oct 2017 11:56:26 +0000 (20:56 +0900)]
win: Do not forward all key events on win (legacy)
OMG... I do not like this patch.
See T6148, two key down events are received when a key grab is installed
on a Win object. This is because all input events are propagated from
ecore all the way up to win and can be listened on. Unfortunately this
breaks existing applications that use the key grab API properly to
listen to key events.
Another side effect is that ALL key events are received by the window,
which means it's not limited to what the application expected (from its
list of grabs).
Solution (ugly): block propagation of key down/up events if the window
is a legacy window. This means that no key grab is required for EO
windows, but key grabs are still required for legacy windows.
Fixes T6148
@fix
Jeonghyun Yun [Wed, 18 Oct 2017 11:15:12 +0000 (20:15 +0900)]
elm_scroller: fix scrolling with key move
Use content_region_show instead of content_pos_set in _key_action_move
Summary:
When user keep pressing key down or else on scroller content, scroller
animation is lagging because of elm_interface_scrollable_content_pos_set
by step_x or step_y value. When focus moved to next object by press key
down or else, content_pos_set by ecore_animator continuously. In this
time, content_pos_set in _key_action_move by step_x or step_y value
caused animation lagging problem. I fixed to use content_region_show
instead of content_pos_set in _key_action_move for remove exist
animator.
Test Plan:
1. elementary_test -> Scroller3
2. Press 3 times "Append 10 Items in 3s" button
3. focus to Item1 and keep pressing key_down
Reviewers: jpeg, woohyun
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D5278
Jean-Philippe Andre [Wed, 18 Oct 2017 11:01:35 +0000 (20:01 +0900)]
genlist: Fix crash on item delete
See
d3440a9867cf67f03f7fea02075f88d0441c92e7
Fixes T6033
Jean-Philippe Andre [Wed, 18 Oct 2017 09:12:13 +0000 (18:12 +0900)]
config: Simplify EO API
This is:
- using a property (but terribly ugly due to the ownership on the
returned value)
- removing an unused function
Note: This interface Efl.Config covers only elm_config for now. But it's
very generic and could be used in the future for application specific
configuration.
Jean-Philippe Andre [Wed, 18 Oct 2017 08:12:03 +0000 (17:12 +0900)]
elm: Split elm_general.eot in two: legacy and EO
This creates efl_ui.eot
It's not called efl_ui_types.eot because a file with that name already
exists in efl/interfaces (for Efl.Ui.Drag functions).
Also add some FIXME comments, and move some types to elm_widget_item.eo.
Ref T5329
Taehyub Kim [Wed, 18 Oct 2017 08:32:00 +0000 (17:32 +0900)]
ecore: remove doxygen warning messages
Summary:
remove doxygen warning messages
@fix
Reviewers: jpeg, cedric, woohyun
Reviewed By: jpeg
Differential Revision: https://phab.enlightenment.org/D5339
Shinwoo Kim [Wed, 18 Oct 2017 08:38:16 +0000 (17:38 +0900)]
elm: enhance documentation for following files
- elm_config.h
- elm_focus.h
- elm_genlist.h
- elm_icon.h
- elm_image.h
- elm_image_legacy.h
- elm_index.h
Carsten Haitzler (Rasterman) [Wed, 18 Oct 2017 04:29:35 +0000 (13:29 +0900)]
licensing - remove dates as they aren't strictly needed under common law
common law copyright establishes copyright at point of creation anyway
and there isn't a need to keep dates there. saves having to update them.
Jean-Philippe Andre [Wed, 18 Oct 2017 02:21:36 +0000 (11:21 +0900)]
widget: Add FIXME note and cleanup whitespaces
Jean-Philippe Andre [Fri, 13 Oct 2017 09:16:41 +0000 (18:16 +0900)]
edje: Use EO's beta auto_unref API for parts
This simplifies code and avoids unwanted leaks.
Jean-Philippe Andre [Fri, 13 Oct 2017 08:18:41 +0000 (17:18 +0900)]
eo: Add beta API for auto_unref after a call
Before screaming in horror (C++...) here's why we may need this:
Efl.Part.part API returns an object that is by definition valid for a
single function call only. Enforcing this in practice is actually quite
hard as all implementation functions must manually take care of the
life-cycle. This is a lot of code in many places and a lot of
opportunities to forget to properly handle that life-cycle. Also, this
means any invalid function call on a part will leak an object.
This API absolutely must remain either "internal" or "beta" and
definitely not become abused by applications. On top of that such an API
can cause great trouble for bindings like C++. As a consequence, only
specially crafted APIs like efl_part() should return an object marked as
auto_unref.
Alternatively this API could be defined in Eo.h or some other
Eo_Internal.h. I placed it in efl_object.eo because it's much more
convenient :) (read: I'm lazy)
****
Performance notes:
Tested with clang & gcc (with -O2), I had a look at the output of perf
top, in particular the asm view. I used eo_bench in a loop. My
conclusions are:
- EINA_LIKELY/UNLIKELY actually works. The jump statement varies
according to the expectation. I highly doubt all those ugly goto in
eo.c / Eo.h are even useful.
- The impact of auto_unref on a call_resolve is so small it doesn't even
appear in the trace. It is significant inside call_end, though
(obviously, that function is just a few lines long). That function
accounts for ~1% to ~4% of all CPU time. The impact of auto_unref in
call_end is ~4% of the function time. This means ~0.16% of all CPU
time (worst measured case). _efl_object_op_api_id_get simply doesn't
show up because of caching, so the extra check there is negligible.
PS: I also tested EINA_LIKELY/UNLIKELY by compiling with -O2 and looking
at the output with objdump. The flag is well respected, and the jump
instructions are what you would expect (no jump for LIKELY and jump for
UNLIKELY). Conclusion: The goto's in eo.c only make the code harder to
read...
Jean-Philippe Andre [Tue, 17 Oct 2017 09:48:51 +0000 (18:48 +0900)]
benchmarks: Fix titles in gnuplot
Just replace _ with \_ as _ means subscript.
Thiep Ha [Wed, 18 Oct 2017 01:51:49 +0000 (10:51 +0900)]
edje: correct the usage of EINA_SIZE2D
The usage of EINA_SIZE2D macro as left hand side variable
does not save the size value. The Eina_Size2D should be used.
Thiep Ha [Wed, 18 Oct 2017 01:51:04 +0000 (10:51 +0900)]
textpath: get the right size of text object
Recent change to use EINA_SIZE2D made the size be gotten incorrectly.
This corrects it.
Cedric Bail [Tue, 17 Oct 2017 23:14:26 +0000 (16:14 -0700)]
eina: use a stringshare to store the filename internally.
T6164
Cedric Bail [Tue, 17 Oct 2017 23:11:25 +0000 (16:11 -0700)]
eina: fix eina_hash_stringshared_new to actually compute the hash on the pointer.
Before this patch, the key would always be zero and the hash would solely
rely on the rbtree to be efficient. This improve the situation by using the pointer
as the key during hash computation.
Cedric Bail [Tue, 17 Oct 2017 23:09:57 +0000 (16:09 -0700)]
eina: refactor eina hash computation of key length and hash value.