the previous commits introduced a abstraction for drag in drop which can
be now used for this here. With this commit all the direct protocol
handling in efl.ui is removed, and only the ecore evas API is used.
Additionally, this lead to a giant refactor of how APIs do work. All
Efl.Ui. interfaces have been removed except Efl.Ui.Selection and
Efl.Ui.Dnd, these two have been restructored.
A small list of what is new:
- In general no function pointers are used anymore. They feel very
uncompftable in bindings and in C. For us its a lot easier to just
listen to a event when a drop enters or leaves, there is no need to
register custom functions for that.
- Asynchronous data transphere is handled via futures, which proved to
be more error safe.
- Formats and actions are handled as mime types / strings.
- 0 is the default seat if you do not know what else to take.
- Content is in general passes as a content container from eina, this
also allows applications to pass custom types
The legacy dnd and cnp API is implemented based on that.
All cnp related things are in elm_cnp.c the dnd parts are in elm_dnd.c
Differential Revision: https://phab.enlightenment.org/D11190
summary_: Longpress and right click one textbox scrollbars will not show up the menu.
Reviewers: woohyun, bu5hm4n
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Maniphest Tasks: T8604
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11295
changed the insertion property to be an enum instead of a boolean property.
this will be clearer for usage and provide the ability to add more types in the future.
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D11272
As other widgets, efl.ui.textbox will use keyboard bindings instead of listen to keyboard events
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11236
This patch will replace the use of ecore_job with Efl_Future
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11216
This patch will:
- Replace all Evas callbacks with unified ones.
- Replace evas_object* methods with unified ones (For **stabilized** methods and interfaces)
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11217
Summary:
these implementations were totally equal to what is there in
efl_ui_layout. No point in keeping them. (Note, entry_edje is equal to
resize_obj)
ref T8522
Reviewers: segfaultxavi, cedric, zmike, woohyun
Subscribers: #reviewers, #committers
Tags: #efl
Maniphest Tasks: T8522
Differential Revision: https://phab.enlightenment.org/D11141
We want to keep implementation for file interface in a safe place and remove it from our side world (eo).
This is a simple copy-paste, from efl.ui.textbox into efl_ui_internal_text_interactive
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11153
Summary: > Code structures like top = elm_widget_top_get(data); and if (efl_isa(top, EFL_UI_WIN_CLASS)) can be replaced with top = efl_provider_find(widget, EFL_UI_WIN_CLASS) No type check needed. (That should enhance the performance)
Reviewers: woohyun, bu5hm4n, cedric
Reviewed By: bu5hm4n, cedric
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Maniphest Tasks: T8522
Differential Revision: https://phab.enlightenment.org/D11127
>You should not theme in _efl_ui_textbox_efl_object_finalize, but rather in theme_apply
>All part swallow things should be done in theme_apply.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11103
Summary:
We did not use the **ELM_PART_OVERRIDE_** because it produces compilation error
```
../src/lib/elementary/efl_ui_textbox.c:3603:40: error: ‘EFL_UI_TEXTBOX_PART_CLASS’ undeclared (first use in this function)
ELM_PART_OVERRIDE_PARTIAL(efl_ui_text, EFL_UI_TEXTBOX, Efl_Ui_Textbox_Data, _part_is_efl_ui_text_part)
```
Reviewers: woohyun, bu5hm4n
Reviewed By: woohyun
Subscribers: segfaultxavi, cedric, #reviewers, #committers
Tags: #efl
Maniphest Tasks: T8522
Differential Revision: https://phab.enlightenment.org/D11102
efl.ui.textbox: replace hoversel with popup
**I think this may need some changes, please let me know what you think**
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11072
efl.ui.textbox: clean up (remove unused vars and methods)
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11023
simplify code, and reduce calls:
It is only required to set scroll mode in two cases:
- When creating scroller
- When changing multiline property
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10981
With this commit you can move the focus from the textbox widget to the surrounding widgets, (as it is done in legacy).
ref T8538
ref T8522
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10987
Summary: This patch only changes some of legacy calls, with new ones
Reviewers: woohyun, zmike, bu5hm4n
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Maniphest Tasks: T8522
Differential Revision: https://phab.enlightenment.org/D10982