Commit Graph

27150 Commits

Author SHA1 Message Date
Yeongjong Lee 336500469a ui.relative_layout: add internal clipper
Summary: If there is no clipper of container, color_set and clipper_set api won't work.

Test Plan:
1. elementary_test -to 'efl.ui.relative_layout'
2. Click button1
3. check that buttons color are changed.

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8625
2019-04-24 20:23:52 +09:00
Taehyub Kim b57fd8eb47 eo_parser: fix unreachable code
Summary: fix unreachable code for kw_enum case in parse_unit function

Reviewers: q66, Jaehyun_Cho, woohyun

Reviewed By: q66

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8696
2019-04-24 11:56:32 +02:00
Hermet Park 3bd57c2c66 evas x: code refactoring.
keep simple code as possible.
2019-04-24 16:45:05 +09:00
Marcel Hollerbach 87d430df46 meson: ensure that buffer header is installed correctly
the directory it was installed to was <prefix>/include/evas/engine-1/
instead of <prefix>/include/evas-1/ which is wrong. This fixes
enlightenment building.

Reviewed-by: Lauro Neto <lauromauro_>
Differential Revision: https://phab.enlightenment.org/D8692
2019-04-24 08:52:43 +02:00
Jaehyun Cho 1bdb278f5c efl_canvas_animation_player: fix to apply animation when player starts
Previously, animation was not applied immediately when player starts
animation because elapsed time is 0.
This caused flickering object if animation begins with alpha 0 because
the alpha 0 animation is not applied immediately.

Now, animation is applied immediately when player start animation.
2019-04-24 14:44:50 +09:00
Jaehyun Cho cf4854effb efl_ui_stack: handle memory allocation fail
check if memory allocation succeeds and handle memory allocation fail.
2019-04-24 14:44:19 +09:00
Hermet Park 808df5ecc2 evas wbmp: fix wrong calc order.
Double check patch again, since my wrong logical thinking,
Every width must be considered to rounding up fiting 8 bits.
this new compuation must be correct.
2019-04-24 14:03:37 +09:00
Hermet Park 79183150c7 eolian: remove unreachable code. 2019-04-24 13:21:05 +09:00
Hermet Park bffce65f9c evas wbmp loader: coming previous patch with fixing wrong calc.
Those bits must be rounded if they are not fit to 8 bits.

see: 68fe9ec6bf
2019-04-24 10:18:57 +09:00
Hermet Park 54754ab878 Revert "evas-wbmp: revert previous two patches"
This reverts commit 0ebf41c003.
2019-04-24 10:10:36 +09:00
SangHyeon Jade Lee caa1542610 examples : update list_view examples to use item_class_set not layout_theme_config.
widget_factory support item_class_set for factory created child.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8684
2019-04-23 12:40:57 -07:00
Cedric BAIL 1ec4ad1556 ecore: rely on event instead of creating one Eo object per future that need resolving.
This was a terrible oversight, but the point of having a small native type for future was
for making them efficient. Still we were using one Eo object for dispatching per future
to dispatch new value. I could have gathered all the dispatch with just one object, but
at the end we do have one object that notify us of the loop iteration... the loop object!
And we have event on that object that we can rely to trigger the dispatching of future
without requiring any additional object. So let's do that instead.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8567
2019-04-23 12:40:55 -07:00
Marcel Hollerbach afd4e6bd5b efl_ui_scroller: fix Efl.Content implementation
this commit ensures the following:
- Delete content when new content is set
- Content set input validation
- Correct parent setting

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8682
2019-04-23 12:40:53 -07:00
Marcel Hollerbach 7ee0a3e055 efl_ui_tab_page: implement content_set / unset correctly
This patchset ensures that the following features are supported:
- content-widget deletion on set content
- content-widget validation on set calls
- invalid cases return false
- event emission

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8681
2019-04-23 12:40:51 -07:00
Marcel Hollerbach f9143ec634 efl_ui_popup: fix widget_parent inheritance
when you inherit from widget_parent, you MUST call the super function.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8680
2019-04-23 12:40:49 -07:00
Christopher Michael 22edf6f4b7 efl_core_command_line: Fix resource leak
Coverity reports that we leak the return from _escape(command) here,
so since we have to free the return from _escape, place it in it's own
variable that we can call free() on after we are done with it.

Fixes CID1399105

@fix

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8688
2019-04-23 21:08:46 +02:00
Lauro Moura e23914fce7 csharp: Fix test code memory handling
Summary:
It was causing the test to crash when running in debug build.

Also some minor fixes cleaning up stuff when exiting.

Fixes T7792.

Reviewers: segfaultxavi, vitor.sousa

Reviewed By: segfaultxavi, vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7792

Differential Revision: https://phab.enlightenment.org/D8679
2019-04-23 13:02:29 -03:00
Mike Blumenkrantz 0ebf41c003 evas-wbmp: revert previous two patches
Revert "evas wbmp: remove unnecessary size overflow."
This reverts commit 1061d0a751.
Revert "evas image: check format more strong way for wbmp."
This reverts commit 68fe9ec6bf.

this caused wbmp files to no longer be loadable

ref T7824

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8689
2019-04-23 17:48:41 +02:00
Boris Faure a09920c96e fix compilation on alpine
Reviewers: zmike

Reviewed By: zmike

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8642
2019-04-23 09:40:53 -04:00
Christopher Michael 6e48257b79 elput: Remove useless call to eldbus_message_unref
If we are returning here due to a failure to create the eldbus
message, then there is no point in trying to free it as it is already
null.

@fix
2019-04-23 09:14:52 -04:00
Christopher Michael 281e90cda5 elm_atspi_bridget: Fix resource leak
Coverity reports and 'req' leaks here so we need to unref the eldbus
message object if we are exiting this function.

Fixes CID1399424

@fix
2019-04-23 09:14:27 -04:00
Marcel Hollerbach d40b18540e meson: enable strict linking
Summary: with this commit you can compile efl with -Wl,-z,defs.

Reviewers: zmike

Reviewed By: zmike

Subscribers: simotek, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8677
2019-04-23 09:06:52 -04:00
Hermet Park 1061d0a751 evas wbmp: remove unnecessary size overflow.
since this patch 68fe9ec6bf
it checks size validation earlier,
this varification doesn't need anymore...
2019-04-23 21:33:40 +09:00
Lauro Moura cb0c20eaf3 csharp: Fixes repeated method names.
Summary:
After D8397, interfaces have the I prefix again, so the "Do" prefix on
methods with repeated names may not be needed for them in most cases.

This commit also consolidates the method_managed_name calls with the
overload receiving attributes::function_def instead of plain name.

Fixes T7791

Depends on D8645

Reviewers: vitor.sousa, felipealmeida, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7791

Differential Revision: https://phab.enlightenment.org/D8650
2019-04-23 12:31:37 +02:00
Hermet Park 68fe9ec6bf evas image: check format more strong way for wbmp.
wbmp format doesn't have any tags for verifying file header,
It's easy to pass other format headers if they have the first 1 byte 0x0,

This ocassionally brings wrong result (= succeeed loading image),
if unknown file format is tried.

So, to make it sure, here verify the size of image additionally.
if the image size is not expected, It returns fail as the result.

This problem is actually happened in this scenario.

open any mpeg file with elm_image.
elm_image_file_set() will return true though it fails to read data.
since wbmp make it pass to succeed.

@fix
2019-04-23 19:19:07 +09:00
Lauro Moura 766e837a86 csharp: refactor native_inherit into a nested class.
Summary:
Efl.Ui.Button_NativeInherit -> Efl.Ui.Button.NativeMethods

Will help using EFL# with completion tools.

* Added pragmas around the native function definitions to avoid
  warnings related to the name of native functions
* Updated some style fixes for native function wrappers.

Their preamble and epilogue styling will be dealt with in future diffs.

As a side effect, concrete classes had to be made public again as they
hold the function pointers to the native methods of their interfaces.
Thus a third party library class that implements IFoo should be able to
access these methods.

Fixes T7743

Depends on D8622

Reviewers: vitor.sousa, felipealmeida, segfaultxavi

Reviewed By: vitor.sousa, segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7743

Differential Revision: https://phab.enlightenment.org/D8645
2019-04-23 11:57:51 +02:00
Taehyub Kim f8377ed549 elc_hoversel: fix selected event compatibility issue
Fix selected event compatibility issue.
When item of hoversel is selected,
item selected callback does not call in hoversel sample of elementary_test.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8683
2019-04-23 08:59:14 +02:00
Cedric BAIL 75f43ca971 ecore: add an helper for Efl.Boolean_Model to get all the index with a requested value.
Differential Revision: https://phab.enlightenment.org/D8569
2019-04-22 19:50:18 -07:00
Lauro Moura 0c5a0186d1 csharp: Small style changes
Summary:
- Marshal annotations
- Parameters
- Structs
- Parts

Depends on D8614

Reviewers: segfaultxavi, vitor.sousa

Reviewed By: segfaultxavi, vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8622
2019-04-22 18:20:52 -03:00
Lauro Moura 863c0b3272 csharp: klass style changes
Summary:
Warnings down to 120k

Depends on D8612

Reviewers: vitor.sousa, felipealmeida, segfaultxavi

Reviewed By: vitor.sousa, segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl_language_bindings

Differential Revision: https://phab.enlightenment.org/D8614
2019-04-22 18:12:19 -03:00
Lauro Moura 7681d187da csharp: Simple spacing rules changes
Summary: Also do not generated empty tag if doc would be empty.

Reviewers: vitor.sousa, segfaultxavi

Reviewed By: vitor.sousa, segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8612
2019-04-22 18:04:31 -03:00
Mike Blumenkrantz 1291af37ad autotools: add lib/evas/common/evas_map_image_internal_high.c to dist
Summary: ref 84e162b01f

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl_build

Differential Revision: https://phab.enlightenment.org/D8676
2019-04-22 07:21:58 -04:00
Wonki Kim 410c1f9587 ecore_wl2_input: fix a way it works when it has multiple input devices
Summary:
if there are multiple input devices, especially touch and mouse type devices simultaneous.
a logic can't recognize the current input device in _ecore_wl2_input_mouse_move_send function.
because focus.touch would not be cleared even touch actions from user has finished.

This patch clears input->focus.touch if users release their finger from touch device.

Reviewers: raster, eagleeye, devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8673
2019-04-22 07:06:58 -04:00
Marcel Hollerbach 3d44b9bdb8 efl_ui_widget: remove unused function
Reviewers: zmike, cedric, segfaultxavi, devilhorns

Reviewed By: devilhorns

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8672
2019-04-22 07:06:40 -04:00
Yeongjong Lee 3e49501043 ui.table: remove leagcy evas_table from Efl.Ui.Table
Remove evas_table.
This expect to improve performance by removing internal function call related
evas_table.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8615
2019-04-21 12:13:13 +02:00
Yeongjong Lee ef3281c924 ui.relative_layout: replace evas_object_event_callback_xxx with efl_event_callback_xxx
remove legacy function

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8630
2019-04-21 12:13:12 +02:00
Cedric BAIL c9e62e957b elementary: fix another instances of no parent for Efl.Io.Model.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8539
2019-04-21 11:36:51 +02:00
Cedric BAIL b2db95947a elementary: fix elm_fileselector_entry model_get to be properly build with a parent and synchronously.
This fix the following warning:
ERR<12924>:eo ../src/lib/eo/eo.c:880 _efl_add_internal_start() Creation of 'Efl.Io.Model' object at line 443 in '../src/lib/elementary/elc_fileselector_entry.c' is done without parent. This should use efl_add_ref.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8536
2019-04-21 11:36:50 +02:00
Cedric BAIL 856a453dd8 elementary: add a queue to postpone object destruction when necessary.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8540
2019-04-21 11:36:48 +02:00
Cedric BAIL 44fb906c4f elementary: enforce Efl.IoModel as a base type for fileselector.
On the long run, we might just want to have an Efl.Model dedicated to
be used by fileselector and inherit Efl.IoModel from it. At the moment,
we don't, but I think it is still best to rely on this assumption to
make the fileselector code simpler.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8654
2019-04-21 11:36:47 +02:00
Cedric BAIL 3b0261d552 eio: rely on inheritance and reflection for Efl.IoModel path property.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8653
2019-04-21 11:36:46 +02:00
Cedric BAIL ef4dde48a0 ecore: implement reflection for Efl.LoopModel properties.
This enable relying on Eo reflection capabilities to expose Efl.Model properties.
Should make API nicer to maintain.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8652
2019-04-21 11:36:45 +02:00
Marcel Hollerbach 0bd3ab8252 efl_ui_spec: add tests for efl.content
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8640
2019-04-21 10:51:46 +02:00
Marcel Hollerbach 02ce09fbb4 elm_part_helper: emit changed events when content is changed
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8639
2019-04-21 10:51:45 +02:00
Marcel Hollerbach 6c9b020a0f efl_ui_win: do not error when NULL is setted as content
NULL is valid, and the sub_object code does refuse to allow NULL, hence
we need this check here.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8638
2019-04-21 10:51:44 +02:00
Marcel Hollerbach e9a7da0549 efl_ui_layout: only delete and unparent objects here when alive
something else might cause the object to get magically revived. Once the
object is invalidated, some things are able to set a parent again, which
causes the widget to continue with refcount 1 and a parent.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8637
2019-04-21 10:51:43 +02:00
Marcel Hollerbach 4ce2a29c93 efl_ui_panel: redo content handling
before the events where not emitted correctly. Additionally input values
like 0x1 have been accepted as valid.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8636
2019-04-21 10:51:42 +02:00
Marcel Hollerbach bb6c7c6782 meson: make it possible to link our engines against evas
Summary:
it FINALLY happend! With this python bindings should be able to work
again with a meson build, you can also enable b_lundef right now. And it
appears to work, with this we can also get another step closer to a
windows build.
Depends on D8669

Reviewers: zmike, stefan_schmidt, cedric, vtorri

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8670
2019-04-19 14:39:31 -04:00
Marcel Hollerbach 0deba6ef4c meson: seperate the engine build file from the rest
Summary:
this is required later on, where we want to build the engines
undependend from image loaders etc.
Depends on D8668

Reviewers: zmike, stefan_schmidt, cedric, vtorri

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8669
2019-04-19 14:39:25 -04:00
Marcel Hollerbach c8c374ef48 meson: move build definitions of software_generic to libevas
Summary:
with this we don't have any static module anymore in the engine
directory. This means either *all* modules in the enignes directory are
static OR shared. There is no mixture anymore. This is a requirement for
the directory to be build whenever we want it to be build.
Depends on D8667

Reviewers: zmike, stefan_schmidt, cedric, vtorri

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8668
2019-04-19 14:39:22 -04:00
Marcel Hollerbach a974c864ad meson: move gl_common to gl_generic
Summary:
sooo, gl_common stuff is only used by gl_generic, (and maybe others.
However, it is build static anyways and only linked into gl_generic).

This means, only software_generic is still in here and we can remove one
special case from the build instructions.

Reviewers: zmike, stefan_schmidt, cedric, vtorri

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8667
2019-04-19 14:39:17 -04:00
Shinwoo Kim e9b2e3c6c3 Revert "edje_calc: make INTP use TO_INT_ROUND"
Summary:
This reverts commit be00af9bc3 which has
incorrect calculation. For more information please refer to:

https://phab.enlightenment.org/D8665

Reviewers: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8666
2019-04-19 17:25:13 +09:00
Hermet Park 29b65ccf88 evas svg: code refactoring.
reorder data fields to packing memory fit.
2019-04-19 15:21:07 +09:00
junsu choi 41152dc29e vg_common_svg : Implement gradientTransform property of linearGradient
Summary:
Svg parser gets transformation matrix information from svg.
If there is a matrix, calculate matrix operations
on the start and end points of the gradient.

TODO: We should implement gradientTransform of radialGradient.

Test Plan: N/A

Reviewers: Hermet, smohanty

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8663
2019-04-19 15:07:12 +09:00
junsu choi 5403af9629 vg_common_svg: Prevent duplicate operations for percentage value
Summary:
x1, y1, x2 and y2 of Svg_Linear_Gradient structure must be a percentage value.(0 ~ 1)
but these variables are reused with efl_gfx_gradient_linear_start/end_set/get
and duplicate operations occur.

Test Plan: N/A

Reviewers: Hermet, smohanty

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8662
2019-04-19 13:56:49 +09:00
Cedric BAIL 3715faf965 elementary: ensure that the parent model is still alive when resolving future for fileselector.
This future where relying on the parent model being alive to work (efl_parent_get). For
that reason we should have been using efl_future_then with the parent Model as a measure
to make sure this is always the case.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8500
2019-04-18 16:19:47 -07:00
Cedric BAIL 3730447f0c ecore: move property string definition to shared headers for Efl.Composite_Model.
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D8568
2019-04-18 15:26:39 -07:00
Vincent Torri a3f4f61599 Evil tests: remove tests of functions provided by mingw-w64
Summary: mingw-w64 developpers already tests basename and dirname

Test Plan: compilation

Reviewers: zmike, raster

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8649
2019-04-18 14:48:17 -04:00
Daniel Kolesa 6ee2df55aa eolian: remove legacy generation from tests 2019-04-18 19:35:53 +02:00
Marcel Hollerbach e881f936e8 meson: unbreak cxx header installation
Summary:
before we had *correct* fileds in the subdir: keyword. However,
install_dir: was wrong, so *this* time, this seems right.

Reviewers: cedric, zmike, segfaultxavi, raster

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8634
2019-04-18 12:30:22 -04:00
Vincent Torri ecce595b24 Windows: remove fnmatch and regex in Evil and use the ones in regex DLL installed by ewpi
Test Plan: compilation with autotools and meson (at least as far as it can go)

Reviewers: zmike, raster

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8646
2019-04-18 12:30:22 -04:00
Vincent Torri e65c49b422 ecore_sdl: fix detection of sdl with meson build
Summary: SDL 2.* pkconfig file is sdl2, not sdl

Test Plan: meson configuration

Reviewers: zmike, raster

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8647
2019-04-18 12:30:22 -04:00
Daniel Kolesa 7807f7750f eolian_gen: remove support for legacy header file generation 2019-04-18 18:10:45 +02:00
Daniel Kolesa e81ecf09cd autotools: remove usage of eolian_gen .eo.legacy.h generation 2019-04-18 17:55:06 +02:00
Daniel Kolesa c0acf619ae meson: remove usage of eolian_gen .eo.legacy.h generation 2019-04-18 17:50:42 +02:00
Daniel Kolesa b4e85c954f elm_scroller_legacy: remove generated legacy include
Instead replace with the type definitions in this place. It is
not included from anywhere else, so it's fine.
2019-04-18 17:09:30 +02:00
Mike Blumenkrantz f381bf8f01 tests: add api coverage for evas image
verify that legacy apis function as expected when using legacy api to
load and unload images

Reviewed-by: Hermet Park <hermetpark@gmail.com>
Differential Revision: https://phab.enlightenment.org/D8619
2019-04-18 16:04:17 +02:00
Mike Blumenkrantz 8135b4698c evas: implement Efl.File.unload for evas image classes
this fixes unloading images using the evas_object_image_file_set legacy
api

ref D8616

Differential Revision: https://phab.enlightenment.org/D8618
2019-04-18 16:04:14 +02:00
Daniel Kolesa ed0c813417 evas_legacy: remove unused generated legacy includes
These define types never used in Evas_Legacy.h.
2019-04-18 15:53:46 +02:00
Daniel Kolesa 1cd30eec90 efl_ui_layout, elm_layout_legacy: add missing/remove unused include
The efl_ui_layout.eo.h header was incorrectly not included in
Elementary.h, which resulted in build failures after the legacy
and otherwise unused efl_ui_layout.eo.legacy.h include was removed.
2019-04-18 15:35:49 +02:00
Daniel Kolesa 98ef86aa14 elm_progressbar_legacy: remove unused include
This does not define anything useful.
2019-04-18 15:32:15 +02:00
Daniel Kolesa 6c63fbbdb4 efl_ui_slider: remove unused legacy header include
This does not define anything useful.
2019-04-18 15:32:15 +02:00
Daniel Kolesa 94a2c9cd15 elm_image_legacy: remove bad "legacy" include
This only contains some Efl_ structures and typedefs now, hidden
behind a BETA_API define. It has no place in legacy.
2019-04-18 15:32:15 +02:00
Christopher Michael b462d9bc11 ecore-drm2: Fix API function parameters for background color set
Passing int as parameters here is too small for left shifting the
colors so make these parameters uint64_t
2019-04-18 09:10:49 -04:00
Christopher Michael 5fe11b2dbf ecore-drm2: Update printf format to match changed value type
Commit 8e0c4d83ed changed the atomic property value type to be
uint64_t so we need to update the printf's to reflect that
2019-04-18 09:07:17 -04:00
Christopher Michael 2aaca58de0 ecore-drm2: Add API function to set crtc background color
This patch adds a new API function we can be called in order to set
the crtc background color of a given output.

@feature
2019-04-18 07:21:39 -04:00
Christopher Michael edd78d1800 ecore-drm2: Fill in crtc background color (if supported) during atomic
commits

Small patch to add the crtc background_color property (if supported)
to any atomic tests/commits

@feature
2019-04-18 07:21:39 -04:00
Christopher Michael d09664e20e ecore-drm2: Add background_color to crtc atomic properties
This patch adds a new field to the crtc atomic state which will be
used to support crtc background_color property, and also fills in that
state during crtc atomic state fill.

@feature
2019-04-18 07:21:39 -04:00
Christopher Michael 8e0c4d83ed ecore-drm2: Make atomic property values support uint64_t
Some Atomic property values are actually uint64_t, so fix the
structure to reflect that.

@fix
2019-04-18 07:21:39 -04:00
Hermet Park 3856e1a002 evas gl: move to floating point coordinate system.
Summary:
GL engine has used integer coordinates system since it's born though
OpenGL basically uses floating point vertex coordinates system.

There were many dissatisfaction, complaints about this
since object's transition is jiggled, not perfectly smooth.

It's obvious because Positioning must be stepping with integer units
without any subpixel rendering.

Our gl engine currently supports msaa options and evas map allows to
have double precivion coordinates system, our engine must do handle this over as well,
to work together.

If you don't like change,

We could switch behaviors optionally (turn on, only when msaa is enabled)
But I think it's pointless using integer coordinates system in GL thesedays.
It just make code complex to maintain.

There will be an additional patch coming for SW backend map behavior soon.

Left: before patch
Right: after patch

{F3694624}

Reviewers: #committers, raster

Reviewed By: #committers, raster

Subscribers: raster, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8552
2019-04-18 20:08:16 +09:00
Hermet Park 9c66a4751c evas map: move to floating point coordinate system in high-quality drawing.
evas map has used integer coodinate system since it's born,

since object's transition is jiggled, not perfectly smooth.

It's obvious because Positioning must be stepping with integer units
without any subpixel rendering.

Currently, this patch is a sort of preparatory to improve this,
only valid for high-quality evas map (smooth + anti-aliasing)
2019-04-18 19:47:54 +09:00
Carsten Haitzler 70a7dfff46 eina vpath - fix windows warning as simply as possible
the warning is wrong - so keep things simple
2019-04-18 11:33:40 +01:00
Hermet Park cb33853ee8 canvas map: remove the workaround code.
Summary:
the perspective could be handled in the gl backend,
Here map coordinates don't need to get perspective ones but
local coordinates instead as it does same to integer coordinates.

I have no idea origin issues exactly,
but this changed fx, fy values are working correctly in client side.

Reviewers: devilhorns, #committers

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8563
2019-04-18 19:21:18 +09:00
Hermet Park 77a9093af7 evas common: small optimization.
don't repeat computing every iteration.
2019-04-18 18:51:16 +09:00
Marcel Hollerbach 11442eca6f Revert "tests: add api coverage for evas image"
This reverts commit cf70826b33.

This test cannot work right now because the fix has not landed.
2019-04-18 11:01:21 +02:00
Xavi Artigas ee3ffd5a49 docs: Clarify Efl.Content behavior
Now we need to make sure implementations actually follow this behavior.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8635
2019-04-18 11:01:21 +02:00
Yeongjong Lee 92a4aea61f efl/elm_scroller: apply color_set correctly
hit_rect/event_rect should ignore color_set.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8629
2019-04-18 11:01:20 +02:00
Yeongjong Lee 41136db8e8 ui.widget: remove elm_widget_sub_object_parent_add from each of widgets
since commit a1addad60e, To add myself as a sub object of parent object will be
done in Efl.Ui.Widget constructor.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8280
2019-04-18 11:01:19 +02:00
Ali Alzyod 80ffed5d85 Freeing Global Memory list on destructor
Issue with global list item, used to same styles. (in destructor we do not remove styles from it, which will cause memory leak)

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8578
2019-04-18 08:33:47 +02:00
Hermet Park f10bd61c9d evas map: shut up annoying compile warnings.
These variables must be logically initialized,
but compiler couldn't catch it, prints warnings.
2019-04-18 15:08:35 +09:00
Mike Blumenkrantz cf70826b33 tests: add api coverage for evas image
Summary:
verify that legacy apis function as expected when using legacy api to
load and unload images
Depends on D8618

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8619
2019-04-18 09:59:58 +09:00
Vincent Torri 7404904a43 ecore_win32: use AddClipboardFormatListener and RemoveClipboardFormatListener explicitely
instead of loading them from user32.dll

Summary: current mingw-w64 declare these functions

Test Plan: compilation

Reviewers: zmike, raster, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8644
2019-04-17 17:31:21 -04:00
Vincent Torri f7608b1e90 ecore_win32: remove explicit define of WM_CLIPBOARDUPDATE
Summary: since ewpi is used, a newer mingw-w64 is used, which defines WM_CLIPBOARDUPDATE

Test Plan: compilation

Reviewers: raster, zmike, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8643
2019-04-17 15:45:50 -04:00
Mike Blumenkrantz 59526ba58d build: use only BUILD_ECORE_IMF_XIM as a define
Summary:
meson and autotools were a bit out of sync with this, resulting in
unexpected behavior

Reviewers: billiob

Reviewed By: billiob

Subscribers: billiob, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8641
2019-04-17 15:45:35 -04:00
Carsten Haitzler f81dfbfe64 eina vpath - clear up vpath to handle env vars that are too big as fatal 2019-04-17 17:44:12 +01:00
Vincent Torri a30caf333e eina_vpath: port to Windows
Test Plan: test example

Reviewers: raster, cedric, zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8633
2019-04-17 17:44:12 +01:00
Cedric BAIL f75675cb62 eio: remove unecessary printf from tests.
Summary: Depends on D8539

Reviewers: zmike, bu5hm4n

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8542
2019-04-17 12:35:06 -04:00
Boris Faure 57befed87a autotools: remove all usage of evas_image_loader_tgv_(cflags|libs)
Summary:
these are empty variables which are apparently causing build errors for
some users in certain cases
Finishes work from c2ae61ed0d (
https://phab.enlightenment.org/D7876 )

Reviewers: zmike

Reviewed By: zmike

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8623
2019-04-17 11:21:21 -04:00
Marcel Hollerbach 6a00de11f7 behavior-tests: add Efl.Ui.Table
there are no tests for Efl.Pack_Table for now, so here comes unification
for Efl.Pack tests.

Differential Revision: https://phab.enlightenment.org/D8557
2019-04-17 15:21:14 +02:00
Marcel Hollerbach 37a5d6c0d1 efl_ui_table: remove callbacks when item is removed
everything else is wrong.

Reviewed-by: YeongJong Lee <yj34.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8556
2019-04-17 15:21:14 +02:00
Marcel Hollerbach f7baa89ca9 efl_ui_table: correctly delete all items when clearing / unpacking
otherwise we do not clear the internals, and fail to get the count to 0.

Reviewed-by: YeongJong Lee <yj34.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8555
2019-04-17 15:21:13 +02:00
Marcel Hollerbach 48778f3cfb efl_ui_table: hardening of pack_at function
_pack_at is used to add new subobjects to the table. When a object is
already part of this table, then we should not add it again. Additional,
when there is already a gi structure, but the parent is something else,
then we should NOT just reuse this struct, otherwise we might use a
struct reference that we do not own. The struct could be owned by
another table widget.

The test must be adjusted, before we did not error on adding a widget
twice. Now we do (just like in box). Hence we should not do that in
test.

Reviewed-by: YeongJong Lee <yj34.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8554
2019-04-17 15:21:12 +02:00
Marcel Hollerbach 6440e509a0 elm: here comes a new testsuite
We have two elementary test suite, what is more obvious than just adding
a third one! This testsuite aims for establishing a standard behaviour
for the interfaces we have added in efl now. This first part here brings
a few testcases for Efl.Pack which are currently only passing for
Efl.Ui.Box. More widgets will be added afterwards.

The testcases themself are not defined after what worked or did not
work, but rather what made sence (in my opinion ^_^).

ref T7767

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D8518
2019-04-17 15:21:11 +02:00
Marcel Hollerbach b0549bb8cc efl_ui_box: print more errors,
when a element is added two times, we should print an error. Same for
removing a child that is not part of this container.

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D8522
2019-04-17 15:21:10 +02:00
Marcel Hollerbach adc51e882c efl_ui_widget: we should ensure that every subobject is a gfx entity
we are calling visible_set on them later on, this will drop errors,
additionally this safes us from checking this in the widget-container
code.

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8520
2019-04-17 15:21:09 +02:00
Yeongjong Lee d5445918ec ui.box: remove leagcy evas_box from Efl.Ui.Box
Remove legacy stuff from Efl.Ui.Box.
This expect to improve performance by removing internal function call related
evas_box.

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8417
2019-04-17 15:21:07 +02:00
Yeongjong Lee 0585355282 efl.pack_linear: Clarify behavior and docs
Some APIs accept both positive and negative indices when accessing items.
This patch changes the documentation for the lower limit from `-(count - 1)` to
`-count` to allow accessing the very first item.

For example (content_count = 5):
|              |first item|  |  |  |last item|
|positive index|       0  | 1| 2| 3|    4    |
|negative index|      -5  |-4|-3|-2|   -1    |

If negative indices are limited to be >= -4 the first item cannot be accessed
using negative indices.

Also, range limit of `pack_at` is removed for usability.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Reviewed-by: YeongJong Lee <yj34.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8433
2019-04-17 15:21:06 +02:00
Taehyub Kim f85bb6bc9a elm_notify: fix theme apply logic for new return value
Summary: fix theme apply logic for new return value

Test Plan: 1. run elementary_test for elm_notify and elm_popup

Reviewers: Jaehyun_Cho, woohyun

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8628
2019-04-17 16:59:24 +09:00
Jaehyun Cho 382520fda4 efl_ui_pager: fix to delete component objects when pager is deleted
Pager creates Efl.Canvas.Rectangle objects when pager is constructed.
Since the parent of these component objects is evas, these component
objects are not deleted automatically when pager is deleted.
These component objects cause event block after pager is deleted.
(e.g. click event is blocked)
To resolve this issue, these component objects are deleted manually when
pager is deleted.
2019-04-17 15:22:54 +09:00
Jaehyun Cho 74d1a0ec08 Revert "Revert "elm - fix harmless warning for clean build""
This reverts commit d2eebb6f5f.

To restore e3d2a0cf12 which implements
features during feature freeze period, the revert commit is reverted.
2019-04-17 15:22:38 +09:00
Jaehyun Cho 326b1e440a Revert "Revert "test/efl_ui_pager: fix demo""
This reverts commit f652bf9328.

To restore d3bb1a7342 which implements
features during feature freeze period, the revert commit is reverted.
2019-04-17 15:22:13 +09:00
Jaehyun Cho 561764b972 Revert "Revert "test/efl_ui_pager_scroll: fix demo""
This reverts commit 5742caa601.

To restore 30bd541bf2 which implements
features during feature freeze period, the revert commit is reverted.
2019-04-17 15:21:49 +09:00
Jaehyun Cho b5c078bebb Revert "Revert "efl_ui_pager: implement unpack_all/clear function""
This reverts commit b28f1e034b.

To restore 74c48f0296 which implements
features during feature freeze period, the revert commit is reverted.
2019-04-17 15:21:27 +09:00
Jaehyun Cho cf029754eb Revert "Revert "efl_ui_pager: implement unpack_at function""
This reverts commit a10e1bc597.

To restore 913a5bff66 which implements
features during feature freeze period, the revert commit is reverted.
2019-04-17 15:20:28 +09:00
Vincent Torri 6559f64d28 evil: remove tmp and home dir get
Summary: eina implement them for all OSes

Test Plan: compilation

Reviewers: raster, cedric, zmike

Reviewed By: raster

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8621
2019-04-16 17:59:28 +01:00
Mike Blumenkrantz d31adef9fe efl_ui_image: fix warning about calling smooth_scale_set on non-image
Summary: this is triggered during object construction when no image exists

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8617
2019-04-16 08:55:11 -04:00
Xavi Artigas 82b005875d docs: Typo 2019-04-16 11:06:23 +02:00
Lauro Moura cacbd9e58d cxx: Fix eldbus meta include name
Summary:
It should not conflict with Eldbus_Model header

Fixes T7805

Reviewers: vtorri

Reviewed By: vtorri

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7805

Differential Revision: https://phab.enlightenment.org/D8611
2019-04-15 19:20:10 -03:00
Lauro Moura 9e29b69c2a csharp: Remove warning about clashing GetType() methods
Summary:
This changes the naming scheme to replace `GetType`/`SetType` methods
with `Get<CLASS>Type`/`Set<CLASS>Type`. Like `GetGestureType`.

Avoids cs compiler complaining of clashing with `System.Object.GetType`.

Fixes T7727

Reviewers: segfaultxavi, felipealmeida, vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7727

Differential Revision: https://phab.enlightenment.org/D8609
2019-04-15 16:31:45 -03:00
Lauro Moura 1dd25a9238 csharp: Remove unused variable `methods` warning.
Summary: Only generate it if there was at least one method registered.

Reviewers: vitor.sousa, felipealmeida

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8608
2019-04-15 15:55:09 -03:00
Lauro Moura b6529a65c6 csharp: Rename MarshalTest to MarshalEo
Summary: To better reflect its intent

Reviewers: segfaultxavi, vitor.sousa, felipealmeida

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8607
2019-04-15 15:36:22 -03:00
Lauro Moura d775b58a63 csharp: Fix free_cb calling under dotnet.
Summary:
dotnet's GC seems to be more agressive, showing some issues that usually
do not appear when running under Mono's.

This commit uses for free_cb's the same scheme we already use for
regular Eo refs, using a GC handle to keep the cleaning callback alive.

Reviewers: vitor.sousa, felipealmeida, woohyun

Reviewed By: vitor.sousa

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8593
2019-04-15 15:24:29 -03:00
Lauro Moura 332d6368cd csharp: Make concrete classes internal.
Summary:
They don't need to be public anymore. After merging other changes we can
try to actually remove them.

Fixes T7801

Reviewers: segfaultxavi, vitor.sousa, felipealmeida

Reviewed By: segfaultxavi, vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7801

Differential Revision: https://phab.enlightenment.org/D8601
2019-04-15 14:38:20 +02:00
Vincent Torri f218ac741c Windows : fix the definition of EAPI
Summary:
with autotools, EFL_BUILD was passed to the preprocessor for libraries and binaries, which was wrong. Only libraries must have EFL_BUILD defined. See T7797 for an explanation
This also fix EAPI in Ecore_Getopt.g and Efl_UI.h

Also note that all the wayland and drm Makefile's have not been touched

Test Plan: compilation

Reviewers: raster, zmike, cedric

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8602
2019-04-15 13:34:20 +01:00
Carsten Haitzler 01f634b7db elm test - add tests ofr other styles for panes provided by default 2019-04-15 13:34:20 +01:00
abdulleh Ghujeh bc5df48ffe Unreachable code
Summary: Removed condition that will never be fulfilled

Reviewers: ali.alzyod, bowonryu, woohyun, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8606
2019-04-15 13:55:19 +02:00
Yeongjong Lee 7ded945323 gitignore: add elm_default_config.x
Summary: elm_default_config.x is created by build script.

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8605
2019-04-15 13:08:05 +02:00
Wonki Kim f944f91407 scroll_mgr: fix a type for some vars to be portable
Summary:
char type can be singed or unsinged according to the standard.
variables for keeping sign value should be sign, and that is the reason
why this patch modify a type for some variables explictly.

Reviewers: eagleeye

Reviewed By: eagleeye

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8604
2019-04-15 16:25:29 +09:00
Xavi Artigas 8c45aca05e mono-docs: Allow derived classes to have external examples
Summary:
You can now have external example files for derived classes (Efl.Ui.Button.SetText)
as well as for base classes (Efl.IText.SetText).
If both files are present, both examples are embedded in the docs. The more
examples the better!

Examples for classes in-between the hierarchy (Efl.Ui.Widget.SetText) are not
picked up. Might be worth examining in the future.

Test Plan:
Create example files for both `Efl.Ui.Button.AutorepeatEnabled.cs` and `Efl.Ui.IAutorepeat.AutorepeatEnabled.cs`.
You should see both examples appearing in the docs.

Reviewers: lauromoura, vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8597
2019-04-12 18:13:29 +02:00
Daniel Kolesa 37eee70d56 elua: add all missing eolian api bindings 2019-04-12 15:53:26 +02:00
Carsten Haitzler ae77e58366 evas - fix crash/junk pixel content but with tiled rotate at 270 + neon
@fix
2019-04-12 12:56:40 +01:00
Carsten Haitzler ebf2ca3c5b evas common - tiled rotate - fix signedness of neon intrinsics - warning 2019-04-12 11:24:32 +01:00
Carsten Haitzler eaf78210e8 evas common - convert - rotate tiled - fix const ptr warnings 2019-04-12 11:24:29 +01:00
Carsten Haitzler f43c19ac32 evas map - mark npoints param as unused because it is remove warning 2019-04-12 10:29:42 +01:00
Yeongjong Lee 48c27364fc efl_ui_widget: avoid calling null parent
Summary:
This will fix unnecessary warnings on P280.

Thanks to segfaultxavi for reporting.

ref T7796

Reviewers: zmike, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7796

Differential Revision: https://phab.enlightenment.org/D8599
2019-04-12 09:15:11 +02:00
Woochanlee 638a36ea9a efl_ui_widget: Fix disabled set calling without meaning.
Summary:
The efl_ui_widget_disabled_set calling even the state is not change when widget create and destroy.

It broken backward compatibility.

T7799
@fix

Reviewers: bu5hm4n, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8600
2019-04-12 15:45:37 +09:00
Vincent Torri a12bd0ad30 elementary: rename ELEMENTARY_BUILD to EFL_BUILD like all other libs
Test Plan: compilation

Reviewers: cedric, raster, zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8598
2019-04-11 17:58:56 +01:00
Jaehyun Cho b17e7fa95b efl_ui_list: fix to delete sub objects in efl_object_invalidate
widget's sub objects and callbacks should be deleted in
efl_object_invalidate instead of efl_object_destructor.

@fix
2019-04-11 20:20:50 +09:00
Xavi Artigas 479488335c mono-docs: Properly indent code examples
First code line was indented differently by DocFX because of tabs,
whitespace or who knows what. This adds a newline after the <code>
tag so all code lines have the same indentation.
2019-04-11 13:18:33 +02:00
junsu choi b849ad9022 efl_canvas_vg_container : Support mask tree for multiple mask.
Summary:
If another mask is set in the mask source, the rendering of the mask is performed in order.
The mask will render one buffer in order.
And depending on some types, the initial values of the buffers may be different. (alpha zero or 255).

If the implementation for masking is
efl_canvas_vg_node_mask_set(layer, mask1, MASKADD);
efl_canvas_vg_node_mask_set(mask1, mask2, MASKSUBSTRACT);
efl_canvas_vg_node_mask_set(mask3, mask4, MASKINTERSECT);
Supports rendering for consecutive masks.

Reviewers: Hermet, cedric

Reviewed By: Hermet

Subscribers: #reviewers, #committers, smohanty, kimcinoo

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8517
2019-04-11 19:20:03 +09:00
junsu choi 83d5ea1a42 ector_software_rasterizer: Implement mask blending function.
Summary:
Add Mask blend function(Add, Substract, Intersect, Difference)
this blending function only use mask blending case.

Test Plan: N/A

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, kimcinoo, #reviewers, smohanty, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8509
2019-04-11 19:17:10 +09:00
Xavi Artigas 04a41a3712 mono-docs: Allow embedding external examples
Summary:
New option added to eolian_gen: -e <dir>
This specifies a directory to search for examples. If a file is found with the
same name as an EFL C# class (e.g. Efl.Ui.Button.cs) or as an EFL C# method or
property (e.g. Efl.IText.Text.cs, Efl.IText.SetText.cs) its full
contents will be embedded in the documentation for that class or method within
<example> and <code> tags. This is, in turn, is parsed by DocFX and shown
in Example boxes in the generated pages.
If an example file is not found, no examples are embedded for that object.
If -e is not used, no examples are embedded for any object.

New option added to meson: mono-examples-dir to point to the examples directory.
This directory is then passed to eolian_mono through -e.
Do not use it (or define it to nothing) to disable example embedding.

No performance drop has been observed because of these extra tests.

Right now examples can only be given for base classes, not for derived ones
(i.e. Efl.IText.Text but not Efl.Ui.Button.Text). This will be addressed in a
later commit.

Feature
Depends on D8587

Test Plan:
Create an examples folder and put some files in it:
```
mkdir /tmp/examples
echo 'var button = new Efl.Ui.Button();' > /tmp/examples/Efl.Ui.Button.cs
echo 'button.AutoRepeatEnabled = true;' > /tmp/examples/Efl.Ui.IAutorepeat.AutorepeatEnabled.cs
echo 'button.SetAutoRepeatEnabled(true);' > /tmp/examples/Efl.Ui.IAutorepeat.SetAutorepeatEnabled.cs
```
Configure meson to embed examples and build:
```
meson configure -Dmono-examples-dir=/tmp/examples
ninja
```
Examine the generated efl_ui_button.eo.cs file to see embedded <example> tags,
or run DocFX and bask in the glory of documentation pages with examples:
```
cd doc/docfx
./gendoc.sh
```

Reviewers: lauromoura, felipealmeida, vitor.sousa, zmike, bu5hm4n

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8592
2019-04-11 10:39:09 +02:00
Xavi Artigas 748070125f efl-mono: Allow doc XML tags to be nested
Summary:
This allows inserting nested tags like:
<example><code>bla bla bla</code></example>

The generate_tag_example() is currently unused but serves as an example.

Depends on D8585

Test Plan:
Not much, unless you want to manually call generate_tag_example()
(Which I have done, and it works, I promise).

Reviewers: lauromoura, vitor.sousa

Reviewed By: vitor.sousa

Subscribers: vitor.sousa, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8587
2019-04-11 10:37:45 +02:00
Xavi Artigas c3907032b6 efl-mono: Allow generating doc refs for methods without class
Summary:
Methods without a class (global) make the previous code crash because
func.klass contains something (it cannot be NULL because it is a reference)
but you cannot make much calls on this something.

Test Plan: Currently there are no such references, but I need this working for upcoming patches.

Reviewers: lauromoura, vitor.sousa

Reviewed By: vitor.sousa

Subscribers: vitor.sousa, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8585
2019-04-11 10:37:11 +02:00
junsu choi 9dc611784e svg_parse: Support gradient when <defs/> is not declared.
Summary:
Even if linear or radius gradient is declared,
it will not be output if there is no <defs/>
It can be supported because it stores the declared gradient in loader.gradient.

Test Plan: N/A

Reviewers: Hermet, smohanty

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8591
2019-04-11 17:18:10 +09:00
junsu choi b736697ec7 vg_common_svg : Add missing eet data descriptor
Summary:
Add descriptor to get the value of user_space,
which is a member of Svg_Style_Gradient.

Test Plan: N/A

Reviewers: Hermet, smohanty

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8594
2019-04-11 14:48:05 +09:00
Boris Faure 4f7c06e8a9 ecore_imf: do not loop forever on shutdown when there is no more a display
@fix
2019-04-10 22:46:27 +02:00
Boris Faure e3cdec0ad0 meson: set ENABLE_XIM if the xim module is compiled 2019-04-10 22:44:59 +02:00
Boris Faure 27bb81cc03 ecore_imf: better to check whether the module is compiled 2019-04-10 22:44:14 +02:00
Lauro Moura feaf0e9299 csharp: Fix GetUserMethods and NativeClass
Summary:
- Should only search for methods locally.
- dotnet requires passing false to GetAttributes
- Also added a check when the class overrides no Eo ops.

Reviewers: felipealmeida, vitor.sousa, woohyun

Reviewed By: felipealmeida, vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8588
2019-04-10 15:12:47 -03:00
Carsten Haitzler e2b56fe71d ecore drm2 - handle possible NULL fb when doing a flip 2019-04-10 16:49:47 +01:00
Xavi Artigas 7b483cb548 efl-mono: Fix eolian_mono help
It was a blatant copy&paste of eolian_cxx :D
2019-04-10 16:23:38 +02:00
Xavi Artigas 8985bcd269 docs: Remove silly [[[ typos 2019-04-10 16:09:15 +02:00
Carsten Haitzler d9d0a6cc57 edje example edc - remove misleading signals that aren't used 2019-04-10 11:17:32 +01:00
junsu choi 8ef6c422af svg_parse: Change initial value of gradientUnits of linearGradient
Summary:
The initial value of gradientUnits is objectBoundingBox.
If userSpaceOnUse is declared, change user_space to true.
We do not have to recalculate each value by this change.
The default unit for linear x1, y1, x2, y2 is percentages.
This can be a value from 0 to 1. If svg want to use a value between 0 and 100, it must have a '%' symbol

That is accroding to gradientUnits in here
https://www.w3.org/TR/2015/WD-SVG2-20150915/pservers.html#LinearGradientElementGradientUnitsAttribute

Test Plan:
cd ./src/examples/edje
edje_cc -beta svg.edc && gcc -o svg-test svg-test.c `pkg-config --libs --cflags evas ecore ecore-evas edje`

Reviewers: Hermet, smohanty

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8589
2019-04-10 18:03:05 +09:00
junsu choi 96e6d307b8 svg_parse: The percentage gradient value divide by view's size
Summary:
The default unit of gradient value is percentage.
This can be a value from 0 to 1.
If svg use the '%' symbol, we must divide by 100.
And it must be calculated the same as any other case.

Test Plan: N/A

Reviewers: Hermet, smohanty

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8590
2019-04-10 17:39:36 +09:00
Felipe Magno de Almeida 0afd19ba62 efl-mono: Add test and fix problem with private dynamic types passed as parameters
Summary:
The code that searches the type dynamically fails instead of falling
back to Efl.Object. Now it fallbacks to Efl.Object.

Fixes T7783

Reviewers: bu5hm4n, vitor.sousa, segfaultxavi, woohyun, Jaehyun_Cho, YOhoho, lauromoura

Reviewed By: vitor.sousa, lauromoura

Subscribers: lauromoura, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7783

Differential Revision: https://phab.enlightenment.org/D8574
2019-04-09 18:40:00 -03:00
Lauro Moura e7e1d777f1 csharp: Add some null checks.
Summary:
- Check for nullness when getting stuff from C# to C
- We should return null when wrapping a NULL pointer instead of throwing
  an exception

Reviewers: felipealmeida, vitor.sousa, woohyun

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8580
2019-04-09 16:26:50 -03:00
Felipe Magno de Almeida df3b28b0ab efl-mono: Make override of methods only for methods that are defined by the user
Summary:
Instead of overriding every method and making the callback to C, we
just override the methods that are found by reflection on the type.

Reviewers: bu5hm4n, vitor.sousa, segfaultxavi, woohyun, Jaehyun_Cho, YOhoho, lauromoura

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8579
2019-04-09 11:18:10 -03:00
Felipe Magno de Almeida b1f0031b55 efl-mono: Fix --enable-mono-beta for tests
Reviewers: bu5hm4n, vitor.sousa, segfaultxavi, woohyun, Jaehyun_Cho, YOhoho, lauromoura

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8573
2019-04-09 11:08:30 -03:00
Vincent Torri cbea302b8f unit tests: fix warnings when fork() is not available, fix evil's unit tests compilation
Summary:
* some variables were defined, only when fork() was available
* since Eina.h is included unconditionally, add Eina path in Makefile_Evil.am

Test Plan: compilation

Reviewers: zmike, cedric, raster, devilhorns

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl_build

Differential Revision: https://phab.enlightenment.org/D8586
2019-04-09 10:05:18 -04:00
Vincent Torri 246ab7b254 eldbus unit test: fix warnings
Summary: include libgen.h so that basename() is declared

Test Plan: compilation

Reviewers: cedric, raster, zmike, devilhorns

Subscribers: #reviewers, #committers

Tags: #efl_build

Differential Revision: https://phab.enlightenment.org/D8583
2019-04-09 12:34:19 +01:00
Jaeun Choi 998e9a8f68 elm_panel/efl_ui_panel: disable scrolling when obj is disabled
panels were still scrollable while disabled.
this patch fixes it.
2019-04-08 18:48:34 +09:00
Hermet Park dc1e1a652c evas map: disable anti_aliasing.
We need a proper interface to toggle high-quality mapping,
until that, we disable the anti_aliasing feature.
Since adjecent polygons(such as textpath) shouldn't get this aa feature.
2019-04-08 15:02:47 +09:00
Hermet Park d5551bdda3 evas map: remove redundant code.
Remove old anti-alias code since high quality map is replaced with new one.
New anti-aliasing is logically same but having a regression bug,
it should be stablized.
2019-04-08 14:56:42 +09:00
Hermet Park 84e162b01f canvas map: introduce a new texture mapping for better quality.
Summary:
This new implementation of evas map texture mapping
 is designed for high quality rendering same level to GL.

If you use a high-end device, performance is not too bad, you can turn this on.
You might have practical image quality even in software rendering.

Since this implementation still have a few optimization points (+simd)
and stablizings, it may be useful in somewhat limited envrionments right now.
However the functionality definitely works fine, so please turn this on by
demand (anti_alias + smooth) for a while.

{F3667773} {F3667776} {F3667778}

Reviewers: #committers, devilhorns, raster

Reviewed By: #committers, raster

Subscribers: raster, devilhorns, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8106
2019-04-08 13:21:08 +09:00
Mike Blumenkrantz 15c3843b55 tests: add evas render test for callbacks
Summary:
verify that all callbacks can be incrementally added and triggered during a
sync render (which is the rendering used in unit testing)

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl_tests

Differential Revision: https://phab.enlightenment.org/D8505
2019-04-08 13:19:56 +09:00
Hermet Park 31cf281bdd efl_ui_textpath : enable anti-alising for better quality.
Summary:
Current textpath on sw rendering is too jiggled,
quaility is very poor to use.

This option uses better quality texture mapping logic
in order to improve the image quality.

Depends on D8106

Reviewers: #committers

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8465
2019-04-08 13:16:25 +09:00
Hermet Park 6b4953b468 canvas vg: code refactoring.
Summary: Remove unnecessary argument of an internal function.

Reviewers: #committers, jsuya, cedric

Reviewed By: #committers, cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8530
2019-04-08 13:15:45 +09:00
Carsten Haitzler 2178258105 tests - remove one of the eina strtod tests as libc is failing
see the comments above the test explaining why it's removed (libc
fails, not eina and having our tests fail because eina is a bit more
robust than libc is not a sane thing to have). but here is the comment
for git history spelunking:

this test isn't viable because libc actually fails the conversion (testing
glibc 2.28 on arch linux). either libc doesn't like the space at the start
thus doesn't skip it but assumes END of numbver string thus not converting
and returning NULL, or it doesn't like InFiNiTyfoo in some way, but either
way this test shows eina to be more robust and do some kind of conversion
and libc to fail and return NULL from strtod into the string pointer. it
also doesnt return an infinite fp thus hitting the default: case and thus
failing etc. ... so all in all remove the test as all it does it cause
failures and if anything shows libc to be failing more than eina.

@fix
2019-04-07 14:47:35 +01:00
Carsten Haitzler 1f402946a2 tests - fix check header to always include eina due to windows
windows means HAVE_FORK is false... thus missing eina.h and now we
have macros that use eina calls always... so this fixes nbuild of
tests on windows

@fix
2019-04-07 14:16:55 +01:00
Carsten Haitzler 954a534bc0 remove vpath test for user dir the test was broken and fixing is insane
so this test fails on windows as getuid isn't there... so this fixes
the windows bild: fix T7728 ... but it also would have failed if $HOME
didn't match what was in the passwd file, and other fallback cases if
they were triggered.

but ... to make this test stay it would have to also change the logic
- check $HOME env first, then pwent entry, if that fails /tmp/UID and
if that fails use /tmp ... the test would effectively be a copy &
paste of the vpath code at which point this is really pointless where
testing is copying the exact (or almost exat) same code into the test.
this is ignoring the #ifdef fun of martching ifdefs that vary on
windows.

the problem is this kind of api is defined very much by the system it
runs on and the environment and situation, so the test has to be as
complex. realistically, instead of copying & pasting the code across
and now having 2 bits of code to possibly mantain (change the lib src
then the test needs changes too as it's a copy & paste), it's just
saner not to have a test for this kind of siutation and accept the
reality of the situation.

@fix
2019-04-07 13:18:25 +01:00
Cedric BAIL 40867cd0b8 eio: do not fail in case of early ECANCEL.
Actually with directory that contain a lot of file and the right order for them,
you would end up getting what you are looking for before you have triggered all
the future callback. In that case, all the future callback are cancelled and
we will get that notification. The test is not failing in this case as we already
got what we wanted.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D8541
2019-04-06 13:13:41 -07:00
Cedric BAIL 9afd12324b elementary: fix error path during shutdown of fileselector.
During shutdown, sometimes, we can have an error generated on the object
while it is invalidating, but before it is invalidated. This lead to
properties on the object to change to an error state and trigger the
properties changed logic. At this point, the parent has already been
destroyed and we don't really have anything more to do. So let's not
do anything.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D8502
2019-04-06 13:13:38 -07:00
Cedric BAIL 589fca7540 elementary: it seems I forgot to initialize some meaningful boolean.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8501
2019-04-06 13:13:36 -07:00
Jaehyun Cho a6cc943211 elementary: fix not to call duplicate theme set
Theme is set during finalize in Efl.Ui.Layout_Base.
Therefore, it is not necessary to call theme set function if the widget
inherits Efl.Ui.Layout_Base and its klass is properly set.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8559
2019-04-06 12:52:57 -07:00
Mike Blumenkrantz 3e7017e6a8 add EFL_VERSION_1_23 define 2019-04-05 20:17:27 -04:00
Mike Blumenkrantz a5e3d2c455 add EFL_VERSION_1_22 defines
whoops
2019-04-05 20:16:44 -04:00
Vitor Sousa 7c28762f15 efl-csharp: fix crash when events trigger after C# object `Dispose`
Summary:
Rework general event handling to check individually each event call, if the
object is not alive then the event will not be propagated.
WeakReferences (and lambdas capturing those WeakRefs) are used to ensure this.

Dispose methods in object now take care of checking if efl libraries are still
initialized and thread-safely unregister each event before performing an
efl_unref on the Eo object.

Event handling in C# is now centered around a single dictionary inside the
object: `EoEvents`.

C# event triggers now properly trigger events on C too.

Standardize C# event-triggering methods names (remove underscores).

Some diminished use of static memory due events no longer requiring static key
objects to be registered/unregistered.

Some fixing of white space generation for generated events.

Depends on D8431

Reviewers: lauromoura, felipealmeida, segfaultxavi

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8564
2019-04-05 19:59:47 -03:00
Vitor Sousa 1c22a3d819 efl-csharp: fix resource deallocation causing errors everywhere
Summary:
This commit mainly fixes errors caused by deallocating resources in the garbage
collector thread. Using `ecore_main_loop_thread_safe_call_async` to queue
resource deallocation in the main thread seems to solve it.

Also, some `efl_ref` calls are added in places they were missing, mainly
objects that unref in the destructor thus taking ownership if efl_ref is not
called.

Also fix improper resource deallocation in tests that were causing it to crash,
enabling it to call Efl.All.Shutdown again. This allocation and the deallocation
process was moved from the Eo class constructor to static class methods that are
called in the test 'set up' and 'tear down' methods.

Queuing resource deallocation in the main thread make it mandatory that tests
call `Efl.App.AppMain.Iterate()` if they want to check proper resource
deallocation (like TestFunctionPointers.set_callback_inherited_called_from_c).

Extras:
Remove duplicated declaration of 'eflcustomexportsmono' in meson in order to fix
some linking problems.

Remove some unused code around deallocation functions that had to be reworked.

Object allocation is now supplied with the call site information it expects
(file name and line for _efl_add_start).

Depends on D8550

Test Plan: meson test

Reviewers: felipealmeida, lauromoura, cedric, segfaultxavi

Reviewed By: lauromoura

Subscribers: segfaultxavi

Tags: #efl_language_bindings, #do_not_merge

Differential Revision: https://phab.enlightenment.org/D8431
2019-04-05 19:58:19 -03:00
Lauro Moura 1e22db1150 csharp: Make classes abstract and rework casting
Summary:
Abstract Eo classes are now proper C# abstract classes.

As a side effect, returning Eo instances from native code was reworked
to return instances of their actual Eo classes instead of previous
behavior of returning a generic Efl.Object and using static_cast.

Instead of `var window = Efl.Ui.Win.static_cast(widget.GetParent());`
Use `var window = widget.GetParent() as Efl.Ui.Win;`

Another side effect was that `efl_constructor` was removed from the list
of supported `Efl.Object` overrides. It is invoked inside
`efl_add_internal_start`, before the bindings makes the association of
the newly created EoId with the C# instance that created it, making the
managed delegate meaningless. C# users then can use regular C#
constructors to initialize fields.

Also changed to set the private data of C#-inherited classes before the
call to constructing methods (aka constructor parameters) so C# classes
can override them correctly.

Fixes T7778
Fixes T7757

Reviewers: vitor.sousa, felipealmeida, segfaultxavi

Reviewed By: vitor.sousa, segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7778, T7757, T7702

Differential Revision: https://phab.enlightenment.org/D8550
2019-04-05 19:56:42 -03:00
Marcel Hollerbach 4edf8036e0 meson: correctly use the correct dependency
Summary:
edje_cc calls epp, so we should not only add edje_cc to the depends on
target, but rather also ensure that epp is availble. Additionally, this
removes unneccessary depends on declarations when we do cross compile.
Depends on D8561

Reviewers: zmike, segfaultxavi, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8562
2019-04-05 08:15:39 -04:00
Vincent Torri 985411f925 dist rule: add files to EXTRA_DIST2 inconditionally
Summary: ecore_con and ethumb were adding files to EXTRE_DIST confitionally

Reviewers: cedric, zmike, raster

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8558
2019-04-04 10:39:44 -04:00
Wonki Kim fa97d86d0f efreetd: remove a tentative global variable definition
Summary:
there is a global variable that is defined tentatively.
this patch modify it not to be tentitive explictly.

Reviewers: raster, cedric, zmike

Reviewed By: raster, zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8551
2019-04-04 09:14:08 -04:00
Mike Blumenkrantz 25b5eeaf11 autotools: add another entry test file to dist
Reviewers: vtorri

Reviewed By: vtorri

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8549
2019-04-03 15:53:24 -04:00
Mike Blumenkrantz 71226b98dd autotools: add entry test file to dist
Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8547
2019-04-03 14:19:04 -04:00
Christopher Michael 8affdd5dac efl_ui_test_callback: Removed defined but unused function 2019-04-03 13:08:59 -04:00
Hosang Kim 55751f1204 evas_callbacks: fix emission of EFL_GFX_ENTITY_EVENT_VISIBILITY_CHANGED
Summary:
When I add "efl_event_callback_add(btn, EFL_GFX_ENTITY_EVENT_VISIBILITY_CHANGED, _cb, NULL)",
_cb is not called. Because of callback_mask is not set correctly.

Test Plan: unit test

Reviewers: zmike, cedric

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8528
2019-04-03 09:32:21 -04:00
junsu choi 894c7af10a elm_entry: prevent from accessing null pointer
Summary: change ELM_ENTRY_DATA_GET to ELM_ENTRY_DATA_GET_OR_RETURN_VAL

Test Plan: elm_entry_file_set(NULL, ~~~);

Reviewers: YOhoho, Hermet, woohyun

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8544
2019-04-03 13:58:35 +09:00
Marcel Hollerbach 272f32ee9f elm_fileselector: disable this test for now
Summary:
this test fails on travis, for the sake of the release we continue
without this tests, after the release we can enable this again with or
without failing tests.

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8538
2019-04-02 14:50:43 -04:00
Carsten Haitzler 07f0044d28 evas image - fix proxy change propagation to fix e video wallpapers
this fixes propagati[on of changes from img sources to proxies which
broke e's video wallpapers. fixes T7685
2019-04-02 18:25:20 +01:00
Woochanlee ebb34ef518 C# bindings: Make efl_gesture_Manager.eo available to bindings
Summary:
It was missing.

The efl_gesture_manager has to using in efl_sharp.

Reviewers: zmike, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7550

Differential Revision: https://phab.enlightenment.org/D7249
2019-04-02 18:56:52 +02:00
Jaehyun Cho 0d37e8ff49 mono: fix space and brace warnings of StyleCop
Summary:
The following warning rules of StyleCop are checked.
Space rules  : SA1000, SA1003, SA1008, SA1009, SA1010, SA1011
Brace rules  : SA1500, SA1501, SA1502, SA1503, SA1513

Indentation is also applied.

Reviewers: lauromoura, felipealmeida, vitor.sousa, woohyun

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8485
2019-04-02 16:57:52 +02:00
Lauro Moura 731db8b644 csharp: Raise exception when Array is null.
Reviewers: felipealmeida, vitor.sousa, segfaultxavi

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8499
2019-04-02 16:48:39 +02:00
Vincent Torri b41ed254a9 remove useless check of ws2tcpip.h
Summary: it is useless to check for header files which necessarly exist

Test Plan: compilation

Reviewers: raster, cedric, zmike

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8535
2019-04-02 10:09:24 -04:00
Carsten Haitzler 96f1e29709 elm naviframe - remove duplicated func prototype in headers
one hade EAPI, one did not and there were 2 anyway, so remove one and
ensure the other has EAPI and the same docs. this should fix T7776
2019-04-02 13:59:01 +01:00
Xavi Artigas 413c987837 docs: Update refs to Efl.Ui.Theme.Apply_Error
Summary:
Proper refs to particular errors cannot be added until T7736 is resolved.

Ref T7717

Test Plan: Only docs updated

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7717

Differential Revision: https://phab.enlightenment.org/D8495
2019-04-02 08:57:35 -04:00
Xavi Artigas 6c01d7177c docs: Format efl_file.h
Summary:
And polish a bit.

Ref T7717

Test Plan: Only docs updated

Reviewers: zmike

Reviewed By: zmike

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7717

Differential Revision: https://phab.enlightenment.org/D8498
2019-04-02 08:57:19 -04:00
Marcel Hollerbach de8993575c efl_check: add API to expect a error
Summary:
sometimes it is not enough to just disable aborting on critical error
messages. Sometimes it is better to explicitly expect an error, and fail
the testcase if there is no error.

This is used in later commits here.

Depends on D8417

Reviewers: YOhoho, segfaultxavi, zmike, woohyun, Jaehyun_Cho

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8519
2019-04-02 08:56:28 -04:00
Vincent Torri 6c403c279d elm: allow config_embed to be run out of tree
Test Plan: compilation

Reviewers: raster, cedric, zmike

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8533
2019-04-02 08:52:11 -04:00
Marcel Hollerbach 2647d93177 ecore: correctly clean up in ecore_fork_reset
Summary:
after a fork does happen, the new process does not have any self created
threads at all. However, _thread_cb can contain suspend calls of
ecore_thread_main_loop_begin. _ecore_main_call_flush will then wait in
the suspend block for the thread to call ecore_thread_main_loop_end.
However, the thread is dead, the end function will never be called.
Hence we should ensure that we definitly kill every entry in _thread_cb
that has a susped flag on true.

This fixes deadlocks while running the testsuites with
EIO_MONITOR_POLL=1
Depends on D8526

Reviewers: cedric, segfaultxavi, zmike

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8531
2019-04-02 08:50:54 -04:00
Marcel Hollerbach 43a522b876 eio: ensure that the monitor starts when it is called to
Summary:
we need to to this here, otherwise we effectfily start the monitor
later, which means, we can miss a change in the filesystem. However,
this makes things a lot slower.

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8526
2019-04-02 08:50:48 -04:00
Marcel Hollerbach c29dae34a0 efl_io_model: start early on monitoring
Summary:
Little introduction into what eio did before this commit:
Efl.Io.Model creation:
  - direct ls of a directory in a thread (A)
  - take all the contents of a directory and feed it slowly back into
the mainloop
  - when all events have been feeded back to the mainloop and have been
processed: start monitoring (B)

However, any file created between (A) and (B) will not be in the model,
since not the listing nor the monitoring did caputure it. Hence we need
to start monitoring before we actaully start listing. In the callbacks
we then check if we already published something.

ref T7311

Reviewers: zmike, cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7311

Differential Revision: https://phab.enlightenment.org/D8525
2019-04-02 08:50:34 -04:00
Mike Blumenkrantz f5d3030d7b tests: unset eina log callback at end of each efl_app promise test
Summary: ensure that this doesn't trigger cascading errors

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8514
2019-04-02 08:34:18 -04:00
Xavi Artigas 68c530080b docs: Fix common misspellings in H files
Fixed all appearances of words from this list in H files:
https://en.wikipedia.org/wiki/Wikipedia:Lists_of_common_misspellings/For_machines
2019-04-02 13:28:48 +02:00
Xavi Artigas 57da0bee3d docs: Fix common misspellings in EO files
Fixed all appearances of words from this list in EO files:
https://en.wikipedia.org/wiki/Wikipedia:Lists_of_common_misspellings/For_machines
2019-04-02 11:32:05 +02:00
Lauro Moura 683958ee68 eo: Correctly name Realized classes.
The previous preprocessor rule was generating strings like
"\"Efl.App\"_Realized.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8527
2019-04-02 11:02:27 +02:00
Jaehyun Cho fe54a4dd1a elm_widget_item_eo.legacy: change @ingroup to Elm_General
Summary:
The @ingroup of elm_object_item APIs is Elm_General in elm_object_item.h.

Since legacy prefix of Elm_Widget_Item is elm_object_item,
the prefix of Elm_Widget_Item APIs is elm_object_item.

Consequently, to display the legacy Elm_Widget_Item APIs with
elm_object_item APIs, the @ingroup is changed from Elm_Object_Item_Group
to Elm_General.

Test Plan: make doc and check the documentation

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8529
2019-04-02 10:36:57 +02:00
Jaehyun Cho a10e1bc597 Revert "efl_ui_pager: implement unpack_at function"
This reverts commit 913a5bff66.

The commit is reverted because the commit implements features during
feature freeze period before release.

913a5bff66 will be restored after release.
2019-04-02 16:39:40 +09:00
Jaehyun Cho b28f1e034b Revert "efl_ui_pager: implement unpack_all/clear function"
This reverts commit 74c48f0296.

The commit is reverted because the commit implements features during
feature freeze period before release.

74c48f0296 will be restored after release.
2019-04-02 16:36:20 +09:00
Jaehyun Cho 5742caa601 Revert "test/efl_ui_pager_scroll: fix demo"
This reverts commit 30bd541bf2.

The commit is reverted to revert the following commits.
74c48f0296
913a5bff66

The above commits will be restored after release and then
30bd541bf2 will be also restored.
2019-04-02 16:35:12 +09:00
Jaehyun Cho f652bf9328 Revert "test/efl_ui_pager: fix demo"
This reverts commit d3bb1a7342.

The commit is reverted to revert the following commits.
74c48f0296
913a5bff66

The above commits will be restored after release and then
d3bb1a7342 will be also restored.
2019-04-02 16:34:31 +09:00
Jaehyun Cho d2eebb6f5f Revert "elm - fix harmless warning for clean build"
This reverts commit e3d2a0cf12.

The commit is reverted to revert the following commit.
74c48f0296

The above commit will be restored after release and then
e3d2a0cf12 will be also restored.
2019-04-02 16:33:20 +09:00
Hermet Park 08c65ed501 canvas vg: fix wrong key pass for caching surface.
There is a wrong case that fails caching ector surfaces.
Those vector objects manually constructing shapes,
passed wrong pointer as the cacahing key instead of root node pointer.

This fixes it.
2019-04-02 15:43:23 +09:00
Christopher Michael d3a8f0f250 ecore-drm2: Add missing @ingroup for some doxy
Small patch to add missing @ingroup for doxygen comments, and correct
one that was in the wrong group

@fix
2019-04-01 10:31:08 -04:00
Christopher Michael 83d4890c74 efl_ui_selection_manager: Don't leak malloc'd data
Summary:
Coverity reports that we potentially leak char *s here. If we do not
have 'data_ret', then the malloc'd 's' sould be freed as we are not
going to use it.

Fixes Coverity CID1396949

@fix

Reviewers: raster, cedric, bu5hm4n, zmike

Reviewed By: bu5hm4n

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8523
2019-04-01 10:02:57 -04:00
Christopher Michael 750b21830f evas-font-dir: Minor formatting fixes
NB: No functional changes
2019-04-01 09:05:57 -04:00
Carsten Haitzler 4cc5ac33ca elm - fix harmless warning for clean build 2019-03-30 16:54:19 +00:00
Carsten Haitzler e3d2a0cf12 elm - fix harmless warning for clean build 2019-03-30 16:51:33 +00:00
Carsten Haitzler debc1e4ea1 elm - fix harmless warning for clean build 2019-03-30 16:51:13 +00:00
Yeongjong Lee e361b45ce1 efl_ui_table_layout: calculate cell size with colspan, rowspan property
We should consider occupied cells by colspan, rowspan property.

ref T7753

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8484
2019-03-30 12:38:27 +01:00
Mike Blumenkrantz 0ba66d7222 build: improve autotools generation of elm config
- don't generate and re-link on every make rule
 - fix distcheck

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Reviewed-by: YeongJong Lee <yj34.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8506
2019-03-30 12:13:29 +01:00
Mike Blumenkrantz 0ecb3ccde5 tests: abort on errors during genlist expand test, not warnings
Summary:
log level=2 is the warning level, which is not super useful since
there's currently billions of eo warnings occuring in every function
call

Reviewers: cedric, segfaultxavi

Reviewed By: cedric, segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8515
2019-03-29 19:00:17 +01:00
Mike Blumenkrantz 69c54cdabb eina_log: reset logging callback to default when null is set as the callback
Summary:
passing null here causes any log message to crash the app and is probably not
the intended result

Reviewers: cedric, segfaultxavi

Reviewed By: cedric, segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8513
2019-03-29 18:57:06 +01:00
Ali Alzyod b8952604ce elm_entry: Speedup finding new line, prevent readind invalid memory
Summary:
1- Speed up detecting new lines.
```
if (!strncmp(text, "<br", 3) || !strncmp(text, "<ps", 3))
```
This will cause 6 comparisons (if one of conditions did not meet), or at least 3 comparisons.

this is changed to
```
if (!strncmp(text, "<", 1))
```

2- Speedup detecting lines

If this condition is true, we should increment the string for next iteration 3 times, not just one
```
if (!strncmp(text, "<br", 3) || !strncmp(text, "<ps", 3))
```

if '<' founded then 'pr' or 'br', we will skip 3 characters for next iteration.

```
if (!strncmp(text, "<", 1))
      {
         text++;
         len--;
         if (!strncmp(text, "br", 2) || !strncmp(text, "ps", 2))
         {
            text += 2;
            len -= 2;
```

3- Prevent reading invalid memory out of the string

```
if (text[3] == '>' || ((text[3] == '/') && (text[4] == '>')))
```
string could reach last char in string (original string ends with "<br")

but now we will check if remaining string length allow comparison :

```
if (text[0] == '>' || (len > 1 && ((text[0] == '/') && (text[1] == '>'))))
```

Test Plan:
```

static int

oldFunc(const char *text)
{
    if (!text)
        return 0;

    while (*text)
    {
        if (!strncmp(text, "<br", 3) || !strncmp(text, "<ps", 3))
        {
            if (text[3] == '>' || ((text[3] == '/') && (text[4] == '>')))
            {
                return 1;
            }
        }
        text++;
    }
    return 0;
}

static int
newFunc(const char *text)
{
    if (!text)
        return 0;
    char *pTemp = (char *)text;

    while (pTemp = strchr(pTemp, '<'))
    {
        pTemp++;
        if (!strncmp(pTemp, "br", 2) || !strncmp(pTemp, "ps", 2))
        {
            pTemp += 2;
            if (pTemp[0] != '\0' && (pTemp[0] == '>' || (pTemp[0] == '/' && pTemp[1] == '>')))
            {
                return 1;
            }
        }
    }

    return 0;
}

int main()
{

    int counter = 1000;
    srand(time(NULL));
    char pStr[50001] = {0};
    char AllChars[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789<>";

    int AllCharsLen = strlen(AllChars);
    for (int i = 0; i < 50000; i++)
        pStr[i] = AllChars[rand() % AllCharsLen];

    clock_t start, end;
    double total_Time1 = 0;
    int i;

    for (int j = 0; j < 3; j++)
    {
        if (j == 0)
        {
            printf("random String\n");
        }
        else if (j == 1)
        {
            printf("With Random <br/>\n");
            int location = rand()%(5000 - 5);
            pStr[location++] = '<';
            pStr[location++] = 'b';
            pStr[location++] = 'r';
            pStr[location++] = '/';
            pStr[location++] = '>';
        }
        else if (j == 2)
        {
            printf("With Random <ps>\n");
            int location = rand()%(5000 - 4);
            pStr[location++] = '<';
            pStr[location++] = 'p';
            pStr[location++] = 's';
            pStr[location++] = '>';
        }

        start = clock();
        for (i = 0; i < counter; i++)
            oldFunc(pStr);
        end = clock();
        total_Time1 = ((double)(end - start)) / CLOCKS_PER_SEC;
        printf("original = %f has new Line = %i\n", total_Time1, oldFunc(pStr));

        start = clock();
        for (i = 0; i < counter; i++)
            newFunc(pStr);
        end = clock();
        total_Time1 = ((double)(end - start)) / CLOCKS_PER_SEC;
        printf("modified = %f has new line = %i\n\n", total_Time1, newFunc(pStr));
    }
}
```

output:

random String
original = 2.523000 has new Line = 0
modified = 0.090000 has new line = 0

With Random <br/>
original = 0.081000 has new Line = 1
modified = 0.003000 has new line = 1

With Random <ps>
original = 0.016000 has new Line = 1
modified = 0.001000 has new line = 1

Reviewers: zmike, woohyun, bowonryu

Reviewed By: zmike

Subscribers: bu5hm4n, segfaultxavi, zmike, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8497
2019-03-29 09:58:53 -04:00
Xavi Artigas 76e8f9c07c docs: Fix build break because of missed EO import 2019-03-29 14:12:37 +01:00
Xavi Artigas fe3879472d docs: Use Eina.Value references en efl_ui_format docs 2019-03-29 14:08:22 +01:00
Marcel Hollerbach 1a5dde0b47 efl_ui_layout: ensure that resize_obj is present before emitting signals
otherwise there will be warnings because of calling api on NULL objects.

Differential Revision: https://phab.enlightenment.org/D8512
2019-03-29 14:02:36 +01:00
Marcel Hollerbach 0c0f47796b efl_ui_widget: move from elm_widget_top_get to provider_find
this resolves a lot of cases where focus_highlight API was called on a
object, which is not a efl_ui_win object. With this patch we ensure that
the object is always a window.

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D8476
2019-03-29 14:02:32 +01:00
Marcel Hollerbach fce4d95596 efl_ui_widget: add implementation for finding the window
the problem with the previous implementation (just redirect the calls to
the widget_parent then to the efl_parent is that after invalidate its
impossible to find the window where the widget is in. However, there are
cases where we want to have access to the window of the widget, for
example, to invalidate focus highlight etc..
The window of a widget is always constant, and cannot be changed (as the
evas object cannot hop accross different evas)

Reviewed-by: Jaehyun Cho <jae_hyun.cho@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8475
2019-03-29 14:02:31 +01:00
Xavi Artigas 291ab9a671 docs: Efl.Ui.Layout_Base update theme docs
If docs are present at property and set/get levels only one is used.

Ref T7717

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8494
2019-03-29 12:35:51 +01:00
Xavi Artigas 01fccf6a87 docs: Clarify Efl.Ui.Win exit_on_close methods
exit_on_close and exit_on_all_windows_closed deserve a bit of clarification
since they have very similar meanings.
Also, add proper Eina.Value doc references.
Ref T7717

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8511
2019-03-29 12:35:50 +01:00
Xavi Artigas 1ad9b246c0 docs: Add Eina.Value extern to eina_types.eot
Eina.Values are built-in eolian types, accessed through any_value and
any_value_ptr. However, these types cannot be used in doc references.
Adding a placeholder extern struct Eina.Value causes no harm, and will allow
referencing the type from EO docs later on.
In C#, Eina.Value is defined in the manual binding code so the doc reference
resolves to a valid type.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8510
2019-03-29 12:35:49 +01:00
Jaeun Choi d3bb1a7342 test/efl_ui_pager: fix demo
- use unpack_at function than unpack function
- add CLEAR option
2019-03-29 20:14:09 +09:00
Jaeun Choi 30bd541bf2 test/efl_ui_pager_scroll: fix demo
- use radio than check for loop mode
- use unpack_at function than unpack function
- add CLEAR option
2019-03-29 20:14:09 +09:00
Jaeun Choi 74c48f0296 efl_ui_pager: implement unpack_all/clear function 2019-03-29 20:14:09 +09:00
Jaeun Choi 0b2cf57bbc efl_ui_pager: return mouse_down function if cnt equals zero 2019-03-29 20:14:09 +09:00
Jaeun Choi 913a5bff66 efl_ui_pager: implement unpack_at function 2019-03-29 20:14:09 +09:00
Jaeun Choi f3a6bf613d efl_ui_pager: refactor unpack function 2019-03-29 20:14:09 +09:00
Jaeun Choi 2631528476 efl_ui_pager: add a missing condition 2019-03-29 20:14:09 +09:00
Jaeun Choi 103248d8f0 efl_ui_pager: fix pack function 2019-03-29 20:14:09 +09:00
Jaeun Choi 9126a47eaa elm_priv.h: remove unnecesary line 2019-03-29 20:14:09 +09:00
Jaeun Choi 20dfa5c487 efl_ui_pager: disable loop if items are not enough after unpacking 2019-03-29 20:14:09 +09:00
Xavi Artigas 68a7567d26 mono-docs: Minor ammendments to Eina.Value 2019-03-29 09:51:56 +01:00
Marcel Hollerbach b54035213f efl_ui_widget: reintroduce legacy behaviour
before the refactoring of the disabled property, there was no way to
enable a widget which has a disabled tree. This here however enables
this to work again like this. The user will be told with an error
message. The integraty of the property is maintained accross reparents.

Reviewed-by: Jaehyun Cho <jae_hyun.cho@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8459
2019-03-29 08:26:06 +01:00
Marcel Hollerbach f66b3edc4d efl_ui_widget: add tests for parent and disalbed property
this just adds more coverage over the behaviour of efl_ui_widget
properties.

Reviewed-by: Jaehyun Cho <jae_hyun.cho@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8458
2019-03-29 08:26:05 +01:00
Marcel Hollerbach 02c2918fe6 efl_ui_test_widget: ensures tests do not error
Reviewed-by: Jaehyun Cho <jae_hyun.cho@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8457
2019-03-29 08:26:04 +01:00
Carsten Haitzler 3439134ea1 Revert "evas gl engines - avoid getting context if possible"
This reverts commit e7771438a2.

This should fix T7764

zmike - you're right. thanks for narrowing down the commit... revert
time.
2019-03-29 00:18:13 +00:00
Taehyub Kim 4e2003f741 efl_ui_alert_popup: add new feature for applying side button style of alert popup
Summary: This feature will apply side button style for each left and right button of alert popup

Reviewers: Jaehyun_Cho, cedric

Reviewed By: Jaehyun_Cho

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8492
2019-03-28 18:48:03 +09:00
Mike Blumenkrantz 1240232863 elm_entry: CRI if efl_file methods are called directly on this object
eo methods should not be called on legacy objects

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8487
2019-03-28 09:50:42 +01:00
Xavi Artigas 9f1cd60aeb docs: Document event info calling convention
Both at the emitter (efl_event_callback_call) and the receiver
(info field in the Efl.Event structure).
The Events tutorial should repeat this.
Fixes T7760

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8486
2019-03-28 09:39:40 +01:00
Marcel Hollerbach 62b3759db5 efl_ui_slider: block scrolling when on slider
when a mouse cursor is over a slider, the mouse wheel should be used to
affect the state of the slider, not also the one of the slider.

ref T2529

Reviewed-by: Bowon Ryu <bowon.ryu@samsung.com>
Reviewed-by: Jaehyun Cho <jae_hyun.cho@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8455
2019-03-28 09:39:39 +01:00
Cedric BAIL 37663b27df elementary: remove some asynchronous behavior from the fileselector.
Marcel notted that when using the LIST view of the fileselector on a
big directory, we end up having to wait for the entire genlist to be
populated to be able to switch to another directory. This is actually
a side effect of the populate code being triggered through an idler.
This idler was useful when the list was populated directly, but now
that we rely on Efl.Io.Model, we should be asynchronous enough that
it shouldn't be a problem to actually not be asynchronous here. By
removing the reliance on the idler, we are not queued after all the
idler and can properly short circuit all of that.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8491
2019-03-28 09:30:01 +01:00
Cedric BAIL 07e017c510 elementary: restore quick exit from wait loop in fileselector test.
The test was not expecting both callback to be set when the wait loop
was started. By moving them around, it fixes the test case to only have
one relevant callback set at a time.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8490
2019-03-28 09:30:00 +01:00
Marcel Hollerbach 197210cde2 elc_filselector: solve the mysterium of sometimes failing tests
so after a phone call, two days of debugging, tears, crying etc. etc. we
finally came to a point of enlightenment! *Someone* (bu5hm4n) moved
gengrid and genlist events from eo back to smart events, so we can work
arround legacy borks and event-name collisions, at this point he did not
knew that some widgets (fileselector) already relied on those *lovely*
events. Hence this broke theoretically the testsuite, however, the
fileselector testsuite is ultimatily buggy, and the wait function does
not return false when it timeouts, (i don't know why not). So this break
was never discovered.

Additionally there is a second issue. it appears, that when we
immidiatly quit the mainloop after we have got the selected callback,
that then genlist decides to forget about the sd->selected pointer, and
NULLs that one out. Which then results in the fact that
elm_fileselector_selected_get ends up returning invalid paths.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8488
2019-03-27 15:03:41 -07:00
Cedric BAIL 8ab3f3319e elementary: make sure that the model parent being used is always the fileselector.
Model provided by an item selection would have there parent being the current
model of the fileselector. Once that one is replaced by the item model, it would
automatically invalidate the model and break any further request. This lead to
a bug where you could only get into one directory before everything else
being empty.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8450
2019-03-27 15:03:39 -07:00
Cedric BAIL 1eb49b2e9b elementary: prevent asynchronous properties change to believe target is ready when it is not in fileselector.
In some case, the properties changed event would be triggered first on the object model
instead of the target model. This now enforce that the target will be the first model
to handle and react on the information.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8449
2019-03-27 15:03:37 -07:00
Cedric BAIL db618e179a elementary: fix fileselector entry support to define path manually.
There was no need in the first place to do all this asynchronous work here.
It is more robust to do it in sync.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8448
2019-03-27 15:03:35 -07:00
Cedric BAIL 150bc0fa14 eio: work around the lack of integration between Ecore_Thread and Eina_Future.
Ecore_Thread excpect resolution of the error and done case to be instantaneous,
while Eina_Future default scheduler linked with Ecore main loop is build around
asynchronous answer. This create a lot of potential. A better patch would be
to provide an Ecore_Thread helper that does the integration properly. Sadly
we are in release now, so this is basically what an helper would do, but
contained inside Efl_Io_Manager.

This also solve the same problem as D7970 and D8053, but it should avoid its
side effect.

Reviewed-by: YeongJong Lee <yj34.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8371
2019-03-27 15:03:33 -07:00
Yeongjong Lee e162ba9696 eio: add test to ensure proper lifecycle of Efl_Io object and futures.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8372
2019-03-27 15:03:31 -07:00
Cedric BAIL ed3165f928 eio: Efl.Io.Model should not make request when the object is invalidating itself.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8373
2019-03-27 15:03:29 -07:00
Cedric BAIL 4d1620f3f0 eio: remove unecessary use of weak reference.
There is no point in keeping a pointer to the main loop now that we
are using efl_future_then. This resolve potential bug with leftover
dangling weak reference as efl_future_then do require a free case
otherwise.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8374
2019-03-27 15:03:26 -07:00
Cedric BAIL 3bbaf71b68 elementary: destroy fileselector children when they are not itemized yet.
As we now do everything asynchronously, we do have model representing child
of the main model that don't provide enough information to be displayed yet.
This are not tracked by a genlist item, nor are they a child of the
fileselector. To properly handle their lifecycle, it is necessary to unref
them manually explicitely.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8375
2019-03-27 15:03:24 -07:00
Cedric BAIL f4426d2960 eio: guarantee that we will at least process one request per loop iteration for very slow system.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8447
2019-03-27 15:03:22 -07:00
Cedric BAIL 9cadba3387 elementary: improve lifecycle of model object in the fileselector widget.
This is a minimal change and it would be best to refactor the code completely
using all the infrastructure we have now instead of the organically grown code,
but I am afraid of doing such a big change at this point of our release cycle.

Part of the improvement are use of efl_replace to make sure Eo object reference
are set to NULL once reference are dropped. Handling the case when a processed
child is actually pointing to an error. Also it is not supported by model to
get their parent stolen, so this has been fixed too. Finally setting the path
asynchronously was creating more trouble than needed, when it could be done in
a synchronous way.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8336
2019-03-27 15:03:20 -07:00
Cedric BAIL adf4512a35 eo: refactor auto_unref logic used by efl_part.
This bring no functional change to Eo and efl_part.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8357
2019-03-27 15:03:18 -07:00
Cedric BAIL f11dfc0bc8 eo: enforce auto_unref logic at the end of efl_unref execution.
This allow for the safe use of efl_ref/efl_unref around an efl_part
without calling any function on that part.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8358
2019-03-27 15:03:16 -07:00
Cedric BAIL 2f4b581300 Revert "efl_ui_layout: call efl_del instead of efl_unref when text part does not exist"
This reverts commit cced5487c8.

This patch was pushed just to silence warning without fixing the problem and doing
something that was incorrect (coupling an efl_del with an efl_ref).

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8429
2019-03-27 15:03:14 -07:00
Cedric BAIL e05b8ae9ca elementary: only apply text when the object is not invalidated and dying.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8359
2019-03-27 15:03:12 -07:00
Cedric BAIL 791ca77a68 elementary: split the smart callback event name from the Eo name when needed.
This fix the borkage of the "selected" smart event not being triggered.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8332
2019-03-27 15:03:10 -07:00
Cedric BAIL e859130dd4 eina: prevent double cancel of ongoing dispatched future.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8333
2019-03-27 15:03:08 -07:00
Cedric BAIL 6b6faef3a3 eio: rely on efl_future_then to properly protect Eo object during the lifecycle of the future callback.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8334
2019-03-27 15:03:06 -07:00
Cedric BAIL a947d8e5b1 eio: path and filename property should always remind accessible even in case of error.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8335
2019-03-27 15:03:04 -07:00
Mike Blumenkrantz 8f8082bf7d build: add autotools for elm config embedding
Summary: Depends on D8481

Reviewers: bu5hm4n, devilhorns

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl_build

Differential Revision: https://phab.enlightenment.org/D8489
2019-03-27 17:23:19 -04:00
Marcel Hollerbach f04cc5ceba elementary: embed standard config as fallback
Summary:
as you can see in T7620, there is quite some critics about how we are
handling configs in elm. This patch enables the compile-time standard
config to be used instead of some weak-wrong-usage hardcoded structure
defines somewhere in elm.

This means, that every update to the default theme will be also in the
next build embedded, without any config files installed at all, the
standard config for desktops will work, and a error will be printed, so
the user does have the possibility to interact with elm as he wishes,
while he sees this error.

fixes T7620

Reviewers: zmike, cedric, segfaultxavi, devilhorns

Reviewed By: zmike

Subscribers: devilhorns, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7620

Differential Revision: https://phab.enlightenment.org/D8481
2019-03-27 17:23:13 -04:00
Mike Blumenkrantz 4032d52a87 build: fix meson pixman dependency name
Summary: thx @vtorri for reporting

Reviewers: devilhorns, vtorri

Reviewed By: vtorri

Subscribers: cedric, #reviewers, vtorri, #committers

Tags: #efl_build

Differential Revision: https://phab.enlightenment.org/D8479
2019-03-27 14:34:43 -04:00
Vincent Torri 79e809d945 eina benchmark: fix warnings on Windows 64 bits
Summary: long is always a 32 bits type on Windows

Test Plan: compilation

Reviewers: raster, zmike, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8482
2019-03-27 11:00:28 -04:00
Wonki Kim 0f29560aa2 test: add a test case for elm_entry
Summary:
behaviors of elm_entry has been changed
so that this patch provides usages to keep as a test case.

Reviewers: zmike, Hermet, YOhoho

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8483
2019-03-27 10:58:35 -04:00
Wonki Kim 8e8aa74751 entry: move a point to do 'auto_save' to another place
Summary:
By reworking on efl_file, logic flow for entry has been changed.
and it causes autosave making a file that is passed to elm_entry_file_set empty.

Test Plan:
1. call elm_entry_file_set for a file.
2. check the file is not empty after calling the function.

Reviewers: zmike, bu5hm4n

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8362
2019-03-27 10:58:30 -04:00
Woochanlee 9367dcc755 evas_render: Process deferred callback in the sync render case.
Summary:
The EVAS_CALLBACK_RENDER_POST callback has been deferred when the callback is registered during the render(inside_post_render flag on).

In the sync render case, the logic to call deferred callbacks is missing, and callbacks are not being called in certain cases.

@fix

Reviewers: ManMower, Hermet

Reviewed By: Hermet

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8478
2019-03-27 13:11:15 +09:00
Vitor Sousa b530b871bc eolian_csharp: hide struct native representation inside the managed struct
Summary:
Rework the struct binding generator to declare the native struct nested inside
the managed one.
This way native structs are less likely to cause confusion; for example
with an IDE that supports automatic completion.

Get rid of struct conversion class methods in favor of using (the already
generated) implicit conversion operators.

Depends on D8469

Reviewers: segfaultxavi, lauromoura, felipealmeida

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8470
2019-03-26 16:43:25 -03:00
Vitor Sousa 762ae45f05 eolian_csharp: make struct generator use indentation level from context
Summary:
Make the struct generator (the first one to) extract indentation information
from the context, an effort for a future overall consistency in white space
generation.

Depends on D8468

Reviewers: lauromoura, segfaultxavi, felipealmeida

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8469
2019-03-26 16:43:15 -03:00
Vitor Sousa 378ba8ebd1 eolian_csharp: add indentation context
Summary:
Also, use new context class for cleaner constructs.

Also, make functions receive context objects by reference to avoid
unnecessary object copies (since context objects are bigger now).

This commit contains preparation structures for a future overhaul of
white space generation.

Depends on D8467

Test Plan: ninja test

Reviewers: felipealmeida, lauromoura

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8468
2019-03-26 16:42:36 -03:00
Vitor Sousa 2b86e84b56 eolian_cxx: rework context code, also more flexible scope indentation generator
Summary:
Context management classes now store constant copies of the tags they
are supposed to hold. So, they are immutable objects now.
Functions that manipulate context create new object copies as needed.
`constexpr` was added for class constructor and functions.

Indentation generator now used four space by default.
Also, the amount of desired spaces can now be specified at call site.

Added helper methods to return 'indented' and 'unindented' version of a
given indentation generator object.

Test Plan: ninja test

Reviewers: felipealmeida, lauromoura

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8467
2019-03-26 16:42:18 -03:00
Lauro Moura a4ae92d8dd efl-csharp: Remove spaces from type strings in generator.
Summary:
Previously, the type_impl and marshall_type_impl generators relied on a
type mismatch in the match table to fallback to the else branch in the
match check to actually print the type string. This was achieved by
adding the " " prefix to the type.

This commit changes this behavior to invoke a proper visitor just to
print and makes both generators return trimmed type strings.

This will help conforming to the C# coding conventions.

Test Plan: run test suite

Reviewers: felipealmeida, vitor.sousa

Reviewed By: felipealmeida, vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8441
2019-03-26 14:48:12 -03:00
Cedric BAIL 40f50d1e61 elementary: fix ATSPI reflection API warning.
Summary: Depends on D8451

Reviewers: zmike, bu5hm4n, stefan_schmidt, devilhorns

Reviewed By: devilhorns

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8452
2019-03-26 12:05:40 -04:00
Cedric BAIL 7331f21ea7 eina: always initialize i.
Reviewers: zmike, bu5hm4n, stefan_schmidt, devilhorns

Reviewed By: devilhorns

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8451
2019-03-26 12:05:02 -04:00
Vincent Torri ef298c428a evil : remove mkstemp, which is already defined in mingw-w64
Summary: mkstemp is already defined in mingw-w64

Test Plan: compilation

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8454
2019-03-26 10:10:54 -04:00
Marcel Hollerbach 17e60a5585 evas_3d: stop just segfaulting straight away
Summary:
there have been wrong function calls, that did not work at all, since
the function pointer had the wrong type. This fixes the segfaulting
examples of evas3d. However, they still do not render, at least, they
don't crash anymore.

Depends on D8381

Reviewers: cedric, segfaultxavi, zmike, stefan_schmidt

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8382
2019-03-26 10:09:42 -04:00
Yeongjong Lee 2e545ee34e elm_win: fix correct return value on elm_win_rotation_get
Summary:
Before b3327c761e, -1 was returned on`elm_win_rotation_get`, if `obj` is NULL.
This fixes backward compatibility.

Test Plan: make check

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8474
2019-03-26 19:48:30 +09:00
Yeongjong Lee d36beba2bb elm_photocam: fix correct return value in elm_photocam_file_set
Test Plan: `elm_photocam_file_set(NULL, "file_name");`

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8473
2019-03-26 15:04:52 +09:00
Bowon Ryu a026405a6a efl_ui_tab_pager: fixed issue where tab_pager does not work
Summary:
I fixed the tab_pager behavior problem caused by changing efl interface.
and I have also fixed some sample code errors.
 - using efl_file_load for efl_file_set
 - using efl_del for unpacked tab_page
 - disable unimplemented features

Test Plan: elementary_test -to efl.ui.tab_pager

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8471
2019-03-26 14:20:27 +09:00
Yeongjong Lee 43b199aca3 elm_photocam: fix file_get,set operations
Summary: This patch fixes bug that elm_photocam_file_get always return NULL.

Test Plan: make check

Reviewers: Hermet, zmike, bu5hm4n

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8472
2019-03-26 13:16:32 +09:00
Mike Blumenkrantz 18349ac73f tests: add (failing) test for elm_entry magnifier
this crashes immediately and showcases the current infinite recursion issue
in elm_entry which is triggered by clicking any entry for $longpress_timeout

ref T7202

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8440
2019-03-25 15:26:51 +01:00
Mike Blumenkrantz c249cb3c8b tests: add function to do "real" timers
in very specific cases it's necessary to match the exact timing of
internal functionality, so add a function to provide that capability

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8439
2019-03-25 15:26:50 +01:00
Mike Blumenkrantz 1e54bb7d9e tests: make elm_win visible during tests
elm_win has some internal locking to avoid doing sizing and visibility
changes until pre-render to save some calculations. this makes triggering
ui events on objects impossible, as they will not be visible.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8438
2019-03-25 15:26:47 +01:00
WooHyun Jung d761658985 elm_entry: fix a bug in moving the magnifier
Summary:
When moving the magnifier in elm_entry, _magnifier_move
function occured infinite loop problem by calling
evas_object_move twice with different positions.
So, I changed it to call evas_object_move once.

ref T7202

Test Plan:
1. Set profile to "mobile"
2. elementary_test
3. entry
4. long press mouse button on elm_entry
5. when the magnifier is shown, try to move it

Reviewers: zmike, bu5hm4n, bowonryu, id213sin

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7202

Differential Revision: https://phab.enlightenment.org/D8462
2019-03-25 08:52:10 -04:00
Hermet Park 620eb070f4 efl_ui_image: remove job in sizing calc.
Originally, this job task was introduced for trick optimization to avoid
unnecessary duplicated compuation.

But this introduced a regression bug as well, image geometry updation was
delayed by this.

So, we remove the job here.

@fix T7360
2019-03-25 19:49:54 +09:00
Yeongjong Lee 476010b018 elm_win: fix correct rot variable in elm_win_rotation_get
Remove duplicated rotation variable

Also, it fixes wrong layout class comparing.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8464
2019-03-25 11:36:14 +01:00
Jaehyun Cho 2b9278c984 efl_mono: remove unnecessary external function import
ecore_init, ecore_shutdown, elm_init, elm_policy_set, elm_shutdown,
elm_exit are imported in efl_all.cs.
Moreover, efl_csharp_application.cs is using Efl.UnsafeNativeMethods.
Therefore, the unnecessary external function import is removed in
efl_all.cs.
2019-03-25 19:30:50 +09:00
Yeongjong Lee aa54d57a07 efl_ui_container_layout: use correct property
The `if` condition check whether horizontal, vertical aspect are greater than 0.
`aspect` is correct here.

this patch fixes T7756

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8461
2019-03-25 10:58:43 +01:00
Marcel Hollerbach 04122ec311 elm_gengrid: speed up update order calls
update order can be quite expensive, so this here tries to skip it as
often as possible.

ref T7384

Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8367
2019-03-25 10:54:13 +01:00
Marcel Hollerbach f1678d06c2 elm_gengrid: rework focus registration
before just everything has been registered, now only the realized items
are registered.

ref T7384

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8366
2019-03-25 10:54:12 +01:00
Shilpa Singh 834219013d efl_access: add test cases for reading_info_type_set/get API
Add test cases for efl_access_object_reading_info_type_set and efl_access_object_reading_info_type_get
APIs

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8427
2019-03-25 10:41:35 +01:00
Shilpa Singh ed51150853 efl_access: if 0 is set as reading_info_type, remove existing reading_info
Summary:
if 0 is set as reading_info_type, remove existing reading_info and
allow default reading info types (name, role, state and description)
to be read.
Do not set reading info again in reading_info_type_set API if new
value matches the old value.

Test Plan:
If application does not set reading_info_type or set 0 reading_info_type,
All four reading info types of an accessible object should be read on highlight.

Signed-off-by: Shilpa Singh <shilpa.singh@samsung.com>

Reviewers: kimcinoo, jsuya, bu5hm4n, lukasz.stanislawski

Subscribers: prasoonsingh16, rajeev.jnnce, #reviewers, cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8435
2019-03-25 10:11:39 +09:00
Mike Blumenkrantz e6d8ac512d evas_clip: check for object validity before adding fallback damage rect
this path should not be triggered for objects which are being deleted,
which was the case in all of the referenced bug reportst

fix T4904, T7100, T7421

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8445
2019-03-22 14:11:54 -07:00
Christopher Michael 0d63743be9 evas drm: Implement support for outbuf_idle_flush 2019-03-22 12:42:39 -04:00
Christopher Michael 3dfec81be1 evas drm: Implement support for damage_region_set
Summary:
This patch implements engine support for outbuf_damage_region_set that
we can use to mark a framebuffer as being dirty, and to set the dirty
regions on that framebuffer.

ref T7690
Depends on D8403

Reviewers: raster, cedric, zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7690

Differential Revision: https://phab.enlightenment.org/D8404
2019-03-22 12:41:47 -04:00
Christopher Michael 745de87c78 evas drm: Fix software output rotation
Summary:
Don't use redraws_clear to handle buffer swapping. Buffer swapping
should be done on outbuf_flush. This patch fixes evas drm software
output rotation (along with other patches in the series).

ref T7690

@fix
Depends on D8402

Reviewers: raster, cedric, zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7690

Differential Revision: https://phab.enlightenment.org/D8403
2019-03-22 12:41:43 -04:00
Christopher Michael 95ae131502 evas drm: Don't use eng_output_resize or redraws clear
Summary:
We don't need to use eng_output_resize in this engine as
eng_output_update will take care of that. Also, don't use
redraws_clear to handle buffer swapping. This is part one of software
rotation fixes.

ref T7690

@fix
Depends on D8116

Reviewers: raster, cedric, zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7690

Differential Revision: https://phab.enlightenment.org/D8402
2019-03-22 12:41:38 -04:00
Christopher Michael 8011277dfc ecore-evas-drm: Enable rotation to work again
Summary:
This patch removes the ability to do hardware rotation (it's broken
anyway), and refactors the _drm_rotation_do function to just use
software (ecore_evas & evas) rotation.

ref T7690

Depends on D8115

Reviewers: raster, cedric, zmike

Subscribers: cedric

Tags: #efl, #do_not_merge

Maniphest Tasks: T7690

Differential Revision: https://phab.enlightenment.org/D8116
2019-03-22 12:41:29 -04:00
Christopher Michael e63c36056e ecore-drm2: Factor in output rotation when getting output info
Summary:
Enlightenment uses this function to get information about a given
output, so we should be accounting for output rotation when returning
width/height values.

ref T7690

@fix

Depends on D8114

Reviewers: raster, cedric, zmike

Reviewed By: cedric

Subscribers: cedric

Tags: #efl, #do_not_merge

Maniphest Tasks: T7690

Differential Revision: https://phab.enlightenment.org/D8115
2019-03-22 12:41:25 -04:00
Christopher Michael 828984393e ecore-drm2: Add API function to return output rotation
Summary:
Small patch to add an API function which can be used to return a given
output's rotation value

ref T7690

@feature

Depends on D8113

Reviewers: raster, cedric, zmike, stefan_schmidt, bu5hm4n

Reviewed By: cedric

Subscribers: cedric

Tags: #efl, #do_not_merge

Maniphest Tasks: T7690

Differential Revision: https://phab.enlightenment.org/D8114
2019-03-22 12:41:21 -04:00
Christopher Michael 9c08fe29d4 ecore-drm2: Set output rotation value
Summary:
When we call ecore_drm2_output_rotation_set we need to store that
value in the Output structure so that it can be checked later when
needed.

ref T7690

Depends on D8112

Reviewers: raster, cedric, zmike

Reviewed By: cedric

Subscribers: cedric

Tags: #efl, #do_not_merge

Maniphest Tasks: T7690

Differential Revision: https://phab.enlightenment.org/D8113
2019-03-22 12:41:17 -04:00
Christopher Michael 3315c0dd1c ecore-drm2: Disable hardware rotation for outputs
Summary:
Setting output primary plane rotation is broken at the moment, so this
commit will disable that for now until this can be investigated

ref T7690

Depends on D8111

Reviewers: raster, cedric, zmike

Subscribers: cedric

Tags: #efl, #do_not_merge

Maniphest Tasks: T7690

Differential Revision: https://phab.enlightenment.org/D8112
2019-03-22 12:41:12 -04:00
Christopher Michael 10474986cc ecore-drm2: Update plane state values based on FB
Summary:
When we are trying to set an FB onto a plane, we need to update the
plane state values to reflect any changes in the FB. Failure to do
this will result in Atomic Commit failures as the plane state values
will not match what the FB is.

ref T7690

@fix

Depends on D8110

Reviewers: raster, cedric, zmike

Reviewed By: cedric

Subscribers: cedric

Tags: #efl, #do_not_merge

Maniphest Tasks: T7690

Differential Revision: https://phab.enlightenment.org/D8111
2019-03-22 12:41:08 -04:00
Christopher Michael 9d301e4e03 ecore-drm2: Don't use AtomicAddProperty for plane rotation
Summary:
Apparently something has been changed recently in libdrm
that causes AtomicAddProperty to fail when trying to set plane rotation. Until
this can be found & fixed, let's just disable trying to rotate
hardware planes with atomic commits.

ref T7690

@fix

Reviewers: raster, cedric, zmike

Subscribers: zmike, cedric

Tags: #efl, #do_not_merge

Maniphest Tasks: T7690

Differential Revision: https://phab.enlightenment.org/D8110
2019-03-22 12:41:03 -04:00
Xavi Artigas 205193f1ab docs: Add @since 1.22 to all stable classes' EO docs
Summary: Previous @since tags have already been removed from eo files.

Test Plan: Everything builds, but stable classes now have Since tags in the docs.

Reviewers: zmike, bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8446
2019-03-22 16:57:36 +01:00
Vincent Torri 10c2342d93 evil: fix wrong values in timeval
Summary: time values are of type long, but a double values was used

Test Plan: compilation

Reviewers: raster, zmike, q66, simotek

Reviewed By: zmike, simotek

Subscribers: simotek, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8444
2019-03-22 09:09:14 -04:00
Jaehyun Cho 44d0cb9260 elm_atspi_bridge: remove all legacy usage from eo files
this takes the current generated output from eolian for legacy code in
efl and adds it to the tree, then removes legacy references from the
corresponding eo files. in the case where the entire eo file was for
a legacy object, that eo file has been removed from the tree

ref T7724
2019-03-22 16:04:32 +09:00
Jaehyun Cho 0225db71c0 elm_atspi_app_object: remove all legacy usage from eo files
this takes the current generated output from eolian for legacy code in
efl and adds it to the tree, then removes legacy references from the
corresponding eo files. in the case where the entire eo file was for
a legacy object, that eo file has been removed from the tree

ref T7724
2019-03-22 16:04:29 +09:00
Taehyub Kim bb81ccdac1 efl_ui_layout: Eina_Error type has been modified to work correctly.
Summary:
fix Eina_Error type calculation in _efl_ui_layout_base_efl_ui_widget_theme_apply() to behave as before.

@fix

Test Plan: run elementary_test for all widgets

Reviewers: #reviewers, Jaehyun_Cho, Hermet

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8443
2019-03-22 12:38:44 +09:00
Lauro Moura 0881d1524b efl-csharp: Add back I prefix for interfaces.
Summary:
Conforming to C# coding conventions.

For properties, now we only generate a wrapper if its name does not
clash with the name of the class that would be implementing it.

Fixes T7751

Reviewers: vitor.sousa, felipealmeida, segfaultxavi

Reviewed By: vitor.sousa, segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7751

Differential Revision: https://phab.enlightenment.org/D8397
2019-03-21 14:48:33 -03:00
Lauro Moura f36d8b9bb1 csharp: Export correct headers and files
Summary:
Some headers and test files were not being exported in autotools.

Also reordered the headers for better tracking.

Test Plan: run make dist and check if resulting tarball builds with --enable-csharp-bindings

Reviewers: stefan_schmidt, zmike, bu5hm4n, segfaultxavi, cedric, devilhorns

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8324
2019-03-21 17:32:33 +01:00
Xavi Artigas cbbc5e5eb6 mono-tests: Fix after latest changes to eolian
Summary: Event payload checking is more strict now.

Test Plan: Check that master can be built

Reviewers: lauromoura, q66

Reviewed By: q66

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8437
2019-03-21 17:20:13 +01:00
Daniel Kolesa 5c1ea543bb eolian: assume requires section is legitimate dependencies
Previously these were not considered, which resulted in false
positive warnings.
2019-03-21 16:46:55 +01:00
Daniel Kolesa cef2e337b8 eolian: disallow @owned on events
This is never used anywhere and it does not make sense with the
new type rules for events.
2019-03-21 16:17:06 +01:00
Daniel Kolesa 3f083b3ccb eolian: add event type call convention checks for non-beta classes 2019-03-21 16:00:18 +01:00
SangHyeon Jade Lee b747af5181 elm : fix wrong layout class comparing in orientation mode disable
automatic theme lotation is layout base class property which can be applied
layout based widget classes.
currently it only comparing EFL_UI_LAYOUT_CLASS so layout base inherited class
can not be applied this feature properly.

depends D8434

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8436
2019-03-21 10:33:58 +01:00
SangHyeon Jade Lee 7bb702b0df elm : fallback orientation_mode_disable_set legacy behavior to get true disabled state as what we set.
current code set the disable EINA_TRUE when disabled,
but once it was set diabled, it never changed EINA_FALSE even we set the orientation_mode_disable as FALSE.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8434
2019-03-21 10:33:57 +01:00
Marcel Hollerbach ab30ff3f9b eolian: enable event redef checking by default
Reviewed-by: Daniel Kolesa <daniel@octaforge.org>
Differential Revision: https://phab.enlightenment.org/D8425
2019-03-21 10:33:56 +01:00
Prasoon Singh e0511c995f elm_gesture_layer: Use flag returned by gesture callbacks
Summary:
Instead of flag returned by gesture callbacks, always EVAS_EVENT_FLAG_NONE
flag was being used.

Test Plan:
As event flag was not being appropriately updated, in some cases expected
behaviour was not seen.

Reviewers: shilpasingh, cedric, Hermet, segfaultxavi

Reviewed By: shilpasingh, segfaultxavi

Subscribers: segfaultxavi, #reviewers, rajeev.jnnce, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8421
2019-03-21 10:08:07 +01:00
Mike Blumenkrantz 5930c5f86e efl_ui_win: avoid triggering legacy forbidden path during window finalize
this (unintentionally) revealed some bugs where apps/examples were mixing
eo and legacy code for elm_win which breaks things pretty badly. I'm only
here so I don't get fined.

ref T7713

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8401
2019-03-20 12:36:59 -07:00
Mike Blumenkrantz fcf2eb2205 efl_ui_win: mark legacy forbidden during bg part load always
calling this function indicates legacy is forbidden, not successfully
loading a file. this is functionally meaningless, as the only way to
trigger the previous codepath would be to have previously set legacy
as forbidden, but perhaps it will be slightly easier to read now

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8400
2019-03-20 12:36:57 -07:00
Mike Blumenkrantz 61e880e57c elm_test: set accel for all glview tests
these otherwise require the user to set ELM_ACCEL or manually change
the config which is cumbersome

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8392
2019-03-20 12:36:55 -07:00
Mike Blumenkrantz 4792bb8239 elm_test: move gl api creation to glview init function
this needs to happen when the gl context is current to avoid a billion
errors and overall general failure

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8390
2019-03-20 12:36:52 -07:00
Mike Blumenkrantz b8ff87fc1d efl_ui_win: fix hw accel detection
the ordering of priority here is supposed to be:

1. env vars
2. global override config
3. window config
4. global config

in the case where 1 and 3 were not set, however, this would end up
mangling the global config values and not using the gl options

@fix

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8389
2019-03-20 12:36:50 -07:00
Mike Blumenkrantz bc03654caf elm_test: use legacy api for glview gears test
mixing interfaces api with legacy api is bad for elm_win

ref T7713

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8388
2019-03-20 12:36:48 -07:00
Xavi Artigas bbd4b6e514 docs: Remove obsolete @since tags from EO files
Summary:
All legacy @since tags have already moved to the *.legacy.h files.
EO files are now devoid of @since tags (except some eldbus still
needed for legacy).
Upcoming patches will add @since 1.22 to those APIs which come out
of beta in this release.
APIs marked @beta do not need @since tags.

Test Plan: Everything builds, EO docs (like DocFX) have no Since tags.

Reviewers: zmike, bu5hm4n, lauromoura, cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8430
2019-03-20 20:16:05 +01:00
Marcel Hollerbach c081825bc8 efl_ui_tab_bar: the type of this event is annotated as object
however, efl_ui_tab_bar does pass in there a int. For now i decided that
we just pass NULL here, if this is not accaptable then we can still add
another event to the object itself.

fix T7758

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8418
2019-03-20 18:50:48 +01:00
Lauro Moura 43a1d79ba8 csharp: Remove test about conflicting events.
Conflictings events won't be allowed anymore on eolian-based classes.

For manually subclassed C# classes that eventually have conflicts, this
should be dealt with in T7744.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8426
2019-03-20 18:44:02 +01:00
Christopher Michael 2d7678074e efl_canvas_vg_object: Fix dereference after null check
Coverity reports that both pname & file variables can be null here,
and that we are potentially passing NULL to strcmp. Check for valid
variables before passing to strcmp

Fixes Coverity CID1399423, CID1399421

@fix

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8350
2019-03-20 18:07:07 +01:00
Marcel Hollerbach decfca4f23 efl_ui_selection: give this event a better name
this event does not get emitted when selection per se changes, it gets
emitted when the selection in the window manager changes. we should
prefix this even with that.

ref T7476

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D8424
2019-03-20 16:59:39 +01:00
Marcel Hollerbach 7069b0efc0 efl_ui_list_view: remove not used event
this event is not used here, and if it ever is used, then it should
probebly be using efl.ui.selectable.

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D8423
2019-03-20 16:59:38 +01:00
Marcel Hollerbach c489c1ee87 build: codegen generation should depend on elementary_codegen
Summary:
otherwise buildfailures like :

/usr/bin/env EFL_RUN_IN_TREE=1 /Users/travis/build/Enlightenment/efl/build/src/bin/elementary/elementary_codegen -p=codegen_example src/examples/elementary/codegen_example.edj elm/example/mylayout/default src/examples/elementary/codegen_example_generated.c src/examples/elementary/codegen_example_generated.h

Can appear.

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8428
2019-03-20 11:24:44 -04:00
Yeongjong Lee 77f2782d29 ui.box_stack: refactor layout_update
Summary:
This patch remove evas_box function from Efl.Ui.Box_Stack and add unit test.

Depends on D8214

Test Plan:
1. make check
2. elementary_test -to 'efl.ui.box_stack'

Reviewers: zmike, Jaehyun_Cho, cedric

Reviewed By: zmike, Jaehyun_Cho, cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8094
2019-03-20 10:37:42 -04:00
Shilpa Singh e80169a844 efl_access: Add attribute_del API, Add test cases for all access_object_attribute* APIs
Add attribute_del API, currently there is no provision to delete a particular attribute(key-value pair)
from the attribute list of a widget.
Add test cases for efl_access_attribute_append, efl_access_attributes_get, efl_access_attribute_del and efl_access_attributes_clear API

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Reviewed-by: Shinwoo Kim <cinoo.kim@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8386
2019-03-20 15:29:04 +01:00
Marcel Hollerbach 89d80ffc52 efl_con: fixup copy'n paste error
please see https://phab.enlightenment.org/D8411#151797, it appears here
was a copy and paste error. This fixes the ecore_con test suite

Reviewed-by: YeongJong Lee <yj34.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8419
2019-03-20 14:51:27 +01:00
Lauro Moura efb05a3ac8 efl: Add missing docs to parameters.
Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8422
2019-03-20 14:13:22 +01:00
Yeongjong Lee 37c703437a efl.pack_table: inherit efl.pack instead of efl.pack_linear
Summary:
>>! In T5301#110572, @jpeg wrote:
> Quick recap before I leave.
> ...
> ...
>  - Pack interfaces - T5328
>
> Table does not need to inherit from "linear" (1d) layout: this brings unnecessary complexity, for a dubious use case.

We don't have linear layout policy of table(2d) layout. furthermore, i don't
think it will be clearly defined. it is enough for Efl.Pack_Table to support
`efl_pack` which work the same as `efl_pack_end`.

ref T5719, T5328

Test Plan:
- make
- elementary_test -to 'efl.ui.table'
- elementary_test -to 'efl.ui.table(linear api)'

Reviewers: zmike, woohyun, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, jpeg, #committers

Tags: #efl

Maniphest Tasks: T5719, T5328

Differential Revision: https://phab.enlightenment.org/D8420
2019-03-20 12:54:25 +01:00