this class is a giant FIXME for anyone looking to do refactoring work.
the only reason it seems to exist is to provide wrappers around
efl.gfx functions and provide screen position adjustments--something
which isn't even viable under wayland
note that a test was removed here due to the corresponding method being
removed
also implement Efl_Canvas.objects_at_xy_get
note that any function which returns an iterator cannot be @const since
it's necessary to wref the object to ensure the iterator's lifetime
this file contains canvas methods which should be subject to compiler
type checking, requiring that they be included in the file which contains
the eolian generated code
this reveals existing breakage which went unnoticed due to the compiler
being unable to do type checks since the generated eolian code was not included
Since surface handling is now done via modules, we need to ensure
the library can't be shutdown while a surface exists. Otherwise,
we get a segfault trying to call a function we've unmapped.
Fixes a bug on shutdown for some wayland clients using software
rendering.
Summary:
For example, the widget type of elm_button was "Elm_Button".
But, the object which is created by elm_button_add() will
return its widget type "Efl.Ui.Button_Legacy".
It is not legacy name. It should be fixed to return "Elm_Button".
I don't know when but eolian start to make class name with ".".
So, it should be converted to "_" for all widgets.
@fix
Test Plan:
All test cases are included in this patch.
Run "make check"
Reviewers: raster, cedric, jpeg, taxi2se
Reviewed By: cedric
Subscribers: taxi2se, woohyun
Differential Revision: https://phab.enlightenment.org/D5782
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
Summary:
Adds missing @param docs and fixes an incorrectly documented one.
Clarifies difference between 'length' and 'position', specifying the
latter is a number between 0.0 and 1.0. Improves verbage here and there
for grammatical correctness and internal consistency.
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D5780
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
Summary:
These routines all have slight permutations of the same basic note, but
are each formatted a bit differently. Fix that and a few punctuation
irregularities.
Similarly for a couple @warnings, and escalate one @note to a @warning
since what it describes might be a security issue so deserves
highlighting.
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D5779
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
Summary:
The eina_matrix3_compose and eina_matrix3_multiply API's are
mathematically identical (even though the implementations are
reversed... weird), except that the latter also includes a fastpath for
identity matrices.
Having two functionally equivalent APIs is redundant, so ideally one or
the other would be dropped. But in order avoid API breakage, just have
one routine wrapper the other and eliminate the internal redundancy.
(Note that the parameter signatures of the two routines are different -
eina_matrix3_compose() takes the two input matrices first, and the
output matrix last, while eina_matrix3_multiply() takes the parameters
in the reverse order. This inconsistency in the API style could result
in accidentally erroneous usage and would be an argument for deprecation
of one of the two APIs.)
Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
Reviewers: cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D5806
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
Summary:
Make checks consistent in ecore_file_monitor_backend_del.
inotify_add_watch can return 0 as well on success.
So, even if wd is 0, inotify_rm_watch need to be invoked.
Reviewers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D5770
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>