Commit Graph

4262 Commits

Author SHA1 Message Date
Marcel Hollerbach 34efdfb1b1 efl: convert all classes to the new eolian syntax
ref T7459

Reviewed-by: Daniel Kolesa <daniel@octaforge.org>
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7684
2019-01-18 16:31:26 +01:00
Jaeun Choi 4d0289bb9f elm_panel: fix a bug in elm_scrollable_mode_set() function
when panel becomes scrollable, the function blocked scrolling
assuming that the panel is hidden. this caused an issue case
when panel becomes scrollable while it is open.
this patch fixes the issue.
2019-01-18 16:26:44 +09:00
Marcel Hollerbach 203b841eb9 elementary: make elm.web abstract
Summary:
elm.web is never used directly only as abstract class that gets
implemented in elm.web.none. Thus making it abstract does make sense.
Depends on D7671

Reviewers: cedric, segfaultxavi, zmike, q66

Reviewed By: segfaultxavi

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7672
2019-01-17 17:17:40 +01:00
Daniel Kolesa c4f05a0306 elementary: remove leftover header include 2019-01-17 15:56:33 +01:00
Daniel Kolesa 0976e9adf3 elementary: internalize elm_combobox, expose legacy only
This is bad eo API, and won't remain like that, so completely
remove it from being managed by Eolian.
2019-01-17 15:54:24 +01:00
Christopher Michael c98288c20e efl_ui_focus_object: Don't pass NULL to child_focus_set
When starting elementary_test, efl_ui_focus_object_child_focus_set is
getting passed NULL on startup because elm_test window has no parent.
This makes it difficult to debug and fix T7030 issues. In order to fix
the issue, this patch checks for a valid parent before calling
efl_ui_focus_object_child_focus_set so that it no longer gets passed
NULL on elm_test startup and we can set breakpoints on eo.c:637
without getting interrupted at startup.

ref T7030

Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Differential Revision: https://phab.enlightenment.org/D7677
2019-01-17 14:45:15 +01:00
Marcel Hollerbach 9fefc35308 Revert "evas: make efl_canvas_group abstract"
This reverts commit ae65c64b8d.

It appears that abstract -> abstract enforcement is not needed anymore,
the other patches are fine. However, this one proposes a new object
which is not needed to exist.

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7676
2019-01-17 13:58:08 +01:00
Yeongjong Lee d44c7713cc elm_panel: fix visibility when switching scrollable mode
Summary:
There are two proplem when switching scrollable mode.
1. a previous layout does not disappear.
2. internal evas_box(sd->bx) should set on "elm.swallow.content" part.

This patch hide remained previous layout and set evas_box to "elm.swallow.content"
part directly.

Thanks to arosis for reporting and sample code.

Test Plan: P262

Reviewers: arosis, eunue, Jaehyun_Cho

Reviewed By: eunue

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7667
2019-01-17 17:40:37 +09:00
Mike Blumenkrantz 5ab4784bbd efl_app: add "standby" event
this event is called on the app object when all windows have been destroyed
so that the app can decide to take further action, e.g., doing a deep clean of
cache or flushing configuration

@feature
ref T5494

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7593
2019-01-16 15:58:27 -08:00
Mike Blumenkrantz bb09142477 elm_entry: make file loading succeed on 0-sized files
a file which has no data is still a valid file and should be correctly
opened

fix T6562
@fix

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7647
2019-01-16 15:57:54 -08:00
Jean-Philippe André f1f3607f8c ui/flip: fix efl_pack usage
Objects packed would end up invisible as they were not marked as
"_elm_leaveme". I also added some list safety code but I think the
entire pack API on flip is very much untested and unstable.

@fix

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7367
2019-01-16 14:46:19 -08:00
Cedric BAIL 563f91eaf9 ecore: remove data parameters of Efl.Loop_Consumer.promise_new to reduce the risk of inadvertently using the wrong data.
If you need data, use a efl_future_then as done in every case here to get the same feature.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D7577
2019-01-16 14:33:26 -08:00
Cedric BAIL bd2ae0ae85 elementary: refactor selection manager to not use eina_promise_data_set.
eina_promise_data_set is a misleading API and result in conflicted use by
multiple independent piece of code leading to bug and crash. It is also not
necessary and we can avoid using it completely.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D7543
2019-01-16 14:33:10 -08:00
Christopher Michael a7cf1b4c3c efl_ui_focus_manager_root_focus: Remove extra blank lines
NB: No functional changes
2019-01-16 11:34:18 -05:00
Christopher Michael bc43982949 elm_config: Free data returned from eet_read
Summary:
This patch fixes a memory leak in _elm_config_profile_name_get() where
the data returned from eet_read is not being free'd, causing valgrind
to spit out:

```
==11610== 9 bytes in 1 blocks are definitely lost in loss record 16 of
572
==11610==    at 0x483777F: malloc (vg_replace_malloc.c:299)
==11610==    by 0x4D9DE5B: eina_strbuf_common_string_steal
(eina_strbuf_common.c:828)
==11610==    by 0x4D5BC31: eina_binbuf_string_steal
(eina_binbuf_template_c.x:187)
==11610==    by 0x58646A1: eet_read_cipher (eet_lib.c:1991)
==11610==    by 0x5864775: eet_read (eet_lib.c:2022)
==11610==    by 0x49CD4D2: _elm_config_profile_name_get
(elm_config.c:2207)
==11610==    by 0x49CD5F8: _elm_config_profile_save (elm_config.c:2237)
==11610==    by 0x49D2F6E: _elm_config_sub_init (elm_config.c:4467)
==11610==    by 0x4AC0B7D: elm_quicklaunch_sub_init (elm_main.c:840)
==11610==    by 0x4ABFE3A: elm_init (elm_main.c:409)
==11610==    by 0x138143: main (test.c:1379)
```

@fix

Reviewers: raster, cedric, ManMower

Reviewed By: raster

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7646
2019-01-16 11:07:07 -05:00
Yeongjong Lee 78ae9c0ae0 gfx: Add size hint fill (EO)
Summary:
If widget use both hint_align(HINT_FILL) and hint_max together, there is no way
to set to hint_align. See, elementary_test -to 'efl.ui.box' -
"Button with a quite long text." button. you can control button position
using "Box align" slider, but this is not proper implementation. When there are
two widget which have hint_align(HINT_FILL) and hint_max, those positions are
determined by box_align rather than hint_align. it means widget align cannot be
set individually.
To solve this problem, this patch add hint_fill property. in order to avoid
conflict with legacy API named evas_object_size_hint_fill_set(), it only works
for EO widgets(made by efl_add).
Also, EFL_GFX_SIZE_HINT_FILL is removed.

@feature

Test Plan:
elementary_test -to 'efl.ui.box'
elementary_test -to 'efl.ui.table'

Reviewers: jpeg, Hermet, Jaehyun_Cho, raster, barbieri

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T3912

Differential Revision: https://phab.enlightenment.org/D7409
2019-01-16 16:47:51 +09:00
Carsten Haitzler c233d6523b elm config - add back i var to build again 2019-01-15 20:48:39 +00:00
Carsten Haitzler fe6ea2314c Revert "elm_config: remove profile name reading logic from data dir"
This reverts commit 6c4e49d970.

Hell no - this removes loading of system config profile. the entire
premise of the patch is wrong. it isn't reading the code at all... how
this got through review is rather amazing...
2019-01-15 20:43:18 +00:00
Derek Foreman 5f207d79e3 focus_manager: fix memory leaks
_set_a_without_b() makes a list clone internally, so cloning the list
first will leak a copy.

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Differential Revision: https://phab.enlightenment.org/D7622
2019-01-15 13:47:21 -06:00
Marcel Hollerbach ae65c64b8d evas: make efl_canvas_group abstract
the efl_canvas_group should be abstract in order to support other
classes which are inheriting from it, which are abstract. This is done
in order to support only abstract parents from abstract classes.

ref T7240

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7600
2019-01-15 17:37:40 +01:00
Carsten Haitzler f90c5b7376 elm - dnd - restore to working as drop targets
so drop taregts liek rage stopped working - something was wrong with
type handling and fetching selections at all and so on... i've kicked
it back into working again. it's not perfect but it's improved. at
least simple thgins like being a dnd target for dnd from a filemanager
work again which is probably the biggest use case.

@fix
2019-01-12 14:44:03 +00:00
Christopher Michael b4f8315e1a elementary: Add missing EINA_UNUSED for efl_ui_image_factory_connect
Eo *obj is unused in this function, so mark it as such
2019-01-11 09:27:53 -05:00
Michael Bouchaud (yoz) 61179964c3 elm_map: Add new overlay content to the list of smart members of wigdget
Summary: Without this a new overlay content aren't displayed into the map widget.

Reviewers: zmike, devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7457
2019-01-11 09:21:19 -05:00
Christopher Michael f85c261509 elementary: Add missing EINA_UNUSED for efl_ui_layout_factory_connect
Eo *obj is unused in this function, so mark it as such
2019-01-11 09:20:07 -05:00
Marcel Hollerbach 3ddd577fb0 efl: refactor all mixins
Differential Revision: https://phab.enlightenment.org/D7585
2019-01-11 12:37:27 +01:00
Larry Lira 54287d67d4 Efl.Ui.List_View: precise layout async
Summary:
fixed precise layouter to work with create asynchronous
fixed example theme signal

Reviewers: cedric, felipealmeida, SanghyeonLee, lauromoura

Reviewed By: SanghyeonLee

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7476
2019-01-11 17:21:19 +09:00
Shinwoo Kim b447a37ed8 efl_ui_win: make win work for evas_norender
The evas_norender updates the canvas internal objects.
But efl_ui_win does not evaluate its internal objects, when evas_norender is
called before showing, after resizing as below.

   evas_object_resize(win, 300, 600);
   evas_norender(evas_object_evas_get(win));
   evas_object_show(win);

This problem could be verified by checking if a resize function of internal
object is called or not.

minw,h is 0 in _elm_win_resize_objects_eval but deferred_resize_job is TRUE.

   evas_norender -> _window_layout_stack ->  _elm_win_resize_objects_eval

So if _elm_win_resize_objects_eval does not return if deferred_resize_job is
TRUE even if minw,h is 0, and calls _elm_win_resize_job, then it will work.

   _elm_win_resize_objects_eval -> _elm_win_resize_job ->
   evas_object_geometry_set  -> _efl_canvas_group_group_need_recalculate_set ->
   _window_layout_stack -> evas_object_geometry_set -> resize function.

I have checked this behavior without elementary. It seems that evas_norender
works between resize and show in this case. Let me share examples.

   ecore_evas_resize(ee, 100, 100);
   evas_norender(evas);
   ecore_evas_show(ee);
Differential Revision: https://phab.enlightenment.org/D7425
2019-01-10 13:05:17 -06:00
Wonki Kim b73a5ed704 meson: add a option to config the base directory name for elm data
There is a option(--with-elementary-base-dir) on autotools
this patch provides the exactly same thing that autotools does on meson
Differential Revision: https://phab.enlightenment.org/D7580
2019-01-10 19:44:01 +01:00
Cedric BAIL f5172faebb efl: remove warning due to unused variable/parameters.
Reviewers: #committers, felipealmeida, zmike

Reviewed By: #committers, felipealmeida, zmike

Subscribers: zmike, YOhoho, Hermet, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7554
2019-01-09 14:54:54 -05:00
Cedric BAIL c21a39c88a elementary: enable caching for Efl.Ui.LayoutFactory.
Reviewed-by: Felipe Magno de Almeida <felipe@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7445
2019-01-09 11:02:14 -08:00
Cedric BAIL 78ca66fb76 elementary: enable caching for Efl.Ui.ImageFactory.
Differential Revision: https://phab.enlightenment.org/D7444
2019-01-09 11:02:12 -08:00
Cedric BAIL 4fe4f76b8c elementary: add a factory that handle caching for you.
This factory handle caching of one type of object and automatically empty the cache
when the application goes into pause.

Creating object is costly and time consuming, keeping a few on hands for when you next will need them help a lot.
This is what this factory caching infrastructure provide. It will create the object from the class defined on it,
set the parent and the model as needed for all items a Factory create. The View has to release the Item using the
release function of the Factory interface for all of this to work properly.

This is copying what Elm_Genlist was doing for you in the background and bring Efl interface to parity.

Reviewed-by: Felipe Magno de Almeida <felipe@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7443
2019-01-09 11:02:11 -08:00
Carsten Haitzler ab6c0e9f2b elm dnd/selection - only query wl things if thje window is a wl one...
check at RUNTIME not just with ifdefs at compile time. less ERR noise
for sure.
2019-01-09 18:57:23 +00:00
Yeongjong Lee e3aca63428 efl_ui_text: remove duplicated empty string initialization
Summary:
string of text_obj is already initialized in evas_object_textblock_init.
also, this patch fixes text_set bug.

Test Plan:
```
efl_add(EFL_UI_TEXT_CLASS, parent,
        efl_text_set(efl_added, "string"));
```
 or

elementary_test -to 'efl.ui.slider'

Reviewers: herdsman, zmike

Reviewed By: zmike

Subscribers: zmike, segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7561
2019-01-09 13:08:36 -05:00
Carsten Haitzler 1ff024c9bb elm win - we forgot to add gl_drm to possible elm win engines
this was forgotten it seems, so add it alongside drm engine etc. so we
can do accelerated gl in the "fb" via drm too for elm app windows.
2019-01-08 15:25:17 +00:00
Hermet Park 12d2a4ce00 elementary genlist: make it sure object type.
Summary:
elm has some cases that resize_obj is not the group object.
That case, efl_canvas_group_need_recalculate_get() prints
annoying type-check errors.

Reviewers: #committers, SanghyeonLee

Reviewed By: #committers, SanghyeonLee

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7557
2019-01-08 20:01:23 +09:00
Hermet Park 3a5acad50e elementary selection_manager: remove unused paramter warning. 2019-01-08 20:00:19 +09:00
Cedric BAIL 88dbd866e0 elementary: rename Efl.Ui.Translatable -> Efl.Ui.L10n
If we are to choose Efl.Ui.I18n for the internationalization support, the localization API
should be named accordingly L10n.

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7507
2019-01-02 11:03:53 -08:00
Cedric BAIL 038612736c efl: rename Efl.Ui.Base -> Efl.Ui.I18n as that is really what it does.
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7506
2019-01-02 11:03:51 -08:00
Cedric BAIL 327593e9b4 elementary: rename Efl.Selection -> Efl.Ui.Selection as it is only usable with User Interface related element.
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7505
2019-01-02 11:03:49 -08:00
Hermet Park d2ec3ce170 efl gfx_path: remove EFL_GFX_PATH_EVENT_CHANGED
Summary:
Here is an additional optmization patch for removing
unnecessary updation of path,

For instance, let's assume this scenario:

If one vg object has 20 path nodes(shapes),
and every single nodes would have 50 path changes.
(like, append_cubic, append_rect, append_xxx ...);
There would 1000 events triggering.

Furthermore, if there are 20 vector objects in one view,
hese events would be triggered 20000 in one frame.

It's insane, actually I could figured out that happens.
and it took a lot of cpu consumption in some vector usages.

efl_gfx_path_commit() is my idea to avoid this.
When path is ready, the path need to get this api call in the last
 to make object changed properly.

@feature

Reviewers: #committers, cedric

Reviewed By: #committers, cedric

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7494
2018-12-28 12:20:15 +09:00
Carsten Haitzler 318d16846f Revert "Revert "ecore: make efl_loop_promise_new a function of Efl.Loop_Consumer.""
This reverts commit 42e886d8d6.
2018-12-26 17:50:09 +00:00
SangHyeon Jade Lee c3f37111ff efl_ui: activate widget focus on efl.ui.item.
Summary:
Unlikely efl.ui.Layout, Item need to be focusable,
so it may traverse list by your command of focus moving.

Test Plan:
tested in
efl_ui_list_example_1.c
efl_ui_grid_example_1.c
check whether item show their focus properly.

scroll feature is not yet supported by efl_ui_scroll itself.

Reviewers: eagleeye, cedric, Hermet, felipealmeida, bu5hm4n

Reviewed By: bu5hm4n

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7465
2018-12-26 21:08:10 +09:00
Marcel Hollerbach 42e886d8d6 Revert "ecore: make efl_loop_promise_new a function of Efl.Loop_Consumer."
This reverts commit 9b5155c9f1.

For now lets revert this, this breaks copy and paste, further more it
has the potential to break a lot more things, as eio_model tends to use
efl_loop_promise new, and then eina_promise_data_set, which is
explicitly forbidden.

This fixes crashing terminology instances.
2018-12-26 12:31:08 +01:00
Hermet Park 0e278d1de8 Revert "efl gfx_path: remove EFL_GFX_PATH_EVENT_CHANGED"
This reverts commit 7c38c0c915.

Oops, didn't intend this patch.
2018-12-26 19:32:42 +09:00
Hermet Park 7c38c0c915 efl gfx_path: remove EFL_GFX_PATH_EVENT_CHANGED
Summary:
Here is an additional optmization patch for removing
unnecessary updation of path,

For instance, let's assume this scenario:

If one vg object has 20 path nodes(shapes),
and every single nodes would have 50 path changes.
(like, append_cubic, append_rect, append_xxx ...);
There would 1000 events triggering.

Furthermore, if there are 20 vector objects in one view,
hese events would be triggered 20000 in one frame.

It's insane, actually I could figured out that happens.
and it took a lot of cpu consumption in some vector usages.

efl_gfx_path_commit() is my idea to avoid this.
When path is ready, the path need to get this api call in the last
 to make object changed properly.

@feature

Reviewers: #committers, cedric

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7494
2018-12-26 19:29:10 +09:00
Cedric BAIL 9b5155c9f1 ecore: make efl_loop_promise_new a function of Efl.Loop_Consumer.
I am not sure this is the right way to do it as binding would have to likely
to bind it manually.

Reviewed-by: Lauro Neto <Lauro Moura <lauromoura@expertisesolutions.com.br>>
Differential Revision: https://phab.enlightenment.org/D7492
2018-12-20 12:42:34 -08:00
Cedric BAIL e74578c7d3 elementary: switch to the new efl_future_then syntax.
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7448
2018-12-20 10:44:45 -08:00
Cedric BAIL 50d675d6c1 elementary: make all view generate an event when the item is created.
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7447
2018-12-20 10:44:44 -08:00
Marcel Hollerbach 20ddd4c679 efl_app: introduce app_main for getting the app object
This brings in the possibility to receive the app object from bindings.
With the app object you can listen to pause / args / terminate / resume
events.

fix T7509

Differential Revision: https://phab.enlightenment.org/D7480
2018-12-20 12:56:54 +01:00
Marcel Hollerbach 7031a8cd7e elm_widget: remove defines that are not implemented
Summary:
they are not implemented - so using them would not work, to me it looks
like they can be dropped.

Reviewers: cedric, raster, stefan_schmidt, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7455
2018-12-20 19:55:20 +09:00
Woochanlee d9a222ecf5 Intruduce Efl.Ui.Panel (Create Efl Ui Widget from elm widget(elm_panel))
Summary: Create Efl Ui Widget from elm widget(elm_panel)

Test Plan: elementary_test -> efl_ui_panel

Reviewers: woohyun, Jaehyun_Cho, segfaultxavi

Reviewed By: Jaehyun_Cho, segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7238
2018-12-20 11:32:28 +09:00
Xavi Artigas 2e2c225093 doc: Remove misplaced blank line 2018-12-19 13:51:55 +01:00
Jérémy Zurcher 8a617fda97 silence most left over compiler warnings
Summary: silence -Wshadow -Wunused-variable -Wunused-parameter

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7473
2018-12-18 13:08:01 +01:00
Marcel Hollerbach 27e5e8fa75 elm_gengrid: improve genlist behaviour
the new behaviour is (as genlist in the previous commit):
- focus the first item when down is pressed
- focus the last item when up is pressed
- do not go into the widget with tab or ctrl+tab and just return
immidiantly

fixes T6805

Reviewed-by: YeongJong Lee <yj34.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7454
2018-12-17 09:12:22 +01:00
Marcel Hollerbach 5e0a602ee8 elm_widget_item_static_focus: fix ERR prints
There is the case that the deletion of the adapter can cause another
registeration, which then calls another time prepare, which then deletes
the adapter, before the actaul deletion of the first efl_del happened,
which means it will throw an error. To avoid this we track if we are in
process of a unrealization, and if so, do not delete the item there.

Reviewed-by: YeongJong Lee <yj34.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7453
2018-12-17 09:12:22 +01:00
Marcel Hollerbach e779492a1c elm_genlist: behaviour fixes for genlist
This implements the behaviour in case no item is yet focused, but the
genlist is focused.

ref T6805

Reviewed-by: YeongJong Lee <yj34.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7452
2018-12-17 09:12:22 +01:00
Marcel Hollerbach 6922761f3f elm_gen****: fix focus restoring on window focus changes
this ensures that if there is no focused item, that at least the
container is focused. This leads to the fact that the elm_genlist
/elm_gengrid is refocused when a window is unfocused and focused again.

Reviewed-by: YeongJong Lee <yj34.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7451
2018-12-17 09:12:22 +01:00
Marcel Hollerbach ef874d5b59 efl_ui_focus_manager: performance optimize order setting
setting the order is a little bit expensive, this performance optimizes
order setting in the focus manager.  We don't need to set the order each
time something is registered, it is enough to set it once we need the
correct order.

We don't need to evalulate the state in the Manager_Root_Focus if the
rect is not registered. If its not, then another new element cannot
cause the rect to be registered.

Reviewed-by: YeongJong Lee <yj34.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7450
2018-12-17 09:12:22 +01:00
Marcel Hollerbach 2df601d589 elm_focus: implement legacy targets for logical widgets
they are now handled. The list of parents is walked until a possible
candidate is found or the parent chain is the same then in the next
focused element.

fix T7389

Reviewed-by: YeongJong Lee <yj34.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7404
2018-12-17 09:12:22 +01:00
Marcel Hollerbach dfc9cd8a67 elm_focus: implement elm_object_focus_next_item_set / get
you can use this now to let the focus move to the widget container of
the passed item.

I know this patch contains a whitespace change, but i have to get out
this whitespace each & every time i am editing the file - which is
annoying. So remove it once, which makes further work easier.

fixes T6183.

Reviewed-by: YeongJong Lee <yj34.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7408
2018-12-17 09:12:22 +01:00
Marcel Hollerbach 2d4f25fb32 elm_config: fix valgrind warnings
buf is only initializied, if on_flush is true.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7449
2018-12-17 09:11:19 +01:00
Derek Foreman 0611dbc1e9 efl_ui_win: Don't allow the frame object to change size before first draw
This fixes a bug where calling:

evas_object_show(win);
evas_object_resize(win, 400, 400);
elm_run();

Would show a much smaller than 400,400 window on wayland, as the CSD
calcs would set the size smaller.

It also fixes some differences in startup size between X and wayland for
some trivial test clients.

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
Reviewed-by: Chris Michael <cp.michael@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7438
2018-12-14 13:42:14 -06:00
Leonardo Loch 55854e9582 elementery: fix mouse selection of items in efl.ui.list_view 2018-12-07 14:01:13 -02:00
Marcel Hollerbach 500a36ba3d meson: add inital support for windows compilation
Differential Revision: https://phab.enlightenment.org/D7416
2018-12-07 13:05:31 +01:00
Cedric BAIL 4d6f20d714 elementary: make Efl.Ui.Factory.create asynchronous.
Reviewers: felipealmeida, SanghyeonLee, vitor.sousa, bu5hm4n, segfaultxavi

Reviewed By: felipealmeida, vitor.sousa, segfaultxavi

Subscribers: segfaultxavi, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7472

Differential Revision: https://phab.enlightenment.org/D7332
2018-12-07 11:47:21 +01:00
Alastair Poole 29c388a35b efl: fix misspelt focused in API and documents.
Fix spelling in elm_code API and other documents too where this occurs.
Differential Revision: https://phab.enlightenment.org/D7299
2018-12-06 15:11:17 +01:00
Bowon Ryu ede6c1316b efl_ui_tab_bar: fix error about double free
Summary:
tab is the parent of the icon.
so deleting the tab causes deleting the icon automatically.
in this case, it can cause double-freed problem once icon has deleted.

Test Plan: elementary_test -to efl.ui.tab_pager

Reviewers: cedric, Jaehyun_Cho, jpeg

Reviewed By: Jaehyun_Cho

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7407
2018-12-05 20:28:24 +09:00
Jaehyun Cho df216a4f1d efl_ui_win: enable bg color set although alpha is set
Summary:
This patch sets background transparent if window supports alpha.
If alpha window does not emit signal to show background rectangle,
then the background color set by _efl_ui_win_part_color_set cannot
be applied because the background rectangle remains hidden.

This patch fixes the side effect of D6569.

Test Plan: Run Efl.Ui.Win (Bg part) in elementary_test.

Reviewers: zmike, devilhorns, woohyun

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7302
2018-12-05 10:35:30 +09:00
Carsten Haitzler f0092e8e0d elm config - fix warnings about unused vars and params 2018-12-04 08:45:02 +00:00
Carsten Haitzler 42a3ad53d2 elm main - fix unused param in cb warn 2018-12-04 08:40:02 +00:00
Carsten Haitzler 3e5b50a1e4 elm toolbar - fix unused param warn 2018-12-04 08:39:25 +00:00
Carsten Haitzler bb9cec6d9e elm colorselector - fix unused param warn 2018-12-04 08:38:44 +00:00
Carsten Haitzler cc3a5252f1 efl ui focus manager - fix unused param warn 2018-12-04 08:37:59 +00:00
Carsten Haitzler 0e7a24c1b8 efl ui focus manager - remove unused local vars warn 2018-12-04 08:36:00 +00:00
Carsten Haitzler 8ee0d7674b elm glview - fix unused param warn 2018-12-04 08:34:40 +00:00
Marcel Hollerbach 80bdbc8b54 elm_scroller: update behaviour to match legacy behaviour more closely
This implements scrolling the scroller when the scroller is not in the
maximum position of the requested relation, but there is no more focus
object in that relation.

Summing up, the scroller is scrolled manually, when the focus object is
not fitting in the viewport, and the object is beeing out of the
viewport in the requested direction. Or the scroller is not at its max
position in the requested direction, and there is no more focusable
object in this requested direction.

ref T6804

Differential Revision: https://phab.enlightenment.org/D7382
2018-12-04 08:45:49 +01:00
Marcel Hollerbach 1ede2302d3 efl_ui_focus_manager_root_focus: ensure that adapter is part of viewport
This ensures that the adapter part is part of the viewport elements and
border elements. This is done in order to support cases where a
elm_scroller content is not focusable. Before the element was not
correctly in viewport, and so not correctly registered.

ref T6804

Differential Revision: https://phab.enlightenment.org/D7364
2018-12-04 08:45:49 +01:00
Marcel Hollerbach a444ff743f elm_interface_scrollable: add support for *jumping* into a scroller
Until recently we have been only registering the border elements of the
graph, (so only the elements that don't have a neighboor). However this
lead to the situation that a scroller that is scrolled into the middle
(so not the x nor the y axis is scrolled to the max), is not accessable.

Now, we register all elements that have a neighboor in the outside.
The patch in the test suite is required in order to provide the correct
geometry to the implementation of efl_ui_focus_manager_sub.

Differential Revision: https://phab.enlightenment.org/D7360
2018-12-04 08:45:49 +01:00
Marcel Hollerbach c1dd57d210 meson: use eolian_gen with -S
this ensures that eolian does not parse installed .eo files

Differential Revision: https://phab.enlightenment.org/D7405
2018-12-03 19:00:26 +01:00
Carsten Haitzler 3c9123f170 elm - fix config version bump correctly
bump version right and fix eec7bc458e
properly.
2018-12-03 11:46:31 +00:00
Marcel Hollerbach 7f9cb37ea0 elm_config: repair configs
Summary:
in eec7bc458e the epoch offset was edited,
which seems to be wrong, as this caused every single config to be
deleted. This also updates the configs in the elementry base configs
as they have been forgotten.

This brings back the ability to edit the config in elementary_config.

Reviewers: segfaultxavi, devilhorns, ManMower, raster

Reviewed By: raster

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7403
2018-12-03 11:43:53 +00:00
Carsten Haitzler a9650209a4 efl ui text - check if string exists beofre using it...
don't segv.
2018-12-03 11:04:27 +00:00
Cedric BAIL cc801e2e2a elementary: simplify code by using proper helper.
efl_loop_promise_new is a helper function that does automatically figure out an
available scheduler and create a promise from it. Basically replacing the call to
eina_promise_new(efl_loop_future_scheduler_get(o), ...).

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7336
2018-11-30 14:58:12 -08:00
Larry Lira 6b0c85cb0d Efl.Ui.List.View: fixed MVVM life-cycle
Fix bugs on Views and Model related with null items and proper ownership and
life-cycle of components.

Configure default theme for default factory on finalize.
2018-11-30 16:56:47 -02:00
Vitor Sousa 0398b8f19c elementary: rework Efl.Ui.Layout boolean signal-connection to Models
Add new feature to specify signal connection to boolean properties of Models.
This also fix some '%v' substitution problems.

Parsing EINA_VALUE_TYPE_BOOL as boolean in Efl.Ui.Layout signal updates from
Models (instead of EINA_VALUE_TYPE_UCHAR). UCHAR no longer has special handling
and falls to the general result of eina_value_to_string() as other types do.

Use EINA_VALUE_TYPE_BOOL instead of EINA_VALUE_TYPE_UCHAR to signal selection on
click events to the Model.

Update examples to make usage of the new property connection feature in order to
model selection of items on Views.
2018-11-30 16:56:47 -02:00
Christopher Michael eec7bc458e elementary: Support using no frame object
Summary:
Creation of the frame object can lead to significant delays in window
creation time on limited-power devices (watches, mobile, tv, etc).
This patch allows setting an environment variable and config value in
order to completely skip frame object creation.

This shaves about 50ms from startup on an i7 8600k, so should be more
substantial a saves on limited-power devices.

Reviewers: kimcinoo, ManMower

Reviewed By: ManMower

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7305
2018-11-29 14:35:26 -05:00
Wonki Kim 8b0b9ed281 elm_config: fix elm_config_save not to wake idle processes up
there is a eio_monitor which is tracking on config directory.
and that is the reason why idle processes get waken up once some process call elm_config_save().
this patch fix the function not to wake idle processes up as it was before.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7354
2018-11-28 16:22:18 -08:00
Wonki Kim 43b18dc890 elm_config: replace ecore_file_mv with ecore_file_cp
eio_monitor could miss what it is tracking on
in case of calling ecore_file_mv on the tracked file.
so that this patch replace move with copy.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7352
2018-11-28 16:22:16 -08:00
Wonki Kim 6c4e49d970 elm_config: remove profile name reading logic from data dir
Nothing writes any profile name on profile.cfg inside data dir
This patch removes the logic.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7351
2018-11-28 16:22:14 -08:00
Xavi Artigas 05682eed7d eo-docs: Remove Doxygen tags from efl*.eo files
Summary:
- Replace '\@ref name' with '@name'
- Remove unused \@internal tag
    This tag affects text AFTER it, and there is no text after it.
- Remove \@note tag
    Replaced with a simple NOTE: text, since eolian does not have an equivalent tag.
- Remove spurious \@Efl... tags
    They should really be @Efl...
- Remove \@p tags
    There is no eolian equivalent, and a simpler $ suffices in this case.

Fixes T7482

Reviewers: q66

Reviewed By: q66

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7482

Differential Revision: https://phab.enlightenment.org/D7372
2018-11-28 13:33:46 +01:00
Hosang Kim c4ae2be685 efl_ui_scrollable: implement efl_ui_scrollable_content_pos_get method.
Summary:
Applications want to know current position on scroller.
Also, it is necessary when calculate position of focusable object.

Reviewers: herdsman, akanad, YOhoho, bu5hm4n

Reviewed By: bu5hm4n

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7251
2018-11-28 14:34:28 +09:00
SangHyeon Jade Lee edacff4fa5 gengrid : remove elm_access_text_set for code consistancy.
Summary:
Early accessibility read object and item infomations by elm_access_text_set
but this code is redundant now and removed genlist and list already.
To make a same consistancy of our accessibility informations in list-look widgets
we need to remove this function calls here.

Test Plan: tested Gengrid Item is not readed in gengrid item focused with accessibility on.

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7370
2018-11-27 20:15:54 +09:00
Daniel Hirt 6e92042845 Ui Scroller : remove unnecessary efl_del
Child objects are already destoryed during destruction of the parent
object.

This fixes ERR messages when doing `efl_del(sd->smanager)`
object, which is already destroyed at that point.
2018-11-26 13:17:07 +02:00
Daniel Hirt a7b1329b0e Scroll manager: remove unnecessary callback_del
Child objects are already destoryed during destruction of the parent
object.

This fixes ERR messages when doing operations on the `event_rect`
object, which is already destroyed at that point.
2018-11-26 13:17:07 +02:00
Daniel Hirt c87d23f942 Ui text: remove unused code from internal scroller 2018-11-26 13:17:07 +02:00
Daniel Hirt fed99f8d13 Ui text: implement efl_part and part_text API to text_set 2018-11-26 13:17:07 +02:00
Daniel Hirt baecca47b4 Ui text: read init text properties from theme 2018-11-26 13:17:07 +02:00
Daniel Hirt b77fc4ed4f Ui text interactive: emit changed,user event correctly 2018-11-26 13:17:07 +02:00
Daniel Hirt 3e5616b346 Ui text scroller: add usage of a guide 2018-11-26 13:17:07 +02:00
Marcel Hollerbach acee09f585 efl_ui_focus_manager_sub: freeze manager when parent manager is frozen
a efl_ui_focus_manager_sub object is a manager object by itself. It
registeres the border elements of itself in the parent focus manager.
However, all elements that are registered in this manager object, are
also automatically children of the parent root object, which means, when
the root object of the parent manager object is moved, then those
children will also be moved. Which means, when the parent manager can
ignore those changes, we can also ignore them.
This improves the overall performance of the "Scroller 2" test case by
26%.

The change to the test is required in order to redirect the events so
the self_dirty bit is setted correctly

Differential Revision: https://phab.enlightenment.org/D7350
2018-11-26 11:37:04 +01:00
Marcel Hollerbach a73904ba66 elm_interface_scrollable: freeze the manager object when content moves
this freezes the manager object of the user of the interface. This
improves the overall performance when moving arround focus in a
scrollable object, since no new relations are needed to be recalculated.
This safes up about 2% in the "Scroller 2" test. Additional
optimizations are added in another commit.

Differential Revision: https://phab.enlightenment.org/D7349
2018-11-26 11:37:04 +01:00
Marcel Hollerbach ac8d16684d efl_ui_focus_manager_calc: ensure that the coords are marked dirty
this is needed when a object is unregistered, otherwise a user of the
event is not informed when a element is gone, and thus the border
elements might have changed.

Differential Revision: https://phab.enlightenment.org/D7353
2018-11-26 11:37:04 +01:00
Marcel Hollerbach e36dce177e efl_ui_focus_manager: introduce a new API
the new api can be used to freeze the cache. This means, when the
widgets of the focus manager are all equally moved, the cache can stay,
cause the relative positions did not change, this enables a whole new
set of available optimizations.

Differential Revision: https://phab.enlightenment.org/D7348
2018-11-26 11:37:04 +01:00
Marcel Hollerbach 97ece33134 efl_ui_focus_object: introduce a new event for focus geometry changes
before the move and resize events have been used. However, this turned
out to not work well, because not all registered items are real
efl.gfx.entity objects, there is also a custom property for getting the
focus geometry, so now this property is completed with a event that is
emitted when the focus geometry changes. With this event we can
reintroduce relation caching. Since all events are marked correctly
dirty now.

Differential Revision: https://phab.enlightenment.org/D7347
2018-11-26 11:37:04 +01:00
Marcel Hollerbach fccc5fc438 elm_focus: implement missing functions
there is one function that needs to be implemented by the inheritor of
Efl.Ui.Focus.Object and that is focus_parent, otherwise child_focus
cannot be propagated correctly. This is now achived correctly for all
widgets.

This fixes from elm_object_focus_get results for toolbar and calendar.
Segmentcontrol inherits from the class, however, the widget itself does
not allow focus, so its never registered probebly.

Differential Revision: https://phab.enlightenment.org/D7331
2018-11-26 11:37:04 +01:00
Marcel Hollerbach e661c4acc3 efl_ui_focus_manager_calc: reduce the amount of list operations
it appears that the calculation of the unordered elements can be done a
lot easier here, when checking in the initial for loop for the right
parent safes us two more list walk later on.

Additionally, if all elements in this chain have the right parent, and
the amount of elements is the same as the parent has, then this list can
be used as a full replacement.

Differential Revision: https://phab.enlightenment.org/D7330
2018-11-26 11:37:04 +01:00
Daniel Zaoui 976a33e36a FlipSelector: fix items creation when range is used
In the case step is 0, the application will enter in an infinite loop
where the max will never be reached. To fix this, step is set to 1 if 0
is given by the user.
Moreover, step is forced to positive. According to the given min and
max values, the step will be negative or positive. In this way, we are
sure to be inside the correct range.
2018-11-26 10:47:20 +02:00
Cedric BAIL 5de51f84fb eo: rename efl_future_Eina_FutureXXX_then in efl_future_then as this has been available for some time.
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7327
2018-11-23 11:39:43 -08:00
Cedric BAIL d4d44d76f3 efl: make Efl.Model.properties_get return an Iterator<string>.
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7289
2018-11-23 10:13:58 -08:00
Yeongjong Lee 424bd60084 elm_gengrid: remove all_items_deselect call in _gengrid_element_focused
focus_changed doesn't mean select_changed. selection is handled the code below.
Differential Revision: https://phab.enlightenment.org/D7268
2018-11-23 12:48:37 +01:00
Derek Foreman 02840efec2 elm: roll _tree_custom_chain_missing into main focus test function
Further reduction in eo overhead.

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

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
2018-11-22 16:09:39 +01:00
Derek Foreman 45f24b6ef4 elm: Compress more focus tests into the same list walk
Since we're already at the top of the list, we can do the WIN_CLASS test
much more cheaply.

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

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
2018-11-22 16:09:39 +01:00
Derek Foreman 30be434fb1 elm: Re-order focus tests
Placing the cheapest tests first can save on some heavy walks.

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

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
2018-11-22 16:09:39 +01:00
Derek Foreman b8f6323a36 elm: Walk parents instead of parent widget in focus test
This Should Work, right?

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

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
2018-11-22 16:09:38 +01:00
Derek Foreman a4e4343082 elm: speed up _eval_registration_candidate
combining _tree_unfocusable and _tree_disabled into a single function
reduces eo overhead.  This saves a few ms at startup in elementary_test.

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

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
2018-11-22 16:09:38 +01:00
Yeongjong Lee c7ee93eebb Remove duplicated interface inheritance in eo
Summary:
Delete unnecessary interface inheritance

Efl.Ui.Base ==> Efl.Ui.Widget - Efl.Canvas.Group - Efl.Canvas.Object - Efl.Ui.Base
Efl.Text_Cursor ==> Efl.Text_Markup - Efl.Text_Cursor
Efl.Pack_Layout ==> Efl.Ui.Box - Efl.Pack_Layout
Efl.Ui.Translatable ==> Efl.Ui.Layout - Efl.Ui.Widget - Efl.Ui.Translatable
Efl.Part ==> Efl.Ui.Widget - Efl.Part
Efl.Ui.View ==> Efl.Ui.Layout.Object - Efl.Ui.View
Efl.Access.Value ==> Efl.Ui.Spin - Efl.Access.Value
Efl.Gfx.Buffer ==> Efl.Canvas.Image_Internal - Efl.Gfx.Buffer
Efl.Canvas.Pointer ==>  Efl.Ui.Widget - Efl.Canvas.Group - Efl.Canvas.Object - Efl.Canvas.Pointer
Efl.Gfx.Size_Hint ==> Efl.Ui.Widget - Efl.Canvas.Group - Efl.Canvas.Object - Efl.Gfx.Size_Hint

Test Plan: make check

Reviewers: Jaehyun_Cho, Hermet, woohyun, segfaultxavi

Reviewed By: Jaehyun_Cho, segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7241
2018-11-22 17:22:04 +09:00
Chris Michael 9c814cb652 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael e2862ef2e2 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael beaa784cb5 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 71baeab41d elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 554573eaa9 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 5a35d9d3e3 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael f7a414db38 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 27fb5151e5 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael a61b5c380b elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 0f00fa0777 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 4220c9d2d4 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael bd32bf5626 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 7bddabaa33 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 275165423a elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 31a7e545b4 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael b32c39cd58 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 328a6ad307 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael e8298d8d44 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 7f42105cb7 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 2f8221ed68 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 98c8c7bf91 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael f7c073d77c elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 19059b8eca elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 6d29afae4d elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 50ab99b05b elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Chris Michael 1bea98eba4 elementary: Reduce EO calls by using geometry_set
This patch reduces EO calls by using evas_object_geometry_set rather
than calling move & resize.
2018-11-21 11:25:58 -05:00
Marcel Hollerbach a81540ead5 elm_gengrid: enable focus api for none realized items
this ensures that the item is focused once the item is realized.
The last_focused_item point is not NULLed anymore, it will be overridden
anyways a few lines below, if the 'if' below is not going to be
executed, then we should not NULL out the field at all, since we want to
remember the item when we are restoring focus in
_elm_gengrid_efl_ui_focus_manager_setup_on_first_touch.

This resolved the latest comment in D7230

This also resolves T7391.

Differential Revision: https://phab.enlightenment.org/D7271
2018-11-20 20:50:42 +01:00
Marcel Hollerbach 9c1c35b9b8 elm_legacy: use the new api
with using the new api of efl.ui.focus.object we can resolve a bug that
was pointed out in P243.

Differential Revision: https://phab.enlightenment.org/D7267
2018-11-20 20:50:42 +01:00
Marcel Hollerbach 1524c94180 elm_gen****: correctly return the focus parent
this was forgotten before. However, now the correct parents are returned
This is needed in order to have the child_focus property propagated
correctly accross the parent chain.

Differential Revision: https://phab.enlightenment.org/D7266
2018-11-20 14:42:32 +01:00
Marcel Hollerbach 25ac6d4fcc efl_ui_focus_object: add new event
the new event indicates when the focus property of a child has changed.

Fixes T7438

Differential Revision: https://phab.enlightenment.org/D7263
2018-11-20 14:42:32 +01:00
Marcel Hollerbach f62a289cf4 elm_list: fix focus without items
Differential Revision: https://phab.enlightenment.org/D7232
2018-11-20 13:04:48 +01:00
Marcel Hollerbach edf1fbea20 elm_gen****: ensure that no focus item is handled correctly
This ensures that on first touch the root dummy element is focused
correctly.

fix T7203

Differential Revision: https://phab.enlightenment.org/D7231
2018-11-20 13:04:48 +01:00
Marcel Hollerbach c0e52526c6 efl_ui_focus_manager: make active getter work correctly
focus managers can be used via composition, in this case the normal
manager is NOT inheriting from the
EFL_UI_FOCUS_MANAGER_WINDOW_ROOT_INTERFACE class, but the composition
parent is.

fix T7390

Differential Revision: https://phab.enlightenment.org/D7230
2018-11-20 13:04:47 +01:00
Woochanlee a1478261b5 efl_ui_format: remove supporting default TM format in interface.
Summary:
efl_ui_format printed ERR log in calendar use case.

calendar only accept format as "B,b,h,m,y,Y"

But it doesn't cover that and not supporting TM type.

If there is other widget which one using format interface, It also has own accpeted format.

So i think it should impelment on widget side.

Test Plan: elementary_test -> efl_ui_calendar.

Reviewers: Hermet, singh.amitesh, Jaehyun, zmike, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6871
2018-11-20 10:23:28 +01:00
SangHyeon Jade Lee 4b5304d7f2 efl_ui_grid : introduce new packable grid widget for Efl.Ui.Widget
Summary:
Introduce new packable grid for Efl.Ui.Widget toolkits.
most of parts are same as Efl.Ui.List, and it also support Efl.Pack_Linear,
although it will not support Efl.Pack_Table, because item must be
arranged sequential orders.

Test Plan:
We will make the tests on efl ui test suite.
please test by make check.

Reviewers: Hermet, cedric, felipealmeida, eagleeye, woohyun

Reviewed By: Hermet, eagleeye

Subscribers: CHAN, bu5hm4n, cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6985
2018-11-20 14:32:31 +09:00
Jaehyun Cho 4f9c8d524c efl_ui_theme: Introduce Efl.Ui.Theme class
Summary:
Efl.Ui.Theme class is required to support language bindings.
Efl.Ui.Theme works based on current elm_theme features.

This patch fixes T7357.

Reviewers: segfaultxavi, cedric, lauromoura, woohyun, zmike, SanghyeonLee

Reviewed By: segfaultxavi, SanghyeonLee

Subscribers: SanghyeonLee, herdsman, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7357

Differential Revision: https://phab.enlightenment.org/D7244
2018-11-20 13:56:37 +09:00
Jaehyun Cho 0611620301 efl_ui_bg: remove Efl.Ui.Bg interface and rename Efl.Ui.Bg_Widget class
Summary:
Efl.Ui.Bg interface does not have any new property or method.
Moreover, Efl.Ui.Bg interface is not used by widgets except
Efl.Ui.Bg_Widget and Efl.Ui.Widget_Part_Bg.
Consequently, Efl.Ui.Bg interface can be replaced by other interfaces.

Due to Efl.Ui.Bg interface, the bg widget class name becomes
Efl.UI.Bg_Widget which is not synchronized with other widget names.

Therefore, to keep consistency with other widgets, it would be better to
remove Efl.Ui.Bg interface and rename Efl.Ui.Bg_Widget to Efl.Ui.Bg.

Reviewers: woohyun, segfaultxavi, bu5hm4n, zmike

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7304
2018-11-20 10:24:05 +09:00
Daniel Hirt 2c0f094da5 Ui text: fix size evaluation on construction
In some cases, like the example provided in the referred ticket, the
text is set during the construction of the object.

This adds another call to evaluate the size of the object at the end of
the "finalize" stage, and also removes the line that has set the text to
"".

Fixes T7468
2018-11-18 12:33:30 +02:00
Alastair Poole be8b7e5210 elm_code: Allow widget to be focused.
Summary: This fixes a lost cursor with latest git.

Test Plan: elementary_test -> elm_code -> view a cursor

Reviewers: raster, ajwillia.ms

Reviewed By: raster

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7298
2018-11-17 13:05:02 +00:00
Jaehyun Cho d4526f44b8 elementary: rename Efl.Ui.Popup classes
Summary:
Efl.Ui.Popup classes are renamed intuitively from backward order to
forward order.

Efl.Ui.Popup_Alert        -> Efl.Ui.Alert_Popup
Efl.Ui.Popup_Alert_Scroll -> Efl.Ui.Scroll_Alert_Popup
Efl.Ui.Popup_Alert_Text   -> Efl.Ui.Text_Alert_Popup

Reviewers: segfaultxavi, bu5hm4n, cedric

Reviewed By: segfaultxavi

Subscribers: herb, SanghyeonLee, woohyun, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7292
2018-11-16 11:26:57 +01:00
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 1c530d210d efl_ui_focus_manager: calculate new widgets undependend from dirty state
This fixes T7397

Differential Revision: https://phab.enlightenment.org/D7179
2018-11-15 13:55:37 +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
Marcel Hollerbach 14347e9a33 elm_widget_item_static_focus: prepare the gengrid before preparing items
this fixes some missing registrations, which lead to errors.

ref T7391

Differential Revision: https://phab.enlightenment.org/D7124
2018-11-13 17:01:37 +01:00
Marcel Hollerbach d5fea77162 gengrid: unset last_focused pointer when focus moved away
this was requested by T7391.

fix T7391

Differential Revision: https://phab.enlightenment.org/D7123
2018-11-13 17:01:37 +01:00
Marcel Hollerbach c972347c1c efl_ui_focus: add flag to indicate if a child has the focus
this is usefull for later implementations in spinner and fileselector.
A event for this was not added because the result is only really usefull
after a focus operation has been successfull.

Differential Revision: https://phab.enlightenment.org/D7102
2018-11-13 17:01:37 +01:00
Marcel Hollerbach c5add3ef40 elm: add unfocus / focus signals to gen* and toolbar
this adds back unfocus / focus emitting when items in those containers
are getting focus.

Differential Revision: https://phab.enlightenment.org/D7100
2018-11-13 17:01:37 +01:00
Xavi Artigas 295418ed59 doc: Fix misuse of $ instead of @ in comments
$ renders the next word monospaced whereas @ turns the next word into a link.
2018-11-13 12:41:51 +01:00
Lauro Moura 021513923d eo: Avoid namespace clashes.
Summary:
This commit removes some clashes (i.e. names as classes and namespaces
at the same time). It'll avoid nested items that are either forbidden
(C#) or problematic (Python) in some languages.

Reviewers: segfaultxavi, bu5hm4n, felipealmeida

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7260
2018-11-13 09:48:14 +01:00
Carsten Haitzler c490c71119 efl ui text - stop being brain damaged with cnp mode
cnp mode type was a mess. thankfully it was a bit simpler than it
seemed. cleaned up code to deal with it sanely and keep it a single
type  as intended byt he api too.
2018-11-09 12:18:59 +00:00
Carsten Haitzler b05472eb9d elm code - warn - explicit truncation via custom truncate func 2018-11-09 12:18:59 +00: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
Carsten Haitzler d6b5cdf7a1 elm map - warn - set vars to valueto avoid uninit warning 2018-11-09 11:43:59 +00:00
Carsten Haitzler f08ed1af12 elm map - warn - avoid buffer truncation warnings
make buffers bigger to asvoid truncation to also avoid warnings.
2018-11-09 11:43:59 +00:00
Carsten Haitzler 603adee731 elm naviframe - fix buffer size handling and strncat
strncat where the size passed is tghe size of the string is pointless.
it is strcat. so chekc before the strcat... and be simpler and honest
2018-11-09 11:43:59 +00:00
Carsten Haitzler 927bd2a656 elm calendar - stop truncation of text printed into buffer 2018-11-09 11:43:59 +00:00
Carsten Haitzler a23f09d590 efl ui calendar - expand buffers so trucnation doesnt happen 2018-11-09 11:43:59 +00:00
Carsten Haitzler aaecb2579a efl ui text -0 fix warns on unused params/vars 2018-11-09 11:43:59 +00:00
Carsten Haitzler 98a23c5660 elm web - fix warn of possibly uninit var
set to a default value...
2018-11-09 11:43:59 +00:00
Carsten Haitzler 659473a7bf elm theme - initialize all struct members to null
missing aded struct members...
2018-11-09 11:43:59 +00:00
Carsten Haitzler 665a75378f xxx - fix eina_future_then calls to pass sotrage val - fix warns 2018-11-09 11:43:59 +00:00
Jaehyun Cho f66414beec elm_theme: Fix to set default style group name correctly
"default" should not be appended to the group name in new EFL interface
theme. e.g. "efl/button"

Therefore, if "default" is given as a style name, then the style name
should be converted to NULL for the group name in new EFL interface
theme.
2018-11-09 17:52:34 +09:00
Jaehyun Cho a2c8330d8f efl_ui_win: Fix to check efl_ui_bg_widget theme version for non-legacy win
Check efl_ui_bg_widget theme version instead of elm_bg for non-legacy
win if win must swallow bg manually or not.
2018-11-09 17:52:29 +09:00
Daniel Hirt 11ff9d5c70 Ui internal text scroller: fix meson build
This adds missing files to `meson.build`.
2018-11-06 00:41:50 +02:00
Daniel Hirt 1f5c016900 Ui internal text scroller: move .eo.h to internal usage
This fixes the broken `Elementary.h` header.
2018-11-06 00:10:33 +02:00
Daniel Hirt 3f8504c205 Efl selection: remove cancelled promises
This removes the promises in case multiple selection_set are used and
future_cancel were called.
2018-11-05 18:17:43 +02:00
Daniel Hirt 83c7db7283 Ui scroll: fix update scrollbar arrows on pos change 2018-11-05 18:17:43 +02:00
Daniel Hirt 26c1f2477c Ui text: port widget to new interfaces
This is a big rewrite. In addition to implementing functionality with
the new Efl interfaces, a lot of legacy (Elm) code was removed.

A lot of work is squashed in this patch as the widget would've been
completely broken otherwise.

The major changes are:

Life-cycle:
  - Code was split to have 'finalize'
  - Item anchors (emoticons, images) were rewritten to have proper
  life-cycle

Scrolling logic:
  - Efl.Ui.Internal_Text_Scroller widget was added, and replaces the old
  Elm.Interface_Scrollable implementation. Singe-line and multi-line
  modes were fixed as well as sizing calculations. The object is now
  swallowed inside the Ui.Text widget.

Copy and paste:
  - Code was converted to Efl.Selection logic.

Modified tests:
    elementary_test -to "efl.ui.text"
    elementary_test -to "efl.ui.text label"

Added tests:
    elementary_test -to "efl.ui.text inputfield"

Removed test:
    elementary_test -to "efl.ui.text.async"
2018-11-05 18:17:42 +02:00
Daniel Hirt 86a8f832ae Ui text scroller: add scroller for internal usage
This class inherits Efl.Ui.Scroller and has its own sizing_eval logic to
handle the text content sizing as needed.

It's kept internal as it only serves Efl.Ui.Text in a scrollable mode.
2018-11-05 17:31:06 +02:00
Daniel Hirt b5c739acae Ui text interactive: swap cursors on cursors_get if needed 2018-11-05 17:31:06 +02:00
Daniel Hirt f172de86d6 Ui text interactive: don't use freeze when using legacy cursor_copy 2018-11-05 17:31:06 +02:00
Daniel Hirt 91a43cc723 Ui text interactive: emit selection,changed on selection changes, not cursor 2018-11-05 17:31:06 +02:00
Daniel Hirt 5b29de0388 Ui text interactive: add select_none
This is intended for Ui.Text to clear the selection on selection loss.
2018-11-05 17:31:06 +02:00
SangHyeon Jade Lee e97b6b72be efl_ui : change efl_ui_view_list to efl_ui_list_view.
Summary:
  View is not a namespace, but an interface,
  So, View_List cannot be under the view namespace for now.
  it looks more suite to be end as View than List on this widget name.
  Firstly, it follows our common naming rules of class.
  Also, List_View is commonly presentable name on most UI frameworks,
  so it is very easy to understand what this widget can do for the user.

Test Plan:
Make works.
           Example is not works for now til stable model interface.

Reviewers: felipealmeida, woohyun, cedric, Hermet

Reviewed By: Hermet

Subscribers: larryolj, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7234
2018-11-05 14:27:05 +09:00
Hermet Park c4e0d3f69d elementary transit: add a new api - elm_transit_progress_value_set()
Summary:
This API sets current time progression of the animation.

It intervenes current progress instantly when it requires
to jump onto a specific frame position.

@feature

Reviewers: #committers

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7211
2018-11-05 14:22:58 +09:00
Hermet Park ad567a15a2 elementary transit: fix wrong pausing time calculation.
Summary:
the logic of computation of pausing time was incorrect.
even it didn't take care of revert_mode at all.

delayed time must be subtracted from elapsed time.

@fix

Reviewers: #committers

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7201
2018-11-05 14:22:12 +09:00
Daniel Zaoui 84f82be847 Slider: fix callback invocation
Summary:
efl_event_callback_legacy_call already invokes legacy and non-legacy
callbacks. Therefore, there is no reason to call
efl_event_callback_call as well.

Reviewers: eagleeye, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7237
2018-11-05 14:03:15 +09:00
Marcel Hollerbach 79a5ff6e1e elm_toolbar: fix prio.visible
prio.visible is ignored in case of SHRINK_EXPAND is used. every single
item is just stuffed into a box. Thus in case that the *more flag
indicates that another box is displayed (rather than not fitting items),
then we do not set the visibility flag on the item - as the item is used
anyways.

ref T6806.

Differential Revision: https://phab.enlightenment.org/D7185
2018-11-02 02:22:34 +01:00
Marcel Hollerbach 17b57ba5ac efl_ui_focus_manager: rename a event
In eo there is a difference between legacy events and normal events.
However, when a legacy event, that is called "focused" is emitted, the
event EFL_UI_FOCUS_MANAGER_FOCUSED is emitted on those objects. This
leads to bugs and unexpected results in elm_scroller, and additionally
this problem blocks work that is done right now to add those "focused"
event calls to gengrid.

Differential Revision: https://phab.enlightenment.org/D7099
2018-11-02 02:22:13 +01:00
Daniel Zaoui 1b85d7d12f Elm_Code: check pointer nullity before using it 2018-11-01 23:09:32 +02:00
Marcel Hollerbach 2579733515 meson: allow setting of custom pc variables
this brings the theme directory to the elementary .pc file.

Differential Revision: https://phab.enlightenment.org/D7224
2018-10-31 18:26:24 +01:00
Carsten Haitzler 014bbb888e Revert "build - meson - fix build when legacy is still enabled and gen the code"
This reverts commit 9aeedc5a1c.
2018-10-31 09:42:34 +00:00
Carsten Haitzler 9aeedc5a1c build - meson - fix build when legacy is still enabled and gen the code
meson build was not generating .legacy.h etc. files for a whole host
of classes that were depended on - add it back so the build works again.
2018-10-26 14:58:29 +01:00
Jaehyun Cho 3e7321565d elc_naviframe: Fix to show prev item when top item is deleted
When top item is deleted, previous item should be shown.
2018-10-26 21:15:54 +09:00
Hermet Park fa7d83b993 elementary selection: remove unnecesary logs. 2018-10-26 19:08:32 +09:00
Daniel Kolesa ddce3fc8a7 meson: restore generation of legacy header files in elementary
While this is probably not entirely correct, it restores the
previous behavior. A proper fix would be to move .eo files that
do require header files into the pub_legacy_eo_files section but
that will require more effort and care. So until that is fixed,
just generate legacy as usual.
2018-10-25 14:31:38 +02:00
Hermet Park c7718f564b elementary transit: allow duration change on animatining.
Summary:
Previously, it didn't allow to change duration because of implementation limit.

This time, it turns out it doesn't need to limit the behavior.
More capacity is better for various scenarioes.

Reviewers: #committers, devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7205
2018-10-25 14:50:37 +09:00
Yeongjong Lee 66f5b5c9aa elm_conformant: fix wrong variable assignment
Summary:
event.object is always NULL. it may cause unexpected behavior.
event.object should be assinged after sd->win is assinged.

Reviewers: akanad, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7208
2018-10-25 14:37:10 +09:00
Daniel Kolesa 5a3d79d383 meson: add eolian custom dependencies support
This uses the meson/ninja depfile functionality + eolian to make
sure proper dependencies between generated files and .eo files
are managed, to ensure consistent re-generation of all generated
files that are affected upon .eo file modification.

For custom rules with multiple outputs, Ninja currently does not
support depfiles. Therefore, split those into two custom rules
so that the depfiles functionality can be enabled. While this
is ugly and slows down the process a little by having to invoke
Eolian twice instead of once, it has to be done and it's still
better than what we had in Autotools anyway.

Differential revision: D7187

Fixes T6700.
2018-10-24 12:02:55 +02:00
Hermet Park e6924b9c72 elementary transit: add a convenient API.
Summary:
elm_transit_current_repeat_times_get() returns
current repeating count of transition.

@feature

Reviewers: #committers, devilhorns

Reviewed By: #committers, devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7200
2018-10-23 20:43:17 +09:00
Marcel Hollerbach d9bb7cc12e meson: add missing ELM_EFREET
without this - elementary_config will crash, and elementary will not use
that much of Efreet. We might want to drop this #ifdef at some point.

Differential Revision: https://phab.enlightenment.org/D7176
2018-10-18 15:57:23 +02:00
Marcel Hollerbach c304510ca5 meson: we accidently looked at the wrong elementary config spot
we read and wrote the config into the wrong subdirectory, thus values
did not match - HOWEVER something lead to more problems and trouble, as
some options in elementary_config are not respected anymore.

Differential Revision: https://phab.enlightenment.org/D7175
2018-10-18 14:51:57 +02:00
Marcel Hollerbach 2cb2e6f87c meson: another build break fix
the installation of the header was forgotten which broke app compilation
against meson builds

Differential Revision: https://phab.enlightenment.org/D7161
2018-10-15 22:02:17 +02:00
Marcel Hollerbach d21ddea3da meson: fix build break 2018-10-12 11:26:26 +02:00
Youngbok Shin 32504a8cfa elementary textpath: support legacy APIs
Summary:
Efl.Ui.Textpath was added when we were developing new interfaces.
So, basically, it does not support 'legacy' APIs. ex) elm_textpath_add
But, in Tizen, the legacy APIs had been delivered in old version of EFL.
To reduce maintainning cost between the platforms, this patch will be helpful.
@feature

Test Plan: N/A

Reviewers: Hermet, woohyun, zmike, cedric, herdsman

Reviewed By: Hermet

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7033
2018-10-12 15:42:31 +09:00
Marcel Hollerbach a82b24aaa8 elementary: shutdown cocoa currently
Depends on D7012
2018-10-11 17:11:36 +02:00
junsu choi 93ee5f9d53 efl_ui_win: Move force resize code on first draw
Summary:
In D6165, there was a modification that forced resize_job
to be called using sd-> deferred_resize_job.
Even if we set true in sd-> deferred_resize_job,
it will be changed to false by calling other function to be called.
(sd->deferred_resize_job = EINA_TRUE; ->
  _elm_win_resize_objects_eval ->
  _elm_win_resize_job ->
   sd->deferred_resize_job = EINA_FALSE;)
Eventually _elm_win_frame_obj_update is not called.
There is a case where _elm_win_frame_obj_update can not called in tizen.
For this reason, make sure to call resize_job when first drawing based on D6165.

Test Plan: N/A

Reviewers: eagleeye, zmike, woohyun

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7156
2018-10-11 20:28:13 +09:00
WooHyun Jung b2c26c1875 efl_ui_progressbar: avoid meaningless theme_apply 2018-10-11 19:42:57 +09:00
Wonki Kim 18f9fbc018 elementary: fix a typo on override func of signal_callback_del
there is a logic that forwards a calling to supoer class on efl_ui_layout.
and the logic have a mismatching calling as you could see.
and this patch fixes the typo error.
Differential Revision: https://phab.enlightenment.org/D7151
2018-10-10 12:55:21 +02:00
junsu choi 01e6f80e57 elm_genlist: prevent null pointer access
Summary: it->item->block can be null. so add null check.

Test Plan: elementary_test -to "genlist show/bring"

Reviewers: SanghyeonLee, woohyun

Subscribers: woohyun, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7146
2018-10-05 17:13:54 +09:00
Jaehyun Cho d03d29f7a2 elm_theme: fix return value when default style fallback is done
To keep backward compatibility, EFL_UI_THEME_APPLY_DEFAULT is returned
instead of EFL_UI_THEME_APPLY_SUCCESS if style is not found in theme and
default style fallback is done instead.

This patch fixes 7353fc1cb8

@fix
2018-10-04 19:21:44 +09: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 46d464e5bf here comes meson
a new shiny buildtool that currently completes in the total of ~ 4 min..
1 min. conf time
2:30 min. build time
Where autotools takes:
1:50 min. conf time
3:40 min. build time.

meson was taken because it went quite good for enlightenment, and is a traction gaining system that is also used by other mayor projects. Additionally, the DSL that is defined my meson makes the configuration of the builds a lot easier to read.

Further informations can be gathered from the README.meson

Right now, bindings & windows support are missing.

It is highly recommented to use meson 0.48 due to optimizations in meson
that reduced the time the meson call would need.

Co-authored-by: Mike Blumenkrantz <zmike@samsung.com>

Differential Revision: https://phab.enlightenment.org/D7012
Depends on D7011
2018-10-02 17:22:50 +02:00
Marcel Hollerbach 66aa76ad89 efl_ui_dnd: fixup leaking inits and code duplication
In fff4d1ba97 one selection_manager_get
method was patched to behave like this, however, it completly broke the
fact of *only-one-manager* since the same code was duplicated in a other
files (efl_selection.c). This now unifies this code, and adds back the
assertion for only one manager per window.

Additionally a shutdown function is added, the app never destroyes, but
the selection manager decided to init some subsystems itself
(ecore_x for example). This lead to to a leak of init counts in ecore_x,
which lead to elementary test suite issues. This is now *finaly* fixed.

Differential Revision: https://phab.enlightenment.org/D7105
2018-10-02 16:13:13 +02:00
Bowon Ryu 10e00e3ecc efl_page_transition_scroll: fix warning the dereference before null check
Summary: if target is null, then terminate the function because it is not intended.

Test Plan: N/A

Reviewers: eunue

Reviewed By: eunue

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7127
2018-10-02 19:47:22 +09:00
Hosang Kim cd547c5a07 elm_interface_scrollable: fix using wrong variable.
Summary:
vy isn't initialized when p >1.0 or p<0.

this function is for finding out a current animating speed of momentum scrolling.
and a caller of this function calls this function by reference(vx, vy)
so that if progress ratio is not between 0 and 1, vx, vy must be zero.

The issue was detected by coverity check.
It may not discovered any issues yet, but the typo is too obvious, so need to fix the right value.

Test Plan: This is coverity issue.

Reviewers: akanad, Hermet, SanghyeonLee

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7114
2018-09-28 15:44:58 +09:00
Yeongjong Lee 0e41b59f6d efl_ui_stack: Partially Revert "efl_ui_stack: remove unnecessary condition of EINA_INLIST_CONTAINER_GET return value"
This partially reverts commit 820dcb9cd9.

top_cd can be NULL when cd->stack is NULL.

Thanks to bu5hm4n for reporting.
Differential Revision: https://phab.enlightenment.org/D7116
2018-09-27 10:13:45 +02:00
Yeongjong Lee 39de8cdc75 elm_genlist: prevent null pointer access
Summary: found by coverity

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7108
2018-09-27 14:08:39 +09:00
Yeongjong Lee 820dcb9cd9 efl_ui_stack: remove unnecessary condition of EINA_INLIST_CONTAINER_GET return value
Summary:
Becase EINA_INLIST_CONTAINER_GET always return true, it doesn't need to check
whether return value is null.

Reviewers: Jaehyun_Cho, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7112
2018-09-27 13:57:33 +09:00
Yeongjong Lee e6bc4d254e efl_ui_list: fix wrong variable usage
Reviewers: SanghyeonLee, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7113
2018-09-27 13:55:20 +09:00
Xavi Artigas 064ae4f3a6 docs: Fix Efl.Ui.Focus.Object.Focus() docs
Summary:
The same description was used for both the Setter and the Getter, which makes
no sense.

Reviewers: zmike, bu5hm4n, bryceharrington, devilhorns

Reviewed By: bu5hm4n, devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7071
2018-09-26 09:22:38 +02:00
junsu choi f19a3baca9 Colorselector : Add docs of elm_colorselector_palette_item_* APIs
Summary:
Add documentation for these APIs
elm_colorselector_palette_item_color_get
elm_colorselector_palette_item_color_set
elm_colorselector_palette_item_selected_get
elm_colorselector_palette_item_selected_set

Test Plan: make doc

Reviewers: cedric, Hermet, zmike, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7091
2018-09-21 20:05:44 +09:00
junsu choi e220e4d2f6 Docs: Fix incorrectly information for elm_config_softcursor_mode_set
Summary: N/A

Test Plan: make doc

Reviewers: cedric, Hermet, zmike, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7094
2018-09-21 20:03:18 +09:00
junsu choi eba15dfdbb Docs: Add a group of APIs for which group is not declared in elm_config
Summary:
Longpress
   elm_config_longpress_timeout_get
   elm_config_longpress_timeout_set
SotfCursor
   elm_config_softcursor_mode_set
   elm_config_softcursor_mode_get
Tooltips (Add in Elm_Tooltips)
   elm_config_tooltip_delay_get
   elm_config_tooltip_delay_set

Test Plan: make doc

Reviewers: cedric, Hermet, zmike, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7093
2018-09-21 20:02:33 +09:00
junsu choi 421acc4211 efl_ui_list: Add return value check
Summary:
efl_ui_layout_object_theme_set without checking return value.
so add return value check and log message.

Test Plan: N/A

Reviewers: SanghyeonLee, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: Hermet, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7070
2018-09-21 20:02:16 +09:00
junsu choi 9f2d1ae6ca ctxpopup: Add return value check
Summary:
Using elm_widget_theme_object_set without checking return value.
so add return value check and log message

Test Plan: N/A

Reviewers: herb, cedric, Hermet

Reviewed By: Hermet

Subscribers: Hermet, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7072
2018-09-21 19:33:10 +09:00
Jaehyun Cho de277311fd efl_ui_list: Return function if data get is failed
Summary: Check data and return function if data get is failed.

Reviewers: SanghyeonLee

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7092
2018-09-21 18:43:21 +09:00
Taehyub Kim 17d5a20a3b elm_entry: update documentation for elm_entnry_textonly_mode_set/get
Summary: update documentation

Reviewers: Jaehyun_Cho, raster

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7089
2018-09-21 18:04:49 +09:00
Bowon Ryu 0f1227c158 docs: correct group name of segmentcontrol for API docs.
Summary:
correct group name of segmentcontrol for API docs consistency.
Elm_SegmentControl -> Elm_Segment_Control

Test Plan: N/A

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7087
2018-09-21 17:25:56 +09:00
junsu choi 2f9c23a87e efl_ui_focus_manager: Add null check
Summary:
This commit add null check on _next and _request_subchild function.
The value 'node' is can be null.

Test Plan: N/A

Reviewers: bu5hm4n, YOhoho, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7069
2018-09-21 16:54:23 +09:00
Youngbok Shin 0098aa6670 elementary: fix memory leak from Efl.Ui.Layout.Object
Summary:
The 'data' could not be added to hash in a condition.
It has to be free'd before ending the function.
@fix

Test Plan: N/A

Reviewers: cedric, raster, Hermet, zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7083
2018-09-21 16:50:31 +09:00
Youngbok Shin 6a8f2ce863 elementary: remove meaningless memory allocation and leaking
'evt_data' was allocated. Actually, it was not used in anywhere in its function.
@fix
Differential Revision: https://phab.enlightenment.org/D7086
2018-09-21 09:27:48 +02:00
Jaehyun Cho c6f40ce1ae els_tooltip: Fix to show correct arrow type
Summary:
Current calculation for arrow type is not based on mouse position.
Consequently, tooltip arrow type is incorrect when tooltip shows on
mouse position with ELM_TOOLTIP_ORIENT_NONE.

Test Plan:
1. Execute "Tooltip" in elementary_test
2. Hover mouse on any button and move mouse

Reviewers: Hermet, raster, woohyun

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7074
2018-09-21 15:08:43 +09:00
Taehyub Kim a6629d86c9 Efl.Ui.Popup.Alert: add icon parameter for icon button of popup
Summary: add icon parameter for icon button of popup

Test Plan:
1. run elementry_test
2. run Efl.Ui.Popup.Alert sample
3. call set button function of popup and pass the icon by parameter
4. see the result of the popup

Reviewers: Jaehyun_Cho, jpeg, raster, cedric, woohyun

Reviewed By: Jaehyun_Cho

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7079
2018-09-21 15:05:49 +09:00
SangHyeon Jade Lee b1650ca471 genlist: fix item show/bring in coordinate calculation with zero-sized pan.
Summary:
item show and bring can be processed with zero-sized pan.
item's coordinate will be calculated with this zero-sized pan,
so target position of scroll region bring in is not proper.

it occurs wrong result of SCROLLTO_MIDDLE and SCROLLTO_BOTTOM cases.

now we check pan size, and if less than 1, deferred call.

Test Plan:
please test with attached file.
./main 8 4 : 8th item go to middle
./main 8 8 : 8th item go to bottom

(bottom case may need D7035 as precede patch)

{F3311262}

Reviewers: Hermet, eagleeye

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7037
2018-09-19 09:36:51 +09:00
SangHyeon Jade Lee c9060ca997 elm_genlist: item scroll show sould be processed after block calculation
Summary:
there are buggy actions in the item show api,
when the list is launched, scroll to far distance item.
the reason is item_scroll is called before it's block is fully
calculated in calc_job().
the origin patch of cause the issue is
f6b66cc1d3
by raster in 28 Nov, 2013
but we already do some extra works in calc_job(),
so the code is not necessarily called in queue_process().

more detail descriptions :
mainly this caused by block width size,
so the normal case block width is zero, and item_scroll() will be dismissed,
and deferred action in calc_job(), but in issue case,
block width is already been set, so it can scroll the item directly though
they aren't properly calculated yet.

most cases block was generated in the same queue processing so width size is
not exist, but in issue cases, they re-using the block which was already been
generated by previous queue processing, so the width size is already exist,
but height is not properly calculated yet.

we could move the block height calculation and min/max calculation
in the queue processing, but I'm afraid to face side effect,
so removing item_scroll() call is best option that I got.

Test Plan:
I'll upload some sample file my_genlist_example_4.c,
so please do a test with this.
issue is reproduced very rarely, but I could see the issue within 20 times try.

{F3300793}

Reviewers: raster, eagleeye, Hermet, singh.amitesh, #reviewers

Reviewed By: Hermet, #reviewers

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6952
2018-09-19 09:35:07 +09:00
SangHyeon Jade Lee 7901d145c5 genlist : missing scrollto_bottom condition in item_scroll is fixed.
Summary:
ELM_GENLIST_ITEM_SCROLLTO_BOTTOM condition is considered in coordinate_calc,
but not considered in item_scroll which calls deferred for item calculation.
so put the proper condition for ELM_GENLIST_ITEM_SCROLLTO_BOTTOM in item scroll.

Test Plan: elementary_test

Reviewers: Hermet, eagleeye

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7035
2018-09-19 09:34:43 +09:00
SangHyeon Jade Lee 82060c5798 elm_gengrid: fix item_show / bring_in deferred call.
Summary:
item_show / bring_in will be deferred, if object is not resized properly.
the deferred call of item_show_region() is on the calc_job(),
after calculating proper object, pan size, but still item is not placed,
so target scrolling position is wrong while item_show_region().

move deferred call to group_calculate() to get correct item position,
after item_place() and group_item_place() were processed.

This patch is reported on [[ https://phab.enlightenment.org/T7367 | T7367 ]].

Test Plan: {F3302967}please check attached gengrid_example_01.c

Reviewers: eagleeye, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7367

Differential Revision: https://phab.enlightenment.org/D7014
2018-09-19 09:21:31 +09:00
Derek Foreman 64208d4d65 elu_ews_wm: Convert to new animators
Summary:
Use more efficient animator mechanism.
Depends on D7048

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7049
2018-09-18 09:43:09 -05:00
Derek Foreman 3771a66555 elm_transit: Convert to new animators
Summary:
Use more efficient animator mechanism.
Depends on D7047

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7048
2018-09-18 09:43:06 -05:00
Derek Foreman e968a053d7 elm_genlist: Convert to new animators
Summary:
Use more efficient animator mechanism.
Depends on D7046

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7047
2018-09-18 09:43:02 -05:00
Derek Foreman 33b085551a elm_gengrid: Convert to new animators
Summary:
Use more efficient animator mechanism.
Depends on D7045

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7046
2018-09-18 09:42:58 -05:00
Derek Foreman eea7a7755f elm_box: Convert to new animators
Summary:
Use more efficient animator mechanism.
Depends on D7044

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7045
2018-09-18 09:42:54 -05:00
Derek Foreman 512d5e0f44 elm_actionslider: Convert to new animators
Summary:
Use more efficient animator mechanism.
Depends on D7043

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7044
2018-09-18 09:42:50 -05:00
Derek Foreman 834366c806 efl_ui_flip: Convert to new animators
Summary:
Use more efficient animator mechanism.
Depends on D7042

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7043
2018-09-18 09:42:47 -05:00
Derek Foreman 899f208733 selection_manager: Convert to new animators
Summary:
Use more efficient animator mechanism.

Depends on D7041

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7042
2018-09-18 09:42:42 -05:00
Marcel Hollerbach f570e7435e elm-containers: use alive api
check if the object is in its correct lifetime before performing
operations

Differential Revision: https://phab.enlightenment.org/D6724
2018-09-14 11:19:01 +02:00
Alastair Poole 111f2fe89c efl_ui_focus_manager_calc: invalidate obj on delete.
Summary:
In some situations focus is being set to a deleted object.
Use EFL_EVENT_INVALIDATE on object deletion not
EFL_EVENT_DEL. This prevents the object to be again selected for restoring focus when a redirect is deleted.

This fixes SEGV with some widgets including popup tests.

Test Plan:
* elementary_test -to popup
* popup-center-text + 3 button (check add, remove buttons).
* Close popup, enter text (reopen popup and repeat).
* Crash should be avoided.

Reviewers: bu5hm4n, zmike

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7026
2018-09-12 20:02:09 +01:00
Alastair Poole fb58e4a35e elm_code: Make sure we handle python3 mime type.
Summary:
Let's not miss python3 mimetype when setting up
syntax highlighting.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7000
2018-09-11 12:22:43 +01:00
Marcel Hollerbach 0d506bf346 efl_ui_focus_util: refactor the util for focusing objects
the previous code had the problem that we moved focus onto logical
objects which were not having any children, thus we saw errors from the
focus manager.
Now we are checking if we are able to deliver focus onto a child of the
passed user.

Differential Revision: https://phab.enlightenment.org/D7009
2018-09-10 17:19:29 +02:00
Jaehyun Cho 14f1866f25 efl: Remove unnecessary abstract/class inheritance
Summary:
Remove unnecessary abstract and class inheritance from eo file because
those abstracts and classes are duplicate.
e.g. if class B (class A) in B.eo file, then class C (class A, class B) in C.eo file.

Reviewers: woohyun, felipealmeida, Hermet, bu5hm4n

Reviewed By: Hermet, bu5hm4n

Subscribers: bu5hm4n, cedric, segfaultxavi, q66, #reviewers, lauromoura, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6982
2018-09-10 20:29:24 +09:00
Yeongjong Lee 445239424c elm: add missing efl_ui_popup_part_backwall header
Summary:
efl_ui_popup_part_backwall.eo.h is needed for repeat_events method.

ref 31be3af62d

Test Plan: make

Reviewers: Jaehyun_Cho, Hermet

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7015
2018-09-10 20:22:53 +09:00
Jaehyun Cho 31be3af62d efl_ui_popup: Remove inheritance from Efl.Canvas.Object
Summary:
Class Efl.Ui.Popup_Part_Backwall inherits from multiple classes,
class Efl.Ui.Layout.Part and abstract Efl.Canvas.Object.

To remove multiple class inheritance, Efl.Canvas.Object is not
derived and its property, repeat_events, is newly defined in
Efl.Ui.Popup_Part_Backwall.

Test Plan:
1. Execute elementary_test.
2. Select Efl.Ui.Popup.
3. Select "Show Dummy Button".
4. Select "Repeat Event Set".
5. Test if repeat event works.

Reviewers: woohyun, felipealmeida, Hermet, segfaultxavi

Reviewed By: Hermet, segfaultxavi

Subscribers: bu5hm4n, q66, cedric, segfaultxavi, lauromoura, #reviewers, herb, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6984
2018-09-10 13:29:54 +09:00
Alastair Poole 5cc05b66d6 elm_code_file: preserve file permissions on save.
Test Plan:
 * Run Edi (Python project)
 * Edit setup.py
 * Run build
 * Permissions should be preserved.
 * setup.py should build.

Reviewers: ajwillia.ms

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7008
2018-09-09 21:26:10 +01:00
Chris Michael 84423a465c elementary: Check for valid focus manager before starting do loop
Apparently there are cases where efl_ui_focus_object_focus_manager_get
can return NULL. In order to trap for this, we can simply modify the
do loop slightly and check for a valid manager before we actually
start looping

Test Case: elementary_test -to "Panel Scrollable" and click Toggle
button

ref T7030

Differential Revision: https://phab.enlightenment.org/D6704
2018-09-06 18:20:56 +02:00
Marcel Hollerbach bae53f7d72 efl_ui_focus_manager: do not adjust values on a inactive manager
The bug this fixes can be observed when opening elm_test with hoversel.

The problem here is that the focus manager gets operations called on it after it is not active anymore, which lead to the fact that focus was restored on something that was about to be deleted.
Differential Revision: https://phab.enlightenment.org/D6903
2018-09-06 18:08:35 +02:00
Alastair Poole f747e35f48 elm_code: make the hoversel not focusable.
Summary: Disabling focus prevents incorrect operations.

Test Plan:
With EDI, use mouse (cut/copy/paste).
Due to the focus passing to the hoversel we break focus in the
application when it's lost. By disabling this cut/copy/paste
works as it should. A similar approach was used in elm_entry.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6986
2018-09-05 22:07:49 +01:00
Jaehyun Cho 0dabbfe177 Revert "efl: Remove unnecessary abstract/class inheritance"
This reverts commit 4067fafe07.

As commented on D6982, the original patch changes the widget's behavior.
e.g. Efl.Ui.Win cannot be called with Efl.Config_Gloabal APIs.
     Elm.Combobox cannot provide events of Button and Hover.

Until the above changes are resolved, the original patch is reverted.
2018-09-05 17:14:22 +09:00
Jaehyun Cho 743e0468e9 efl_ui_popup: Replace class Efl.Ui.Popup_Part with Efl.Ui.Popup_Part_Backwall
Class Efl.Ui.Popup_Part is used only for part "backwall".
Therefore, class Efl.Ui.Popup_Part is replaced with class
Efl.Ui.Popup_Part_Backwall.
2018-09-05 15:16:11 +09:00
Jaehyun Cho 4067fafe07 efl: Remove unnecessary abstract/class inheritance
Summary:
Remove unnecessary abstract and class inheritance from eo file because
those abstracts and classes are duplicate.
e.g. if class B (class A) in B.eo file, then class C (class A, class B) in C.eo file.

Reviewers: woohyun, felipealmeida, Hermet

Reviewed By: Hermet

Subscribers: cedric, segfaultxavi, q66, #reviewers, lauromoura, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6982
2018-09-05 15:05:23 +09:00
Woochanlee 7655a0d267 Clean up efl_ui_XXX eo files.
Summary:
Delete unnecessary interface references.

Delete unnecessary annotations.

Reviewers: Hermet, Jaehyun_Cho, zmike

Reviewed By: Hermet

Subscribers: segfaultxavi, q66, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6945
2018-09-04 09:37:01 +09:00
Yeongjong Lee 4e0b2c2fff docs: Fix typos in API reference doc
Reviewers: segfaultxavi, kimcinoo

Reviewed By: kimcinoo

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6960
2018-09-03 10:55:16 +09:00
Alastair Poole 7b3f7bf9e1 elm_code: fix DEL at end of line.
Summary:
In one case we do not want to move the cursor.
When merging up with DEL the cursor should
remain on the same line.

Test Plan: Cursor at end of line, press delete.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6957
2018-08-31 17:58:17 +01:00
Yeongjong Lee 221ac4e51a elm_interface_scrollable: add 1 space after if keyword
Reviewers: Hermet, akanad, SanghyeonLee

Reviewed By: Hermet, SanghyeonLee

Subscribers: SanghyeonLee, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6954
2018-08-31 17:47:29 +09:00
Yeongjong Lee 02d83ebcd4 docs: Fix typos in API reference doc and comments.
Reviewers: Hermet, segfaultxavi

Reviewed By: Hermet, segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6948
2018-08-31 17:45:31 +09:00
Yeongjong Lee b224cecf90 elm_interface_scrollable: fix wrong pointer reference
Reviewers: akanad

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6955
2018-08-31 12:32:56 +09:00
Yeongjong Lee 086783f31d elm_panel: fix mirrored_set work correctly
Summary:
When elm_panel isn't scrollable, It can't pass `if (!sid->edje_obj) return;` in
_elm_interface_scrollable_efl_ui_base_mirrored_set. so elm_panel's mirrored_set
didn't work. we neet to consider non-scrollable panel.

Test Plan:
1. elementary_test
2. Open 'Panel' and 'Panel Scrollable'
3. Turn on UI-Mirroring on Elementary Tests window.
4. Check that mirror mode works correctly.

Reviewers: Hermet, Jaehyun_Cho

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6944
2018-08-30 14:02:34 +09:00
Myoungwoon Roy, Kim e06a9b6acf docs: Fix typos and some wrong expressions in API reference doc.
Summary: I had fixed some typos and some wrong expressions in API reference doc

Test Plan: N/A

Reviewers: raster, zmike, Hermet, segfaultxavi

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6943
2018-08-30 14:01:21 +09:00
Mike Blumenkrantz a75500b5b1 efl_ui/layout: check finalized state before completing sizing_eval call
Summary:
this should reduce the work required to silence errors during object
construction by avoiding the most common cause of such errors

ref D6830

Reviewers: Hermet, devilhorns

Reviewed By: Hermet, devilhorns

Subscribers: devilhorns, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6921
2018-08-30 13:15:49 +09:00
Chris Michael b41d3752bb elm_interface_scrollable: Remove unused variables 2018-08-29 13:20:53 -04:00
Wonki Kim 1566cc79ec scroller: removes unused variables
Summary: this patch removes some variables that are unused.

Reviewers: Hermet, eagleeye, zmike

Reviewed By: Hermet

Subscribers: #reviewers, cedric, #committers, zmike

Tags: #efl_widgets

Differential Revision: https://phab.enlightenment.org/D6593
2018-08-29 21:38:20 +09:00
Shinwoo Kim 37f1a46c4a Elm.Mapbuf: do not set is_static_clip to its content
Summary:
If an object's is_static_clip is TRUE
then _evas_render_phase1_object_process does not draw the object and its smart
member from the below commit (1).

On the other hand, the Elm.Mapbuf sets is_static_clip to its content from the
below commit (2). So you cannot see the content. If the commit tried to solve
over-render, it could be changed to:

if (wd->content) evas_object_static_clip_set(wd->content, !wd->enabled);

from:

if (wd->content) evas_object_static_clip_set(wd->content, wd->enabled);

or there could be another way.

(1) commit 1bba6d5759
Author: Carsten Haitzler (Rasterman) <raster@rasterman.com>
Date:   Wed Nov 23 13:57:27 2016 +0900

    evas phase 1 process - shortcut objects that are pure static clips only

    these objects don't actually produce - or should produce update
    regions etc. etc. as the objects that are clipped should produce those.
    they are not active objects. so skip them very early after just
    ensuring they are in delete objects if needed.

(2) commit 7ca0a3dcac2ee7fc7d7ae62277dde05a3b77b276 (of core/elementary.git)
Author: Carsten Haitzler <raster@rasterman.com>
Date:   Wed Jan 19 11:59:53 2011 +0000

    fix over-render bug in map/mapbuf and with changed flags! that was
    nasty to find!

    SVN revision: 56220

Test Plan:
[Sample Code]
#include <Elementary.h>

EAPI_MAIN int
elm_main(int argc EINA_UNUSED, char **argv EINA_UNUSED)
{
   Evas_Object *win, *bx, *mb, *layout, *icon;
   unsigned int i, j;
   char buf[255];

   elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);

   win = elm_win_util_standard_add("mapbuf", "Mapbuf Example");
   elm_win_autodel_set(win, EINA_TRUE);

   bx = elm_box_add(win);
   evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
   elm_win_resize_object_add(win, bx);
   evas_object_show(bx);

   mb = elm_mapbuf_add(win);
   evas_object_size_hint_weight_set(mb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
   evas_object_size_hint_align_set(mb, EVAS_HINT_FILL, EVAS_HINT_FILL);
   elm_box_pack_end(bx, mb);

   layout = elm_layout_add(win);
   evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
   elm_win_resize_object_add(win, layout);
   snprintf(buf, sizeof(buf), "/home/kimcinoo/Upstream/efl/src/examples/elementary/layout_example.edj");
   elm_layout_file_set(layout, buf, "example/mylayout");
   evas_object_show(layout);

   icon = elm_icon_add(win);
   elm_icon_standard_set(icon, "home");
   evas_object_size_hint_weight_set(icon, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
   evas_object_size_hint_align_set(icon, EVAS_HINT_FILL, EVAS_HINT_FILL);
   evas_object_show(icon);

   elm_object_part_content_set(layout, "example/custom", icon);

   elm_object_content_set(mb, layout);
   evas_object_show(mb);

   elm_mapbuf_enabled_set(mb, EINA_TRUE);

   evas_object_resize(win, 240, 320);
   evas_object_show(win);

   elm_run();

   return 0;
}
ELM_MAIN()

Reviewers: raster, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6915
2018-08-29 16:05:35 +09:00
Wonki Kim 6409cfa41b scroller: refactory a momentum scroll animator
Summary:
this patch refactories a momentum scroll animator logics.

1. animation duration

  animating runs within a one second now.
  and if it needs more time to animate, it decrease intepolation progress by dividing some value.
  current logic makes sense however, it is not easy to read to know how it works.

  this patch modify current logic to calculate distance to move, and time to animate.

2. distance to move

  we can apply simple physics something like mass of pan and friction of scroller itself.
  but this patch apply just geometric seqeunce to calculate distance to go.
  it's more easy to customize behavior of scroller than current sine graph based one.

3. accelerate logic

  scroller sets 'extra_time' to accelerate a scroller for now.
  but this patch modify logic not to use it.
  however it uses current momenutum velocity as a bais of next momentum animating.

@feature

Reviewers: zmike, #reviewers, Hermet

Reviewed By: #reviewers, Hermet

Subscribers: Hermet, cedric, zmike

Tags: #efl, #do_not_merge

Differential Revision: https://phab.enlightenment.org/D6643
2018-08-29 15:58:10 +09:00
Hermet Park 640596e68a elementary main: fix typo
Differential Revision: https://phab.enlightenment.org/D6910
2018-08-27 21:18:37 +02:00
Jaehyun Cho ea1c797963 elementary: Remove multiple class inheritance in eo
Up to now, there is no restriction on using multiple class inheritance
in eo.
This makes some language bindings more complicated if the language does
not support multiple class inheritance. e.g. C#.
To support language bindings in a neat way, multiple class inheritance
in eo is replaced with implementing interfaces.

To remove multiple class inheritance, each part class in elementary
should implement interfaces instead of inheriting from other widget
class because part class in elementary basically inherit from the class
Efl.Ui.Widget_Part.
Differential Revision: https://phab.enlightenment.org/D6904
2018-08-27 21:18:25 +02:00
Marcel Hollerbach 4a808834d0 Revert "efl_ui_focus_manager: do not adjust values on a inactive manager"
Sorry this was a accident

This reverts commit a6ee2061a3.
2018-08-24 16:04:33 +02:00
Mike Blumenkrantz 6277c3436c elm/config: use correct function to return audio mute value
when setting this config value an elm function is used to store the
setting internally, so it's necessary to use the elm getter function
in order to correctly (and accurately) return the same state

resolves test failures in elm_config

Differential Revision: https://phab.enlightenment.org/D6825
2018-08-24 15:50:35 +02:00
Marcel Hollerbach a6ee2061a3 efl_ui_focus_manager: do not adjust values on a inactive manager
Differential Revision: https://phab.enlightenment.org/D6903
2018-08-24 15:48:38 +02:00
Marcel Hollerbach 28423160d6 ecore_cocoa: move MARKUP outside of ecore_cocoa
the elementary MARKUP stuff requires ecore_cocoa to be linked to evas to
find the function. However, ecore_XXXXX things should stay unrelated to
evas in most cases. Thus this was not a good idea and created a circular
dependency, this is fixed now.

Differential Revision: https://phab.enlightenment.org/D6865
2018-08-22 20:39:35 +02:00
Carsten Haitzler e3b6f5a959 efl selection manager - avoid multiple selection get callbacks for req
do one request and get multiple returns if you have multiple windows.
this affected terminology in one proces, multiple windows the sel get
cb is called multiple times from one selection if you cnp between
windows a few times.

@fix
2018-08-22 10:10:42 +09:00
Hermet Park c4124f8b36 efl_ui_image: apply some image options as retained way.
Summary:
load_size will be applied when file is set,
orientation, flip would be applied when starting sizing calc.

These will gurantee applying options whether image is preset or not.

This is a regression bug by ae51c81a686ca47c93eedc99beaf3a84f8a9cb96

Reviewers: #committers, zmike

Reviewed By: #committers, zmike

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6855
2018-08-21 10:38:54 -04:00
Mike Blumenkrantz daaf5ad190 elm/genlist: check for item invalidation after setting item focus on click
Summary:
if the item is deleted during a focus callback then the remainder of this function
must be skipped in order to avoid crashing when attempting to access deallocated
memory

ref T7292

Reviewers: SanghyeonLee

Reviewed By: SanghyeonLee

Subscribers: cedric, #reviewers, #committers

Tags: #efl_widgets

Maniphest Tasks: T7292

Differential Revision: https://phab.enlightenment.org/D6831
2018-08-21 10:26:38 -04:00
Mike Blumenkrantz dcac8b24f1 elm/genlist: unset callbacks flag when destroying view object in unrealize
Summary:
failing to unset this prevents callbacks from being re-added when the item
is next realized, resulting in items which cannot be interacted with

ref T7292

Reviewers: SanghyeonLee

Reviewed By: SanghyeonLee

Subscribers: cedric, #reviewers, #committers

Tags: #efl_widgets

Maniphest Tasks: T7292

Differential Revision: https://phab.enlightenment.org/D6832
2018-08-21 10:26:32 -04:00
Bowon Ryu 522c5250ab efl_ui_tab_bar: implement select key bindings.
Summary:
by key bindings..
now we can select TAB with the Return/Space key.

Test Plan: elementary_test -to efl.ui.tab_pager

Reviewers: Jaehyun_Cho, Hermet

Reviewed By: Jaehyun_Cho

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

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6779
2018-08-21 15:31:49 +09:00
Hermet Park 8312a99a92 ui_spin_button: avoid duplicated calls. 2018-08-21 14:04:58 +09:00
Woochanlee 739da4f736 efl_ui_spin_button: Addded direction feature.
Summary:
The Spin_Button class supports two types(horizontal, vertical).

User can use 'efl_ui_direction()' for spin_button.

@feature

Test Plan: elementary_test-> spin_button sample.

Reviewers: Hermet, Jaehyun_Cho

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6680
2018-08-21 13:52:29 +09:00
Yeongjong Lee 28ee520428 efl_ui_focus_composition: remove unused variable
Summary: adapters variable has not been used since ac4d75a1a.

Reviewers: bu5hm4n, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6872
2018-08-21 13:22:40 +09:00
Stefan Schmidt 9e7d0d03e4 Revert "elm/win: move trigger for "shot" to first pre-render callback"
Summary:
This reverts commit 93228108ef.

The original commit resulted in a hang during the use of the shot engine
in our make doc target. During the doc run we generate screenshots for
the documentation using the shot engine.

It is not a clean revert as other things changed since this got in, but
I verified that the screenshots for the documentation is generated
correctly again. This might leave open the original issue T6929 which
the now reverted commit tried to address.

Fixes T7166

Reviewers: zmike, JackDanielZ, xavi

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7166

Differential Revision: https://phab.enlightenment.org/D6873
2018-08-20 11:00:09 -04:00
Marcel Hollerbach 8da56ac873 efl_ui_composition: remove all children in invalidate
When the element that iherits from composition is invalidated, all items
should be unregistered.

fix T7213

Differential Revision: https://phab.enlightenment.org/D6755
2018-08-20 11:56:19 +02:00
Shinwoo Kim 1c0f878fa6 elm/win: check object class before using it
Summary:
elm_win_focus_get with non Efl.Ui.Win object could return incorrect value.
If an object implements Efl.Ui.Focus.Object.focus { get; } then the return
value of elm_win_focus_get with this object depends upon the object status.

Reviewers: Hermet, YOhoho

Reviewed By: YOhoho

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6868
2018-08-20 16:37:40 +09:00
Wonki Kim 79ec29897f scroller: remove unused ifdef blocks
Summary:
there are unused ifdef blocks and also there is a variable that accessed from nowhere.
this patch removes both of theme.

related with D6567

Reviewers: Hermet, eagleeye, devilhorns

Reviewed By: Hermet

Subscribers: cedric, zmike

Tags: #efl, #do_not_merge

Differential Revision: https://phab.enlightenment.org/D6585
2018-08-20 13:56:46 +09:00
Mike Blumenkrantz 791fc27c40 elm/list: correctly handle ELM_LIST_COMPRESS
according to the docs, this mode means that no content size hints should
be taken into account when calculating size hints for the overall object

fix T7313

Differential Revision: https://phab.enlightenment.org/D6860
2018-08-17 21:55:43 +02:00
Alastair Poole 0f21b1f7aa elm_code: fix crash on backspace and selection delete.
FIx backspace issue and also issue involving the cursor
position and deleting/cutting/backspace of selected text.
Now that we properly move the cursor around when making a
selection, it's important that we place the cursor in a
valid position in the widget following the removal of text.

Previously the cursor always remained in a "safe" position
however now it's crucial to update this position when
necessary.

@fix T7259
Differential Revision: https://phab.enlightenment.org/D6835
2018-08-17 21:44:17 +02:00
Chris Michael ae894a0509 Revert this patch. It was not supposed to land yet as it was awaiting
review

Revert "elementary: Check for valid focus manager before starting do loop"

This reverts commit 364ca1d2b2.
2018-08-17 11:34:30 -04:00
Mike Blumenkrantz 790d4a9a1d elm/box_layout: rename variables
Summary:
the mnw and mnh variables were misleading in this context because they actually
refer to the max width and max height

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: devilhorns, cedric, #reviewers, #committers

Tags: #efl_widgets

Differential Revision: https://phab.enlightenment.org/D6859
2018-08-17 11:30:36 -04:00
Chris Michael 364ca1d2b2 elementary: Check for valid focus manager before starting do loop
Summary:
Apparently there are cases where efl_ui_focus_object_focus_manager_get
can return NULL. In order to trap for this, we can simply modify the
do loop slightly and check for a valid manager before we actually
start looping

Test Case: elementary_test -to "Panel Scrollable" and click Toggle
button

ref T7030

Depends on D6703

Reviewers: bu5hm4n, YOhoho

Subscribers: #reviewers, cedric, #committers, zmike

Tags: #efl_widgets_focus

Maniphest Tasks: T7030

Differential Revision: https://phab.enlightenment.org/D6704
2018-08-17 11:30:10 -04:00
Hermet Park 69894bc476 elementary image: updated doc. 2018-08-17 11:32:11 +09:00
Mike Blumenkrantz db377832f7 elm/code: use evas as parent for evas object creation
Summary:
evas object types require an evas as the parent. this has always been
the case, though it has only begun to (again) be treated as an error
recently

fixes unit test failures

Subscribers: cedric, #reviewers, #committers

Tags: #efl_widgets_code

Differential Revision: https://phab.enlightenment.org/D6852
2018-08-16 20:00:41 +01:00
Derek Foreman 633d16aae7 ecore_evas: Fix elm warnings when building without wayland support
Summary:
efl_ui_win.c only includes private ecore_evas headers when building
for wayland, but wayland canvas creation functions are called even
in non-wayland builds.

Move the "hidden" wayland APIs to the public header so they don't
mess up non-wayland builds.

Reviewers: devilhorns, zmike

Reviewed By: devilhorns, zmike

Subscribers: devilhorns, cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6822
2018-08-16 10:17:23 -04:00
Mike Blumenkrantz 89c92726c4 elm/config: return false when setting audio config if multisense is disabled
Summary:
these operations cannot be completed if the support is not built in, so
return false in order to provide the correct state to the caller

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6839
2018-08-16 10:16:23 -04:00
Alastair Poole 1bdda117a1 elm_code_line: fix potential crash.
Summary:
This can occur and thus malloc will return NULL when line->length is
0. Check for !line->length and return. Very difficult to reproduce, but
I had managed three times, and avoided a crash.

Reviewers: #committers, ajwillia.ms, zmike

Reviewed By: #committers, zmike

Subscribers: cedric, #reviewers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6842
2018-08-16 10:12:35 -04:00
Yeongjong Lee e07b04f88c efl_ui_image: avoid a call to NULL
Summary:
Image object isn't created on constructor anymore. so that it need to check
whether image object exist.

Reviewers: Hermet, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6834
2018-08-16 10:01:47 -04:00
Yeongjong Lee 07692dc640 elm_image: create image object before call elm_image_object_get
Summary:
image object was created in group_add before 868e3308. if you call
elm_image_object_get before file_set, you can get NULL.
this patch avoid that.

Test Plan:
obj = elm_image_add(...);
img = elm_image_object_get(obj);

img should not be NULL.

Reviewers: Hermet, zmike

Reviewed By: zmike

Subscribers: JackDanielZ, cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6828
2018-08-16 10:01:37 -04:00
Mike Blumenkrantz e708c0ae33 elm/list: use while() loop to iterate item list during smart delete
Summary:
using EINA_LIST_FREE here double deletes 2 list items on every iteration
due to recursive list removals, which prevents some items from being
deleted as expected

fix T7266

Reviewers: netstar

Reviewed By: netstar

Subscribers: netstar, cedric, #reviewers, #committers

Tags: #efl_widgets

Maniphest Tasks: T7266

Differential Revision: https://phab.enlightenment.org/D6829
2018-08-15 09:45:06 +01:00
Mike Blumenkrantz 5ca78073b8 elm/win: skip frame updating if csd is not active
Summary:
this avoids extra recalcs and resizes when csd is not active, which has
the side benefit of not breaking the x11 engine's behavior--currently only
an issue because the ecore-evas x11 backend does not have an implementation
of ConfigureNotify event handling which is even remotely correct

these issues will be resolved in future patches

fix T7243
ref T7008

Reviewers: devilhorns, ManMower

Reviewed By: devilhorns, ManMower

Subscribers: ManMower, cedric, #reviewers, #committers

Tags: #efl_display_system

Maniphest Tasks: T7243, T7008

Differential Revision: https://phab.enlightenment.org/D6794
2018-08-14 17:11:53 -04:00
Alastair Poole 706784d7c8 elm_panel: return instead of EINA_SAFETY_ON_FALSE_RETURN
Summary:
As with other checks in ELM return if object is not yet
finalized. This stops lots of console noise.

@fix T7265

Test Plan:
elementary_test: use panel test from console and view the noise
from EINA. Apply then do the same.

Reviewers: #committers, zmike

Reviewed By: #committers, zmike

Subscribers: cedric, #reviewers, zmike

Tags: #efl

Maniphest Tasks: T7265

Differential Revision: https://phab.enlightenment.org/D6826
2018-08-14 15:48:27 -04:00
Chris Michael 6119cc0c65 elementary: Check for valid cursor_rect when (un)setting focus
Summary:
As the cursor_rect for elm_code_widget is not created until the code
widget gets focus, we cannot just assume it is already there when
trying to emit a focus signal. The cursor_rect does not get created
until widget_cursor_update is called.

This fixes an issue where NULL is passed to efl_layout_signal_emit.

To test this, just launch elementary_test and click the Code Editor
test. As soon as you try to click into the Code Editor, this gets
triggered.

ref T7030

Reviewers: netstar, ajwillia.ms

Reviewed By: netstar

Subscribers: #reviewers, cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T7030

Differential Revision: https://phab.enlightenment.org/D6701
2018-08-14 15:45:57 +01:00
Marcel Hollerbach 37308192d9 efl_ui_focus_manager_calc: restore focus correctly if redirect gets NULL
Otherwise we might end up with focus beeing NULL.

Differential Revision: https://phab.enlightenment.org/D6803
2018-08-14 15:00:58 +02:00
Marcel Hollerbach f21cf89a2f efl_ui_focus_manager_calc: fix unregistering the root of a redirect
There is often a tree of elements registered in a manager that are
having all the same redirect element. Unserting the redirect property
just because the node has this redirect element is not helpfull as this
would break basically elm_tests button search. However, if it is the
container itself, then the redirect can be unset, as nothing else can
ever reach again the redirect manager.

ref D6800

Differential Revision: https://phab.enlightenment.org/D6802
2018-08-14 15:00:58 +02:00
Marcel Hollerbach 92bb03d7f5 efl_ui_focus_manager: adjust pop history pop
It now searches for a element if the focus stack is empty.

Differential Revision: https://phab.enlightenment.org/D6801
2018-08-14 15:00:58 +02:00
Xavi Artigas 26bedebc18 elm: bring back elm/uiclock
Summary:
It turns out elm/uiclock (which was removed in 89675c3219) is actually used,
at least by the datetime legacy widget. Removing this widget broke the
datetime_example test.
This commit reverts 89675c3219 and fixes the elm/uiclock part names:
- Part names are prefixed with 'elm.'
- efl_ui_clock.c (which is used for both the new efl and the legacy elm widgets)
  now looks for part names with 'efl.' and 'elm.' prefixes, and without any
  prefix, for compatibility with older themes.

Fixes T6928

Test Plan: the Datetime elementary_test (and all other clock-related tests) now work.

Reviewers: zmike, jsuya, CHAN, devilhorns, Jaehyun_Cho

Reviewed By: zmike, jsuya, CHAN

Subscribers: #reviewers, Jaehyun, Hermet, cedric, #committers

Tags: #efl

Maniphest Tasks: T6928

Differential Revision: https://phab.enlightenment.org/D6577
2018-08-13 07:03:39 -04:00
Mike Blumenkrantz a8421fc0c0 elm/naviframe: implement invalidate method for naviframe items
Summary:
move most of the _item_free() calls to the invalidate method and unset some
delete callbacks on content items to avoid invalid calls during deletion

calling any of this during the object destructor is invalid because the parent
object can no longer be accessed at this time

fix T7236

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: #reviewers, stefan_schmidt, cedric, #committers

Tags: #efl_widgets

Maniphest Tasks: T7236

Differential Revision: https://phab.enlightenment.org/D6759
2018-08-13 15:07:31 +09:00
Yeongjong Lee 7685654d76 elm_map: add EINA_UNUSED to avoid build warning
Test Plan: make

Reviewers: devilhorns, zmike

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6813
2018-08-10 12:49:50 -04:00
Carsten Haitzler 84e7925ab9 elm genlist - remove execsivve calls where we could do less eo lookups
something to help T6580 ... but not that much (0.3% fewer eo calls)
2018-08-09 13:16:40 +09:00
Marcel Hollerbach d3f8ca2902 efl_ui_composition: remove all registered children on unregister
Summary:
ensure that all the children are gone once we unregister the widget
itself. This helps widgets that are not cleaning up theire children /
items on invalidation.

ref T7213.

Reviewers: CHAN, YOhoho, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T7213

Differential Revision: https://phab.enlightenment.org/D6754
2018-08-08 09:39:22 -04:00
Marcel Hollerbach 08b9eeef28 efl_ui_focus_composition: do not call legacy API here
Summary:
calling this on a object that is legacy is not going to work. And will
print a error. This will make new widgets less verbose.

ref T7213
Depends on D6755

Reviewers: YOhoho, zmike, CHAN

Reviewed By: YOhoho

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T7213

Differential Revision: https://phab.enlightenment.org/D6756
2018-08-08 09:39:15 -04:00
Derek Foreman e382bac1a0 wayland: Fix elementary setting window parents at creation time
Summary:
We need to pass the entire pointer, not just 32-bits of it.

Fixes a crash with enlightenment sandbox gadgets where
ecore_wl2_window_alpha_get() is called with an invalid pointer while
trying to display a pop-up.

Reviewers: zmike, devilhorns

Reviewed By: zmike, devilhorns

Subscribers: devilhorns, cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6775
2018-08-08 09:37:30 -04:00
Yeongjong Lee 5f65316713 elm_map: remove unreasonable efl_super call
Summary:
Efl_Ui_Widget which is super of Elm_Map is not implement Efl_Ui_Zoom. to call
efl_super of Elm_Map for Efl_Ui_Zoom method occurs unresolved function error.

Test Plan:
map_example_01

Check that there is no error message.

Reviewers: zmike, Hermet

Reviewed By: Hermet

Subscribers: #reviewers, cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6772
2018-08-08 16:11:02 +09:00
Yeongjong Lee c0ee322aba elm_map: implement zoom_mode_get, zoom_level_get
Test Plan:
map_example_01

Check that +,- button is working and no error message.

Reviewers: zmike, Hermet

Reviewed By: Hermet

Subscribers: #reviewers, cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6771
2018-08-08 16:05:16 +09:00
Mike Blumenkrantz f47c68ce9e efl_ui/image_zoomable: fix internal eina file refcounting
Summary:
this pointer is owned by elm_theme, not the image, so the image refcount
must be increased in order to avoid accidentally closing the file which is
still in use by elm_theme and triggering a crash

this resolves the crash in the `efl_ui_image_zoomable_icon` test

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: #reviewers, cedric, #committers

Tags: #efl_widgets

Differential Revision: https://phab.enlightenment.org/D6774
2018-08-08 15:56:03 +09:00
Hermet Park c4ff2cde25 elementary image: don't calc size using empty ones.
Summary:
Zero-sized image occasionally happens.
That occurs insane img/clipper region.

bj size => (w, h) then resize => (0, 0)
file_set(xx.jpg) then file_set (NULL)

Because of this, region could be flickered during prev/cur preloading images.

@fix

Reviewers: #committers, zmike

Subscribers: #reviewers, cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6725
2018-08-08 15:52:37 +09:00
Bowon Ryu 49d64e1f1a efl_ui_tab_pager: clean up and remove unnecessary signals.
Summary:
TAB of efl_ui_tab_bar is no longer widget_item.
TAB is now layout,
so, do not need below signals.
"efl,text,visible"
"efl,text,hidden"
"efl,icon,visible"
"efl,icon,hidden"

Test Plan: elementary_test -to efl.ui.tab_pager

Reviewers: Jaehyun_Cho, Hermet

Reviewed By: Jaehyun_Cho

Subscribers: #reviewers, cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6770
2018-08-08 15:20:42 +09:00
Marcel Hollerbach f36880088b elm_genlist: fix item registration by correct realization
Summary:
there was a case when a block could be realized while a item that is
realized was brought from one block to the this new one. The block now
is simply realized using api instead of just setting the flag, this sets
the correct focus registrations. While fixing this the error of double
regiration of items came up, this is also fixed by unregistration and
reregistration in the correct block.

fix T7247

Reviewers: zmike, SanghyeonLee, YOhoho

Reviewed By: zmike

Subscribers: Hermet, cedric, #committers

Tags: #efl

Maniphest Tasks: T7247

Differential Revision: https://phab.enlightenment.org/D6737
2018-08-07 13:25:34 +09:00
Marcel Hollerbach d922587764 elm_genlist: remove unused function
Summary:
this got replaced by the none composition implementation and is not
required anymore.

Depends on D6737

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6752
2018-08-06 16:38:58 +09:00
Marcel Hollerbach d989e7eab7 elm_genlist: fix ghost objects from the genlist cache
Summary:
the cache simply moved the objects to -9999 -9999 while leaving them
visible and focusable. Hiding them does not work since edje makes it
visible all the time again. Making them unfocusable fixes this.
Depends on D6752

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6753
2018-08-06 16:34:05 +09:00
Alastair Poole b0d1ab4ad9 elm_code_widget: match bg color with widget color.
Test Plan: elm_test -> "Code Editor" -> Consistent widget colours.

Reviewers: #committers, ajwillia.ms, zmike

Reviewed By: #committers, ajwillia.ms

Subscribers: cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6719
2018-08-05 21:15:01 +01:00
Mike Blumenkrantz ab1fd96363 elm/genlist: use correct type of list when iterating
itb-items is Eina_List, not Eina_Inlist. this crashes due to wrong type
use

ref D6720
fix T7246

Differential Revision: https://phab.enlightenment.org/D6736
2018-08-02 23:04:50 +02:00
Marcel Hollerbach 0e462d5f5a genlist: rework the focus model for performance
Summary:
the focus model before was more meant for simplicity and not for
performance, this now is more made for performance.

The performance boost is achived by not using composition anymore,
but rather register realized items by hand. This keeps the amount
of items bound to the size of the viewport.

Additionally item realization that is followed by unrealization
immediately is not resulting in focus calls.

This solves the performance issue from T6580 in regards of focus.

perf results after this:
http://www.enlightenment.org/ss/e-5b61b50657f3c3.82619729.png

Reviewers: ManMower, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6720
2018-08-02 09:42:14 -04:00
Hermet Park 868e3308b1 elementary image: apply lazy calculation and guarantee retained method.
Summary:
Image couldn't gurantee retained concept status.
This patch change to setting up image object on the request time,
recovering image status, removing unencessary jobs.

Reviewers: #committers

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6726
2018-08-02 09:25:27 -04:00
Hermet Park 24f7285c39 elementary bg: fix to guarantee compatibility.
Summary: This is additional fix to b9b209f60f.

Reviewers: #committers, zmike

Reviewed By: #committers, zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6727
2018-08-02 09:08:43 -04:00
Mike Blumenkrantz 1a75537ab8 elm/genlist: remove conditional in _calc_job for verifying show_item code
I think at some point in the past this was necessary to avoid weird show
mechanics, but now things have changed and it's best to always attempt to
scroll and let the scroller internals figure things out

this resolves the case where attempting to scroll to an item during a genlist's
calc (ie. the item was not present in a full layout calc) would fail to scroll
to the item if the scroll method was TOP and the item was too close to the
bottom of the list

fix T6368
@fix

Differential Revision: https://phab.enlightenment.org/D6466
2018-08-02 13:29:35 +02:00
Felipe Magno de Almeida 71d339579c elementary: efl_ui_view_list cleanup
Summary:
private data cleanup
removed callbacks

Reviewers: felipealmeida, SanghyeonLee

Reviewed By: felipealmeida

Subscribers: Hermet

Differential Revision: https://phab.enlightenment.org/D6707
2018-08-01 19:52:51 -03:00
Felipe Magno de Almeida 4fb9205a94 Efl.Ui.Layout.Factory: added missing factory_model_connect
Summary:
connect factory to edje part name
when create a new layout connect a factory to it
change example to use the factory_model_connect

Reviewers: felipealmeida

Differential Revision: https://phab.enlightenment.org/D6667
2018-08-01 19:37:37 -03:00
Mike Blumenkrantz b9b209f60f elm/bg: call color_set up the class chain internally
Summary:
this ensures that the color_set call is propagated correctly, resulting
eventually in a call to the smart clipped class method for color_set which
will change the opacity of the edje object in addition to the bg widget's
internal rect object

this seems to have been a regression created during the move to the interfaces
version of the bg widget

fix T7232

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers

Tags: #efl_widgets

Maniphest Tasks: T7232

Differential Revision: https://phab.enlightenment.org/D6716
2018-07-31 18:49:57 -04:00
Chris Michael 2f9a65844e elementary: Check for valid object before calling smart calculate
Summary:
Small patch fixes an issue where evas_object_smart_calculate was being
called with a NULL box.

ref T7030
Depends on D6704

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T7030

Differential Revision: https://phab.enlightenment.org/D6710
2018-07-31 17:24:10 -04:00
Marcel Hollerbach 3821b1409e elm_multibuttonentry: do not define multiple times the same structs
Summary: There is no reason to typedef Elm_Multibuttonentry multiple times, the header file can be included, there is no cyclic dependency.

Reviewers: CHAN, zmike, #committers

Reviewed By: zmike, #committers

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6705
2018-07-31 11:26:17 -04:00
Alastair Poole 9342c1a3f4 efl_selection: reintroduce missing ELM_CNP_EVENT_SELECTION_CHANGED symbol.
Summary:
During the 1.21 development cycle the symbol ELM_CNP_EVENT_SELECTION_CHANGED was lost.

The commit which introduced this:  e88bbaa1e3

This patch re-introduced the symbol and expected behaviour.

Reviewers: #committers, zmike, bu5hm4n, herb

Reviewed By: #committers, zmike

Subscribers: herb, ManMower, segfaultxavi, stefan_schmidt, cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6689
2018-07-30 11:42:28 -04: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
Alastair Poole ad379ce04f elm_code_widget: fix keyboard and scrolling with active selection.
Summary:
This adds some attributes to the selectiont type in elm_code.
Including the type (whether it is mouse or keyboard) and also whether
a selection is in progress. Thus we can reliably select around the
file and also move/scroll when there is an active selection.

Test Plan:
Drag and select text with mouse. Also the same with keyboard (hold shift and select).
Leave selection active and scroll around the file. The selection should remain and
full movement is possible while retaining the active selection. This could really
be refactored for a next major release.

Reviewers: #committers, ajwillia.ms, cedric

Reviewed By: ajwillia.ms

Subscribers: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6676
2018-07-27 17:08:44 +01:00
Mike Blumenkrantz 69fdec545e elm: handle all failure cases with error messages in init
Summary:
fix T7021
Depends on D6678

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7021

Differential Revision: https://phab.enlightenment.org/D6679
2018-07-26 21:13:46 +09:00
Chris Michael 124703826f elementary: Check for valid resize object
Summary:
Fix an issue where elm_slider was passing NULL to eo functions due to
wd->resize_obj being NULL. Discovered via Enlightenment mixer popup
dialog

ref T7030
Depends on D6639

Reviewers: zmike

Reviewed By: zmike

Subscribers: Hermet, bu5hm4n, cedric, #committers

Tags: #efl

Maniphest Tasks: T7030

Differential Revision: https://phab.enlightenment.org/D6640
2018-07-25 14:57:52 -04:00
Chris Michael be176bd307 elementary: Check for valid resize object before calling
Summary:
efl_layout_signal_emit

This patch fixes an issue where NULL was passed to
efl_layout_signal_emit due to wd->resize_obj being NULL. This was
discovered in Enlightenment by clicking on the mixer module and trying
to close the popup window

ref T7030
Depends on D6638

Reviewers: zmike

Reviewed By: zmike

Subscribers: Hermet, cedric, #committers

Tags: #efl

Maniphest Tasks: T7030

Differential Revision: https://phab.enlightenment.org/D6639
2018-07-25 14:57:41 -04:00
Chris Michael 843b5177df elementary: Check for valid frame object
Summary:
Make sure we have a valid frame object before calling edje & evas
functions on it. This patch fixes an issue where NULL is being passed
to eo functions

ref T7030

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7030

Differential Revision: https://phab.enlightenment.org/D6637
2018-07-25 14:57:14 -04:00
Mike Blumenkrantz d0f48312c2 elm/list: remove max size setting on item contents
Summary:
this was added in a giant block commit in 2009 without direct explanation;
it doesn't seem to make functional sense in the original patch and it
definitely doesn't make sense now

this greatly improves list performance by causing fewer edje recalcs on
list items resulting from list fighting with item content objects over
max size hint

fix T7176

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers

Tags: #efl_widgets

Maniphest Tasks: T7176

Differential Revision: https://phab.enlightenment.org/D6669
2018-07-24 11:05:13 -04:00
Mike Blumenkrantz 9ff3b6124e efl_ui_win: reset first_draw flag if window is resized while hidden
Summary:
this indicates that the window's internal object sizes will have changed,
requiring a full window recalc. if the window is not visible, defer all
recalcs until pre-render to avoid unnecessary calcs and use the same
codepath as the initial window show

ref T7172
Depends on D6646

Reviewers: kimcinoo, eagleeye, ManMower

Reviewed By: ManMower

Subscribers: cedric, #committers

Tags: #efl_widgets

Maniphest Tasks: T7172

Differential Revision: https://phab.enlightenment.org/D6647
2018-07-24 09:18:53 -05:00
Mike Blumenkrantz 6fa9fd789e efl_ui_win: show internal objects again on show if first_draw flag is set
Summary:
in this case, a window is being shown again after being hidden, so it's safe
to immediately show these objects as the size will not have changed since
they were last visible

fix T7172
ref fa02f16a3f

Reviewers: kimcinoo, eagleeye

Reviewed By: kimcinoo

Subscribers: cedric, #committers

Tags: #efl_widgets

Maniphest Tasks: T7172

Differential Revision: https://phab.enlightenment.org/D6646
2018-07-24 09:18:50 -05:00
Alastair Poole ab7d2ebb55 elm_code_widget: resize cursor at time of font change.
Summary:
This ensures the cursor changes to meet the font size change
when a font change is made in an Elm_Code_Widget.

@fix T6470

Test Plan:
Run ecrire or Edi. Open a text file and change the font settings.
Cursor should resize with the font when it is changed.

Reviewers: #committers, ajwillia.ms

Reviewed By: #committers, ajwillia.ms

Subscribers: cedric, zmike

Tags: #efl

Maniphest Tasks: T6470

Differential Revision: https://phab.enlightenment.org/D6596
2018-07-24 10:10:26 +01:00
Alastair Poole 08d23ea582 elm_code_widget: fix select and drag (scrolling).
Summary:
Currently when selecting with the mouse and scrollling,
the selection will only continue in one direction. With
this patch, the selection can move freely between "pages".

Test Plan: select text and drag up and down in elm_code widget (Edi).

Reviewers: #committers, ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6632
2018-07-24 10:04:28 +01:00
Alastair Poole 4924fc73ee macos: allow text to be selected.
Summary: This gives us basic clipboard handling for MacOS after the refactor was done.

Test Plan:
Open an entry test. select text with mouse or keyboard.
Text can be cut. Text can be copied. Text can be pasted.

Reviewers: ajwillia.ms, zmike, jayji

Reviewed By: zmike

Subscribers: jayji, herdsman, cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6599
2018-07-23 15:48:29 -04:00
Woochan Lee 62a09f69a1 Efl.Ui.Calendar, elm_calendar: Code fixed to support auto repeat feature.
Summary:
1.  Why there is a edje signal callback in elm_calendar? and do we need to maintain?

 We used edje part like a button before (3 years ago?), So there is a callbacks to get edje signal.

 Im pretty sure it is not use anymore. but we need to maintain backward compatibility.

2. elm_calendar using using repeat feature in efl_ui_button for it. why did i change it to manual timer?

 We opend elm_calendar_interval_set() APIs. Support this API the manual timer is proper then using button's feature.

3. why scroll freeze? and why only elm_calendar does it?

 When the user long press calendar button area and then move the scroll will be activated. it can prevent that weird action.

 efl_ui_calendar using button's feature. i not sure scroll freeze is deserve to attached in button side as a feature or not.

 So i will consider more for this case.

4. Why efl_ui_calendar doesn't have year buttons (double spinner case)

 After interface work, we don't accept style change in the runtime. so that featrue will be supported as API.

 The year_button_set/get() property should be added. but i dont know is it really needed...

 If the app developer want use year inc/dec button for efl_ui_calendar. they can inherit the class and make it easily.

Test Plan:
View, Action, API test in the elementary-test sample App.

Ps. The issue of the calendar2 crash when it closed. It's not relative with this commit. its focus. i will look around.

Reviewers: Hermet, zmike, ManMower, segfaultxavi, devilhorns

Reviewed By: Hermet

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6626
2018-07-23 15:49:10 +09:00
Andy Williams 3ca3f865fd elm_code: (cherry-pick) Fix cusor pos after newline when indenting with tabs
@fix
2018-07-22 17:03:44 +01:00
Andy Williams 1485cf9df5 elm_code: (cherry-pick) Support indentation styles that are purely tab based
read: Allow non-EFL style indentation.
This is off by default but is switched on if you turn 'tabs insert spaces' off
2018-07-22 17:02:23 +01:00
Hermet Park 1297e81e81 elementary list: add a todo comment. 2018-07-19 17:04:42 +09:00
Mike Blumenkrantz 5e64ddec31 elm/list: block recursive recalc loops
Summary:
this size hints callback is triggered by both list objects and list
item objects, meaning that setting size hints on the item objects during
recalc will trigger a recursive recalc, potentially infinitely

this blocks recursive recalcs unless triggered by size hint changes
from a main list object, since those will eventually resolve themselves

fix T7121

Reviewers: devilhorns, Hermet

Reviewed By: Hermet

Subscribers: netstar, DaveMDS, cedric, #committers

Tags: #efl_widgets

Maniphest Tasks: T7121

Differential Revision: https://phab.enlightenment.org/D6572
2018-07-19 17:01:05 +09:00
Jaehyun Cho 2916cfd86b efl_ui_layout_object: Fix not to use background/shadow part interface in legacy
Summary:
"background" and "shadow" part interface was designed to be used in efl
ui interface only.
Therefore, "background" and "shadow" part interface is not used in
legacy.

Test Plan:
Calls elm_object_part_content_set(layout, "background", content); for
legacy layout.

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6595
2018-07-18 12:10:17 +09:00
Yeongjong Lee a61786bd0e elm_spinner: Do not focus to text button on non-editable mode
Summary:
text button don't need to be focused if spinner is non-editable mode.

ref T6798

Test Plan:
1. elementary_test -to spinner
2. Focus second spinner
3. move focus using key.
4. turn on access mode and test 1-3 again.

Reviewers: CHAN

Reviewed By: CHAN

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T6798

Differential Revision: https://phab.enlightenment.org/D6581
2018-07-16 06:09:29 -04:00
Carsten Haitzler a475b18961 efl ui dnd - further fixes on drop list data key handling
the efl ui dnd code didn't reset the drop list key to null (deleting
it) once it had freed the list of frop items. this also fixes another
issue in T7113 which causes crashes on exit.
2018-07-16 17:07:02 +09:00
Carsten Haitzler 5e58e58d60 efl selection manager + elm dnd test fix with bad string handling
so there are 2 problems behind T7113. first is a problem in the efl
selection manager being "sloppy" with selection data. it's doing a
strlen on the data but it's not a normal c string. it's a blob of
binary data + length value. this fixes that "sloppiness" by using the
len field.

there is also another bug in the dnd test code that again has to do
with "sloppy" handling of data buffers and assuming nul byte
termination and not using the len field properly.

this fixes T7113.
2018-07-16 16:31:53 +09:00
Daniel Hirt e9925e609f Selection manager: properly clean in drop_target_del
Summary:
The last lines in _efl_selection_manager_drop_target_del were skipped
when `!pd->drop_list` was met. These lines clear the selection event
handlers. Thus, events kept firing and causing erratic behavior.

Fixes T7130

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T7130

Differential Revision: https://phab.enlightenment.org/D6579
2018-07-13 09:24:00 +03:00
Marcel Hollerbach 92820dbb88 elm_fileselector: move to focus compostition
Summary:
elm_fileselector was using efl_ui_widget_state_apply to call for internal chain update.
This internal chain update was relying on efl_ui_focus_object_manager_get, which
results in a wrong value at this time, since the value is still the old one and not the
current one. (This behaviour will be updated after the release). Focus composition
solves this issue by not relying on the properties of efl.ui.focus_object, but rather
take the values from the configuration in the state_apply call.

fix T6147
fix T7105

Reviewers: zmike, stefan_schmidt, segfaultxavi, devilhorns, herdsman

Reviewed By: zmike

Subscribers: herdsman, cedric, #committers

Tags: #efl

Maniphest Tasks: T7105, T6147

Differential Revision: https://phab.enlightenment.org/D6552
2018-07-12 09:33:38 -04:00
Prasoon Singh 9c9fa4d401 elm_spinner: Text button and entry both gets hidden when navigated through arrow keys.
Summary:
Summary
When focus rect move from inc/dec button using keyboard arrow keys, entry show callback is called and focus is set on entry and then text button is hidden. Hiding focus button triggers focus cycle to revert focus on entry, due to which entry gets unfocused callback which subsequently hides entry. So, entry and text button both goes to hidden state. To fix this setting focus on entry after text button is hidden.
Signed-Off By: Prasoon Singh<prasoonsingh16@gmail.com>

Test Plan
Move focus rect from inc/dec button to text button, and observe both text button and entry gets
invisible. Expected behavior is entry should become active.

Test Plan:
Move focus rect from inc/dec button to text button, and obesrve both text button and entry gets
invivible. Expected behaviour is entry should become active.

Reviewers: cedric, CHAN, shilpasingh, zmike

Reviewed By: shilpasingh, zmike

Subscribers: zmike, #committers, govi, rajeshps, jpeg

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5153
2018-07-12 09:19:48 -04:00
Marcel Hollerbach a62420ce36 efl_ui_focus_manager_calc: do not error when the configuraiton is equal
Summary:
Before this was erroring. However, this error was not reporting a bad
situation, thus there is no need to error. This patch fixes errors on
the Popup test when scrollable is set to 1.

Reviewers: devilhorns, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6560
2018-07-12 16:15:59 +09:00
Mike Blumenkrantz 4951c8b1e6 elm/win: don't force opaque bg if alpha is set
Summary:
alpha prevents an opaque bg, so ensure that this is being correctly
detected

worth noting here is that the eo api for win calls through _elm_win_standard_init()
during finalize which ensures that need_bg_solid is set; the legacy api
does not call this during "normal" construction

fix T7129
Depends on D6568

Reviewers: devilhorns

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7129

Differential Revision: https://phab.enlightenment.org/D6569
2018-07-11 15:50:23 -04:00
Mike Blumenkrantz 0f4bbb7df6 elm/win: correctly track and set x11 shaped state
Summary:
when applying alpha in a non-composited environment, shaped should be
set. when removing alpha in a non-composited environment, shaped should
be unset if it has not previously been explicitly set

@fix

Reviewers: devilhorns

Subscribers: cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6568
2018-07-11 15:50:09 -04:00
Hermet Park d5db69012e ui scroll_manager: update doc. 2018-07-10 11:23:18 +09:00
Daniel Hirt 0bc002cf4a Ui.Scroll_Manager: restrict to Efl.Ui.Pan type for 'pan' property
Summary:
The implementation calls efl_ui_pan_xxx on what was assumed to be any
Efl.Canvas.Object. This changes the type to be Efl.Ui.Pan.

Also, reordered headers due to the introduced dependency.

Reviewers: devilhorns, Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6536
2018-07-10 11:17:29 +09:00
Mike Blumenkrantz 7a538cbc4a elm/ctxpopup: check for content object before removing callbacks during del
Summary: ref T7030

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7030

Differential Revision: https://phab.enlightenment.org/D6541
2018-07-09 16:53:24 -04:00
Marcel Hollerbach 14f10bfd64 elm_focus_legacy: remove wrong EINA_UNUSED
Summary: Depends on D6532

Reviewers: devilhorns, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6533
2018-07-09 16:39:37 -04:00
Marcel Hollerbach df5c47a9eb elm_focus_legacy: check if top is really a window
Summary:
if not, things are going to fall apart, as manager_top then can be NULL
or invalid. Top has to be a window element, if this is not the case,
then the widget tree of the given widget is dangling somewhere in the
void. Calculating the next object in there or even the active manager
will result in errors, since the active manager is not really the active
manager, but rather just a manager object somewhere in a danging widget
subtree.

Moving the focus into such a dangling widgettree might result in a stuck
focus rect on this object, since the DFS of the focus manager
implementation cannot backtrack anymore into the widgets that are still
part of the widget graph.

Depends on D6531

Reviewers: devilhorns, segfaultxavi, zmike

Reviewed By: segfaultxavi

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6532
2018-07-09 16:39:35 -04:00
Marcel Hollerbach fdc4925bf5 elm_focus_legacy: fix focus moving for legacy
Summary:
elm_object_focus_next was not working correctly for objects where obj is
not the focused object.

fix T5940

Reviewers: devilhorns, segfaultxavi, zmike, stefan_schmidt

Reviewed By: segfaultxavi

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T5940

Differential Revision: https://phab.enlightenment.org/D6531
2018-07-09 16:39:30 -04:00
Xavi Artigas ee8d06c806 elementary: Avoid passing NULL in some win focus methods
Summary:
This one is rather harmless, as the NULL returned by this fuction is handled
correctly in all places, but this commit removes the runtime warning.

ref T7030

Test Plan: After this commit the warning disappears. Got the warning with win_example.

Reviewers: zmike, bu5hm4n, devilhorns

Reviewed By: devilhorns

Subscribers: netstar, cedric, #committers

Tags: #efl

Maniphest Tasks: T7030

Differential Revision: https://phab.enlightenment.org/D6538
2018-07-09 13:32:58 -04:00
Alastair Poole d0840ac793 popup: fix popup sizing when scroll enabled.
Summary:
Force immediate calculate on main_layout after sizing hints set.

@fix T6886

Test Plan: Elementary_test: popup -> select scrollable -> use popup examples.

Reviewers: #committers, zmike, stephenmhouston, bu5hm4n, devilhorns

Reviewed By: #committers, zmike, stephenmhouston

Subscribers: cedric

Tags: #efl

Maniphest Tasks: T6886

Differential Revision: https://phab.enlightenment.org/D6509
2018-07-06 11:09:04 -05:00
Derek Foreman 2452820e59 selection_manager: Silence silly ERR messages
Summary: These should be DBG, they're not errors.

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6526
2018-07-06 11:08:00 -04:00
Derek Foreman c529418580 selection_manager: Remove unused variable
Summary:
gcc somehow didn't notice this until an unrelated use of the variable
later was removed.  Now it's a warning.
Depends on D6523

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6524
2018-07-06 10:16:50 -04:00
Derek Foreman 0fe553cf06 ecore_wl2: Remove ecore_wl2_display_window_find
Summary:
This is now totally trivial and needs not exist.
Depends on D6522

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6523
2018-07-06 10:16:36 -04:00
Derek Foreman 78f27a3eff ecore_wl2: Replace window ids with pointers
Summary:
There's no benefit to generating ids instead of just using the
Ecore_Wl2_Window pointer in events.

This has the added benefit of working around a really nasty hash collision
bug when multiple ecore_evas engines are used at once.

ref T7053
ref T6222

@beta_break
Depends on D6521

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T7053, T6222

Differential Revision: https://phab.enlightenment.org/D6522
2018-07-06 10:16:21 -04:00
Hermet Park bd3298dead elementary textpath: code refactoring.
Don't twist code unnecessarily.
logically same, round() is enough.
Differential Revision: https://phab.enlightenment.org/D6501
2018-07-05 23:01:00 +02:00
Marcel Hollerbach 7a8ff655c8 elm_popup: ensure focus is emitted on this object
Summary:
This mirrors the focus property from the notify to the one from popup.

This is needed to establish legacy behaviour, as earlier popup was able to get focus.

ref T6707
Depends on D6510

Reviewers: zmike, devilhorns

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6707

Differential Revision: https://phab.enlightenment.org/D6511
2018-07-05 15:09:21 -04:00
Marcel Hollerbach 11147284fe efl_ui_focus_manager_root_focus: mirror the focus properties correctly
Summary:
this object takes a internal dummy object, and thus the properties
should be mirrored to the real root.

The focus property on the root of the manager is required that the outer world really sees that the focus is on the root or not.

Depends on D6506

Reviewers: zmike, devilhorns

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6510
2018-07-05 15:09:18 -04:00
Chris Michael ba1ab47294 elementary: Add missing EINA_UNUSED for unused function parameter 2018-07-04 16:51:21 -04:00
Mike Blumenkrantz 553fd7c163 efl/selection_manager: fix some invalid memory reads
Summary:
these selections are data with specified lengths, not strings
Depends on D6483

Reviewers: devilhorns, bu5hm4n

Subscribers: bu5hm4n, netstar, cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6484
2018-07-03 12:39:33 -04:00
Mike Blumenkrantz fff4d1ba97 efl/selection_manager: make selection manager a child of the app
Summary:
a selection manager is application-wide, not per-window. creating separate
managers for each window duplicates all callbacks for the window's display
server, guaranteeing broken behavior at any time when more than one window
exists

fix T6937

Reviewers: bu5hm4n, devilhorns

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6937

Differential Revision: https://phab.enlightenment.org/D6483
2018-07-03 12:39:26 -04:00
Marcel Hollerbach 9c6175b3d6 efl_ui_focus_layer: do not call on NULL objects
This fixes the following backtrace

	#5  0x00007ffff4ee87d0 in efl_ui_focus_manager_root_get (obj=0x0) at lib/elementary/efl_ui_focus_manager.eo.c:17
	#6  0x00007ffff4ef50cb in _efl_ui_focus_layer_enable_set (obj=0x40000004adfe, pd=0x12fde40, v=0 '\000') at lib/elementary/efl_ui_focus_layer.c:127
	#7  0x00007ffff4ef52dd in efl_ui_focus_layer_enable_set (obj=0x40000004adfe, v=1 '\001') at lib/elementary/efl_ui_focus_layer.eo.c:4
	#8  0x00007ffff4ef4df0 in _efl_ui_focus_layer_efl_gfx_entity_visible_set (obj=0x40000004adfe, pd=0x12fde40, v=1 '\001') at lib/elementary/efl_ui_focus_layer.c:35
	#9  0x00007ffff0f366a3 in efl_gfx_entity_visible_set (obj=0x40000004adfe, v=1 '\001') at ../src/lib/efl/interfaces/efl_gfx_entity.eo.c:15
	#10 0x00007ffff5d832bb in evas_object_show (eo_obj=0x40000004adfe) at lib/evas/canvas/evas_object_main.c:1917
	#11 0x00007fffcc365c74 in _bar_icon_preview_show (data=0xfaa7e0) at ../src/modules/luncher/bar.c:906
	#12 0x00007ffff6d4305a in _ecore_call_task_cb (func=0x7fffcc36549c <_bar_icon_preview_show>, data=0xfaa7e0) at lib/ecore/ecore_private.h:442
	#13 0x00007ffff6d434d2 in _ecore_timer_legacy_tick (data=0x12ca950, event=0x7ffffffc57c0) at lib/ecore/ecore_timer.c:160
	#14 0x00007ffff0d06e90 in _event_callback_call (obj_id=0x4000001f25b2, pd=0x923820, desc=0x7ffff6f673e0 <_EFL_LOOP_TIMER_EVENT_TICK>, event_info=0x0, legacy_compare=0 '\000') at lib/eo/eo_base_class.c:1671
	#15 0x00007ffff0d07162 in _efl_object_event_callback_call (obj_id=0x4000001f25b2, pd=0x923820, desc=0x7ffff6f673e0 <_EFL_LOOP_TIMER_EVENT_TICK>, event_info=0x0) at lib/eo/eo_base_class.c:1755
	#16 0x00007ffff0d07208 in efl_event_callback_call (obj=0x4000001f25b2, desc=0x7ffff6f673e0 <_EFL_LOOP_TIMER_EVENT_TICK>, event_info=0x0) at lib/eo/eo_base_class.c:1758
	#17 0x00007ffff6d4478e in _efl_loop_timer_expired_call (obj=0x4000000003dc, pd=0x890bf0, when=333436.894054887) at lib/ecore/ecore_timer.c:634
	#18 0x00007ffff6d445bd in _efl_loop_timer_expired_timers_call (obj=0x4000000003dc, pd=0x890bf0, when=333436.894054887) at lib/ecore/ecore_timer.c:587
	#19 0x00007ffff6d0b423 in _ecore_main_loop_iterate_internal (obj=0x4000000003dc, pd=0x890bf0, once_only=0) at lib/ecore/ecore_main.c:2317
	#20 0x00007ffff6d08e66 in _ecore_main_loop_begin (obj=0x4000000003dc, pd=0x890bf0) at lib/ecore/ecore_main.c:1175
	#21 0x00007ffff6d11757 in _efl_loop_begin (obj=0x4000000003dc, pd=0x890bf0) at lib/ecore/efl_loop.c:83
	#22 0x00007ffff6d13e6e in efl_loop_begin (obj=0x4000000003dc) at lib/ecore/efl_loop.eo.c:28
	#23 0x00007ffff6d08fe0 in ecore_main_loop_begin () at lib/ecore/ecore_main.c:1248
	#24 0x000000000054817c in main (argc=2, argv=0x7fffffffdc78) at ../src/bin/e_main.c:1090

fix T7034.

Differential Revision: https://phab.enlightenment.org/D6492
2018-07-02 18:21:15 +02:00
Marcel Hollerbach b28bd3ac0a elm_toolbar: handle the cleanup in the invalidate call
there is actaully no need to add the event, we can cleanup the pointer
in the invalidate call. Further more, the event was executed before the
method, thus checks against more_item failed because that was already
NULL. The result have been error messages, this fixes the error.

Differential Revision: https://phab.enlightenment.org/D6496
2018-07-02 18:20:09 +02:00
Marcel Hollerbach c14ea532eb elm_toolbar: fix _item_visiblity
'more' should indicate when a more item is needed, this is needed if one
item is set to visibility false, thus checking this here is required.

 #FocusBug

fix T6806

Differential Revision: https://phab.enlightenment.org/D6495
2018-07-02 18:20:09 +02:00
Marcel Hollerbach 16410aa1cf efl_ui_bg: set scale manually to hand by hand
according to 09d3d5b85a elm scale should
be ignored. However, setting no_scale breaks efl_ui_bg as no_scale
disables scale types, which are required to work.

fix T7080

Differential Revision: https://phab.enlightenment.org/D6494
2018-07-02 18:17:20 +02:00
Marcel Hollerbach a6dea4007e efl_ui_image: apply the whole sizing eval
orientation no_scale etc. can have impact on the min max calculation.
Thus that should be called on every property set.

ref T7080

Differential Revision: https://phab.enlightenment.org/D6493
2018-07-02 18:17:20 +02:00
Marcel Hollerbach 9117cdbd74 efl_ui_focus_graph: improve results based on lvls
This improves the results from the graph calculations.
Everything is documented in the comments.

The genlist of focus 6 is placed in a way that the button
at the top is not in reach, before we only had lvl1 and lvl2
(as described in the code comment), thus the button was only
reachable via right not via top. lvl3 makes it accessable
via top AND right.

fix T7098

Differential Revision: https://phab.enlightenment.org/D6491
2018-07-02 18:17:20 +02:00
Xavi Artigas 6d6f943acd elementary: fix buffer overflow in efl/calendar widget
I missed this one in the previous part name refactor, where the efl
namespace was added.
Differential Revision: https://phab.enlightenment.org/D6498
2018-07-02 15:55:50 +02:00
Marcel Hollerbach add0611acc efl_ui_focus_parent_provider_gen: provide results for adapters
Summary:
a adapter is used whenno real widget is created during realization, when
a adapter is used, the parent cannot be fetched via
elm_widget_parent_get, there we need efl_parent_get

Reviewers: ManMower, devilhorns, stephenmhouston, zmike, Hermet

Reviewed By: Hermet

Subscribers: Hermet, cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6339
2018-07-02 20:14:17 +09:00
Xavi Artigas 039818aec2 default theme: fix part names in elm/clock
Summary: Ref T6965

Reviewers: devilhorns, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T6965

Differential Revision: https://phab.enlightenment.org/D6452
2018-06-29 11:49:19 -04:00
Marcel Hollerbach 1730d95896 efl_ui_focus_manager_calc: only perform operation if really required
Summary:
_manager_in_chain_set is not needed to be called if the focus property
is already correct. If a manager is moved out of the redirect property,
then the focus is dropped completly

Reviewers: ManMower, devilhorns, zmike, stephenmhouston

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6338
2018-06-29 11:36:30 -04:00
Xavi Artigas d2e631586c default theme: fix part names in efl/uiclock
Summary:
Ref T6965
Depends on D6450

Reviewers: devilhorns, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T6965

Differential Revision: https://phab.enlightenment.org/D6451
2018-06-29 11:34:57 -04:00
Xavi Artigas 89675c3219 default theme: remove unused elm/uiclock
Summary:
Legacy widget is elm/clock, and the new one is efl/uiclock.
There does not exist a legacy elm/uiclock.
This also reverts commit 20404d79d4
(elm_datetime, efl_ui_clock : Add check 'legacy widget' for layout signal emission)
Since there is no need to check for legacy versions of uiclock.

Ref T6965

Reviewers: devilhorns, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T6965

Differential Revision: https://phab.enlightenment.org/D6450
2018-06-29 11:34:36 -04:00
Marcel Hollerbach 38656301b6 elm_genlist: prepare items before realising them
Summary: Depends on D6339

Reviewers: ManMower, devilhorns, zmike, stephenmhouston

Reviewed By: zmike

Subscribers: Hermet, cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6340
2018-06-29 11:33:18 -04:00
Xavi Artigas f115d878a0 default theme: fix part names in efl/calendar
Summary:
Ref T6967
Depends on D6453

Reviewers: zmike, devilhorns

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6967

Differential Revision: https://phab.enlightenment.org/D6454
2018-06-29 11:32:54 -04:00
Xavi Artigas ce9f568cc9 default theme: fix part names in elm/calendar
Summary: Ref T6967

Reviewers: zmike, devilhorns

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6967

Differential Revision: https://phab.enlightenment.org/D6453
2018-06-29 11:32:03 -04:00
Marcel Hollerbach 2137ce7e1e efl_ui_focus_layer: elm_widget_top_get considered harmfull
Summary:
You think elm_widget_top_get returns a window object ? Oh no! For the
case that the widget tree splits, and the widget_parent gets NULL of
some widget in the chain, elm_widget_top_get returns where the NULL
reference is placed.

For the case of elm_notify this is somehow intended, as the notify does
not have a parent when the parent is deleted.

ref T7090

Reviewers: netstar, zmike, devilhorns

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7090

Differential Revision: https://phab.enlightenment.org/D6471
2018-06-29 11:31:56 -04:00
Xavi Artigas c35214ee9c default theme: fix part names in elm/scrollable/panel
Summary:
Ref T6966

Depends on D6455

Reviewers: zmike, devilhorns

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6966

Differential Revision: https://phab.enlightenment.org/D6456
2018-06-29 11:28:57 -04:00
Carsten Haitzler cc726c011e Revert "elm win - fix resizing on show. rage was broken last week. this fixes it"
This reverts commit 7bf845b24c.
2018-06-27 13:49:57 +09:00
Marcel Hollerbach 5337d908e4 elm: register legacy_type correctly
Summary:
What happened before is that we registered efl_ui_leyout_legacy for
"elm_layout", which is not that good, since checking a (lets say) elm_button, for the type "elm_layout" would result in false. The same is with elm_button.

fixes T7081

Reviewers: devilhorns, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T7081

Differential Revision: https://phab.enlightenment.org/D6430
2018-06-26 12:21:55 -04:00
Mike Blumenkrantz 93228108ef elm/win: move trigger for "shot" to first pre-render callback
Summary:
in the case where the first render took far longer then the specified
shot interval, this would end up recording garbage since there was nothing
drawn yet

@fix
fix T6929

Reviewers: bu5hm4n, JackDanielZ, devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6929

Differential Revision: https://phab.enlightenment.org/D6426
2018-06-25 15:20:27 -04:00
Chris Michael eed3e5dfe9 efl_ui_layout_pack: Wrap calls to edje_object_part_object_get with
Summary:
freeze/thaw

@ref T6884

Depends on D6418

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6419
2018-06-25 11:36:52 -04:00
Chris Michael 580100d87d elm_clock: Wrap calls to edje_object_part_object_get with freeze/thaw
Summary:
@ref T6884

Depends on D6417

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6418
2018-06-25 11:36:52 -04:00
Chris Michael a1704700ac elm_calendar: Wrap calls to edje_object_part_object_get with freeze/thaw
Summary:
@ref T6884

Depends on D6416

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6417
2018-06-25 11:36:52 -04:00
Chris Michael 70b322b31b elc_popup: Wrap calls to edje_object_part_object_get with freeze/thaw
Summary:
@ref T6884

Depends on D6415

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6416
2018-06-25 11:36:51 -04:00
Chris Michael 42d97d0420 efl_ui_win: Wrap calls to edje_object_part_object_get with freeze/thaw
Summary:
@ref T6884

Depends on D6414

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6415
2018-06-25 11:36:51 -04:00
Chris Michael 7a7ab00955 elc_naviframe: Wrap calls to edje_object_part_object_get with
Summary:
freeze/thaw

@ref T6884

Depends on D6413

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6414
2018-06-25 11:36:51 -04:00
Chris Michael f7064f9500 elc_multibuttonentry: Wrap calls to edje_object_part_object_get with
Summary:
freeze/thaw

@ref T6884

Depends on D6412

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6413
2018-06-25 11:36:51 -04:00
Chris Michael 5a54a3d357 efl_ui_calendar: Wrap calls to edje_object_part_object_get with
Summary:
freeze/thaw

@ref T6884

Depends on D6411

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6412
2018-06-25 11:36:40 -04:00
Chris Michael c1f3cf2a47 elm_spinner: Wrap calls to edje_object_part_object_get with freeze/thaw
Summary:
@ref T6884

Depends on D6410

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6411
2018-06-25 11:32:47 -04:00
Chris Michael 9724f671ed efl_ui_layout_object: Wrap calls to edje_object_part_object_get with
Summary:
freeze/thaw

@ref T6884

Depends on D6409

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6410
2018-06-25 11:32:47 -04:00
Chris Michael 25aed20aed elm_access: Wrap calls to edje_object_part_object_get with freeze/thaw
Summary:
@ref T6884

Depends on D6407

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6408
2018-06-25 11:32:47 -04:00
Chris Michael c8770a54df elm_panel: Wrap calls to edje_object_part_object_get with freeze/thaw
Summary:
@ref T6884

Depends on D6406

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6407
2018-06-25 11:32:47 -04:00
Chris Michael 8ade8932ba efl_ui_view_list: Wrap calls to edje_object_part_object_get with
Summary:
freeze/thaw

@ref T6884

Depends on D6404

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: bu5hm4n, cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6405
2018-06-25 11:32:47 -04:00
Marcel Hollerbach ef5c93d173 elm_web: convert the enum fields correctly, as previously done
Summary:
ensure that everything stays in the allowed and previously used ranges.
The enums that are passed here are not equivalent.
Depends on D6383

Reviewers: devilhorns, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6384
2018-06-25 06:57:08 -04:00
Marcel Hollerbach 7305051197 elm_map: convert enums correctly
Summary:
ensure that everything stays in the allowed and previously used ranges.
The enums that are passed here are not equivalent.
Depends on D6382

Reviewers: devilhorns, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6383
2018-06-25 06:56:43 -04:00
Marcel Hollerbach d714c21ecb efl_ui_layout_object: fix warnings
Summary:
ensure that the signal is correctly composed.
For the case that the eina value is carrying a error, then we just error
out.
Depends on D6378

Reviewers: devilhorns, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6379
2018-06-25 06:56:09 -04:00
Bowon Ryu ddeae96421 elm_slider: add null check to avoid seg fault.
Summary: a segmentation fault occurs once the argument is not valid.

Test Plan: N/A

Reviewers: eagleeye, devilhorns, zmike

Reviewed By: eagleeye, zmike

Subscribers: #committers, cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6362
2018-06-25 06:55:57 -04:00
Jean-Philippe Andre 6f6b365c84 elm_scroll: Avoid calls to non-existing part
In case of Bryce's style, there are no scroll bars.

this avoids errors for non-existent objects

ref T7030

Signed-off-by: Mike Blumenkrantz <zmike@samsung.com>

Differential Revision: https://phab.enlightenment.org/D6317
2018-06-25 11:30:52 +02:00
Marcel Hollerbach 679ea2d311 efl_ui_focus_graph: remove unused functions
Reviewers: devilhorns, Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6378
2018-06-25 15:02:55 +09:00
Carsten Haitzler ba8a47a316 elm focus - fix focus composition prepare to not seg by unsafe list mods
efl_ui_focus_composition_prepare() methods in 2 widgets were modifying
the list (removing items) as they walked, using unsafe walking macros.
fix - use the safe variants.
2018-06-24 11:56:52 +09:00
Carsten Haitzler 7bf845b24c elm win - fix resizing on show. rage was broken last week. this fixes it
rage window with no file passed ended up like 10x40 ... which is
wrong. it wasn't. rage code explicitly resizes the window before show
and this wsas being overriden. tested rage, terminology, em test in
both x and wl. all still work (for me) post commit.
2018-06-23 23:57:00 +09:00
Derek Foreman c9979ca4c0 genlist: Don't search for an item we know we won't find
Summary:
We track list presence already, so we can just do a boolean test instead
of an O(n) lookup.
Depends on D6349

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6350
2018-06-22 09:38:03 -04:00
Derek Foreman 59c2f78d79 efl_ui_focus_manager: track list presence
By keeping track of whether a node is on the dirty list or not we can
save ourself list walks trying to remove items that aren't present.

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

Signed-off-by: Derek Foreman <derekf@osg.samsung.com>
2018-06-22 10:38:11 +02:00
Alastair Poole 91e146f108 efl_ui_widget: silence warnings with clang.
Clang doesn't like dangling else.
2018-06-22 09:11:32 +01:00
Marcel Hollerbach 5a1e954a13 efl_ui_navigation_bar: less warnings
Reviewers: zmike, ManMower, devilhorns, Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6344
2018-06-21 14:53:36 +09:00
Marcel Hollerbach a2df08cb20 efl_ui_focus_manager_calc: fix warnings
Summary: its a false positive...

Reviewers: zmike, ManMower, devilhorns, Hermet

Reviewed By: Hermet

Subscribers: Hermet, cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6342
2018-06-21 14:52:29 +09:00
SangHyeon Lee ac9dfe7e46 elm_gengrid : fix gengrid cached items disapearing issue by wrong reference counting
gengrid item view is managed by cache while scrolling,
but efl_wref_add/del and VIEW_ADD is not paired well.

this commit is fixing the issue of item dispearing when it scrolls.

Signed-off-by: SangHyeon Lee <sh10233.lee@samsung.com>
2018-06-21 14:09:13 +09:00
Marcel Hollerbach d85abe5e03 efl_ui_widget_focus_manager: less warnings
Summary: fix T7050

Reviewers: zmike, ManMower, devilhorns, Hermet

Reviewed By: Hermet

Subscribers: Hermet, cedric, #committers

Tags: #efl

Maniphest Tasks: T7050

Differential Revision: https://phab.enlightenment.org/D6341
2018-06-21 12:56:07 +09:00
Mike Blumenkrantz 4a2b411287 elm_colorselector: fix improperly named API theme parts
Summary:
API parts require namespacing, these parts have been namespaced with
compatibility code added to handle legacy naming

Reviewers: cedric, Hermet, devilhorns, stephenmhouston

Subscribers: segfaultxavi, Hermet, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6213
2018-06-20 11:57:26 -05:00
Marcel Hollerbach b2409153aa elm: refactor do not call efl_data_scope_get on a object without data
Summary:
A call to efl_data_Scope_get is actually quite dangerous,
efl_data_scope_get will return a pointer to a 0 sized segment in memory,
this is happening based on how the class data is organized. So in theory
you could use this pointer and accidently write to it. This resolves
this issue.

Reviewers: devilhorns, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6337
2018-06-20 12:24:06 -04:00
Mike Blumenkrantz a43cb224c1 elm_list: return from sizing_eval immediately if called during constructor
Summary:
this is both invalid and useless, so return immediately before spending cpu
time and generating error messages

fix T7035

Depends on D6324

Reviewers: bu5hm4n, Hermet, woohyun, devilhorns

Reviewed By: bu5hm4n

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7035

Differential Revision: https://phab.enlightenment.org/D6325
2018-06-19 13:41:44 -04:00
Mike Blumenkrantz 30197a488f elm_colorselector: avoid calling functions with null objects
Summary:
a number of calls during construction resulted in null object errors here

fix T7036

Depends on D6323

Reviewers: bu5hm4n, Hermet, woohyun, devilhorns

Reviewed By: bu5hm4n

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7036

Differential Revision: https://phab.enlightenment.org/D6324
2018-06-19 13:41:16 -04:00
Mike Blumenkrantz 209aca1654 elm_colorselector: avoid passing null to efl functions
Summary:
this check already existed in the function but was not applied to the
entire function

ref T7030
Depends on D6322

Reviewers: bu5hm4n, Hermet, woohyun, devilhorns

Reviewed By: bu5hm4n

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7030

Differential Revision: https://phab.enlightenment.org/D6323
2018-06-19 13:41:02 -04:00
Mike Blumenkrantz 13b702816e efl_ui_win: check frame_obj existence before operating on it in pre_render
Summary:
this object will not exist for fake win objects, e.g., in enlightenment

fix T7033
Depends on D6319

Reviewers: bu5hm4n, Hermet, woohyun, devilhorns

Reviewed By: bu5hm4n

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7033

Differential Revision: https://phab.enlightenment.org/D6320
2018-06-19 13:40:43 -04:00
Mike Blumenkrantz 865774bf81 efl_ui_win: do not attempt to focus a null object on focus-in
Summary:
ref T7033
Depends on D6318

Reviewers: bu5hm4n, Hermet, woohyun, devilhorns

Reviewed By: bu5hm4n

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7033

Differential Revision: https://phab.enlightenment.org/D6319
2018-06-19 13:40:27 -04:00
Mike Blumenkrantz 9889352bc0 elm_dayselector: fix improperly named API theme parts
Summary:
API parts require namespacing, these parts have been namespaced with
compatibility code added to handle legacy naming
Depends on D6210

Reviewers: cedric

Reviewed By: cedric

Subscribers: #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6211
2018-06-19 13:28:15 -04:00
Mike Blumenkrantz 3c094d8146 theme: fix part namespacing in multibuttonentry theme
Summary:
this was released with improperly namespaced parts which must be maintained
for future releases, but the namespacing can be corrected for future
releases while adding aliasing to preserve compatibility
Depends on D6208

Reviewers: cedric

Reviewed By: cedric

Subscribers: #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6210
2018-06-19 13:27:50 -04:00
Hermet Park 95852ba504 Revert "elementary: fix wrong signal emission"
This reverts commit 1b245787fe.

This is a workaround patch, even occurs a regression bug that
breaks widget signal emission logic. (Happened in Enventor toolbar)

I reviewed this code seriously and found out
ui_layout sub object unset logic has been changed.
Obviously that breaks the elm compatibility.

When sub-object of layout is removed, it tries to remove sub-object from
the layout internal list. Problem is, some widgets sends internal signals
when sub-object is removed(i.e "icon,hidden") , but layout returns the
valid object even though sub-object unset is called prior to signal,
means, "icon,visible" not "icon,hidden" emitted.

This logic obvisouly changed from the previous efl version.
And we need to fix that logic first.

See _efl_ui_button_legacy_efl_ui_widget_widget_sub_object_del()
to check this issue.

1. button: sub_object_del()
2. layout: sub_object_del() => sub object must be removed.
3. button: signal emit() => for updating states
4. layout: content_get() => returns valid object?????! (Issue)
2018-06-19 12:54:15 +09:00
Jihoon Kim 24536de3a9 ecore_imf: Remove security_code in autofill type
Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
2018-06-18 08:45:55 +09:00
Daniel Zaoui 1ab3094dac Clouseau: use the config flag only for the old Clouseau 2018-06-15 10:10:50 +03:00
junsu choi 20404d79d4 elm_datetime, efl_ui_clock : Add check 'legacy widget' for layout signal emission
Summary:
08a11d, Signal name is changed to efl ui signal name
legacy widget should use elm
This commit resolves T6928

#efl, #regression

Test Plan: elementary_test -to datetime

Reviewers: JackDanielZ, Jaehyun_Cho, Hermet, YOhoho, devilhorns, zmike

Reviewed By: zmike

Subscribers: YOhoho, cedric, Hermet, Jaehyun_Cho, #committers, JackDanielZ, zmike

Tags: #efl

Maniphest Tasks: T6928

Differential Revision: https://phab.enlightenment.org/D6289
2018-06-14 08:55:50 -04:00
Chris Michael cd376bbe5f elementary: Add missing EINA_UNUSED for unused function parameter 2018-06-13 11:37:40 -04:00
Marcel Hollerbach 054eab8ad8 elm_gen****: ensure the correct parent is set
fixes T6474
2018-06-12 11:51:08 +02:00
Marcel Hollerbach 42bb537170 efl_ui_focus_parent_provider_gen: do not accidently flatten the widgets
in the provider we accidently flattend out the widget history by
returning the wrong parent. However, this flattening code was required
for the element focus code of the two generic widgets, so the item is
found for every widget, in every subtree.
2018-06-12 11:32:51 +02:00
Larry Lira 0dfadc2322 elm: fix efl_model property_get and children_slice_get in views 2018-06-07 19:15:50 -03:00
Hermet Park 5a4f16531f elementary widget: fix to trigger object signal emit properly.
This is more generic way to trigger signals for all derived classes of layout.

This fixes the dayselector item signal emit issue as well.

@fix T6981
2018-06-05 20:27:56 +09:00
YeongJong Lee 07c627a977 elm_label: remove needless variable
Reviewers: Hermet

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6238
2018-06-04 20:12:50 +09:00
YeongJong Lee 1b245787fe elementary: fix wrong signal emission
Summary:
When _icon_signal_emit is called, "icon" part always exist. so, it only make
"visible" signal.
this fixes that issue

Test Plan:
elm_object_content_unset(button);
elm_object_content_unset(radio);
elm_object_content_unset(check);
elm_object_content_unset(progressbar);

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6241
2018-06-04 17:48:06 +09:00
YeongJong Lee 9758f99e0b elm_table/grid: remove non-widgets from focus elements.
ref 5a3ee984a1
Differential Revision: https://phab.enlightenment.org/D6236
2018-06-03 12:00:11 +02:00
YeongJong Lee 4ea4f0486e elm_hoversel: inherit elm_button
Summary:
elm_hoversel is legacy widget. it should inherit legacy Elm_Button instead of
Efl.Ui.Button.
this patch also fixes icon signal emit bug.

fixes T6971

Test Plan:
1. elementary_test -to hoversel
2. check that ther is icon (sky) on "Icon + Lebel" hoversel

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #committers, JackDanielZ, zmike

Tags: #efl

Maniphest Tasks: T6971

Differential Revision: https://phab.enlightenment.org/D6240
2018-06-01 11:36:01 +09:00
YeongJong Lee 121a85f2fc elm_tooltip: use window as parent instead of NULL for elm_theme_object_set
Summary:
see 421217b150

If parent is NULL, is_legacy in _elm_theme_set is always true. and it will use
"efl/xxx" for mmap_set. this patch avoid this case.

fixes T6921

Test Plan:
1. elementary_test -to tooltip
2. check that "Hello", "Big Icon Tooltip", "Insanel Big Icon Tooltip" is working

Reviewers: zmike

Subscribers: cedric, ManMower, #committers

Tags: #efl

Maniphest Tasks: T6921

Differential Revision: https://phab.enlightenment.org/D6232
2018-05-31 09:46:13 -04:00
YeongJong Lee 61dc4899b5 elm_win: fix widget type name for backward compatibility
Summary:
It should use legacy class in elm_win_add.

this patch fixes T6898, T6899

Test Plan: make check

Reviewers: zmike, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6899, T6898

Differential Revision: https://phab.enlightenment.org/D6233
2018-05-31 21:39:34 +09:00
Hermet Park df4e54f4aa elementary genlist: optimize data. 2018-05-30 13:46:12 +09:00
Hermet Park 6e74ab5ac6 elementary: packing data properly. 2018-05-30 13:37:35 +09:00
Wonki Kim 843850154d elementary: Modify key action logic for image.zoomable
Summary:
  1. remove prior/next action
  prior/next key action doesn't look suitable for image.zooamble.
  It is not able to support bi-directional interaction.

  2. remove logic that refers to step_size the logic has been removed
  by applying this commit because api related with step_size has been removed
  since the new scrollable interface introduced.

another patch may follow after discussing on community

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6221
2018-05-28 22:02:04 +09:00
YeongJong Lee 55cd0f4970 efl_part: remove unnecessary default_xxx_part_get
Summary:
They can call default_xxx_part_get of layout.

ref 6e49db0739

Test Plan:
elementary_test -to button
elementary_test -to 'efl.ui.button'
elementary_test -to 'efl.ui.popup'
elementary_test -to 'progressbar'
elementary_test -to 'slider'

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #committers, herb, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6218
2018-05-28 17:32:46 +09:00
Hermet Park 9a25bad5bf elementary textpath: use job for deferred drawing task.
textpath performed drawing task multiple times unnecesarily.
It should be performed only one time after all setting up.
2018-05-28 15:39:23 +09:00
Hermet Park d1cce82565 elementary ui_textpath: remove autofit api.
Toggling this option is unlikely happened by user because with autofit=false,
it doesn't gurantee readable visual text.

We don't need this stupid api yet. So remove it.
2018-05-28 15:23:57 +09:00
Youngbok Shin 8d249c9445 elementary textpath: update Evas map when text is updated
Summary:
Evas map was not updated when text was updated.
@fix

Test Plan:
1. Run the following test case.
  elementary_test -to "efl.ui.textpath"
2. Toggle short text.
3. See a long line from the end of text which is wrong.
  If you change angle, Evas map will be updated properly.
  But, it should be updated when text is updated.

Reviewers: raster, cedric, thiepha, Hermet

Reviewed By: Hermet

Subscribers: Hermet, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6216
2018-05-28 14:48:41 +09:00
YeongJong Lee cf9d396d82 efl_ui_popup: use "elm.swallow.content" name instead of "default" for scroller
Summary:
efl_part don't support legacy aliases.

ref 495edbd995

Test Plan:
1. elementary_test -to 'efl.ui.popup.alert.text'
2. elementary_test -to 'efl.ui.popup.alert.scroll'

Reviewers: Jaehyun_Cho, herb

Reviewed By: Jaehyun_Cho

Subscribers: stefan_schmidt, cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6192
2018-05-28 12:57:00 +09:00
Carsten Haitzler 060e62061d efl ui win - fix legacy theme support correctly
this fixes T6918. during development legacy theme support was b roken.
473e657120 broke it.
2018-05-27 19:48:48 +09:00
Carsten Haitzler 9edce5e078 elm config - fix derived save crash
derived shutdown nuked the edd's and eet still decoded something...
that was junk. oddly. this fixes T6879.
2018-05-27 17:00:09 +09:00
Woochan Lee 3c96fdfc69 elm_spinner: Spinner value adjust when round enabled.
Summary:
The round value was not being applied when input the value as an internal entry.

@fix

Test Plan: elementary_test -> spinner sample.

Reviewers: cedric, woohyun, Jaehyun_Cho

Reviewed By: cedric

Subscribers: cedric

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

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-05-25 10:28:42 -07:00
Mike Blumenkrantz a0db6b351a Revert "efl_ui_win: simplify checking theme version when adding frame"
Summary:
This reverts commit f37b96a1de.

as pointed out in D5957, this would break use of theme_set during the
efl_add constructor once this is implemented in the future

Reviewers: raster, cedric

Reviewed By: cedric

Subscribers: #committers

Tags: #efl

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

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-05-25 10:14:38 -07:00
Mike Blumenkrantz c5fae98de5 elm_notify: remove allow_events_set call in destructor
Summary:
4976f1fc5276835940610b72ca4fa48776fc9410 erroneously flipped the
bool flag on this call, accidentally creating another object during
deletion which is illegal now as the notify object is now unparented
at this point which will result in a CRI error

this call was never required in the first place as the corresponding
layout object would have been deleted automatically due to widget parenting

@fix

Reviewers: cedric

Tags: #efl

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

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-05-25 10:13:31 -07:00
Youngbok Shin 6e6ed72921 elementary widget: Do super's efl_gfx_color_set to apply color to widget itself
Summary:
The efl_gfx_color interface was not applied properly.
The implementation code of evas_object_smart_color_set was moved
to efl_gfx_color_set implementation code. But, these two functions are not same.
In efl_gfx_color_set impl, it has to call super's color set to apply
the given color values to widget object itself.

This bug caused color_set/get test failure and the following bug.
1. elm_image_add
2. evas_object_color_set
3. elm_image_file_set
4. show. See the given color is not applied. It was applied in the past.

Test Plan: color_set/get to elm_image object is included in test suite.

Reviewers: raster, cedric, herdsman, woohyun

Reviewed By: cedric

Subscribers: #committers, zmike

Tags: #efl

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

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-05-25 10:08:24 -07:00
Hosang Kim 37f13a9d10 elm_interface_scrollable: change return value for post events.
Summary:
1. Scroller in scroller case, callback process should continue.
     If child scroller does not scroll, parent scroller should be checked whether scroll or not.
     So returning EINA_TRUE is necessary.
2. down.dragged flag is always EINA_FALSE, so scroll is never unlocked.
@fix

Test Plan:
precondition
  elementary_config -> scrolling -> Set Scroll Smooth Amount to 0
elementary_test -> pagescroller

Reviewers: woohyun, zmike, singh.amitesh, cedric

Reviewed By: cedric

Subscribers: #committers, cedric, zmike

Tags: #efl

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

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-05-25 10:04:50 -07:00
Youngbok Shin 455775c2e3 elementary textpath: improves text rendering quality of curved text
Summary:
There was wrong logic for calculating # of slices, dt, dist of each segment.
It caused bad rendering quality by putting too much slices on small text.

In addition, textpath didn't care about smoothness of curve's slope changing.
The patch fixes to check differences of previous points and next points for Evas Map.
So, textpath can show more smoothly curved text.

Also, it fixes "autofit" bug when text is much huge than given circle's size.

@tix

Test Plan:
- I'll attach screenshots for comparing rendering quality.
- To see "autofit" bug.
1. Run the following command.
   ELM_ACCEL=gl ELM_SCALE=2.0 elementary_test -to "efl.ui.textpath"

2. Toggle "autofit" check box.
3. See the bug case. Textpath can't show all text properly.

Reviewers: raster, cedric, thiepha

Subscribers: #committers, zmike

Tags: #efl

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

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-05-25 09:59:04 -07:00
Cedric BAIL 2a5dc74408 elementary: fetch the model explicitely.
T6939
2018-05-25 09:16:45 -07:00
WooHyun Jung 4d0bb5ec35 efl_ui_win: fix wrong comparison in icon_object_set
@fix
2018-05-25 16:42:52 +09:00
Cedric BAIL 311e35a0dd elementary: prevent model from being invalidated when their parent model get destroyed. 2018-05-24 16:02:21 -07:00
Cedric BAIL a098ee4460 elementary: ctxpopup is using legacy Elm.List which use legacy Elm.Object.Item, fix accordingly. 2018-05-24 16:02:21 -07:00
Cedric BAIL 0eacebfec8 elementary: fix elm_list items lifecycle.
Elm.List.Item lifecycle where an exception in Efl. They were trying to prevent the death of
there parent, to avoid dealing with safely walking on items list. This has been on the todo
list for years and is now fixed by this patch.
2018-05-24 16:02:21 -07:00
Cedric BAIL 40af4fe94b elementary: refactor filesector target cleanup to not leave function handler behind. 2018-05-24 16:02:21 -07:00
Cedric BAIL 85598a8a40 elementary: make sure to use the model that generated the event to fetch information from. 2018-05-24 16:02:21 -07:00
Cedric BAIL 228ecdeb51 elementary: make sure fileselector button model has a parent and self destruct properly. 2018-05-24 16:02:21 -07:00
Cedric BAIL a5f9ee5ab3 elementary: fix configuration destruction by actually calling the proper way of destruction. 2018-05-24 16:02:20 -07:00
Cedric Bail 13ae5b1f0c elementary: the config subsystem expect a stringshare. 2018-05-24 16:02:20 -07:00
Cedric BAIL 3d94f477d4 elementary: properly destroy block events object during destruction. 2018-05-24 16:02:20 -07:00
Cedric BAIL 5f5af596e0 elementary: cleanup genlist destructor to order content destruction correctly. 2018-05-24 16:02:20 -07:00
Cedric BAIL b5b9f72f57 elementary: when there is no file listed yet, no need to request them. 2018-05-24 16:02:19 -07:00
Cedric BAIL e4a6aaa4c1 elementary: enforce walk to protect the object existence by using eo refcounting. 2018-05-24 16:02:19 -07:00
Cedric BAIL 048a93e6e3 elementary: reorder operation to only call efl_parent_set when the object still has a chance to exist. 2018-05-24 16:02:19 -07:00
Cedric Bail f44511d0f9 elementary: refactor by using elm_legacy_add. 2018-05-24 16:02:19 -07:00
Cedric BAIL f29e1db94b elementary: make toolbar 'more_item' properly self destruct. 2018-05-24 16:02:19 -07:00
Cedric BAIL 2ce788063a elementary: no need to recalculate the layout during invalidate. 2018-05-24 16:02:19 -07:00
Cedric BAIL 9e0f9539dd elementary: the pan object of the map object was created with efl_add, adjust accordingly. 2018-05-24 16:02:19 -07:00
Cedric BAIL 0fe3b7962d elementary: due to lifecycle difference between legacy object and unified object, we need to track their lifecycle more explicitely.
It is my understanding that some items view are created with efl_add directly
and manipulate VIEW directly with Eo new API. This clash with the inconsistent
behavior that evas_object_del expect. To work around this, we track object life
by explictely relying on efl_wref_add while holding the pointer to the object.
2018-05-24 16:02:19 -07:00
Cedric BAIL 0239099d01 eo: efl_del should not be something anyone can override this can break so many things.
Allowing override of efl_del allow for messing with object life cycle which can create
problem for binding where an object was expected to be invalidated, but isn't really.
2018-05-24 16:02:19 -07:00
Cedric BAIL 590304d597 eio: properly handle Eio.Model lifecycle inside Elm.Fileselector.
Differential Revision: https://phab.enlightenment.org/D6107
2018-05-24 16:02:18 -07:00
Cedric BAIL c753fc793b elementary: dayselector use efl_add to create the object, calling efl_del during destructor make no sense.
Differential Revision: https://phab.enlightenment.org/D6106
2018-05-24 16:02:18 -07:00
Cedric BAIL 1991900fd6 elementary: no need to check for part during destruction.
Differential Revision: https://phab.enlightenment.org/D6105
2018-05-24 16:02:18 -07:00
Cedric BAIL 6476896ec5 elementary: no need for resize an object during destruction.
Differential Revision: https://phab.enlightenment.org/D6104
2018-05-24 16:02:18 -07:00
Cedric BAIL 2508c1a3ae elementary: colorselector item are created with efl_add, so they are dead when they reach the destructor.
Differential Revision: https://phab.enlightenment.org/D6103
2018-05-24 16:02:18 -07:00
Cedric BAIL dbbcfa4a59 elementary: small correction in the API of Efl.Access.Object to have proper lifecycle.
This API require more review, I have just fixed API that return type that are
inconsistent over time and fail to allow for proper lifecycle of event, which
lead to crash when those event trigger at unexpected point.

Differential Revision: https://phab.enlightenment.org/D6102
2018-05-24 16:02:18 -07:00
Cedric BAIL fe14abd929 evas: refactor efl_input_event and remove some of the lifecycle hack.
Differential Revision: https://phab.enlightenment.org/D6101
2018-05-24 16:02:18 -07: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
Cedric Bail c1cef1e74b elementary: object created with efl_add should be destroyed with efl_del.
Differential Revision: https://phab.enlightenment.org/D6094
2018-05-24 16:02:18 -07:00
Cedric Bail 0135b23e45 elementary: object allocated with efl_add should be destroyed with efl_del.
Differential Revision: https://phab.enlightenment.org/D6093
2018-05-24 16:02:18 -07:00
Cedric BAIL 0ac6e47697 elementary: use invalidate instead of overriding del for widget items.
Differential Revision: https://phab.enlightenment.org/D6073
2018-05-24 16:02:18 -07:00
Cedric BAIL 95f8bf2ebd elementary: rely on inheritance instead of faking efl_del behavior.
Differential Revision: https://phab.enlightenment.org/D6072
2018-05-24 16:02:18 -07:00
Cedric BAIL b265c5c887 elementary: make del_pre not return a bool and force rely on Eo ref counting.
Differential Revision: https://phab.enlightenment.org/D6071
2018-05-24 16:02:18 -07:00
Cedric BAIL a669fb820a elementary: prevent death of list item using Eo ref counting.
Differential Revision: https://phab.enlightenment.org/D6070
2018-05-24 16:02:18 -07:00
Cedric BAIL ad009667b5 elementary: remove now useless walking in item.
Differential Revision: https://phab.enlightenment.org/D6069
2018-05-24 16:02:18 -07:00
Cedric BAIL 4b30a7df8e elementary: use Eo ref counting to prevent death of genlist items.
Differential Revision: https://phab.enlightenment.org/D6068
2018-05-24 16:02:18 -07:00
Cedric BAIL 2a51465593 elementary: use Eo ref counting to prevent death of gengrid items.
Differential Revision: https://phab.enlightenment.org/D6067
2018-05-24 16:02:18 -07:00
Mike Blumenkrantz 6932f0fdd6 elm_list: prevent list item operations during item deletion
ref T6880

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>

Differential Revision: https://phab.enlightenment.org/D6066
2018-05-24 16:02:17 -07:00
Mike Blumenkrantz 499beb9162 elm_list: fix crash in item deletion
this is still broken

ref T6881

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>

Differential Revision: https://phab.enlightenment.org/D6065
2018-05-24 16:02:17 -07:00
Cedric BAIL ccb5642eb9 Revert "efl_add_ref - fis to use efl_add properly with a parent."
This reverts commit 2fb5cc3ad0.

Most of this change where wrong as they didn't affect the destruction
of the object. efl_add_ref allow for manual handling of the lifecycle
of the object and make sure it is still alive during destructor. efl_add
will not allow you to access an object after invalidate also efl.parent.get
will always return NULL once the object is invalidated.

Differential Revision: https://phab.enlightenment.org/D6062
2018-05-24 16:02:17 -07:00
Marcel Hollerbach 0090384ef5 elm_ctxpopup: prevent a giant load of errors
Summary:
i)  There have been 2 sorts of errors, first the items have been deleted
    after the list was deleted, thus the list items have already been
    destructed. which lead to the error as the popup items destroyed the list
    items on destruction as well.

ii) sd->box was attached to the ctxpopup when getting into group_del the
    box has already been destroyed by the cleanup logic.

Subscribers: cedric, zmike

Tags: #efl

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

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-05-24 16:02:17 -07:00
WooHyun Jung ea1760380e elm_main: call _elm_config_shutdown() after loop_iterate()
In _elm_config_shutdown(), _elm_config is freed.
So, if some ecore events call efl_ui_xxx API which refers _elm_config,
there can be crashes.

@fix
2018-05-24 15:30:29 +09:00
Marcel Hollerbach d5fd76c190 efl_ui_focus_composition: track the deletion state of child objects
Reviewers: cedric, zmike

Reviewed By: cedric

Subscribers: #committers, cedric, zmike

Tags: #efl

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

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-05-23 21:16:01 -07:00
Xavi Artigas 61b409015e efl: rename Efl.Ui.Widget.Orientation_Mode -> Efl.Ui.Widget_Orientation_Mode 2018-05-23 17:33:47 +02:00
Xavi Artigas e31b3213ec efl: rename Efl.Ui.Text.Change_Info -> Efl.Ui.Text_Change_Info 2018-05-23 17:33:47 +02:00
Xavi Artigas 4ab7e3fda0 efl: rename Efl.Ui.Tab_Page.* -> Efl.Ui.Tab_Page_* 2018-05-23 17:33:47 +02:00
Xavi Artigas a7d29f7185 efl: rename Efl.Ui.Stack.Event_* -> Efl.Ui.Stack_Event_* 2018-05-23 17:33:47 +02:00
Xavi Artigas ee27519432 efl: rename Efl.Ui.Slider.Indicator_Visible_Mode -> Efl.Ui.Slider_Indicator_Visible_Mode 2018-05-23 17:33:47 +02:00
Xavi Artigas a0d4d3b140 efl: rename Efl.Ui.Pager.Loop -> Efl.Ui.Pager_Loop 2018-05-23 17:33:47 +02:00
Xavi Artigas 1e8b7cc405 efl: rename Efl.Ui.Focus.Composition.Adapter -> Efl.Ui.Focus.Composition_Adapter 2018-05-23 17:33:47 +02:00
Xavi Artigas 761aaa269d efl: rename Efl.Ui.*_Legacy.Part -> Efl.Ui.*_Legacy_Part 2018-05-23 17:33:47 +02:00
Xavi Artigas 0e848ccf2d efl: rename Efl.Selection.* -> Efl.Selection_* 2018-05-23 17:33:47 +02:00
Xavi Artigas 029f0769a5 efl: rename Efl.Event.Description -> Efl.Event_Description 2018-05-23 17:33:47 +02:00
YeongJong Lee 495edbd995 elm: fix backward compatibility for "default" name part
Summary:
If you use legacy content/text set/get/unset with "default" part name,
_elm_layout_part_aliasing_eval change the part name to "elm.swallow.content".
Because internal _content_set/get/unset checked only "default" string,
legacy content/test set/get/unset with "default" part name was not working.
This patch fixes that bug.

Test Plan: elm_object_part_content/text_set(obj, "default", content)

Reviewers: Jaehyun_Cho, woohyun

Reviewed By: Jaehyun_Cho

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6185
2018-05-23 19:35:18 +09:00
Mike Blumenkrantz efe5f92377 efl_ui_win: always force resize job on first pre-render
Summary:
ensure that a resize eval occurs after the frame edje has been thawed
so that sizing will be correct in engines which either still have
broken size handling (D6019) or have sub-optimal size handling (D6145)

Reviewers: bu5hm4n, cedric

Reviewed By: bu5hm4n

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6165
2018-05-23 10:28:06 +02: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
Woochan Lee 428d74ebc1 efl_ui_tags: Fixed bug when setting format string.
Summary:
efl_ui_format_string_set was not working well.

Changed default format text. ("++++ %d" text for test only.)

@fix

Reviewers: Jaehyun_Cho, cedric, woohyun

Reviewed By: Jaehyun_Cho

Subscribers: zmike, cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6044
2018-05-20 03:58:41 +09:00
Woochan Lee 976b9d877e efl_ui_spin: Added special value feature.
Summary:
User may want to set as meanignful words for the value instead of numberic value.

@feature

Test Plan: elementary_test->test_ui_spin_button.

Reviewers: cedric, woohyun, Jaehyun_Cho, herb

Reviewed By: Jaehyun_Cho

Subscribers: zmike, felipealmeida, cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5969
2018-05-20 03:11:55 +09:00
Xavi Artigas 35bbedc96f efl: Add missing event types
Summary:
All events must have a type now, otherwise bindings don't know how to handle
the event_info field.
Most of the missing event types were actually "void" (no event_info present).
Some struct definitions had to be moved to eo instead of h files, so they
are available to bindings. Some have not, and are marked with FIXME.
Some namespaces have been fixed (like Efl_Event_Cb -> Efl.Event_Cb).

In general, there are hundreds of changed files, but mostly to add a type which
was not present before, so there's no harm done.
Also, A lot of FIXMEs have been added which should be, like, fixed.
For example, some events can send different types of event_info, which is
very inconvenient (and error prone).

Test Plan: make with c# bindings works, make check and make examples work too.

Reviewers: cedric, q66, lauromoura

Subscribers: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6169
2018-05-19 01:42:26 +02:00
SangHyeon Lee ebdb3b71a1 cursor: fix ABI break in widget item cursor APIs
Summary:
fix ABI break in widget item cursor APIs
by efl_ui_cursor interface implementing.

item's view were not elementary widget mostly,
reimplementing efl_ui_cursor on efl_ui_widget
cannot resolve item's cursor API call.

Test Plan:
check,
elm_object_item_cursor_XXX
API is working properly on elm_object_item.

Reviewers: cedric, jpeg, raster

Reviewed By: raster

Subscribers: stefan_schmidt, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6046
2018-05-19 01:21:12 +09:00
Hosang Kim ec670e9a22 efl_ui_scrollable: apply scroll_hold_push/pop and scroll_freeze_push/pop
Test Plan: elementary_test -> Efl.Ui.Scroller -> move slider

Reviewers: jpeg, woohyun, akanad, cedric, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: zmike, Jaehyun_Cho, eagle001, cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5796
2018-05-17 18:17:44 +09:00
Marcel Hollerbach 5de88592bc efl_ui_win: hand-ref-count the provider object
Summary: Depends on D6108

Reviewers: cedric

Reviewed By: cedric

Subscribers: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6109
2018-05-16 13:30:33 -04: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
Andy Williams 767c211e70 Add missing continue keyword from Go definition 2018-05-15 14:49:04 +01:00
Hosang Kim 19833657e8 elm_slider: fix test suite fail
Summary: change legacy widget name.

Reviewers: Jaehyun, stefan_schmidt, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6162
2018-05-15 20:13:06 +09:00
Hosang Kim 5db61e4d64 efl_ui_slider: refactor slider widget.
Test Plan: elementary_test -> Efl.Ui.Slider, Efl.Ui.Slider_Interval, slider

Reviewers: woohyun, cedric, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: zmike, cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5908
2018-05-15 14:16:00 +09:00
Mike Blumenkrantz 9c7f5ca33b elm: use build dir data when EFL_RUN_IN_TREE is set
Summary:
this prevents tests from loading user configs and providing inconsistent
results or accidentally modifying a user's config

fix T6863
Depends on D6013

Reviewers: cedric, stefan_schmidt

Reviewed By: stefan_schmidt

Subscribers: stefan_schmidt

Tags: #efl

Maniphest Tasks: T6863

Differential Revision: https://phab.enlightenment.org/D6014
2018-05-14 18:26:21 +02:00
Alastair Poole a92b80ff86 elm_code: add EOAPI to refresh theme after a user layout change.
Hopefully this retains the object hierarchy. Gives us a method
to update the widget theme after a layout change.
2018-05-13 17:16:13 +01:00
Daniel Kolesa 577c00789a eolian: second batch of unused import removals
This fixes all remaining occurences introduced by false negatives
in 6bcd70f01d. The rest was already
fixed in 6be3809c04.
2018-05-13 18:13:12 +02:00
Daniel Kolesa 6be3809c04 eolian: first batch of unused import removals
Initial results of our static analysis showed a bunch of unused
imports or imports used only for documentation references. In the
first case, remove entirely, in the second case, change to 'parse'
in order to keep references working.

The static analysis is not perfect and yields false negatives for
certain cases, so there will be a second batch later.
2018-05-13 17:28:47 +02:00
Alastair Poole 4d61374872 elm_code_widget: on theme change update the background widget.
This ensures consistency between the colours of the widget and
its parent. When theme changes the whole visible region changes
and matches so that it isn't bogus and ugly.
2018-05-13 13:43:08 +01:00
Marcel Hollerbach 6c25b38a1c elm_toolbar: only use the more_item if mode is correct
the more item is only usefull for SHRINK_MENU and SHRINK_EXPAND,
otherwise the item should not be there.
2018-05-10 13:34:39 +02:00
Marcel Hollerbach 8e104d5bfe efl_ui_focus_manager_root_focus: restructure state eval
registering and unregsitering caused a few issues.
- Relations are recalculated even if they should not be
- We unfocus a element just to refocus it again
- We loose any iinformation about custom chains that have been set meanwhile

This fixes it
2018-05-10 13:34:17 +02:00
Marcel Hollerbach 05d4f0b256 efl_ui_focus_manager_root_focus: support a custom canvas object 2018-05-10 13:34:03 +02:00
Yeongjong Lee 6c252fc16c efl_ui_widget: use efl_data_scope_safe_get instead of macro
Summary: This macro isn't actually as safe as this safe data_get.

Reviewers: woohyun, Jaehyun_Cho

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6133
2018-05-09 10:19:38 +09:00
Derek Foreman 1ced5e65fd efl_selection: return wayland seat id if present
Summary:
We looked it up, we probably wanted to return it?
Depends on D6128

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6129
2018-05-08 13:26:50 -05:00
Derek Foreman 83f2f086a5 efl_selection_manager: Stop calling ecore_wl2_input_ungrab
Summary:
This "ungrab" thing appears to just send a mouse up event in some
situations.

This already happens at *start* of drag, so at best calling it again will
do nothing, and at worst it'll break input.
Depends on D6125

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6126
2018-05-08 13:26:39 -05:00
Derek Foreman 4f720657d2 efl_ui_win: Pass seat info for wayland move/resize
Summary:
In wayland we need to know which seat initiated the CSD compositor move
request to properly handle input.
Depends on D6124

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6125
2018-05-08 13:26:35 -05:00
Derek Foreman 1729cbe33e efl_ui_win: Directly call ecore_wl2 move and resize functions
Summary:
These ecore_evas_wayland things seem like they shouldn't exist.  The
ecore_wl2 api is better and still in beta so it can be fixed when it's
shown to be broken/wrong as the ecore_evas_wayland ones are. :(

The move API is stuck with x, y co-ordinates that can never make sense,
and neither API is capable of passing seat info.
Depends on D6123

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6124
2018-05-08 13:26:30 -05:00
Derek Foreman 77f946a92c elm_win: Remove move stop callback
Summary:
This is only fired to trigger a cursor set under wayland, but that cursor
set should be done unconditionally on mouse in.

However, mouse in was being discarded because mouse out was being deferred
when the window was "grabbed" for moving.

If instead we just let the mouse out occur as it should, the cursor
is properly updated on mouse in.
Depends on D6118

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6119
2018-05-08 13:25:54 -05:00
Marcel Hollerbach 03c20cc758 elm_toolbar: flush out the items once one is hidden
ref T6806
2018-05-08 12:07:31 +02:00
Marcel Hollerbach 69c2e6f0e6 efl_ui_focus_manager: unset redirect instead of wrefing it
so focus is restored correctly
2018-05-08 11:50:04 +02:00
Marcel Hollerbach fa9aff8f70 efl_ui_focus_manager_calc: do not restore focus when redirect is set
When there is a redirect there is no need to adjust the focus property
based on a unregister, so just continue and cleanup the history. When
the redirect is unset the focus is restored.

fix T6908
2018-05-08 11:50:04 +02:00
Cedric BAIL 380c45722b elementary: unreak non tree mode for fileselector.
The model can outlive the item which resulted in keeping a dead reference in the model.
2018-05-05 21:27:31 -07:00
junsu choi c1f5d64511 elm_object : Support to translatable_part_text of legacy widget
Summary:
this commit supports aliasing of legacy widget
about translatable_part_text_set/get.

Test Plan:
elm_object_domain_translatable_part_text_set(btn, "default", NULL, "sample_text");
const char* text = elm_object_translatable_part_text_get(btn, "default");

Reviewers: cedric, herb, id213sin, woohyun

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6056
2018-05-04 20:34:29 +09:00
Chris Michael 3920247ff6 elementary: Fix eina_safety return val
The function that this is used in returns Eina_Bool, but the safety
check was returning NULL
2018-05-04 07:07:41 -04:00
Mike Blumenkrantz da13878cc2 efl_ui_focus_manager_calc: resolve shadow warning
Summary:
lib/elementary/efl_ui_focus_manager_calc.c: In function ‘node_item_free’:
lib/elementary/efl_ui_focus_manager_calc.c:208:20: warning: declaration of ‘n’ shadows a previous local [-Wshadow]
         Eina_List *n;
                    ^
lib/elementary/efl_ui_focus_manager_calc.c:197:10: note: shadowed declaration is here
    Node *n;
          ^

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6020
2018-05-03 16:13:30 -04:00
Daniel Kolesa f58bdbf23a eolian: switch Eina.Future instances to future<T> 2018-05-03 17:14:39 +02:00
Jaeun Choi 473755fd66 efl_ui_image: add NULL check in elm_image_memfile_set() function
return EINA_FALSE if the data source is NULL elm_image_memfile_set()

@fix
2018-05-03 20:46:56 +09:00
Mike Blumenkrantz 78c2f1e659 efl_ui_win: ignore attempts to resize window to 0x0 during frame sizing
Summary:
in many cases, a 0x0 size is found here as a result of various quirks at
different states of window initialization. passing 0x0 will clamp the size
to 1x1 and, for some engines, create a race condition during initial
sizing which causes the window not to render

ref T6907

Reviewers: cedric, ManMower, vtorri

Reviewed By: vtorri

Subscribers: raster, stefan_schmidt

Tags: #efl

Maniphest Tasks: T6907

Differential Revision: https://phab.enlightenment.org/D6016
2018-05-02 15:57:21 -04:00
Cedric Bail 94d9a0fd24 elementary: fix fileselector tree mode to properly nest files into directory. 2018-05-02 10:46:34 -07:00
Marcel Hollerbach b2437c0339 efl_ui_focus_graph: add a new way for calculating relations
this fixes the testsuite, and brings better relations back.
2018-05-02 19:20:23 +02:00
Bowon Ryu 67045ea28a efl_ui_tab_pager: add Efl.Ui.Tab_Pager and related classes
Summary:
the basic concept of Efl.Ui.Tab_Pager is similar to elm_toolbar.
user can attach Efl.Ui.Tab_Bar to the tab_pager.
user can create an Efl.Ui.Tab_Page to add tab label, tab icon and set the content of the page.
user can pack Efl.Ui.Tab_Page into tab_pager.
The tab and page match one to one.
user can controls tab and page through tab_pager.

See T5317

Test Plan: elementary_test -to efl.ui.tab_pager

Reviewers: cedric, woohyun, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: eunue

Differential Revision: https://phab.enlightenment.org/D5988
2018-05-02 21:11:41 +09:00
Jaehyun Cho b8de04d77f efl_ui_tags: Change part names based on proper namespace 2018-05-02 19:35:14 +09:00
Woochan Lee 8c6ae23c86 Introduce Efl.Ui.Tags(changed from elm_multibuttonentry)
Summary:
https://phab.enlightenment.org/T5358

Create new concept of adding items and rename widget to tags.

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D6008
2018-05-02 17:23:46 +09:00
YeongJong Lee fe94d2c106 elm_entry: remove legacy docs for "validate" signal
Summary:
"validate" singal is not supported in legacy.
only ELM_ENTRY_EVENT_VALIDATE is working.

Reviewers: herdsman

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5854
2018-05-01 17:18:48 -04:00
Marcel Hollerbach d1a89cfd9d efl_ui_focus_manager_calc: partly revert 3571b35a30
And document why this must be, so the same error is not done again :)

fix T6908
2018-05-01 20:27:07 +02:00
Marcel Hollerbach dc57abfafd efl_ui_focus_manager: remove partners field 2018-05-01 20:27:07 +02:00
Marcel Hollerbach 258b96be35 efl_ui_focus: move graph calculation to seperated file 2018-05-01 20:27:07 +02:00
Marcel Hollerbach 9669ca9ab9 efl_ui_focus_manager_calc: prepare the tree when we attempt to move 2018-05-01 20:27:07 +02:00
Marcel Hollerbach 7c9afc6d7b elm: remove unused vars 2018-05-01 20:27:07 +02:00
Marcel Hollerbach b5baa68c88 elm_focus_legacy: fix cycling in legacy windows 2018-05-01 20:26:41 +02:00
Marcel Hollerbach ad3d741fa0 elm_focus_legacy: remove useless function
it was only used in one place and had a wrong name.
2018-05-01 20:26:41 +02:00
Marcel Hollerbach f75bce9597 elm_focus_legacy: only search widget mapping on elm_widgets
fix T6909
2018-05-01 20:26:41 +02:00
Chris Michael 66a5126d97 elementary: Remove unused variable 2018-05-01 13:50:41 -04:00
Chris Michael 0d34987438 elementary: Remove unused variable 2018-05-01 13:49:42 -04:00
Chris Michael 25835c6c5c elementary: Remove unused variable 2018-05-01 13:49:01 -04:00
Cedric BAIL 33fd77e9e4 ecore: move close_on_destructor to close_on_invalidate as that describe the behavior best.
Fix all use to correctly behave on invalidate.
2018-05-01 10:39:01 -07:00
Cedric BAIL bf2e65a38d elementary: converting Efl.Ui.List to the new Efl.Model API. 2018-05-01 10:39:01 -07:00
Cedric BAIL 16d5caa2ee elementary: remove Efl_Future reference from efl_ui_layout. 2018-05-01 10:39:01 -07:00
Cedric BAIL 2c2df5b18b elementary: migrate elm_view_list to use the new Efl.Model API. 2018-05-01 10:39:01 -07:00
Cedric BAIL 90e0190161 elementary: migrate Elm.View.Form to use Efl.Model new interface.
Elm.View.Form is not done and require more work to be released.
2018-05-01 10:39:01 -07:00
Cedric BAIL 756f4cee0e elementary: migrate Efl.Ui.Layout to use the new Efl.Model API. 2018-05-01 10:39:01 -07:00
Cedric BAIL 8093eca7f3 elementary: migrate filesector to use the new Efl.Model API. 2018-05-01 10:39:01 -07:00
Cedric BAIL a408c145e9 elementary: migrate Efl.Ui.Image to use the new Efl.Model API. 2018-04-30 14:21:12 -07:00
Cedric Bail 46ac187bd8 elementary: add an Efl.Ui.Model.State in charge of visibility, selection and enable state. 2018-04-30 14:21:12 -07:00
Marcel Hollerbach 04c63cb489 elm_focus_legacy: set custom chain
fix T6182
2018-04-30 19:26:06 +02:00
Marcel Hollerbach e3049e4a16 efl_ui_widget: do not register if the child is missing in a custom chain 2018-04-30 19:24:47 +02:00
Marcel Hollerbach d8a0ee9021 efl_ui_focus_composition: legacy compatibility 2018-04-30 19:24:47 +02:00
Marcel Hollerbach fdfcae968b elm_widget: Introduce elm_focus_legacy
Code located here is meant for a legacy tree and legacy widgets.
This is checked on the entry of the function
2018-04-30 19:24:47 +02:00
Marcel Hollerbach 27d6f3a65d efl_ui_focus_util: add new function for complementing the direction 2018-04-30 19:24:47 +02:00
Jaehyun Cho e9b61a8969 efl_canvas_object: Change name of animation event info
Change name of animation event info to synchronize with other event
info names.

Change data name in animation event info to synchronize with data type
name, Efl.Event.Description.
2018-05-01 00:13:56 +09:00
Marcel Hollerbach 33b9577013 elm_widget_item_static_focus: do not call prepare on all realized items
we should spare out the group and disabled items
2018-04-30 15:22:52 +02:00
Marcel Hollerbach 8b2a6a0b4d elm_widget_item_static_focus: a other element could also hide behind the
adapter
2018-04-30 15:22:52 +02:00
Marcel Hollerbach 3571b35a30 efl_ui_focus_manager_calc: drop redirect if there is no candidate 2018-04-30 15:22:52 +02:00
Marcel Hollerbach 139efaaba3 elm_interface_scrollable: rework filtering
A item might be in the middle of the viewport and still miss relations.
2018-04-30 15:22:52 +02:00
Marcel Hollerbach 5815ba52ec elm_****: do not make group items focusable 2018-04-30 15:22:52 +02:00
Marcel Hollerbach bd9b112094 efl_ui_focus_manager_calc: make the preparation call tree style
So we make sure that all children are prepared.
2018-04-30 15:22:52 +02:00
Marcel Hollerbach 3b17135d5b elm_widget_item_static_focus: prepare the item not the widget
fix T6894
2018-04-30 15:17:24 +02:00
Jaehyun Cho ec59f8053a elm_multibuttonentry: Fix make check fail
Fix make check fail of elm_multibuttonentry caused by
939690a8a9
2018-04-30 19:53:26 +09:00
SangHyeon Lee 8718e2995e efl.ui.layout_factory : use interface layout theme set for now
interface object need to use efl.ui.layout_object theme set
instead of legacy one, for applying proper theme naming rules.
2018-04-30 19:27:13 +09:00
Davide Andreoli 93e9259d6f Genlist: fix doc for item_next/prev_get()
See T5938 for details
2018-04-28 10:31:23 +02:00
Davide Andreoli 69cf5754b5 Revert "genlist: fix "insane" order [BUG COMPATIBILITY]"
This reverts commit fd82c2521e.

This was based on a wrong assumption, see T5938 fro details
2018-04-28 10:21:57 +02:00
SangHyeon Lee b64522e848 efl.ui.view_list : fix signal prefix elm to efl
by the patch 6e49db0739
efl.ui interface change signal prefix legacy elm to efl.
this patch is fixing efl.ui.view.list scroller issue
2018-04-28 14:03:54 +09:00
SangHyeon Lee 75f21087f5 efl_ui_list : introduce new list widget for simple usage
Summary:
most usage of simple list, items are very limited and loading performance is not serious.
to support those requirement, this efl.ui.list will create scrollable box with efl.pack.

user can create list by packing an pre-loaded item object, Efl.Ui.List.Item class.

Test Plan: tested in efl_ui_list_example_1.c in examples.

Reviewers: cedric, felipealmeida

Subscribers: woohyun, Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5861
2018-04-28 13:41:41 +09:00
JongMin Lee 296d117f2a elm efl_selection_manager: resolve possible memory leak. 2018-04-27 14:04:02 +09:00
Jaehyun Cho 08a11dcbf9 efl theme: Replace legacy signal names with efl ui signal names
Replace legacy signal/source names with efl ui signal/source names.
e.g. From "elm,state,content,set" "elm" to "efl,state,content,set" "efl"
2018-04-26 22:45:59 +09:00
Taehyub Kim c83895b144 efl_ui_win: fix the wrong bracket
Summary: efl_ui_win: fix the wrong bracket

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, stefan

Differential Revision: https://phab.enlightenment.org/D6007
2018-04-26 21:00:35 +09:00
Taehyub Kim 6e49db0739 efl theme: remove the elm legacy name of efl ui theme
Summary: remove the elm legacy name of efl ui theme

Test Plan: run elementary_test and test efl ui widget cases

Reviewers: Jaehyun_Cho, woohyun, cedric, raster, jpeg

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5934
2018-04-26 19:41:03 +09:00
Mike Blumenkrantz 473e657120 efl_ui_win: remove references to removed functions
Reviewers: ManMower

Reviewed By: ManMower

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D6004
2018-04-25 12:22:40 -04:00
Mike Blumenkrantz f37b96a1de efl_ui_win: simplify checking theme version when adding frame
Summary:
the win has no theme set, so this would always return null
Depends on D5956

Reviewers: cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D5957
2018-04-25 12:09:32 -04:00
Mike Blumenkrantz 99fca5b01d elm_theme: use themes and extensions lists for _elm_theme_data_find
Differential Revision: https://phab.enlightenment.org/D5956
2018-04-25 12:09:32 -04:00
Mike Blumenkrantz 7afd83569b elm_win: remove useless function
Summary: Depends on D5961

Reviewers: ManMower, cedric

Reviewed By: ManMower, cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5945
2018-04-25 12:07:28 -04:00
Mike Blumenkrantz d033d747ff efl_ui_win: resolve race conditions with csd sizing on first show
there were some cases where frame geometry was being calculated/applied
strangely as a result of moving all of the layout calcs to pre-render.
enforcing a frame calc+resize resolves these issues

Differential Revision: https://phab.enlightenment.org/D5961
2018-04-25 12:07:28 -04:00
Mike Blumenkrantz fa02f16a3f efl_ui_win: remove show intercept function
this should just be handled in the pre-render callback where the rest
of the calc for the window is done

also removes an unnecessary smart calc

Differential Revision: https://phab.enlightenment.org/D5960
2018-04-25 12:06:33 -04:00
Mike Blumenkrantz 34be51e105 elm_win: freeze frame object edje until first pre-render
this avoids a substantial number of unnecessary recalcs and halves the calltime
for elm_win_add

ref T6884

Differential Revision: https://phab.enlightenment.org/D5944
2018-04-25 12:06:33 -04:00
Mike Blumenkrantz e28c76e244 elm_win: set manual render and freeze frame object during deferred free
ensure no recalcs of any kind occur on a deleted window

Differential Revision: https://phab.enlightenment.org/D5949
2018-04-25 12:00:11 -04:00
Mike Blumenkrantz 08fe88cb2d els_cursor: avoid forcing a recursive canvas layout recalc when adding cursor
use deferred size hints to avoid unnecessary recalcs

Differential Revision: https://phab.enlightenment.org/D5948
2018-04-25 12:00:11 -04:00
Woochan Lee ef2e6afd1f Intrudoce Efl Ui Date, Time interface and picker.
Summary: Create datepicker, timepicker with one manager class(efl_datetime).

Test Plan: datepicker, timepicker sample.

Reviewers: herb, Jaehyun_Cho, woohyun, SanghyeonLee

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5871
2018-04-25 16:48:21 +09:00
Marcel Hollerbach ac4d75a1ae efl_ui_focus_composition: permit anything but adapters and widgets
a wildcard gfx object could bring focus to a evas object that has no
smart parent, and thus keyboard events are left at a place where they
cannot come away from.

clock was using this to give focus to the edit buttons. The edit buttons
are now wrapped into theire own adapter objects which makes them
focusable like before. However, the no keybindings or anything are taken
to react on the value.
2018-04-25 00:21:26 +02:00
Marcel Hollerbach fa02849193 gen****: just set focus to genlist / gengrid if no item is available
Additional move requests are still redirected to the gen**** widget.

ref T6805
2018-04-25 00:17:58 +02:00
Marcel Hollerbach 94b7d53c3b elm_genlist: do not not right left top down in action_move
the internal movement logic was resulting in wrong movements skipping
children items.
2018-04-25 00:16:50 +02:00
Marcel Hollerbach d7011b52e7 efl_ui_focus_composition: add fields for manager and parent
the manager objects are build on the assertion that registered elements
are returning the manager they are registered on if
efl_ui_focus_object_manager_get is called.
2018-04-25 00:16:50 +02:00
Xavi Artigas 5a6486ea9f Efl.Page.*_* (From Efl.Page.*.*)
Including Efl.Page.Indicator.* and Efl.Page.Transition.*

Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:59 -07:00
Xavi Artigas 92f176fea1 Efl.Ui.Navigation_Bar_Part* (From Efl.Ui.Navigation_Bar.Part*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:58 -07:00
Xavi Artigas a1cf343d9b Elm.Toolbar_* (from Elm.Toolbar.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:57 -07:00
Xavi Artigas 98251d40e8 Efl.Ui.Focus.Manager_Window_Root (from Efl.Ui.Focus.Manager.Window_Root)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:57 -07:00
Xavi Artigas dc3336536d Efl.Ui.Dnd_Container (from Efl.Ui.Dnd.Container)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:56 -07:00
Xavi Artigas f1c92cfcf3 Efl.Ui.Win_* (from Efl.Ui.Win.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:55 -07:00
Xavi Artigas 147403d56b Efl.Ui.Widget_* (from Efl.Ui.Widget.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:55 -07:00
Xavi Artigas 3ba0b394b5 Efl.Ui.View_List_* (from Efl.Ui.View.List.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:54 -07:00
Xavi Artigas 2c995fbac4 Efl.Ui.Focus.Parent_Provider_* (from Efl.Ui.Focus.Parent_Provider.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:53 -07:00
Xavi Artigas 189fbd335b Efl.Ui.Focus.Manager_* (from Efl.Ui.Focus.Manager.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:52 -07:00
Xavi Artigas faff72e6ad Efl.Access.Text_* (from Efl.Access.Text.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:04:01 -07:00
Xavi Artigas 3b489a71e2 Efl.Ui.Textpath_* (from Efl.Ui.Textpath.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:04:00 -07:00
Xavi Artigas 9ded795830 Efl.Ui.Slider_Part_Indicator (from Efl.Ui.Slider.Part_Indicator)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:04:00 -07:00
Xavi Artigas 0b6a0fdc97 Efl.Ui.Scrollable_Interactive (from Efl.Ui.Scrollable.Interactive)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:59 -07:00
Xavi Artigas d61f3fbb1d Efl.Ui.Progressbar_Part (from Efl.Ui.Progressbar.Part)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:58 -07:00
Xavi Artigas f01b82cf51 Efl.Ui.Popup_* (from Efl.Ui.Popup.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:57 -07:00
Xavi Artigas bf4156b1c7 Efl.Ui.Panes_Part (from Efl.Ui.Panes.Part)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:56 -07:00
Xavi Artigas 08e93f8df8 Efl.Ui.Multibuttonentry_Part (from Efl.Ui.Multibuttonentry.Part)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:55 -07:00
Xavi Artigas b2d25a6e10 Efl.Ui.Layout.Part_* (from Efl.Ui.Layout.Part.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:54 -07:00