Commit Graph

149 Commits

Author SHA1 Message Date
Jaehyun Cho 2d460e52e4 elementary: remove Efl.Ui.Layout namespace
Summary:
Efl.Ui.Layout namespace is removed to keep consistency with other
widgets.
Consequently, "Efl.Ui.Layout.Object" is renamed to "Efl.Ui.Layout" and
"Efl.Ui.Layout." is renamed to "Efl.Ui.Layout_".

Reviewers: segfaultxavi, bu5hm4n, cedric

Reviewed By: segfaultxavi

Subscribers: #reviewers, #committers, SanghyeonLee, woohyun

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7291
2018-11-16 11:11:13 +01:00
Marcel Hollerbach 9f758dc363 elm: update widgets that have documented focus and unfocused events
this emits focus and unfocus on those widgets.

fixes T7386

Depends on D7124

Differential Revision: https://phab.enlightenment.org/D7103
2018-11-15 13:55:37 +01:00
Carsten Haitzler b601e6f54b elm entry - warn - write a specirfic string truncate func to avoid warnings
so gcc likes to warn even if the truncation is intended. there are
verious ways around this, but in this case it's really just writing
your own ... which is pretty simple.

there is just too much warning noise for efl.
2018-11-09 12:18:59 +00:00
Youngbok Shin 75296e32df elementary entry: apply scale to all edje objects
Summary:
When an entry is scrollable, its resize object is scr_edje.
So, to apply scale properly, elm_entry needs to apply scale
to its entry_edje, too.
@fix

Test Plan: Apply scale to scrollable entry

Reviewers: herdsman, woohyun, cedric, eagleeye

Reviewed By: eagleeye

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7140
2018-10-04 18:53:36 +09:00
Marcel Hollerbach 39202e00f2 elm_entry: make the hoversel not focusable
Summary:
the hoversel is added to a entry while entrys are not build for handling
children focus. Disabling this prevents wrong focus operations.

fix T7163

Reviewers: zmike, #committers, netstar

Reviewed By: netstar

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T7163

Differential Revision: https://phab.enlightenment.org/D6695
2018-07-30 13:19:08 +01:00
Cedric BAIL 8a513a522e efl: major rewrite of efl_part.
The interface efl_part_get should not be directly called from C, but the efl_part
wrapper should. It rely on efl_noref to properly destroy the object. Binding can
control the lifecycle of the reference the way they want by either calling the
wrapper or efl_part_get directly. It also means that the ugly ___efl_auto_unref_set
doesn't need to be exposed outside of EFL anymore.

Differential Revision: https://phab.enlightenment.org/D6098
2018-05-24 16:02:18 -07:00
Jihoon Kim 379ee0d0db elm_entry: add elm_entry_prediction_hint_hash_set/del API
elm_entry_prediction_hint_hash_set API sets the prediction hint data at the specified key, and
elm_entry_prediction_hint_hash_del API is for deleting the prediction hint data identified by a key.

@feature

Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
2018-05-23 11:27:34 +09:00
Marcel Hollerbach a218c883c7 Introduce efl_ui_widget_focus_manager
Summary:
The mixin encapsulates the correct
- creation
- composition attaching
- Lifecycle handling

of the focus managers that are assosiated with the object.

This fixes error messages on shutdown, and additionally lifetime issues
where the composite_attached object was deleted before the object was
deleted.

Reviewers: cedric, zmike

Reviewed By: zmike

Subscribers: segfaultxavi, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6108
2018-05-16 13:30:28 -04:00
Xavi Artigas 6a98b84cd7 Efl.Ui.Layout.Object (from Efl.Ui.Layout)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:54 -07:00
Xavi Artigas 55bd097a3d Efl.Gfx.Entity (from Efl.Gfx)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:32 -07:00
Xavi Artigas 9dcc31ed4a Efl.Access.Object (from Efl.Access)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:24 -07:00
Daniel Kolesa fcae7cab27 eolian gen: enable constness generation on property getter impls
This changes a lot of things all across the EFL. Previously,
methods tagged @const had both their external prototype and
internal impl generated with const on object, while property
getters only had const on the external API. This is now changed
and it all has const everywhere.

Ref T6859.
2018-04-17 20:31:55 +02:00
Derek Foreman e066e574cb Revert "elm entry - fix wayland bug by not updating selection until after mse up"
Summary:
This reverts commit b0a7c4b086.

This is adding another EFL bug to work around an EFL bug.

Reviewers: raster

Subscribers: devilhorns, stefan_schmidt, bu5hm4n, thiepha, cedric

Differential Revision: https://phab.enlightenment.org/D5933
2018-04-13 20:50:24 +09:00
Carsten Haitzler b0a7c4b086 elm entry - fix wayland bug by not updating selection until after mse up
or update with a small delay after any change and check mouse button
mask to avoid some bizarre mouse up event that is stopping the
selection form continuing with a mouse up event... so this works
around that and still works.
2018-04-13 04:19:16 +09:00
Carsten Haitzler 13734e51c1 efl selection - fix entry <-> plain text compy and paste in wl
efl didnt convert markup to plain text when pasting markup -> text.
this fixes that and enables middle mouse paste etc. etc.

@fix
2018-04-13 04:19:16 +09:00
Marcel Hollerbach 03efb59da9 elm_entry: use a normal calc manager instead of the root focus
fix T6795
2018-04-03 14:08:28 +02:00
Minkyu Kang 98a36f37f3 elementary: entry - recover cursor position when theme is changed
Summary:
When theme is applied text is reset and cursor position is set to 0.
This patch is recover the position to previous after text is reset.

Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>

Reviewers: cedric, jpeg, woohyun, herdsman

Reviewed By: cedric

Subscribers: cedric, jpeg

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5695

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2018-03-06 19:05:57 -08:00
Jeonghyun Yun b63cdb6497 elementary: entry - fix to generate "activated" and "aborted" event in single line entry only
Summary:
"aborted": The escape key was pressed on a single line entry. (since 1.7)
"activated": The enter key was pressed on a single line entry.

Reviewers: id213sin, jpeg, cedric, herdsman

Subscribers: cedric, jpeg

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5728

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2018-03-06 19:05:57 -08:00
Carsten Haitzler 1bdd9e4dd1 ecore - a different take on efl.app class as a super class to efl.loop
so the MAIN loop is actually an efl.app object. which inherits from
efl.loop. the idea is that other loops in threads will not be efl.app
objects. thread on the creator side return an efl.thread object.
inside the thread, like the mainloop, there is now an efl.appthread
object that is for all non-main-loop threads.

every thread (main loop or child) when it spawns a thread is the
parent. there are i/o pipes from parnet to child and back. so parents
are generally expected to, if they want to talk to child thread, so
use the efl.io interfaces on efl.thread, and the main loop's elf.app
class allows you to talk to stdio back to the parent process like the
efl.appthread does the same using the efl.io interfaces to talk to its
parent app or appthread. it's symmetrical

no tests here - sure. i have been holding off on tests until things
settle. that's why i haven't done them yet. those will come back in a
subsequent commit

for really quick examples on using this see:

https://phab.enlightenment.org/F2983118
https://phab.enlightenment.org/F2983142

they are just my test code for this.

Please see this design document:

https://phab.enlightenment.org/w/efl-loops-threads/
2018-03-03 13:40:33 +09:00
Carsten Haitzler 6b2f39a59d elm entry - dont seg if the obj has been deleted by callback time
i spotted a segv with elm entry + efm ... sd was NULl because obj was
seemingly not valid at that point, so fix and check the smart data
returns before moving on.
2018-02-17 18:00:19 +09:00
Mike Blumenkrantz d17b8a23d9 Efl.Access.Text: resolve more name conflicts
text -> access_text
attributes -> text_attributes
selection -> access_selection
2018-02-15 13:28:49 -05:00
Mike Blumenkrantz b493f15069 Efl.Access.Editable.Text: content -> text_content 2018-02-15 13:28:48 -05:00
Mike Blumenkrantz a6566ef8ae elm_interface_scrollable: use 'mirrored' from Efl.Ui.Base 2018-02-15 13:11:01 -05:00
Mike Blumenkrantz f0b4de1b4d elm_entry: remove 'calc_force'
use Efl.Layout.Calc which is already inherited
2018-02-15 13:11:00 -05:00
Mike Blumenkrantz 63bd856fdd elm_entry: rename some eo methods
cursor_content -> textblock_cursor_content
cursor_geometry -> textblock_cursor_geometry

probably all cursor methods here should be renamed to something to
increase consistency
2018-02-15 13:11:00 -05:00
Mike Blumenkrantz 8b7bbb2398 efl.access: name -> i18n_name 2018-02-15 13:11:00 -05:00
Jean-Philippe Andre 20570f74d3 widget: Move on_focus_update to Focus.Object
Following @taxi2se's recommendation. This is indeed a focus method, and
Widget already inherits from Focus.Object.

Ping @bu5hm4n who probably wants to adapt this further.

Ref T5363
2018-01-19 17:30:04 +09:00
Jean-Philippe Andre c35f257bf2 widget: Remove item from on_focus_update
It's legacy stuff, and always NULL.
2018-01-19 17:17:01 +09:00
Jean-Philippe Andre a92186be6a ecore/edje/elm: Fix a few WRN from calls to NULL
This fixes some of the warnings generated by calling functions on NULL
objects. One of the main remaining points is to avoid unwanted warnings
on non-existing parts.

Ref T6326
2018-01-16 18:37:05 +09:00
Amitesh Singh 44d3227beb widget: rename elm widget to Efl.Ui.Widget. 2018-01-08 21:28:10 +09:00
Shilpa Singh 9128b9001f elm_entry: if cnp mode is PLAINTEXT, & do not get pasted
Summary:
if cnp mode is PLAINTEXT mode, & do not get pasted issue fix and
conversion(markup to utf8) should happen only for PLAINTEXT mode

Test Plan:
Set PLAINTEXT cnp mode to entry and paste text consisting
of &

Reviewers: thiepha, herdsman

Subscribers: cedric, govi, rajeshps, jpeg

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5470
2017-12-11 11:44:16 +09:00
Sungtaek Hong a9bb425dd5 elm_entry: remove warning during construct
Summary:
elm_layout_theme_set calls theme_apply, which means
 some of the components might not be initialized.

Test Plan: Run elementary_test->check no more ERR shown.

Reviewers: jpeg, woohyun

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5564
2017-12-08 16:02:24 +09:00
Amitesh Singh 7b3fde4d4b edje: rename intf Efl.Canvas.Layout.Signal to Efl.Layout.Signal 2017-12-05 16:18:32 +09:00
Amitesh Singh 10103b9b45 efl.gfx: move scale{} from efl.ui.base to efl.gfx 2017-12-04 14:38:39 +09:00
Amitesh Singh 29b47e0a07 focus: remove focus.get{} from widget.eo
This is taking care by focus manager now.
2017-11-29 19:25:14 +09:00
Jaehyun Cho 4b18e754de elm_part_helper: Change macro name for default content part 2017-11-29 13:43:21 +09:00
Prasoon Singh 8b0c8c2eb7 elm_entry : Added access action interface in entry.
Summary:
Added access action interface in entry. On activate action from atspi client , entry will emit click signal and input panel
would be shown.

Test Plan:
When activate action comes,  entry will emit click signal and input panel
should be shown.

Reviewers: shilpasingh, kimcinoo

Reviewed By: shilpasingh

Subscribers: cedric, jpeg, rajeshps, govi

Differential Revision: https://phab.enlightenment.org/D5544
2017-11-28 09:56:32 +09:00
Marcel Hollerbach 149d03d8f4 efl_ui_text: remove the event emits here
with the previous commit we emit the legacy events for each interface
event, and thus this event is not needed.

However, in elm_entry this means that changing editable will _not_
reemit the focus event (where i am not that sure if that is correct or
not).
2017-11-21 20:37:21 +01:00
Marcel Hollerbach 07cb2d2dcd efl_ui_focus_object: document the bahaviour of the manager property 2017-11-15 13:21:22 +01:00
Jean-Philippe Andre d39bbc1491 elm: Create legacy widgets with elm_legacy_add
This will be used to solve issues around style_set:
if the widget is legacy or pure eo we may need to select a different
style. So in the constructor we need to know whether we are legacy or
eo. Note that calling style_set in finalize only is too late as we would
lose information such as efl_text_set() called inside efl_add().
2017-11-07 14:50:31 +09:00
Jean-Philippe Andre 1b481f0ae8 widget: Rename events to EFL_UI_WIDGET_EVENT_XXX
This only affects the events (and the data type has an alias).

Ref T5363
2017-10-24 14:37:45 +09:00
Jean-Philippe Andre 2f465e1fbb widget: Rename EO APIs to efl_ui_widget_xxx
This only changes the eo_prefix for APIs.

Ref T5363
2017-10-24 14:30:21 +09:00
Marcel Hollerbach 0b81f9c808 elm_entry: correctly emit unfocus signals to the edje object 2017-10-20 11:54:08 +02:00
Lukasz Stanislawski 57aefc53c1 elm: rename Elm_Interface_Atspi_Accessible interface
Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5341
2017-10-19 10:13:54 +09:00
Jean-Philippe Andre c9c9e6a209 elm: Rename Elm.Activate to Efl.Ui.Activate
Note: This is an EO-only beta API.

Ref T5329
2017-10-17 17:31:38 +09:00
Jean-Philippe Andre 72f1fbf4f1 widget: Rename focus_region (EO)
This region has little to do with focus, as it's more of a region of
interest within the widget, and not directly related to the highlight
geometry, for instance. It's related to focus in the sense that only
widgets with focus would really care about this region.

I decided to change this name after talking with @bu5hm4n.
Note that gengrid uses this but is also completely broken (the focus
highlight floats around and you don't even see the focused item).

Note: This is very close to show_region but I'm not sure those can be
merged safely (since the default "focus_region" is NULL while the
default "show_region" is the widget's geometry).

Ref T5363
2017-10-12 19:33:04 +09:00
Marcel Hollerbach 265a26f68e elm_entry: remove old api! 2017-10-10 19:28:46 +02:00
Lukasz Stanislawski b3ffd78237 elm: rename Elm.Interface.Atspi.Text => Efl.Access.Text
Reviewers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5167
2017-09-26 17:58:07 +09:00
Jean-Philippe Andre 0339ad7740 elm: Move base implementation for efl_part in widget
This means that ALL part handles inherit from the base part class
Efl.Ui.Widget.Part. Layout is the only exception where Efl.Part is
specially overridden.

This is a first step towards generic part APIs, including background in
all widgets.
2017-09-21 12:27:33 +09:00
Daniel Hirt d44131a3aa Edje: move selection-related part_text API to legacy 2017-09-20 09:19:33 +03:00