For get properties, if only one parameter is given, the generator sets this one as return type.
There are cases where this parameter must stay a parameter (legacy API).
For example, elm_thumb_compress_get must be like:
void elm_thumb_compress_get(const Eo *obj, int *compress).
Eolian was generating the function as:
int elm_thumb_compress_get(const Eo *obj);
By setting "return void;" in the .eo file, you force the function to
return void.
When a property needs be defined as virtual pure, its type could not be
given.
It means that, even it was explicit that e.g only the get property if
virtual pure, both (set and get) were considered as virtual pure.
@fix
This patch fixes the proxy drawing problem that source won't be updated in some case
If the image object is the one member of the smart that has the proxy,
the proxy(image part) won't be redrawed properly unless evas tries to draw the image object.
This can be heppend if the image object is inactive cause of some reasone(ie. outside of the screen)
So, the proxy object never can be never updated even the image part is changed.
Now let try to be active if the parent is both active and source object.
and revert previous change with regarded to a739716cee,
that's no more required now.
@fix
We need to increase ref count for the format prior to calling of
functions that handle the layout.
This resolves valgrind error of accessing already freed memory.
Please note that a scenerio to trigger this exists in test suite, and
for some reason is not being detected by jenkins.
@fix
this technically adds a feature - it adds non-mitshm support for
ecore_x image grabbing, but that fixes a bug. it doesn't touch xcb
support though.
this fixes T1127 andshould probably be backported.
During padding calculation, ox and oy should be ignored unless the
blend operation is neither repeating nor stretching. Otherwise,
the buffer will grow without necessity.
Summary: Updated documentation for Eina Lock and related files.
Test Plan: Reviewers
Reviewers: cedric, raster
CC: cedric, raster
Differential Revision: https://phab.enlightenment.org/D650
Summary:
Warning fixed of evas
modules/evas/engines/gl_common/evas_gl_context.c: In function 'evas_gl_common_context_new':
modules/evas/engines/gl_common/evas_gl_context.c:392:32: warning: 'minor' may be used uninitialized in this function [-Wuninitialized]
modules/evas/engines/gl_common/evas_gl_context.c:314:8: note: 'minor' was declared here
modules/evas/engines/gl_common/evas_gl_context.c:392:16: warning: 'major' may be used uninitialized in this function [-Wuninitialized]
modules/evas/engines/gl_common/evas_gl_context.c:313:8: note: 'major' was declared here
@fix
Compilation Warning Fixed
Test Plan: Compile efl
Reviewers: singh.amitesh
CC: seoz, cedric
Differential Revision: https://phab.enlightenment.org/D656
Summary:
This function will return the source code of the edje edit object that is given to that function.
Also, that function will collect all resources required by this group.
That means all images, fonts, styles, data and color_classes that is mentioned
and set in descriptions of parts in this group (that is represented by given
Edje Edit object).
@feature
Added function for generating source code:
- edje_edit_source_generate(Evas_Object *obj);
Reviewers: cedric, seoz, raster
Reviewed By: raster
CC: reutskiy.v.v, cedric
Differential Revision: https://phab.enlightenment.org/D649
This step is needed to clean the code and to prepare the integration of
Eo2 inside Eolian.
Except the eo_do invocation, there is no reason why legacy has to know
about Eo.
this is just some syntax shortening for program.after which causes program.action and program.script to create a new program and automatically chain it within the sequence{} block
recursive sequences not currently allowed/planned (don't be insane)
@feature
This will allow forcing a specific value for the filter padding,
instead of relying on auto calculation.
Two advantages:
- Auto calculation can't be perfect, since it will add as much
padding as required for the full blur effect
- This prepares the path for animations with effects, where the
object size does not change over time
If the buffer size is smaller than the blurring kernel, then
special precautions must be taken to properly read the source
pixels. Also, fix the corner cases near the left & right edges
(or top & bottom).
When blurring an RGBA buffer to the output buffer,
we don't need to convert the colorspace... but then we'll just
override what was already there.
Introduce a 'dirty' flag set to true whenever a command writes
to an output buffer.
strncmp bytes number was not correct. A problem in the generation was
occurring when the parameter is @inout, as it is considered as @in and
the type was "out ...".
Summary:
I've combed through the Eina source files and made enhancements to the
documentation, including:
- Document the undocumented
- Fixed some errors in Doxygen markup
- Moved some function documentation from implementation (.c or .x) to definition
(.h)
- Edited some of the entries to improve clarity
Test Plan: Reviewers
Reviewers: cedric
Reviewed By: cedric
CC: cedric
Differential Revision: https://phab.enlightenment.org/D639
@bugfix: When calculating center point for absolute motion, use the
proper min_y value for calculating Y axis
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary:
...cannot encode those things into edje.
In our case, we need vibration when longpressed. But those files are not
audio or image and cannot be encoded into edje. Also, this library is not
opensource so should not be linked directly with edje.
So we should call vibration API by using this plug-in.
Reviewers: raster, cedric, seoz, Hermet
CC: cedric
Differential Revision: https://phab.enlightenment.org/D588
Was fien on the normal path but missing on the error path. Also remove
the spurious break after the return. Would never be reached. Looks like
a copy and paste bug to me.
CID 1187638
It seems that a different version of freetype is causing some different
values to be calculated for some glyphs. Also, we consider the whole
font list when calculating max ascent/descent, so there will always be
differences there.
This commit just laxes the tests, requiring the values to be at least
the values we expect from our font.
Fixes T1079
@feature: This adds (preliminary) support for ecore_evas_alpha_set and
ecore_evas_transparent_set
NB: This is just the function placeholders and does not actually
implement transparency yet
Signed-off-by: Chris Michael <cp.michael@samsung.com>
ignore_events settings
@feature: This adds support for: ecore_evas_maximized_set,
ecore_evas_fullscreen_set, ecore_evas_withdrawn_set, and
ecore_evas_ignore_events_set functions to the drm engine
Signed-off-by: Chris Michael <cp.michael@samsung.com>
@feature: This adds support for ecore_evas_iconified_set in ecore_evas
drm engine.
NB: This does not actually iconify the ecore_evas yet tho
Signed-off-by: Chris Michael <cp.michael@samsung.com>
@feature: This adds support for ecore_evas_layer_set function used to
set the layer of the ecore_evas
Signed-off-by: Chris Michael <cp.michael@samsung.com>
@feature: This adds support for ecore_evas_rotation_set function and
updates the Evas rotation accordingly
Signed-off-by: Chris Michael <cp.michael@samsung.com>
@feature: This adds support for the ecore_evas_move_resize function
and calls the appropriate internal functions for this ecore_evas
Signed-off-by: Chris Michael <cp.michael@samsung.com>
@feature: This adds support for updating the ecore_evas location when
ecore_evas_move is called, and also calling any "move" function of the
ecore_evas.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
callbacks of the ecore_evas
@feature: Add support for setting the callback functions to call when
the ecore_evas gets mouse in or mouse out events
Signed-off-by: Chris Michael <cp.michael@samsung.com>
@fix: If we are using the ecore_wl library in a "server", we cannot
sit and 'sync' during the init process as that just leaves the server
in a stalled state waiting for ecore_wl_init to complete (which never
does because the server has not finished it's work).
Signed-off-by: Chris Michael <cp.michael@samsung.com>
@fix: ecore_evas_window_get expects an Ecore_Window to be returned.
Because of this, we need to have a 'window' that can be returned via
ecore_evas. For this case, we will use the output's framebuffer id as
the 'window' so we need to set that into the engine info so that
ecore_evas can fetch it.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
register the prop.window for events.
@fix: ecore_evas_window_get expects an Ecore_Window to be returned so
we cannot use a void pointer in ecore_drm_device_window_get.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
@fix: The majority of ecore_evas code expects that the 'window' returned
from ecore_evas_window_get be an Ecore_Window. Previously, this was
not possible as this function was using a void pointer. This change
fixes that issue.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
In evas_gl_common_image_draw, if an image is drawn with a fresh context,
containing no clip and no cutouts, then it will be wrongly clipped to
the source image size instead of the destination surface size.
This case seems to never happen, ever, since the contexts are always
fully set by the render functions.
@fix
evas_gl_common_buffer_dump can be used to dump all frames into
a series of PNG files. But the filename contained some garbage
characters (and potential segv, too).
(cherry picked from commit a0f886138ed5a28d0d1596df3b805fca06d1ae31)
Summary:
When edje class member is added, edje need to change member according to
the edje class.
@fix
Reviewers: raster, tasn, woohyun, seoz, Hermet, cedric
Reviewed By: raster
CC: cedric, herdsman
Differential Revision: https://phab.enlightenment.org/D637
Summary:
When the text was shorten by ellipsis, object size was fit to the text width.
If new text was set to the object, the text calculated with the smaller size.
It made shorten the object size when the text is set repeatly.
If the text is cutted off with ellipsis, it means there is no need to
resize the object.
Test Plan: elementary_test -> FileSelector Entry -> Click "Toggle Folder Only mode" button repeatly.
Reviewers: woohyun, tasn, raster, so.penible.animation, Hermet
Reviewed By: raster
CC: cedric, herdsman
Differential Revision: https://phab.enlightenment.org/D636
Now, it is possible to assign a default return value for a
method/property.
It will be used in case the function invocation makes issues, e.g eo_do
failing to find the function...
Summary:
The Doxygen header has an opening @\{ with no matching @\}, which
Doxygen will complain about. There is no explicit grouping associated
with the @\{, so I just removed it.
Test Plan: make doc 2> doxyerr.log
CC: cedric
Differential Revision: https://phab.enlightenment.org/D611
Signed-off-by: Cedric BAIL <cedric.bail@free.fr>
Summary:
These files are missing group titles on the @defgroup line. Added the titles so Doxygen does not
complain.
Test Plan: make doc 2> doc/doxyerr.log
CC: cedric
Differential Revision: https://phab.enlightenment.org/D612
Signed-off-by: Cedric BAIL <cedric.bail@free.fr>
configure: fix prerequisite header issue
Summary:
in some platforms like openBSD <sys/socket.h> must be included before
net/if.h
the canonical way to ensure that with autotools is by providing that
fourth directive.
evas: use MAP_ANON instead of MAP_ANONYMOUS
Stupid unpredictable standards (or not so standard).
MAP_ANON exists and is defined almost anywhere unlike MAP_ANONYMOUS
Let's use that for portability's sake (they are practically identical
anyway)
Reviewers: raster, cedric
Reviewed By: cedric
CC: cedric
Differential Revision: https://phab.enlightenment.org/D616
Signed-off-by: Cedric BAIL <cedric.bail@free.fr>
Summary:
There is a crash in naviframe demo and the stack points to the clip set function where it tries to acess evas object
from a NULL layer , by going through the log found out raster has already added the NULL check in clip_unset function
so just added the check in clip_set.
Reviewers: seoz, raster
CC: cedric
Differential Revision: https://phab.enlightenment.org/D625
This tag indicates that the ownership of the parameter/return
value changes.
It is needed by generators (C++/LUA...) to determine if it has to be
freed or not, if it can be used as is or need to be copied...
Before eo_do invocation, generated legacy functions returning a value
initialize it to 0.
This change is needed in the case that eo_do fails to find some
function, which leads to an unitialized value and behavior.
Tokenizer's approach of looking back is horrible and breaks the
following simple case (bug I had that lead to this patch):
"string\\"
As the parser would get the end quote and check the previous character
if it was a backslash and it was, but it was not escaping the quote,
but being escaped by the previous backslash.
The best approach is to first check for escape and then go to
quote. Escape is simple and only the following byte, so we enter
escape, process the byte and then are back to regular mode (be it
quote or unquote).
Added testcase so we avoid breaking it again.
@bugfix cherry-pick