platform/upstream/efl.git
4 years agoecore-wl2: Fix formatting and remove duplicate EAPI
Christopher Michael [Thu, 5 Sep 2019 11:57:41 +0000 (07:57 -0400)]
ecore-wl2: Fix formatting and remove duplicate EAPI

Fix some doxygen formatting issues and remove a duplicated EAPI in
front of function.

NB: No functional changes

4 years agoEvil: remove installation of header and pc files, remove from git Evil.h
Vincent Torri [Thu, 5 Sep 2019 09:21:10 +0000 (09:21 +0000)]
Evil: remove installation of header and pc files, remove from git Evil.h

this patch finishes to remove Evil public headers

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9847

4 years agoevas_textblock: apply coding convention
Ali Alzyod [Tue, 3 Sep 2019 11:05:08 +0000 (11:05 +0000)]
evas_textblock: apply coding convention

Reviewed-by: Tom Hacohen <tom@stosb.com>
Differential Revision: https://phab.enlightenment.org/D9819

4 years agoefl_ui_text: EFL_UI_EVENT_SELECTION_CLEARED not called
abdulleh Ghujeh [Wed, 28 Aug 2019 15:04:51 +0000 (15:04 +0000)]
efl_ui_text: EFL_UI_EVENT_SELECTION_CLEARED not called

-Add a callback to ui_text for event EFL_UI_EVENT_SELECTION_CLEARED
-Select any text in the ui_text
-Clear selection by clicking any area by mouse or pressing arrows in keyboard
-The selection get cleared but the callback will never be called.

Reviewed-by: Tom Hacohen <tom@stosb.com>
Differential Revision: https://phab.enlightenment.org/D9771

4 years agoefl_ui_text : Clear selection after past on selected text
abdulleh Ghujeh [Wed, 28 Aug 2019 11:22:38 +0000 (11:22 +0000)]
efl_ui_text : Clear selection after past on selected text

{F3752242}Select part of a text and past a smaller text on it the selection will still there.

Reviewed-by: Tom Hacohen <tom@stosb.com>
Differential Revision: https://phab.enlightenment.org/D9766

4 years agoefl_ui_collection: use the correct min size hint
Marcel Hollerbach [Wed, 28 Aug 2019 19:11:11 +0000 (21:11 +0200)]
efl_ui_collection: use the correct min size hint

there are not enough size hints, we should add more!
I mixed up which size hints i should have used here, after some back and
forth it turns out that i should use the combined. This fixes the list
example.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9779

4 years agoelm_test: don't use legacy win api in interfaces tags case
Mike Blumenkrantz [Tue, 3 Sep 2019 17:13:40 +0000 (13:13 -0400)]
elm_test: don't use legacy win api in interfaces tags case

fix T7754

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9829

4 years agotests/check: use test namespace for legacy check test function names
Mike Blumenkrantz [Tue, 3 Sep 2019 18:11:25 +0000 (14:11 -0400)]
tests/check: use test namespace for legacy check test function names

no functional changes

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9830

4 years agoefl/widget: un-@protected style property set
Mike Blumenkrantz [Fri, 30 Aug 2019 17:39:17 +0000 (13:39 -0400)]
efl/widget: un-@protected style property set

this is needed for some cases and there isn't a specific reason to keep
it proected

fix T8100

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9803

4 years agoevas_textblock: fix compilation without harfbuzz
Ali Alzyod [Thu, 5 Sep 2019 08:26:57 +0000 (08:26 +0000)]
evas_textblock: fix compilation without harfbuzz

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

4 years agoelm_entry: handle cursor delete/backspace with clusters consist of one or multible...
Ali Alzyod [Thu, 5 Sep 2019 05:52:51 +0000 (14:52 +0900)]
elm_entry: handle cursor delete/backspace with clusters consist of one or multible glyphs

Summary:
Cluster consist of one glyph, expected to be removed on backspace or delete key.
Cluster consist of multible glyph, expectd to remove part of on backspace or delete key.

This is behaviour founded in Android. (our current way of handling similar to Qt)

**New Behaviour**
{F3750386}

**Old Behaviour**
{F3750387}

Test Plan:
Auto Testing is challenging because there are no easy way to emulate keyboard down on elm_entry
```
#include <Elementary.h>

EAPI_MAIN int
elm_main(int argc, char **argv)
{
   Evas_Object *win,*box,*entry;

   elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);

   win = elm_win_util_standard_add("", "");
   elm_win_autodel_set(win, EINA_TRUE);

   box = elm_box_add(win);
   entry = elm_entry_add(box);

   evas_object_size_hint_weight_set(box,EVAS_HINT_EXPAND,EVAS_HINT_EXPAND);
   evas_object_size_hint_align_set(box,EVAS_HINT_FILL,EVAS_HINT_FILL);

   elm_entry_entry_set(entry,"<font=NotoColorEmoji wrap=mixed >🇧🇬อั🇧🇬อั&#x1F600;&#x1F600;&#x1F600;&#x1F600;&#x1F600;อั</font>");
   evas_object_size_hint_weight_set(entry,EVAS_HINT_EXPAND,0.9);
   evas_object_size_hint_align_set(entry,EVAS_HINT_FILL,EVAS_HINT_FILL);
   evas_object_show(entry);
   evas_object_show(box);

   elm_box_pack_end(box,entry);
   elm_win_resize_object_add(win,box);
   evas_object_resize(win,320,480);

   evas_object_size_hint_weight_set(entry,EVAS_HINT_EXPAND,0.1);
   evas_object_size_hint_align_set(entry,EVAS_HINT_FILL,EVAS_HINT_FILL);

   evas_object_show(win);
   elm_run();

   return 0;
}
ELM_MAIN()

```

Reviewers: tasn, woohyun, bowonryu

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

4 years agoEfreet_Uri: fix URI decoding when a Windows path (letter followed by :) is passed...
Vincent Torri [Wed, 4 Sep 2019 19:09:41 +0000 (20:09 +0100)]
Efreet_Uri: fix URI decoding when a Windows path (letter followed by :) is passed to efreet_uri_decode()

Summary: uri decoding returned a wrong URI when a Windows path is given

Test Plan: rage, which is using efreet_uri  is now playing files on Windows

Reviewers: raster, cedric, zmike, stefan_schmidt

Reviewed By: raster

Subscribers: stefan_schmidt, #reviewers, #committers

Tags: #efl

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

4 years agoefl_io_model: remove custom counting logic
Marcel Hollerbach [Wed, 4 Sep 2019 17:39:42 +0000 (13:39 -0400)]
efl_io_model: remove custom counting logic

Summary:
this logic brings a few problems:

- When files are annonced here, without the monitor having the context
of the files, immidiat actions like deletion of the file are resulting
in no deletion event. Which is definitly a bug, so we need to wait here
for the monitor.

- When a new count is annonced before the files are there from the
monitor, we are heading towards the same issue - additionally, we might
already have files available, due to the custom counting that are not
annoncned through the monitor, which means, at a later pointer we are
annoncing a new file which is already available via the API.

Right now i do not see a way to continue with this code, it caused major
issues with our CI and the POLL backend, for now things do work again.
Depends on D9624

Reviewers: zmike, stefan_schmidt, cedric, felipealmeida

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

4 years agoeolian: make sure to include by_ref in validation of expressions
Daniel Kolesa [Wed, 4 Sep 2019 16:05:49 +0000 (18:05 +0200)]
eolian: make sure to include by_ref in validation of expressions

4 years agoeolian: remove the expression eval_type API
Daniel Kolesa [Wed, 4 Sep 2019 16:00:58 +0000 (18:00 +0200)]
eolian: remove the expression eval_type API

This is unnecessary because for all contexts where type is
relevant the validator already makes sure the type and expression
match correctly, so you don't ever need to re-validate it. If you
are doing a generic case and are not sure, just use MASK_ALL.

4 years agofix parsing module path on Windows
Vincent Torri [Wed, 4 Sep 2019 15:39:02 +0000 (16:39 +0100)]
fix parsing module path on Windows

Summary: only '/' path separator is used while on Windows it can also be '\\'. Fix rage and emotion_test play of videos

Test Plan: emotion_test plays videos while it didn't before this patch

Reviewers: raster, cedric, zmike

Reviewed By: raster

Subscribers: #reviewers, #committers

Tags: #efl

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

4 years agoEfl_Ui: Move elementary and change namespace Ui for ui related models
SangHyeon Jade Lee [Wed, 4 Sep 2019 15:07:37 +0000 (11:07 -0400)]
Efl_Ui: Move elementary and change namespace Ui for ui related models

Summary:
Select and View is ui characteristic features,
so Efl_Select_Model and Efl_View_Model move to elementary from ecore
seems more natural.

namespace also should changed to Efl.Ui as it's right place.

Test Plan: run the test while building it

Reviewers: cedric, felipealmeida, bu5hm4n, zmike, lauromoura

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

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

4 years agoeolian tests: use new c_type APIs
Daniel Kolesa [Wed, 4 Sep 2019 14:01:01 +0000 (16:01 +0200)]
eolian tests: use new c_type APIs

4 years agoeolian: proper error message for @by_ref on pointer types
Daniel Kolesa [Wed, 4 Sep 2019 13:58:48 +0000 (15:58 +0200)]
eolian: proper error message for @by_ref on pointer types

4 years agoeolian: add APIs to get full C types of parameters/returns/fields
Daniel Kolesa [Wed, 4 Sep 2019 13:56:32 +0000 (15:56 +0200)]
eolian: add APIs to get full C types of parameters/returns/fields

These are needed because the type itself does not carry all the
information it needs to carry (particularly by_ref).

4 years agoector: add FIXME for coming issues.
Hermet Park [Wed, 4 Sep 2019 11:01:53 +0000 (20:01 +0900)]
ector: add FIXME for coming issues.

We have no any test resouce but it seems very weird code...
Leave a comment for future task.

4 years agoefl_ui_timepicker: change a property name (ampm -> is_24hour)
WooHyun Jung [Wed, 4 Sep 2019 05:06:23 +0000 (14:06 +0900)]
efl_ui_timepicker: change a property name (ampm -> is_24hour)

Summary:
For better understanding of the property, "is_24hour" looks
better than "ampm".

@ref T7901

Reviewers: zmike, segfaultxavi, bu5hm4n, kimcinoo

Reviewed By: segfaultxavi, kimcinoo

Subscribers: kimcinoo, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7901

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

4 years agodocs: Update focus documentation
Xavi Artigas [Tue, 3 Sep 2019 15:56:23 +0000 (15:56 +0000)]
docs: Update focus documentation

Lots of improvements to the focus-related classes.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9828

4 years agoefl_ui_position_manager_grid: honor NULL objects
Marcel Hollerbach [Tue, 3 Sep 2019 08:55:40 +0000 (10:55 +0200)]
efl_ui_position_manager_grid: honor NULL objects

its sometimes possible that there is a NULL object returned by the batch
call. We should not just access the NULL element. Additionally, if NULL
was returned during visibility setting, we need to set visibility here.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9827

4 years agoefl_ui_grid_position_manager: recalculate max min size correctly
Marcel Hollerbach [Tue, 3 Sep 2019 08:52:04 +0000 (10:52 +0200)]
efl_ui_grid_position_manager: recalculate max min size correctly

we are walking all the items anyways, so we can recalc the minsize here
anyways. Additionally, this pm was never tested with code that just
passes a set of items at data-access init time, without calling
item_added for each item. (Which is perfectly fine). With this commit
this is now perfectly possible,

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9826

4 years agoefl_ui_position_manager_list: skip cache calculation for not finalized
Marcel Hollerbach [Tue, 3 Sep 2019 08:26:05 +0000 (10:26 +0200)]
efl_ui_position_manager_list: skip cache calculation for not finalized

if we are not finalized yet, there is no reason to calculate the caches,
as this will be redone later on anyways.

Co-authored-by: Mike Blumenkrantz <zmike@samsung.com>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9825

4 years agoefl_ui_positon_manager_list: skip viewport size setting if its the same
Marcel Hollerbach [Tue, 3 Sep 2019 08:25:48 +0000 (10:25 +0200)]
efl_ui_positon_manager_list: skip viewport size setting if its the same

this can be skipped.

Co-authored-by: Mike Blumenkrantz <zmike@samsung.com>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9824

4 years agoefl_ui_position_manager_list: require cache here
Marcel Hollerbach [Tue, 3 Sep 2019 08:23:49 +0000 (10:23 +0200)]
efl_ui_position_manager_list: require cache here

the cache need to be required here, as we are going to access it later
on.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9823

4 years agoefl_ui_position_manager_list: set visibilitly more often
Marcel Hollerbach [Tue, 3 Sep 2019 08:23:29 +0000 (10:23 +0200)]
efl_ui_position_manager_list: set visibilitly more often

it is possible that the object returned by the batching call is NULL.
That is valid, however, if the batching call for the visibility is
getting the NULL element, but the placement is getting the none NULL
element, then the item on screen will not be visible. This commit
ensures that those items will be visible.

Co-authored-by: Mike Blumenkrantz <zmike@samsung.com>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9822

4 years agoefl_ui_position_manager_list: error when we detect that sizes are wrong
Marcel Hollerbach [Tue, 3 Sep 2019 08:21:38 +0000 (10:21 +0200)]
efl_ui_position_manager_list: error when we detect that sizes are wrong

when sizes are different to the cached size, then the displayed items
are out of order, or do not fill the whole viewport. This should not
happen. In case that this is detected, print an error.

Co-authored-by: Mike Blumenkrantz <zmike@samsung.com>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9821

4 years agoeina benchmarks: remove dereference of null
Shinwoo Kim [Tue, 3 Sep 2019 16:04:16 +0000 (12:04 -0400)]
eina benchmarks: remove dereference of null

Summary:
A static analysis tool detects return value of malloc could be NULL and its
following lines could have derefernece of NULL case.

Reviewers: bu5hm4n, zmike, Hermet

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

4 years agotests: use void cast with util callback
Mike Blumenkrantz [Tue, 3 Sep 2019 16:17:25 +0000 (18:17 +0200)]
tests: use void cast with util callback

Summary: fixes a compiler warning

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

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

4 years agoeolian: add support for function pointers in utility APIs
Daniel Kolesa [Tue, 3 Sep 2019 13:03:44 +0000 (15:03 +0200)]
eolian: add support for function pointers in utility APIs

4 years agoeolian: fix typos in function_return_is_by_ref
Daniel Kolesa [Tue, 3 Sep 2019 13:02:00 +0000 (15:02 +0200)]
eolian: fix typos in function_return_is_by_ref

4 years agoeolian_gen: do not generate reflection for ref-returns
Daniel Kolesa [Mon, 2 Sep 2019 13:55:49 +0000 (15:55 +0200)]
eolian_gen: do not generate reflection for ref-returns

4 years agodocs: Update focus documentation
Xavi Artigas [Tue, 3 Sep 2019 09:46:52 +0000 (11:46 +0200)]
docs: Update focus documentation

4 years agoefl_ui/scroll_manager: make scroll direction changes more responsive with wheel
Mike Blumenkrantz [Tue, 3 Sep 2019 07:28:11 +0000 (09:28 +0200)]
efl_ui/scroll_manager: make scroll direction changes more responsive with wheel

Summary:
if the wheel event being processed is in a different direction than the
existing scroll animation, drop the previous animation and immediately
begin scrolling in the opposite direciton

fix T8052

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8052

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

4 years agoWhitespace
Xavi Artigas [Tue, 3 Sep 2019 07:17:43 +0000 (09:17 +0200)]
Whitespace

4 years agoapi: remove Efl.Ui.Scroll_Block
Mike Blumenkrantz [Tue, 3 Sep 2019 07:06:10 +0000 (09:06 +0200)]
api: remove Efl.Ui.Scroll_Block

Summary:
this now uses layout orient enum everywhere

fix T7921

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7921

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

4 years agodocs: Fix typos and wrap EO files to 120 chars
Xavi Artigas [Mon, 2 Sep 2019 14:24:26 +0000 (16:24 +0200)]
docs: Fix typos and wrap EO files to 120 chars

As per our style guide:
https://www.enlightenment.org/contrib/docs/eo-guide.md

4 years agoeolian: move all tests to use the new @move syntax and API
Daniel Kolesa [Mon, 2 Sep 2019 13:23:21 +0000 (15:23 +0200)]
eolian: move all tests to use the new @move syntax and API

4 years agoelua: remove old is_owned api bindings
Daniel Kolesa [Mon, 2 Sep 2019 13:07:01 +0000 (15:07 +0200)]
elua: remove old is_owned api bindings

4 years agoeolian_gen: use new is_move APIs to check ownership transfers
Daniel Kolesa [Mon, 2 Sep 2019 13:05:34 +0000 (15:05 +0200)]
eolian_gen: use new is_move APIs to check ownership transfers

4 years agoRevert "eolian_mono: remove underscore of Evt_Args"
Jaehyun Cho [Mon, 2 Sep 2019 12:41:20 +0000 (21:41 +0900)]
Revert "eolian_mono: remove underscore of Evt_Args"

This reverts commit ac99e2ac9410d5b2ef6225fa1aaaf9ffcd6578fb.

This patch is reverted because D9692 covers this patch.

4 years agocsharp: add SetKeyValue and GetKeyValue to EoWrapper
Jaehyun Cho [Mon, 2 Sep 2019 12:26:58 +0000 (21:26 +0900)]
csharp: add SetKeyValue and GetKeyValue to EoWrapper

Summary:
SetKeyValue adds a value object associated with a key object to hash
table.
GetKeyValue returns a value object associated with a key object from
hash table.

Reviewers: felipealmeida, lauromoura, vitor.sousa, woohyun, cedric

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

Tags: #efl

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

4 years agoeolian_mono: remove underscore of Evt_Args
Jaehyun Cho [Mon, 2 Sep 2019 12:14:44 +0000 (21:14 +0900)]
eolian_mono: remove underscore of Evt_Args

Since C# does not use underscore in type name, the underscore of
Evt_Args is removed.

4 years agoefl_canvas_animation_player: delete previous target event callback
Yeongjong Lee [Mon, 2 Sep 2019 11:55:51 +0000 (20:55 +0900)]
efl_canvas_animation_player: delete previous target event callback

Summary:
When target is changed, its event callback related `animation_player` should be
deleted.

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

4 years agorelease: Update NEWS and bump version for 1.23.0-alpha1 release
Stefan Schmidt [Mon, 2 Sep 2019 09:47:11 +0000 (11:47 +0200)]
release: Update NEWS and bump version for 1.23.0-alpha1 release

4 years agodocs: Switch remaining #doxygen-style refs to @eo-style
Xavi Artigas [Mon, 2 Sep 2019 09:57:27 +0000 (11:57 +0200)]
docs: Switch remaining #doxygen-style refs to @eo-style

4 years agoeolian: fix validation of ownability with hashes
Daniel Kolesa [Sat, 31 Aug 2019 12:11:48 +0000 (14:11 +0200)]
eolian: fix validation of ownability with hashes

4 years agoeolian: properly handle non-beta restriction of __undefined_type
Daniel Kolesa [Sat, 31 Aug 2019 12:02:20 +0000 (14:02 +0200)]
eolian: properly handle non-beta restriction of __undefined_type

4 years agoeolian: always validate inner types of complex types for @move
Daniel Kolesa [Sat, 31 Aug 2019 00:09:46 +0000 (02:09 +0200)]
eolian: always validate inner types of complex types for @move

4 years agoelua: add eolian bindings for type_is_move
Daniel Kolesa [Sat, 31 Aug 2019 00:06:05 +0000 (02:06 +0200)]
elua: add eolian bindings for type_is_move

4 years agoeolian: add API to check if an inner type of complex type is @move
Daniel Kolesa [Sat, 31 Aug 2019 00:04:13 +0000 (02:04 +0200)]
eolian: add API to check if an inner type of complex type is @move

This complements the equivalent APIs of parameters and so on.
It is not the same as the older type_is_owned API, which applied
to everything.

4 years agoeolian: refactor ownability validation to accommodate new syntax
Daniel Kolesa [Fri, 30 Aug 2019 23:49:18 +0000 (01:49 +0200)]
eolian: refactor ownability validation to accommodate new syntax

This refactors ownability checks so that they're only performed
in contexts where @move can be specified, which both helps
with performance and enables later removal of ownability info
from types themselves.

4 years agoeolian: validate @by_ref correctness
Daniel Kolesa [Fri, 30 Aug 2019 23:30:00 +0000 (01:30 +0200)]
eolian: validate @by_ref correctness

The @by_ref qualifier can only be used with value types, to
guarantee exactly one level of pointers.

4 years agocxx: Fix example after popup changes.
Lauro Moura [Fri, 30 Aug 2019 19:34:14 +0000 (21:34 +0200)]
cxx: Fix example after popup changes.

Summary: Popup api changed in 1ca07b72da944

Reviewers: zmike, felipealmeida, bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

4 years agoefl_ui_collection: prevent the invalid insertion of items.
Marcel Hollerbach [Fri, 30 Aug 2019 18:50:32 +0000 (14:50 -0400)]
efl_ui_collection: prevent the invalid insertion of items.

Summary:
the group hirachy that you can build up with group items is flattend
down in the collection, as a linear list. Based on that a user might be
able to insert items at invalid positions, like between groups, without
having set the proper group item, which ... is a problem.

This commit ensures that no new item ever destroys the neightboor hood
between two items of the same group or a item with a group and its group
leader.

Reviewers: stefan_schmidt, zmike, segfaultxavi, SanghyeonLee

Reviewed By: SanghyeonLee

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

4 years agoefl_ui/pan: remove pan,viewport,changed event
Mike Blumenkrantz [Fri, 30 Aug 2019 18:48:14 +0000 (14:48 -0400)]
efl_ui/pan: remove pan,viewport,changed event

Summary:
this is just a duplicate of entity geometry changed events, users of
pan should just use those instead

ref T7708
Depends on D9791

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl_widgets

Maniphest Tasks: T7708

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

4 years agoefl_ui/pan: only emit size change event on pan content size change
Mike Blumenkrantz [Fri, 30 Aug 2019 18:48:09 +0000 (14:48 -0400)]
efl_ui/pan: only emit size change event on pan content size change

Summary:
changing the size of the pan content does not require that the pan
position also changes, so let users of pan sort this out using the correct
events

ref T7708
Depends on D9790

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl_widgets

Maniphest Tasks: T7708

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

4 years agoefl_ui/pan: add position info to pan,content_position,changed event
Mike Blumenkrantz [Fri, 30 Aug 2019 18:48:04 +0000 (14:48 -0400)]
efl_ui/pan: add position info to pan,content_position,changed event

Summary:
changed events should always send the related data when possible

ref T7708
Depends on D9789

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl_widgets

Maniphest Tasks: T7708

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

4 years agoefl_ui/pan: add pan,content_size,changed event
Mike Blumenkrantz [Fri, 30 Aug 2019 18:47:58 +0000 (14:47 -0400)]
efl_ui/pan: add pan,content_size,changed event

Summary:
this is a shortcut so pan users don't have to manually hook the content
resize event
Depends on D9788

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl_widgets

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

4 years agoefl_ui/pan: rename pan,position,changed -> pan,content_position,changed
Mike Blumenkrantz [Fri, 30 Aug 2019 18:47:52 +0000 (14:47 -0400)]
efl_ui/pan: rename pan,position,changed -> pan,content_position,changed

Summary:
the pan object is not changing its position, it's moving the content

ref T7708
Depends on D9787

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl_widgets

Maniphest Tasks: T7708

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

4 years agoefl_ui/pan: remove pan content,changed event
Mike Blumenkrantz [Fri, 30 Aug 2019 18:47:46 +0000 (14:47 -0400)]
efl_ui/pan: remove pan content,changed event

Summary:
this was being emitted as a catch-all for pan changes, where something else
should have been monitored/used instead

ref T7708

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl_widgets

Maniphest Tasks: T7708

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

4 years agoevas_filter_parser: remove dereferenced NULL
Shinwoo Kim [Fri, 30 Aug 2019 13:17:59 +0000 (09:17 -0400)]
evas_filter_parser: remove dereferenced NULL

Summary:
This is detected by static analysis tool.
The variable last could be NULL when it is dereferenced.

Reviewers: Hermet, zmike, bu5hm4n

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

4 years agoelm sel mgr - remove event handlers when no drop targets are left
Carsten Haitzler (Rasterman) [Fri, 30 Aug 2019 17:17:38 +0000 (18:17 +0100)]
elm sel mgr - remove event handlers when no drop targets are left

case left over that this didnt handle right and this breaks e's dnd
once a file preview popup appears.

@fix

4 years agotests: use void cast with util callback
Mike Blumenkrantz [Fri, 30 Aug 2019 17:02:55 +0000 (13:02 -0400)]
tests: use void cast with util callback

fixes a lot of compiler warnings

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9802

4 years agoefl_ui/popup: timeout -> closing_timeout
Mike Blumenkrantz [Fri, 30 Aug 2019 17:02:01 +0000 (13:02 -0400)]
efl_ui/popup: timeout -> closing_timeout

simple property rename

ref T7902

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9801

4 years agodocs: Proper documentation for Collection and Item classes
Xavi Artigas [Fri, 30 Aug 2019 09:53:40 +0000 (11:53 +0200)]
docs: Proper documentation for Collection and Item classes

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl, #documentation

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

4 years agoelua: expose new tags via eolian bindings
Daniel Kolesa [Fri, 30 Aug 2019 15:14:09 +0000 (17:14 +0200)]
elua: expose new tags via eolian bindings

4 years agoeolian: add API to expose the new @move and @by_ref tags
Daniel Kolesa [Fri, 30 Aug 2019 15:04:44 +0000 (17:04 +0200)]
eolian: add API to expose the new @move and @by_ref tags

4 years agoeolian: add parsing for @move and @by_ref
Daniel Kolesa [Fri, 30 Aug 2019 14:08:31 +0000 (16:08 +0200)]
eolian: add parsing for @move and @by_ref

The @by_ref qualifier is now allowed on parameters, returns and
struct fields in the usual qualifier section. It will mean that
this type is passed around by reference, and will only be allowed
on types that are not already pointer-like.

The @move qualifier will replace @owned as one with a clearer
meaning. It means "transfer of ownership". It has the same semantics
as the current @owned, i.e. on return values it transfers ownership
of the value to the caller, on parameters it transfers ownership
to the callee (the inverse is the default when not specified).
On struct fields, it means the field will transfer together with
the struct that contains it.

4 years agoelm_entry: add null check logic on elm_entry_text_set API
Bowon Ryu [Fri, 30 Aug 2019 12:47:19 +0000 (08:47 -0400)]
elm_entry: add null check logic on elm_entry_text_set API

Summary: If current_text is NULL, a segmentation fault is occured.

Test Plan: N/A

Reviewers: cedric, Hermet, Jaehyun_Cho, zmike

Reviewed By: zmike

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

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

4 years agotest_ui_slder: remove meaningless printf when reaching the limit
WooHyun Jung [Fri, 30 Aug 2019 12:42:41 +0000 (08:42 -0400)]
test_ui_slder: remove meaningless printf when reaching the limit

Summary:
Without new internal min/max properties, this may be the only way
to not give redundant printing of the meaningless value.

@ref T8188

Test Plan:
1. elementary_test
2. EFl.Ui.Slider
3. On the limit slider, move the knob above the limit

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8188

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

4 years agoeio - don't call cb's after a cancel
Carsten Haitzler (Rasterman) [Fri, 30 Aug 2019 11:43:24 +0000 (12:43 +0100)]
eio - don't call cb's after a cancel

i saw a segv in e/efm .. an eio call was called after it had been
canceled. this should never happen. ever. so ensure it does not once
an eio file has been canceled.

@fix

4 years agoefl_ui_datetime: change min/max to date_min/date_max
WooHyun Jung [Fri, 30 Aug 2019 10:08:16 +0000 (12:08 +0200)]
efl_ui_datetime: change min/max to date_min/date_max

Summary:
To keep consistency with other classes, change the property name
properly.

@ref T7869

Reviewers: zmike, segfaultxavi, bu5hm4n

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7869

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

4 years agocsharp: Fix factory inheritance.
Lauro Moura [Fri, 30 Aug 2019 05:33:28 +0000 (14:33 +0900)]
csharp: Fix factory inheritance.

Summary:
C#'s factory must inherit from `LayoutFactory` so we can access its
implementation of `FactoryBind`.

Depends on D9759 to avoid test failure on PropertyBound events.

Reviewers: felipealmeida, cedric, SanghyeonLee

Reviewed By: SanghyeonLee

Subscribers: #reviewers, #committers

Tags: #efl

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

4 years agoedje/optimization: refactor edje_color_class_set() api.
subhransu mohanty [Thu, 29 Aug 2019 18:31:52 +0000 (14:31 -0400)]
edje/optimization: refactor edje_color_class_set() api.

Summary:
During _elm_config_color_overlay_apply() application can call this api
100's of time depending on how many overlay it wants add . As each color_class
set triggers the global color class apply chain 3 times (for color , outline and shadow)
just club them once and emit single color_class,set event.

Reviewers: Hermet, ali.alzyod, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

4 years agoedje/style: append file prefix to textblock_style api that affects on file level
subhransu mohanty [Thu, 29 Aug 2019 14:07:25 +0000 (10:07 -0400)]
edje/style: append file prefix to textblock_style api that affects on file level

Summary:
All those api's are working on the Edje_file level so by appending the file prefix
and changing the argument to Edje_File leads to easy maintainability.

Depends on D9776

Reviewers: Hermet, ali.alzyod, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

4 years agoelm_systray: add back beta constructor
Marcel Hollerbach [Thu, 29 Aug 2019 14:06:42 +0000 (10:06 -0400)]
elm_systray: add back beta constructor

Summary:
1/2 year  ago we have removed the automatic generation of legacy
headers. In this go we also removed the installation of legacy eo beta
APIs, as they definitly should not be used. However, there is the legacy
systray API which does not depend directly on eo. Apps could use this
before due to specifying the BETA define, now they only can call the
API, but cannot construct the object they need. This adds this back
under the beta tag, so those apps can continue working.

I am not sure myself if i like the commit or not, its a beta thing, why
should we fix it. However, Its quite a easy thing to add such a
constructor method for us, and enables app to continue working.

Reviewers: zmike, segfaultxavi

Reviewed By: zmike

Subscribers: jf_simon, cedric, #reviewers, #committers

Tags: #efl

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

4 years agoelm config -> allow people to set desktop entry and magnifier config
Carsten Haitzler (Rasterman) [Thu, 29 Aug 2019 16:29:38 +0000 (17:29 +0100)]
elm config -> allow people to set desktop entry and magnifier config

4 years agoelm config - add config api's to set desktop style entry flag/mode
Carsten Haitzler (Rasterman) [Thu, 29 Aug 2019 16:15:32 +0000 (17:15 +0100)]
elm config - add config api's to set desktop style entry flag/mode

4 years agoevas -gl engines - buffer age - bring back fix for changing buffer age
Carsten Haitzler (Rasterman) [Tue, 27 Aug 2019 22:05:18 +0000 (23:05 +0100)]
evas -gl engines - buffer age - bring back fix for changing buffer age

so we USED to... if buffer age changed between frames, force a full
redraw and add that to the pipeline... somehow someone removed that.
this brings that back as it's really needed to deal with updating
correctly.

@fix

4 years agomono-docs: Update DocFX version and use online symbol lookup
Xavi Artigas [Thu, 29 Aug 2019 15:44:16 +0000 (17:44 +0200)]
mono-docs: Update DocFX version and use online symbol lookup

Version 2.45 of DocFX seems much much faster than previous 2.40, but could just
be a matter of stale caches. Anyway, no breakages have been detected.
Using an online symbol resolution server (https://xref.docs.microsoft.com)
adds some more links for .NET symbols (and no noticeable slowdown).

4 years agoefl: implement efl.file::unload for classes that implement load
Mike Blumenkrantz [Thu, 29 Aug 2019 13:26:15 +0000 (09:26 -0400)]
efl: implement efl.file::unload for classes that implement load

unload is a crucial method for classes that implement load, as this is
the method which is called during e.g., efl_file_simple_load() when
a new file is specified in order to destroy the previous object data

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9786

4 years agoefl_ui/alert_popup: always create button layout
Mike Blumenkrantz [Wed, 28 Aug 2019 13:47:25 +0000 (09:47 -0400)]
efl_ui/alert_popup: always create button layout

this can be safely done in the constructor without issues now

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9785

4 years agomvvm: Fix Layout_Factory property bound event
Lauro Moura [Tue, 27 Aug 2019 23:58:06 +0000 (23:58 +0000)]
mvvm: Fix Layout_Factory property bound event

We should keep the key alive at least until the `property,bound` event
is emmitted.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9759

4 years agofix build: remove deleted header file
Marcel Hollerbach [Thu, 29 Aug 2019 13:27:07 +0000 (15:27 +0200)]
fix build: remove deleted header file

- sorry.

4 years agoeolian: disallow legacy keyword in enums in stable api
Daniel Kolesa [Thu, 29 Aug 2019 13:05:24 +0000 (15:05 +0200)]
eolian: disallow legacy keyword in enums in stable api

This also marks a bunch of users of that as beta, as they were
effectively beta.

4 years agoeolian: reverse keywords '@transfer' and '@by_ref'
Daniel Kolesa [Thu, 29 Aug 2019 12:43:41 +0000 (14:43 +0200)]
eolian: reverse keywords '@transfer' and '@by_ref'

The '@transfer' keyword is a clearer replacement for '@owned'.
It will be specified on params/returns/... to specify that
ownership will be transferred between caller/callee.

4 years agoeina_test: resolve build warning
Ali Alzyod [Thu, 29 Aug 2019 07:44:22 +0000 (07:44 +0000)]
eina_test: resolve build warning

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

4 years agoefl_ui_tab_pager: make this compatible with Efl.Pack_Linear test suite
Marcel Hollerbach [Fri, 23 Aug 2019 17:34:53 +0000 (19:34 +0200)]
efl_ui_tab_pager: make this compatible with Efl.Pack_Linear test suite

the testsuite now is happy with the behaviour in there. Additionally,
the internals are cleaned up, fields that are not used anymore are
deleted, and the logic maintaining them as well.

Reviewed-by: WooHyun Jung <woohyun0705@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9732

4 years agoefl_ui_tab_pager: remove the setter for tab_bar
Marcel Hollerbach [Fri, 23 Aug 2019 17:16:56 +0000 (19:16 +0200)]
efl_ui_tab_pager: remove the setter for tab_bar

the setter of the tab_bar here is quite useless. If you set it after
something else was set, the item situation is not clear anymore, there
is more in the spotlight than in the bar. You cannot use the widget
without tab bar. So the logical consequence for me was that the pager
create the tab bar by itself, and you can just access it via a getter.

Reviewed-by: WooHyun Jung <woohyun0705@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9731

4 years agoefl_ui_tab_bar: migrate to Efl.Pack_Linear
Marcel Hollerbach [Fri, 23 Aug 2019 16:20:32 +0000 (18:20 +0200)]
efl_ui_tab_bar: migrate to Efl.Pack_Linear

with pack linear it is a lot more convinient and error prover to add
items to this widget, this also comes with the pack test suite, which
verifies that this behaviour is not broken. Additionally we have fewer
APIs that a user has to learn.

Reviewed-by: WooHyun Jung <woohyun0705@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9730

4 years agoefl_ui_tab_bar: implement efl.ui.single_selectable
Marcel Hollerbach [Fri, 23 Aug 2019 15:51:49 +0000 (17:51 +0200)]
efl_ui_tab_bar: implement efl.ui.single_selectable

this is for now the simples way IMO, the one or another implementation
thing in efl_ui_tab_pager is a little bit clumsy, but that should be
able to be improved once Efl.Pack_Linear is implemented.

Reviewed-by: WooHyun Jung <woohyun0705@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9729

4 years agoefl_ui_tab_page: remove part
Marcel Hollerbach [Fri, 23 Aug 2019 15:33:50 +0000 (17:33 +0200)]
efl_ui_tab_page: remove part

I introduced the property for item a few patches earlier. I do not want
to use a part for this, as i would have to implement the class twice
(Once in the part, once as a selfstanding object).
It would also be kind of weird to have code like:
efl_content_set(efl_part(efl_part("item"), "tab"),bla).

The purpose of this part also got a little bit replaced when the item
was introduced, as this is the central point of data for the tab bar
icon. So need for an additional editition part.

Reviewed-by: WooHyun Jung <woohyun0705@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9728

4 years agoefl_ui_tab_bar: remove update event
Marcel Hollerbach [Thu, 29 Aug 2019 12:31:24 +0000 (21:31 +0900)]
efl_ui_tab_bar: remove update event

Summary:
before the previous commit this was used to update the tab_bar icon.
However, this is not needed anymore, as the item stuff can directly be
updated. So I do not see a reason for this event anymore.

Reviewers: zmike, segfaultxavi, cedric, woohyun, bowonryu

Reviewed By: woohyun

Subscribers: #reviewers, #committers

Tags: #efl

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

4 years agoefl_ui_*_default_item: improve docs
Marcel Hollerbach [Thu, 29 Aug 2019 12:13:46 +0000 (14:13 +0200)]
efl_ui_*_default_item: improve docs

Summary:
ref T7717
Depends on D9782

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7717

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

4 years agoefl_ui_grid/list: update single class doc
Marcel Hollerbach [Thu, 29 Aug 2019 12:13:42 +0000 (14:13 +0200)]
efl_ui_grid/list: update single class doc

Summary:
its not much more, but a little bit. All other information about the
features in this widget can be found via the implemented interfaces.

ref T7881
ref T7870

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7881, T7870

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

4 years agointroduce efl_ui_tab_bar_default_item
Marcel Hollerbach [Thu, 29 Aug 2019 12:07:47 +0000 (21:07 +0900)]
introduce efl_ui_tab_bar_default_item

Summary:
Tab bar used a direct layout to implement all this functionality by its
own. However, it seems that we can reuse a lot of object functionality
that is already part of efl.ui.item. With this commit the features that
are not part of Efl.Ui.Item are moved to Efl.Ui.Tab_Bar_Default_Item.

The tab bar is changed in a way that you do not need to pass the icon
and label by hand anymore, you can rather just pass the tab_bar default
item. Additionally, the item for a tab_page can now directly be
generated from a page.

This is the first commit in order to cleanup efl_ui_tab_bar, tab_page &
tab_pager. The goal is also to implement our interfaces for inserting
elements on those objects. So our common test suites can also be used.

Reviewers: zmike, segfaultxavi, cedric, woohyun, bowonryu

Reviewed By: woohyun

Subscribers: #reviewers, #committers

Tags: #efl

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