Page MenuHomePhabricator

lauromoura (Lauro Neto)
User

Projects

Today

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Thursday

  • Clear sailing ahead.

User Details

User Since
Aug 24 2015, 1:00 PM (173 w, 1 d)
Availability
Available

Recent Activity

Yesterday

lauromoura added inline comments to D7467: doc: Turn comments from EO to C# XML syntax.
Mon, Dec 17, 6:23 PM · efl
lauromoura closed D7466: meson: Enable dev flags for cpp.
Mon, Dec 17, 7:40 AM · efl
lauromoura requested review of D7466: meson: Enable dev flags for cpp.
Mon, Dec 17, 5:30 AM · efl

Fri, Dec 14

lauromoura updated the diff for D7460: efl-mono: Fix call of virtual methods after new API.

Update after Vitor comments.

Fri, Dec 14, 2:36 PM · efl
lauromoura added a comment to T7453: C# bindings: Convert Eo comment format into proper XML comment format.

About the <value> tag on properties. Should we create a new task or it would be a new item here?

Fri, Dec 14, 12:44 PM · efl: language bindings
lauromoura requested review of D7460: efl-mono: Fix call of virtual methods after new API.
Fri, Dec 14, 12:43 PM · efl
lauromoura added a child revision for D7459: eolian-cxx: Add parent/extensions information to klass_def: D7460: efl-mono: Fix call of virtual methods after new API.
Fri, Dec 14, 12:43 PM · efl
lauromoura closed T7496: eolian_mono: Add support for C# style properties, a subtask of T7204: Discussion about C# binding syntax, as Resolved.
Fri, Dec 14, 12:42 PM · Active Work Proposal, Restricted Project, efl: language bindings, efl (efl-1.22)
lauromoura closed T7496: eolian_mono: Add support for C# style properties as Resolved.
Fri, Dec 14, 12:42 PM · Active Work Proposal, Restricted Project, efl: language bindings, efl (efl-1.22)
lauromoura requested review of D7459: eolian-cxx: Add parent/extensions information to klass_def.
Fri, Dec 14, 12:40 PM · efl
lauromoura updated the diff for D7394: eolian_mono: Add support for C# style properties.

Another rebase.

Fri, Dec 14, 12:08 PM · efl: language bindings

Thu, Dec 6

lauromoura triaged T7498: C#: Add build option to control generation of @beta items. as TODO priority.
Thu, Dec 6, 6:21 PM · efl: language bindings
lauromoura moved T7496: eolian_mono: Add support for C# style properties from TODO to InProgress on the efl: language bindings board.
Thu, Dec 6, 8:42 AM · Active Work Proposal, Restricted Project, efl: language bindings, efl (efl-1.22)

Wed, Dec 5

lauromoura triaged T7494: C#: Mark protected methods as protected as TODO priority.
Wed, Dec 5, 5:58 PM · efl: language bindings
lauromoura lowered the priority of T7493: C#: Fix virtual overrides in descendant classes from High to TODO.
Wed, Dec 5, 5:54 PM · efl: language bindings
lauromoura triaged T7493: C#: Fix virtual overrides in descendant classes as High priority.
Wed, Dec 5, 5:54 PM · efl: language bindings
lauromoura closed T7241: Removing underline('_') in class name in C# bindings as Resolved.

Resolved with new API in commit 3623753c1d6b893955a1c31e8559a2312f674192.

Wed, Dec 5, 11:56 AM · efl: language bindings
lauromoura claimed T7241: Removing underline('_') in class name in C# bindings.
Wed, Dec 5, 11:55 AM · efl: language bindings

Tue, Dec 4

lauromoura updated the diff for D7394: eolian_mono: Add support for C# style properties.

Update generating documentation for properties.

Tue, Dec 4, 9:58 AM · efl: language bindings
lauromoura requested review of D7414: eolian_cxx: Add documentation field to property_def.
Tue, Dec 4, 9:28 AM · efl
lauromoura updated the diff for D7394: eolian_mono: Add support for C# style properties.

Rebase.

Tue, Dec 4, 3:53 AM · efl: language bindings

Mon, Dec 3

lauromoura added a comment to D7394: eolian_mono: Add support for C# style properties.

Only renaming the interfaces won't be enough. As per IRC discussion, these three properties have conflicts: Efl.Ui.Text.Text, Efl.Input.Key.Key and Efl.Input.Hold.Hold. I guess the easiest solution is to just rename either the property or the type (whatever is easier) instead of trying to come up with a clever C# trick. I'm working on a proposal.

Mon, Dec 3, 1:45 PM · efl: language bindings
lauromoura added a comment to T7477: Clarify how the "constructor" section in eo files is to be used.

A suggestion from today's discussion on IRC was to do something like:

Mon, Dec 3, 1:08 PM · Restricted Project

Fri, Nov 30

lauromoura added a comment to D7394: eolian_mono: Add support for C# style properties.

Well, just renaming the interfaces wouldn't be enough, as implementing classes like Efl.Ui.Text would still conflict when they implement the interface property.

Fri, Nov 30, 5:28 PM · efl: language bindings
lauromoura updated the diff for D7389: eolian-cxx: Add property_def.

Update after Vitor comments. Changed properties.eo to property_holder.eo

Fri, Nov 30, 1:14 PM · efl
lauromoura updated the diff for D7394: eolian_mono: Add support for C# style properties.

Updated version supporting interface properties.

Fri, Nov 30, 12:49 PM · efl: language bindings
lauromoura edited projects for D7394: eolian_mono: Add support for C# style properties, added: efl: language bindings, DO NOT MERGE; removed efl.
Fri, Nov 30, 12:48 PM · efl: language bindings
lauromoura added a comment to D7394: eolian_mono: Add support for C# style properties.

Ouch! I am starting to feel extremely tired of all these name collisions...

I do not like the Efl.Text.PropText because then ALL properties will need the Prop prefix for consistency.
I would rather change the type name (to TextContainer, TextHolder, TextWidget, or whatever).

Fri, Nov 30, 12:16 PM · efl: language bindings
lauromoura added a comment to D7394: eolian_mono: Add support for C# style properties.

Another thing: Some properties would lead to invalid names in C#, with the same name as the enclosing class (e.g. Efl.Text.Text). I'm thinking about adding a Prop suffix for these, like:

Fri, Nov 30, 11:23 AM · efl: language bindings
lauromoura planned changes to D7394: eolian_mono: Add support for C# style properties.

Also, since this is adding new API, could you add examples and unit tests?

Fri, Nov 30, 5:14 AM · efl: language bindings

Thu, Nov 29

lauromoura added a comment to T7477: Clarify how the "constructor" section in eo files is to be used.

We are only missing the input from the C# people who would need to implement this... Do you foresee any problem, @lauromoura ?

Thu, Nov 29, 6:32 PM · Restricted Project
lauromoura updated the diff for D7394: eolian_mono: Add support for C# style properties.

Update removing dead code from a previous mockup for this patch.

Thu, Nov 29, 6:24 PM · efl: language bindings
lauromoura updated the summary of D7394: eolian_mono: Add support for C# style properties.
Thu, Nov 29, 6:19 PM · efl: language bindings
lauromoura added a parent revision for D7394: eolian_mono: Add support for C# style properties: D7389: eolian-cxx: Add property_def.
Thu, Nov 29, 6:19 PM · efl: language bindings
lauromoura added a child revision for D7389: eolian-cxx: Add property_def: D7394: eolian_mono: Add support for C# style properties.
Thu, Nov 29, 6:19 PM · efl
lauromoura requested review of D7394: eolian_mono: Add support for C# style properties.
Thu, Nov 29, 6:13 PM · efl: language bindings
lauromoura updated the diff for D7262: csharp: Change to new class API..

Update to use any_of in event_is_unique after suggestion by Vitor.

Thu, Nov 29, 2:00 PM · efl
lauromoura requested review of D7389: eolian-cxx: Add property_def.
Thu, Nov 29, 12:25 PM · efl
lauromoura updated the diff for D7262: csharp: Change to new class API..

Update after removing return "abc" from name_helpers

Thu, Nov 29, 12:21 PM · efl

Tue, Nov 27

lauromoura updated the diff for D7262: csharp: Change to new class API..

Update after Vitor comments.

Tue, Nov 27, 5:20 PM · efl
lauromoura requested review of D7371: pyolian: Fix tests after class renames and API change.
Tue, Nov 27, 4:32 AM · efl

Mon, Nov 26

lauromoura updated the diff for D7262: csharp: Change to new class API..

Update removing remaining event cast and changing name_helpers.hh comparison to case-sensitive. It was case insensitive when namespaces were lower cased.

Mon, Nov 26, 9:42 AM · efl
lauromoura updated the diff for D7262: csharp: Change to new class API..

Update after Xavi's comments on events.

Mon, Nov 26, 1:37 AM · efl

Nov 16 2018

lauromoura added a comment to D7262: csharp: Change to new class API..

@lauromoura How's that list of conflicting event names coming along?
By using eolian I got this list of duplicated events, but it does not mean that they are in the same hierarchy, so some are not actual collisions:

eolian: efl_canvas_scene.eo:231:7: event 'focus,in' conflicts with another symbol (at efl_input_interface.eo:63:7)
eolian: efl_canvas_scene.eo:232:7: event 'focus,out' conflicts with another symbol (at efl_input_interface.eo:64:7)
eolian: efl_gfx_image.eo:208:7: event 'resize' conflicts with another symbol (at efl_gfx_entity.eo:107:7)
eolian: efl_ui_focus_manager.eo:40:9: function 'move' conflicts with another symbol (at efl_gfx_entity.eo:106:7)
Nov 16 2018, 4:15 AM · efl

Nov 14 2018

lauromoura added a comment to D7262: csharp: Change to new class API..

@lauromoura Thanks a lot, I am very much tempted to merge this already, but there are a couple of questions:

  • efl.input.Interface.KeyDownEvt_Args-->Efl.Input.InterfaceConcrete.KeyDownEvt_Args. Is there any way to avoid this? I think this is the only place where the Concrete class is needed and is very confusing.
Nov 14 2018, 3:10 AM · efl

Nov 12 2018

lauromoura updated the diff for D7262: csharp: Change to new class API..

Update revision after conflict with newer version of parent revision.

Nov 12 2018, 11:58 AM · efl
lauromoura updated the diff for D7260: eo: Avoid namespace clashes..

Update C# code after Xavi's comments.

Nov 12 2018, 11:51 AM · efl
lauromoura requested review of D7262: csharp: Change to new class API..
Nov 12 2018, 8:02 AM · efl
lauromoura added a child revision for D7260: eo: Avoid namespace clashes.: D7262: csharp: Change to new class API..
Nov 12 2018, 8:02 AM · efl
lauromoura added a revision to T7451: efl-mono: Only expose API methods relevant to the user: D7262: csharp: Change to new class API..
Nov 12 2018, 8:02 AM · efl: language bindings, efl: docs
lauromoura added a revision to T7336: Ecore csharp examples are not part of the build: D7262: csharp: Change to new class API..
Nov 12 2018, 8:02 AM
lauromoura added a comment to D7260: eo: Avoid namespace clashes..

Do you have any idea why these have not been detected until now? I thought eolian was enforcing this check :/

Nov 12 2018, 6:53 AM · efl
lauromoura requested review of D7260: eo: Avoid namespace clashes..
Nov 12 2018, 2:57 AM · efl

Nov 6 2018

lauromoura added inline comments to D7242: Efl.Ui.Tree_View: added new MVVM asynchronous widget.
Nov 6 2018, 5:54 PM · efl
lauromoura added a comment to T7453: C# bindings: Convert Eo comment format into proper XML comment format.

The regular param tags already use the name attribute in function parameters. It was missing from the constructors but I added it to the new API branch.

Nov 6 2018, 5:14 PM · efl: language bindings

Nov 5 2018

lauromoura added a comment to T7451: efl-mono: Only expose API methods relevant to the user.

The *_class_get() methods can be safely made internal. I've integrated this in the new API.

Nov 5 2018, 6:43 AM · efl: language bindings, efl: docs

Nov 1 2018

lauromoura added a comment to D7226: efl_mono: Add Efl.Ui.Theme to support elm_theme APIs on C# binding.

@segfaultxavi @lauromoura

Thank you for feedback. I want to discuss about supporting singleton class with you.

The reason, why I added Efl.Ui.Theme manually in efl_all.cs instead of adding efl_ui_theme.eo, is because I think that current eolian cannot support singleton class instance.

I think that theme is normally used like singleton class due to default theme. i.e. mainly elm_theme APIs are applied to default theme.
And config (efl_config_global.eo) works exactly like singleton class.

If theme and config are not singleton class, then app developers should create a class instance whenever they want to set properties of theme or config although the instance does nothing.

Do we need some new features of eolian to support singleton class? Or should we add language specific class manually (e.g. class Efl.Ui.Theme for EFL C# only) like this patch?
Could you share your idea?

Nov 1 2018, 7:58 AM · efl
lauromoura added a comment to D7226: efl_mono: Add Efl.Ui.Theme to support elm_theme APIs on C# binding.

Maybe I did not understand your approach, but, why did you add the Theme class to efl_all.cs instead of creating the missing efl_ui_theme.eo file?
With this patch only C# can use themes!

Nov 1 2018, 6:25 AM · efl
lauromoura added inline comments to D7226: efl_mono: Add Efl.Ui.Theme to support elm_theme APIs on C# binding.
Nov 1 2018, 6:22 AM · efl

Oct 31 2018

lauromoura added a parent task for T7447: Meson - Generate new style pkgconfig files: T6609: Port efl to meson.
Oct 31 2018, 7:10 AM · efl: meson
lauromoura added a subtask for T6609: Port efl to meson: T7447: Meson - Generate new style pkgconfig files.
Oct 31 2018, 7:10 AM · efl: meson, Restricted Project
lauromoura created T7447: Meson - Generate new style pkgconfig files.
Oct 31 2018, 7:09 AM · efl: meson
lauromoura added a comment to T7375: Support widget styles in C# bindings.

From the C part, I think so. It'll need some work on the eolian_cxx library (which the C# generator uses) but we already work on both the bindings and eolian_cxx at the same time regularly.

Oct 31 2018, 6:24 AM · efl
lauromoura claimed T7375: Support widget styles in C# bindings.
Oct 31 2018, 6:22 AM · efl
lauromoura added a comment to T7356: EO: Support elm_config APIs.

Otherwise, let's focus on other important tasks and then later let's get back to this task :)

Sure, let's work on this later. I wasn't working on this, or I would have set myself as the owner of the task :)

BTW, what do you think about changing class name Efl.Config_Global to Efl.Ui.Config?

I think @lauromoura had a problem with this because Config was reserved by the C# bindings.
There are a few naming issues in the C# bindings which I am currently happy with, like having to start the elm main loop by using Efl.Ui.Config.Run(). These will need to be addressed at some point.

Oct 31 2018, 6:21 AM · efl, Restricted Project

Oct 26 2018

lauromoura added a comment to T7366: Evaluate work needed to fix EO classes inheriting from more than one regular class or abstract.

@lauromoura

I agree with you! Please push modifications which are not related to dealing with mixin :)

Oct 26 2018, 8:52 PM · efl: language bindings, Restricted Project

Oct 24 2018

lauromoura added a comment to T7366: Evaluate work needed to fix EO classes inheriting from more than one regular class or abstract.

@Jaehyun_Cho @woohyun while there is still this inheritance conundrum, this problem seems to happen in the code on master too right?

Oct 24 2018, 8:27 AM · efl: language bindings, Restricted Project

Oct 19 2018

lauromoura added a comment to T7418: efl-mono: Removing widgets leaves app in unstable state.

There still seems to be something wrong even after removing the Invalidate() call, as dismissing the popup in the updated example from D7173 shows errors like ERR<14922>:eina_safety ../../src/lib/elementary/efl_ui_layout_object.c:933 _efl_ui_layout_object_efl_layout_signal_signal_emit() safety check failed: efl_invalidated_get(obj) is true and some safety check failure afterwards (caught by the changed event handler in the example).

Oct 19 2018, 12:11 PM · efl: language bindings

Oct 16 2018

bu5hm4n awarded D7166: eina_cxx: Fix eina::value copy constructor. a Love token.
Oct 16 2018, 10:43 PM · efl
lauromoura requested review of D7166: eina_cxx: Fix eina::value copy constructor..
Oct 16 2018, 2:29 PM · efl

Oct 11 2018

lauromoura edited the content of Windows.
Oct 11 2018, 12:30 PM

Oct 4 2018

lauromoura updated the diff for D7134: efl-csharp: Fixing C# examples.

Update removing the comment. Somehow I forgot it when splitting the patches.

Oct 4 2018, 10:12 AM · efl

Oct 3 2018

lauromoura added a comment to T7366: Evaluate work needed to fix EO classes inheriting from more than one regular class or abstract.

I've rebased the current new API work on top of yesterday (Oct 3rd) master (still in devs/lauromoura/csharp-new-classes) and it compiled without requiring any changes to the Eo files. All tests pass and a quick test showed at least elm examples are working. The generator new code requires some cleanup before pushing, though.

Oct 3 2018, 9:42 PM · efl: language bindings, Restricted Project
lauromoura updated the diff for D7134: efl-csharp: Fixing C# examples.

Update with SetIcon change from D7133

Oct 3 2018, 12:32 PM · efl
lauromoura abandoned D7133: efl-csharp: Add missing icon arg to SetButton.

Will merge this change into D7134, as it already fixes the example build system.

Oct 3 2018, 12:31 PM · efl
lauromoura requested review of D7136: csharp: Fix missing override keyword.
Oct 3 2018, 12:25 PM · efl
lauromoura requested review of D7135: csharp: Temporarily disable missing docs warning.
Oct 3 2018, 12:24 PM · efl
lauromoura requested review of D7134: efl-csharp: Fixing C# examples.
Oct 3 2018, 12:23 PM · efl
lauromoura requested review of D7133: efl-csharp: Add missing icon arg to SetButton.
Oct 3 2018, 12:23 PM · efl

Sep 27 2018

lauromoura added a comment to T7366: Evaluate work needed to fix EO classes inheriting from more than one regular class or abstract.

About hiding them from the tree, these are the methods either returning (->) or receiving as a parameter (between ()) a Mixin type.

Sep 27 2018, 1:01 PM · efl: language bindings, Restricted Project

Sep 25 2018

lauromoura requested review of D7106: efl-csharp: Fix event struct marshalling..
Sep 25 2018, 7:20 AM · efl

Sep 13 2018

lauromoura added a comment to T6128: Generate C# reference API documentation.

The Mono compiler already extracts the documentation from the generated code (eolian_mono adds them as C# comments) into a XML file that VS/MonoDevelop use. Maybe we could just add a script to transform the generated XML into the DokuWiki syntax.

Sep 13 2018, 12:31 PM · efl: language bindings, efl: docs

Sep 12 2018

lauromoura added a comment to T7204: Discussion about C# binding syntax.

I've pushed the current code to devs/lauromoura/csharp-new-classes.

Sep 12 2018, 6:02 PM · Active Work Proposal, Restricted Project, efl: language bindings, efl (efl-1.22)

Sep 11 2018

lauromoura triaged T7394: C#: Fix class registration when running with dotnet core as High priority.
Sep 11 2018, 6:53 PM · efl: language bindings
lauromoura added a comment to T7204: Discussion about C# binding syntax.

@lauromoura

Thank you for explanation about how to build with meson.

I built with meson and then all elementary functions are successfully loaded by dlsym in class_initializer.
But I still don't know why those functions are not loaded by dlsym with dotnet build...
Our goal is to build EFL C# on Visual Studio so it still matters..

Please let me know if you build successfully with dotnet build.

Sep 11 2018, 6:46 PM · Active Work Proposal, Restricted Project, efl: language bindings, efl (efl-1.22)
lauromoura added a comment to T7375: Support widget styles in C# bindings.

This @ctor_param would behave just like a hint, right? So each language decides whether it should support them as explicit constructor parameters (C#) or keep it implicit through efl_added (C/C++).

Sep 11 2018, 11:59 AM · efl

Sep 10 2018

lauromoura requested review of D7017: efl-csharp: Add copy constructor for eina.Value..
Sep 10 2018, 8:36 PM · efl
lauromoura added a comment to T7375: Support widget styles in C# bindings.

There's an option we have been discussing on IRC. Currently the EO format has a constructors { } section which is unused, and it is not clear what its purpose is.

Sep 10 2018, 9:06 AM · efl

Sep 5 2018

lauromoura closed T7355: csharp: Cannot unregister event handlers as Resolved.

Marked as resolved. Somehow phab didn't close it after pushing.

Sep 5 2018, 1:59 PM · efl: language bindings

Sep 4 2018

lauromoura requested review of D6981: efl-csharp: Fix event callback removal..
Sep 4 2018, 1:43 PM · efl: language bindings
lauromoura added a comment to T7240: Not allow multi class inheritance in eo.

@lauromoura with that pyolian magic, can you list all classes inheriting from more than one class (not interface or mixin) ? In this way we can start evaluating how much work would require fixing that.

Sep 4 2018, 7:35 AM · efl: language bindings, Restricted Project

Sep 3 2018

lauromoura added a comment to T7204: Discussion about C# binding syntax.

@lauromoura

It is strange.. I called efl.All.Init(efl.Components.Ui); when I tested. And it did not work on the latest master branch.

I think maybe you tested on your local branch.

Please let me know your test branch or please test on the latest master branch. (if you test on master branch, then please do not use previously installed so files and header files from your local branch.)

Thank you :)

Sep 3 2018, 7:02 AM · Active Work Proposal, Restricted Project, efl: language bindings, efl (efl-1.22)

Aug 31 2018

lauromoura added a comment to T7240: Not allow multi class inheritance in eo.

With help of pyolian, I could find these instances where we have abstract classes inheriting from regular classes somewhere in their inheritance chain:

Aug 31 2018, 6:23 PM · efl: language bindings, Restricted Project
lauromoura claimed T7359: efl-mono: Accessing the Global Config crashes on exit.

(Somehow I removed myself as the assignee...)

Aug 31 2018, 4:55 PM · efl: language bindings
lauromoura requested review of D6958: efl-csharp: Use value_new/free for wrapped values.
Aug 31 2018, 4:54 PM · efl
lauromoura added a revision to T7359: efl-mono: Accessing the Global Config crashes on exit: D6958: efl-csharp: Use value_new/free for wrapped values.
Aug 31 2018, 4:54 PM · efl: language bindings
lauromoura placed T7359: efl-mono: Accessing the Global Config crashes on exit up for grabs.

The problem seems to be eina.Value using malloc/free internally to create/delete Eina_Values while it should use eina_value_new/eina_value_free to alloc/free from the Value mempool.

Aug 31 2018, 1:37 PM · efl: language bindings
lauromoura added a comment to T7204: Discussion about C# binding syntax.

@lauromoura @felipealmeida

Thank you for sharing and fix D6956.

Regarding D6956, still override FinalizeAdd() is not called. (I tested dotnet run with user-defined class which inherits from efl.ui.ButtonInherit.)

The reason is because class_initializer of inherit class in cs file fails to load some efl functions from dlsym (i.e. descs[].api_func) (e.g. efl_selection_set).
This fails _eo_class_funcs_set in eo.c with error message "Class '%s': NULL API not allowed (NULL->%p '%s').".
The efl functions which cannot be loaded from dlsym are methods of mixin, class, and abstract class in elementary. (e.g. efl_selection_set)

My user-defined class is instantiated after efl.ui.Config.Init() is called, so I think that there should not be any problem to load elementary functions from dlsym in efl_ui_button.eo.cs file.
If you know anything about this problem, please share with us.

Thank you :)

Aug 31 2018, 6:18 AM · Active Work Proposal, Restricted Project, efl: language bindings, efl (efl-1.22)

Aug 30 2018

lauromoura added a comment to T7204: Discussion about C# binding syntax.

@lauromoura @felipealmeida

Could you tell me what branch do you use for the latest development of C# bindings?

Aug 30 2018, 9:20 PM · Active Work Proposal, Restricted Project, efl: language bindings, efl (efl-1.22)
lauromoura requested review of D6956: efl-csharp: Make sure efl_finalize overrides are callable.
Aug 30 2018, 9:10 PM · efl