Summary:
in this case, the event is emitted and no manager exists because the objects
are not focusable
@fix
Reviewers: bu5hm4n
Reviewed By: bu5hm4n
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8935
Summary:
this fixes the selection callback and makes the widget work again
@fix
Reviewers: bu5hm4n
Reviewed By: bu5hm4n
Subscribers: bu5hm4n, cedric, #reviewers, #committers
Tags: #efl_widgets
Differential Revision: https://phab.enlightenment.org/D8913
Summary:
Textpath set its hint_size using its position and calulated path information.
The path information is calculated using center postion, radius & start angle.
For example, if textpath position is 0,0 and center positon of path is 100,100
and radius 50, then text will be located on the rigth side of textpath object.
Moreover there is another problem.
[Step to reproduce]
1. Launch elementary_test
2. open Efl.Ui.Textpath
3. see circle is not center aligned.
4. click Clockwise 1 ~ 2 times center position is changed repeatedly.
This occurs because textpath size is calculated by position_set.
It does not make sense that changing postion defines its size.
So this patch is setting textpath hint_size using only given center position.
The text will position on the middle of textpath object always.
Reviewers: Hermet, jsuya
Reviewed By: Hermet
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8930
Summary:
This will help disambiguate later on when we rename Efl.Ui.Direction
to Efl.Ui.Layout_Orientation.
Relates to T7919
Test Plan: Everything still builds and passes tests.
Reviewers: zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8934
This was an experiment that never properly took off and was never
used by any generator. Its use was highly variable, so it could
not be relied upon. We will still want to reverse the current
behavior eventually (no null by default), but that will be
done with eo file versioning in the future.
@feature
Summary:
sd->cursor_pos is updated in _entry_cursor_changed_signal_cb.
Generally, there is no problem.
But in some cases, before the _entry_cursor_changed_signal_cb is called
there is a situation in which cursor_pos is updated through _elm_entry_efl_ui_widget_theme_apply.
In this case,
before _entry_cursor_changed_signal_cb is called,
in _elm_entry_efl_ui_widget_theme_apply ()
cursor_pos = sd->cursor_pos; The wrong cursor_pos is set here.
Because it is the value before sd->cursor_pos is updated.
This causes an invalid cursor position when entering a key into the entry.
This patch prevents sd->cursor_pos from being updated with invalid values.
Reviewers: zmike, woohyun
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8923
Summary:
The textpath draws text from the start_angle. User needs to set correct
start_angle to center the text. This start_angle could be changed according to
each parameters of circle_set such as x, y, radius, direction and text itself.
So this patch is introducing direction EFL_UI_TEXTPATH_DIRECTION_CC(W)_CENTER.
The center of textpath will be located at the start_angle with this direction.
Test Plan: I will add example if this patch is acceptable.
Reviewers: Hermet, jsuya
Reviewed By: Hermet
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8892
Summary:
Efl.Ui.Textpath was drawing its text on the job. Because of this, textpath was
slower than other objects which are scrolling on the same scroller.
So this patch makes textpath not use job in the position.set.
Reviewers: Hermet, jsuya
Reviewed By: Hermet
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8924
Summary:
And the Efl.Orientation interface -> Efl.Gfx.Orientable
(with proper c_prefix so it is not too cumbersome to use from C).
Also, turned the theme_rotation_apply() parameter into an int to avoid confusion.
Fixes T7919
Depends on D8912
Test Plan: Everything continues to build and pass tests
Reviewers: zmike, bu5hm4n, cedric, Hermet, Jaehyun_Cho
Reviewed By: zmike
Subscribers: #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7919
Differential Revision: https://phab.enlightenment.org/D8926
Summary:
This is similar to how it is in Evas, and simplifies the Efl.Orientation
interface, which only needs one property now.
Relates to T7919
Test Plan: Everything builds and tests pass. There's only one example of efl_orientation_set() so there's not much to test yet.
Reviewers: zmike, bu5hm4n, cedric, Hermet, Jaehyun_Cho
Reviewed By: zmike
Subscribers: #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7919
Differential Revision: https://phab.enlightenment.org/D8912
Summary:
The only implementation of this interface, `Efl.Ui.Table`, only supports two fill
directions (horizontal or vertical), therefore the table_direction property which
supports primary and secondary directions is unnecessarily complicated. Remove it
and use only `Efl.Ui.Direction.direction` to select the fill direction.
Also, expanded the documentation.
Fixes T7962
Test Plan:
Everything builds and tests pass. Efl.Ui.Table elementary_test still work.
Examples need to be adjusted to stop using table_direction.
Reviewers: zmike, YOhoho, bu5hm4n, SanghyeonLee, Jaehyun_Cho
Reviewed By: YOhoho
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7962
Differential Revision: https://phab.enlightenment.org/D8902
Summary:
frame now uses efl.ui.clickable, which ensures correct click emittion.
The click event is not needed in the event anymore. However, now
efl,action,press / efl,action,unpress is needed.
Depends on D8825
Reviewers: zmike, segfaultxavi, cedric
Reviewed By: zmike
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8826
To use Efl.Ui.Widget's "background" and "shadow" part class, each widget
inheriting from Efl.Ui.Widget should not use their Part class for
"background" and "shadow" parts.
Summary:
these widgets here are containers, means: they contain items that can be
clicked, but the container itself cannot be clicked. Later on, we should
introduce a new interface which contains events that reflect the clicked
event of theire items.
Depends on D8827
Reviewers: zmike, segfaultxavi, cedric
Reviewed By: zmike
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8828
Summary:
nothing here uses this directly, and nothing emits events. For now the
implementation is removed. If this is required later on, it can be
readded.
Depends on D8826
Reviewers: zmike, segfaultxavi, cedric
Reviewed By: zmike
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8827
Summary:
the implementation of efl_ui_clickable is now used to tricker the
events. efl,action,click and efl,action,click,double is not needed
anymore from the theme.
Depends on D8824
Reviewers: zmike, segfaultxavi, cedric
Reviewed By: zmike
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8825
Summary:
This now uses the efl_ui_clickable mixin. It is impossible right now to
test this in the test suite, as every single configuration of the
efl.ui.text object is ending up in an error. Which is not allowed in the
test suite. Additionally, simulating clicks on the objects gets it into
some sort of inifinite recursion when asking for cursor positions.
Depends on D8823
Reviewers: zmike, segfaultxavi, cedric
Reviewed By: zmike
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8824
Summary:
the mixin is now used to emit the events of the mixins. This is verified
by the testsuite. The testsuite needs a special treatment for the
object, because a missing image-file of the object would result in a 0x0
image size.
Depends on D8822
Reviewers: zmike, segfaultxavi, cedric
Reviewed By: zmike
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8823
Summary:
efl_ui_clickable is now a mixin. The mixin now brings two APIs the press
and unpress API can be used to tell the implementation the state of the
presses. Within the implementation the calls to press / unpress are then
converted to longpress / clicked events.
Reviewers: zmike, segfaultxavi, cedric
Reviewed By: zmike
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8820
Summary:
This removes another bit of legacy API from the C# bindings.
This also reverts "elm: Put back Policy and Policy_Quit in EO files"
(a9132a9a66) so that these two Elm enums are
definitely out of the EO files.
Test Plan:
Everything, including mono bindings, continue to build.
At runtime, C# apps still exit when all windows are closed.
Reviewers: lauromoura, vitor.sousa, q66
Reviewed By: q66
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8890
Summary:
the events changed here should not be used. They should use legacy
events.
Depends on D8816
Reviewers: zmike, segfaultxavi, cedric
Reviewed By: zmike
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8819
Summary:
This commits prepares the tree in order to mess with the events in the
Efl.Ui.Clickable event. Events which have been emitted in a none legacy
widget, are now emitted either with evas, when the widget is legacy due
to inheritance. Or via the normal event and normal event functions.
In case the widget is a legacy only widget (not used at all in the new
api), then the events are for now emitted with
evas_object_smart_callback_call.
Cases where event handlers have been added to legacy widgets, smart
events are now used, and not the eo one anymore.
ref T7844
Depends on D8813
Reviewers: cedric, zmike, segfaultxavi
Reviewed By: zmike
Subscribers: #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7844
Differential Revision: https://phab.enlightenment.org/D8816
Summary:
the repeat event is only emitted by the implementations of
efl_ui_autorepeat. Additionally, the event should only be used by those
who implement this interface.
Depends on D8832
Reviewers: zmike, segfaultxavi, cedric
Reviewed By: zmike, segfaultxavi
Subscribers: jpeg, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8813
Summary:
the widget itself is a focus_layer which means, the tree is orphaned and
cannot be accessed until the panel is visible. There is not need for us
to manually track this state.
fix T7908
Depends on D8831
Reviewers: marcellus, zmike, segfaultxavi, cedric
Reviewed By: zmike
Subscribers: #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7908
Differential Revision: https://phab.enlightenment.org/D8832
In e027ad2626 these enums were moved to header files, which is correct,
since they are legacy and should not be present in EO files.
However, the C# bindings are still using them.
Until nobody is using these two enums, adding them back to EO fixes the build.
Summary:
The legacy API is available after https://phab.enlightenment.org/D7033 but
internal function does not care of it. This change makes textpath work with
the legacy style file(./data/elementary/themes/edc/elm/textpath.edc).
Reviewers: Hermet, jsuya
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8875
Summary:
This patch fixes the wrong ingroup name of elm_textpath APIs.
Elm_Textpath had been defined in elm_textpath.h
enum values had been included into Efl_Ui group
So I had modified all APIs and enum values to be inclused in Elm_Textpath_Group.
Test Plan: run unit test cases
Reviewers: segfaultxavi, cedric, zmike, Hermet
Reviewed By: Hermet
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8885
This simply a bit the logic of things, but more refactoring would be nice for this widget.
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8799
These are legacy-only and not used anywhere in .eo files, so
move them where they belong. They are still used within impls
around the place. The others can't be moved as they are still
used in .eo files in places, that has to be dealt with separately.
This patch deal with two cases:
1- Setting text in Entry (elm_entry_entry_set) , as the one get using (elm_entry_entry_get), caused the entry to become empty.
* becase entry string was free inside the elm_entry_entry_set function, without checking new passed string.
Now we check if same string was passed to the function, then nothing need to be changed.
```
// Old Behaviour : Entry will become empty
// New Behaviour : Entry will Skip setting same text
elm_entry_entry_set(app->entry, elm_entry_entry_get(app->entry));
```
2- Setting text in Entry (elm_entry_entry_set) , with same content string.
* internally entry will set empty string then set passed string, which will case recalculation and re-render the entry element.
Now we check if same string data that is passed to the function is the same of the entry content, then nothing need to be changed.
```
// This will be skiped internally since same text is set
elm_entry_entry_set(app->entry, "aaaaa");
elm_entry_entry_set(app->entry, "aaaaa"); //skipped
```
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8572
this enables windows engine selections and other functionality
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8728
Efl.Content implementation is here quite useless. The default part is
not in the theme, the setting will just error out. And from my POV, a
default content would not make sense.
ref T7817
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D8807
the property should not exist. if something is not supported then do not
inherit from this interface. If something wants to use the button
theme, then this can be easily used via API.
In legacy we already have the situation that things inherit from the
button class. To solve this, the enabled call is disabled on those
widgets, and disable every time it is called.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D8805
Now, efl_content_iterate, efl_content_count, efl_pack, efl_pack_unpack,
efl_pack_unpack_all and efl_pack_clear are available for relative_layout.
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D8631
ATSPI role page_tab was set on invalid object and thus ignored.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8789
Summary:
Markup support is added to Efl.Ui.Text through runtime composition, but the C#
bindings do not know about it unless Efl.Text_Markup appears in the hierarchy.
Test Plan: The Markup property is available now for Efl.Ui.Text, it can be used and renders the expected results.
Reviewers: lauromoura, bu5hm4n, zmike
Reviewed By: bu5hm4n
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8758
when a child is deleted (externally), the widget should be forgotten
internally.
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8751