Commit Graph

12 Commits

Author SHA1 Message Date
Marcel Hollerbach 838d2c27dc rewrite efl cnp and dnd handling
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
2020-02-10 12:56:08 +01:00
Ali Alzyod a92f8c210b efl.ui.textbox: add and use keyboard bindings
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
2020-02-04 09:14:04 +01:00
Marcel Hollerbach b3c0da13d8 efl_ui_textbox / efl_ui_image_zoomable: remove duplicated code
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
2020-01-28 06:49:46 +09:00
Ali Alzyod 279f2eca06 efl.ui.textbox: move file implementation in to internal class
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
2020-01-23 10:04:08 +01:00
Ali Alzyod a53ef37c54 efl.ui.textbox: add efl.input text as composite interface
Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8522

Differential Revision: https://phab.enlightenment.org/D11092
2020-01-15 09:19:14 +09:00
WooHyun Jung d412f73a99 efl_ui_textbox: mark @beta to cnp_mode and item_factory
After stabilizing efl_ui_textblox, these properties should be
kept as @beta.

ref T8522

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11093
2020-01-14 17:19:54 +01:00
Xavi Artigas 93c7e7dc8f docs: Improvements to Text API documentation
Ref T7855
Ref T7934
Ref T7935
Ref T7936
Ref T7937
Ref T7938
Ref T7941
Ref T7942
Ref T7943
Ref T7944
Ref T7945
2020-01-09 18:17:33 +01:00
Ali Alzyod 1a02745a88 efl.text.cursor: change to abstract class
Summary:
1- Change cursor to abstract class
2- Remove copy method from cursor
3- remove cursor_Add method from efl.canvas.textblock and efl.ui.textbox

Reviewers: woohyun, segfaultxavi, bu5hm4n

Reviewed By: bu5hm4n

Subscribers: lauromoura, YOhoho, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8299, T8454

Differential Revision: https://phab.enlightenment.org/D11034
2020-01-09 22:33:07 +09:00
Ali Alzyod 622f0b188f efl.ui.textbox: rename selection_handler to selection_handles
Summary: efl.ui.textbox: rename selection_handler to selection_handles

Reviewers: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8522

Differential Revision: https://phab.enlightenment.org/D11042
2020-01-09 13:44:50 +09:00
Ali Alzyod 3cc8ea77fa efl_ui_text: scroller mode clean up
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
2020-01-02 12:41:13 +01:00
Ali Alzyod b9818f566c efl.ui.textbox: rename _disabled properties into _enabled
Reviewers: segfaultxavi, woohyun, bu5hm4n

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8522

Differential Revision: https://phab.enlightenment.org/D10923
2019-12-20 14:10:00 +01:00
Ali Alzyod 3359e03500 efl.ui.text: rename to efl.ui.textbox
Summary:
This patch will rename efl.ui.text into efl.ui.textbox

Effected classes:
 - efl.ui.text_async   :  efl.ui.textbox_async
 - efl.ui.text_editable   :  efl.ui.textbox_editable **will be removed anyway**

Needs consider Classes:
- efl.ui.text_part
- efl.ui.text_factory.Emoticons
- efl.ui.text_factory.Fallback
- efl.ui.text_factory.Images

Reviewers: woohyun, segfaultxavi, bu5hm4n, zmike, YOhoho

Reviewed By: woohyun

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10835
2019-12-11 09:47:50 +09:00