platform/upstream/efl.git
6 years agoefl_ui_clock(elm_datetime): Add tizen only features. 47/167247/3
Woochan Lee [Tue, 16 Jan 2018 10:26:52 +0000 (19:26 +0900)]
efl_ui_clock(elm_datetime): Add tizen only features.

Change-Id: Ia989437f9ec17dbc48671aa5d251c0685b0ed42f

6 years agoelm_spinner: Add Tizen_Only features. 26/167126/4
Woochan Lee [Mon, 15 Jan 2018 12:23:49 +0000 (21:23 +0900)]
elm_spinner: Add Tizen_Only features.

It's for supporting Tizen UX, and compatibility.

Change-Id: Ide9913926b6204c944618a791d032d40ca702734

6 years agoelementary label: add missing code for style user push/pop/peek patch
Youngbok Shin [Thu, 18 Jan 2018 05:44:43 +0000 (14:44 +0900)]
elementary label: add missing code for style user push/pop/peek patch

@tizen_fix

6 years agoelementary layout: add internal APIs for handling a part's alignment
Youngbok Shin [Thu, 18 Jan 2018 05:38:51 +0000 (14:38 +0900)]
elementary layout: add internal APIs for handling a part's alignment

It is added for C# requirements.

@tizen_feature

6 years agoelementary: Apply paragraph direction according to locale
Youngbok Shin [Thu, 18 Jan 2018 05:32:37 +0000 (14:32 +0900)]
elementary: Apply paragraph direction according to locale

It checks the direction of current system locale by
getting internally predefined keyword "default:LTR" and "default:RTL".

@tizen_feature

6 years agoelementary: fix EFL_UI_WIDGET_EXTRA_OPS redefined issue caused by color class patches
Youngbok Shin [Thu, 18 Jan 2018 05:10:24 +0000 (14:10 +0900)]
elementary: fix EFL_UI_WIDGET_EXTRA_OPS redefined issue caused by color class patches

@tizen_fix

6 years agoatspi: remove build warning for efl_access interface 92/167492/2
JunsuChoi [Thu, 18 Jan 2018 04:14:51 +0000 (13:14 +0900)]
atspi: remove build warning for efl_access interface

Change-Id: Ie3ba859053d0bfe42e7327ce9c014cd720512622

6 years agoelementary: Override Paragraph Direction APIs
Youngbok Shin [Thu, 18 Jan 2018 05:00:58 +0000 (14:00 +0900)]
elementary: Override Paragraph Direction APIs

@tizen_feature

6 years agoDefault theme: remove wrong targets from program. 07/167307/5
Myoungwoon Roy, Kim [Wed, 17 Jan 2018 02:47:18 +0000 (11:47 +0900)]
Default theme: remove wrong targets from program.

    Some of styles contain STATE_SET programs, that try to switch part into
    non existents description. For desctop application, such as Enventor and
    Eflete this make launch and work slow.
    This commit fix this situation by removing wrong targets or add missed
    states into target parts.

    Change-Id: Ia9f51afaa096cadff363d7ea28d40059b5be04a2
Signed-off-by: Mykyta Biliavskyi <m.biliavskyi@samsung.com>
Original commit: c214b769d8d83bd222447f39e150fdcbed5fac11

Change-Id: I2971c3c80c51b7949f69622601a427d3a6d8d1ab

6 years agoctxpopup: fix unintentional item style change 80/167480/2
JinYong Park [Thu, 18 Jan 2018 02:20:45 +0000 (11:20 +0900)]
ctxpopup: fix unintentional item style change

When ctxpopup set style, show, set horizontal, change item's text,
item change style to smae with ctxpopup although it has its own style.

@tizen_fix

original patch : https://review.tizen.org/gerrit/#/c/166589/

Change-Id: I8bdafd1adf34ca3b621925065144dbfb921b01a7
Signed-off-by: JinYong Park <j4939.park@samsung.com>
6 years agoctxpopup: add animation signal emit after sizing eval. 78/167478/2
JinYong Park [Thu, 18 Jan 2018 02:12:00 +0000 (11:12 +0900)]
ctxpopup: add animation signal emit after sizing eval.

In some case, sizing eval calculate new ctxpopup direction,
but animation signal doesn't be emitted.
For example, move ctxpopup after show is called.

@tizen_fix

original patch : https://review.tizen.org/gerrit/#/c/166635/

Change-Id: I6b65a035ab8be6b84e70cd013ee20d2d360ff932
Signed-off-by: JinYong Park <j4939.park@samsung.com>
6 years agoctxpopup: remove deleted api, change old api to new api 62/167362/2
JinYong Park [Wed, 17 Jan 2018 07:33:17 +0000 (16:33 +0900)]
ctxpopup: remove deleted api, change old api to new api

deleted api like focus_cycle produce error, so wrap it in comments
old api like eo_add, atspi produce error too, so it change to new api

Change-Id: I7d20c107e10ab65b09b95037dfac1a95cfff32c5
Signed-off-by: JinYong Park <j4939.park@samsung.com>
6 years agoelm_tooltip: set theme group to NULL
Sungtaek Hong [Wed, 17 Jan 2018 04:39:52 +0000 (13:39 +0900)]
elm_tooltip: set theme group to NULL

Summary:
Even though elm_tooltip does not support EO API, for now,
Efl.Ui.Widget will support elm_tooltip-like feature.
This change group name compatible with new group name policy.

Reviewers: jpeg, woohyun, herdsman, zmike

Subscribers: cedric

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

6 years agoelm_datetime: use legacy elm_button
Sungtaek Hong [Wed, 17 Jan 2018 04:39:33 +0000 (13:39 +0900)]
elm_datetime: use legacy elm_button

Summary:
elm_datetime and Efl.Ui.Clock uses same module: clock_input_ctxpopup.
The module creates internal field object.
Use legay button for field object until Efl.Clock and datetime module
policy is fixed.

Reviewers: jpeg, CHAN, woohyun

Subscribers: cedric

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

6 years agopanes: Expose parts in EO file
Jean-Philippe Andre [Tue, 16 Jan 2018 13:36:04 +0000 (22:36 +0900)]
panes: Expose parts in EO file

6 years agoefl_animation: fix typo
YeongJong Lee [Wed, 17 Jan 2018 03:51:31 +0000 (12:51 +0900)]
efl_animation: fix typo

Test Plan: make

Reviewers: Jaehyun_Cho

Subscribers: cedric, jpeg

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

6 years agoselection: delete callbacks when the manager is deleted
Thiep Ha [Wed, 17 Jan 2018 00:22:13 +0000 (09:22 +0900)]
selection: delete callbacks when the manager is deleted

If the selection manager is deleted before the drop objects
are deleted, we need to remove callbacks in its destructor.

Thank @herdsman for reporting this.

6 years agoefl_ui_focus_manager: fix infinit loop in enlightenment wizard
Marcel Hollerbach [Tue, 16 Jan 2018 22:12:04 +0000 (23:12 +0100)]
efl_ui_focus_manager: fix infinit loop in enlightenment wizard

we unsetted and setted focus_manager once too often, so we ended up in a
infinite loop. This should be fixed now. Sorry Derek!

6 years agoefl_ui_focus: merge efl_ui_focus_user and efl_ui_focus_object into one mixin
Yeongjong Lee [Tue, 16 Jan 2018 20:17:11 +0000 (21:17 +0100)]
efl_ui_focus: merge efl_ui_focus_user and efl_ui_focus_object into one mixin

Summary:
focus_user and focus_object are similar classes. by merging them into
one mixin, we can maintain consistency.

Test Plan: make check

Reviewers: bu5hm4n

Subscribers: cedric, Jaehyun_Cho, woohyun, jpeg

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

6 years agoPyolian: fix and tests for recent changes
Dave Andreoli [Tue, 16 Jan 2018 19:53:20 +0000 (20:53 +0100)]
Pyolian: fix and tests for recent changes

q66: please leave the pyolian updating work to me,
it's harder for me to fix wrong stuff instead of just
implement myself ;)

6 years agoeina: make updating rectangle cache thread safe.
Cedric BAIL [Tue, 16 Jan 2018 17:35:43 +0000 (09:35 -0800)]
eina: make updating rectangle cache thread safe.

6 years agoeolian: do not require unit when stringifying types
Daniel Kolesa [Tue, 16 Jan 2018 15:36:45 +0000 (16:36 +0100)]
eolian: do not require unit when stringifying types

As it is no longer necessary to pass unit when evaluating exprs,
it is not necessary to pass it here either. Convert all the APIs
to the new style and update all instances in our tree.

6 years agoeolian: do not require unit for expr eval APIs
Daniel Kolesa [Tue, 16 Jan 2018 15:10:43 +0000 (16:10 +0100)]
eolian: do not require unit for expr eval APIs

The necessary information is now stored directly in the expr
during database validation.

Also enable expr validation for params.

6 years agoeolian: cache enum expr in the database
Daniel Kolesa [Tue, 16 Jan 2018 14:50:58 +0000 (15:50 +0100)]
eolian: cache enum expr in the database

6 years agoeolian: expose _eval_type to internals
Daniel Kolesa [Tue, 16 Jan 2018 14:30:58 +0000 (15:30 +0100)]
eolian: expose _eval_type to internals

6 years agoexamples: Show off usage of "background" part
Jean-Philippe Andre [Tue, 16 Jan 2018 13:04:21 +0000 (22:04 +0900)]
examples: Show off usage of "background" part

See bg_cxx_example_01

6 years agowidget: Expose "background" part (for bindings)
Jean-Philippe Andre [Tue, 16 Jan 2018 13:04:10 +0000 (22:04 +0900)]
widget: Expose "background" part (for bindings)

6 years agocxx: Remove elm_widget.h from Elementary.hh
Jean-Philippe Andre [Tue, 16 Jan 2018 13:03:49 +0000 (22:03 +0900)]
cxx: Remove elm_widget.h from Elementary.hh

It's internal.

6 years agoselection: Fix two remaining warnings
Jean-Philippe Andre [Tue, 16 Jan 2018 11:36:11 +0000 (20:36 +0900)]
selection: Fix two remaining warnings

6 years agoanimation: Fix some warnings including a real one
Jean-Philippe Andre [Tue, 16 Jan 2018 11:34:48 +0000 (20:34 +0900)]
animation: Fix some warnings including a real one

Real issue here:

.../efl_animation_group.c:120:40: warning: for loop has empty body [-Wempty-body]
   EINA_LIST_FREE(pd->animations, anim);

6 years agoefl_playable: split Efl.Player interface to Efl.Playable interface
Sungtaek Hong [Tue, 16 Jan 2018 11:31:15 +0000 (20:31 +0900)]
efl_playable: split Efl.Player interface to Efl.Playable interface

Summary:
Efl.Player interface simply provides play functions,
but another interface which indicates Efl.Player will play is also
needed.

Test Plan: Run elementary_test->Efl.Animation tests

Reviewers: woohyun, conr2d, Jaehyun_Cho, jpeg, cedric

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

6 years agoEfl.Ui.Progressbar: Add Efl.Ui.Translatable/Markable too.
Amitesh Singh [Tue, 16 Jan 2018 11:35:28 +0000 (20:35 +0900)]
Efl.Ui.Progressbar: Add Efl.Ui.Translatable/Markable too.

it was missed in previous patch.

6 years agoEfl.Ui.Progressbar: Add missing Efl.Text/Content
Amitesh Singh [Tue, 16 Jan 2018 11:09:54 +0000 (20:09 +0900)]
Efl.Ui.Progressbar: Add missing Efl.Text/Content

6 years agoeo: Fix make check
Jean-Philippe Andre [Tue, 16 Jan 2018 10:48:49 +0000 (19:48 +0900)]
eo: Fix make check

The cache had a generation count, removing this check breaks eo suite.
EO is designed to tolerate init/shutdown cycles (as long as
dlopen/dlclose isn't involved).

Note: the ugly goto are useless as GCC -O2 understands EINA_(UN)LIKELY
and deals with it as expected (just look at the asm produced).

See 34d9f2070696027199a56cb621c0526ea1430e8f

6 years agoeo: Remove unused goto label
Jean-Philippe Andre [Tue, 16 Jan 2018 09:32:15 +0000 (18:32 +0900)]
eo: Remove unused goto label

6 years agoedje: Add beta event when an invalid part is used
Jean-Philippe Andre [Tue, 16 Jan 2018 09:21:48 +0000 (18:21 +0900)]
edje: Add beta event when an invalid part is used

This can be used for debugging, by listening to
  EFL_LAYOUT_EVENT_PART_INVALID

Or just use
  EINA_LOG_LEVELS=edje:2
if you just need the logs.

6 years agopanes: Fix invalid part name in layout recalc
Jean-Philippe Andre [Tue, 16 Jan 2018 09:10:30 +0000 (18:10 +0900)]
panes: Fix invalid part name in layout recalc

6 years agocode widget: Fix order of operations
Jean-Philippe Andre [Tue, 16 Jan 2018 09:10:00 +0000 (18:10 +0900)]
code widget: Fix order of operations

super functions, when creating stuff, should be called first.

6 years agoedje: add invalid part handler
Jean-Philippe Andre [Tue, 16 Jan 2018 07:02:33 +0000 (16:02 +0900)]
edje: add invalid part handler

6 years agoecore/edje/elm: Fix a few WRN from calls to NULL
Jean-Philippe Andre [Tue, 16 Jan 2018 06:12:49 +0000 (15:12 +0900)]
ecore/edje/elm: Fix a few WRN from calls to NULL

This fixes some of the warnings generated by calling functions on NULL
objects. One of the main remaining points is to avoid unwanted warnings
on non-existing parts.

Ref T6326

6 years agoeo: Warn on calls to NULL object
Jean-Philippe Andre [Tue, 16 Jan 2018 06:11:44 +0000 (15:11 +0900)]
eo: Warn on calls to NULL object

This makes eo print a WRN message in case a function is called on NULL.
efl_del is an exception to this rule (implemented in a hackish way, I
admit). I don't know any language or object model where using a null
object doesn't result in an exception or crash, except EO. In any case,
calls to null are invalid.

The next commits will resolve most warnings for EFL.

Ref T6326

6 years agoevas: Remove stupid warning
Jean-Philippe Andre [Mon, 15 Jan 2018 11:16:22 +0000 (20:16 +0900)]
evas: Remove stupid warning

6 years agoedje: Add property "part_exist"
Jean-Philippe Andre [Mon, 15 Jan 2018 08:27:10 +0000 (17:27 +0900)]
edje: Add property "part_exist"

This allows to safely verify if a part exists, without triggering any
potential call to NULL object, or even requiring the efl_part() handle
to be created.

This is perfectly equivalent to edje_object_part_exists(), but
implemented by both edje object and elm layout.

6 years agoselection: Disable debug logs
Jean-Philippe Andre [Tue, 16 Jan 2018 03:26:28 +0000 (12:26 +0900)]
selection: Disable debug logs

selection's namespacing still requires some love

6 years agoelm genlist test - don't overflow test time nanoseconds if system slow
Carsten Haitzler (Rasterman) [Tue, 16 Jan 2018 08:48:16 +0000 (17:48 +0900)]
elm genlist test - don't overflow test time nanoseconds if system slow

with a long enough test or slow enough machine these do overflow so
force everything to unsigned long long's for genlist test performance
measuring.

6 years agoeina: remove usless newline
Jean Guyomarc'h [Tue, 16 Jan 2018 05:58:38 +0000 (14:58 +0900)]
eina: remove usless newline

Summary:
ecore_evas: remove debug

eina: unregister log level when done with

Fixes a constant memory leak.

eina: introduce EINA_HOT and EINA_COLD

These attributes respectivelly expand to __attribute__ ((hot)) and
__attribute__ ((cold)) when available. They allow to mark functions are
being hot/cold (frequently used or not) as well as to qualify labels
within a function (likely/unlikely branches).

eo: speed-up generated calls by removing call cache

The call cache needed to by thread-local, to avoid concurrency issues.
Problem with TLS is that is adds an extra overhead, which appears to be
greater than the optimization the cache provides.

Op is naturally atomic, because it is an unsigned integer. As such, it
cannot be tempered with while another thread is reading it. When
entering the generated function, the first operation done is reading
'op'. If we have concurrency, we will have access sequences returning
either EFL_NOOP or a VALID op, because 'op' is not set until the very
end of the function, when everything has been computed. As such, we now
use the 'op' atomic integer to instore a lock-free/wait-free mechanism,
which allows to drop the TLS nature of the cache, speeding up the access
to the cache, and therefore making functions execute faster.

We don't test anymore the generation count. This can be put as a
limitation. If means that if you call efl_object_shutdown() and
re-initialize it later with different data, opcodes will be invalid.
I am not sure there is any usecase for this to ever happen.
We could move all the caches in a dedicated section, that can be
overwritten after a call to efl_object_shutdown(), but I am not sure it
will be very portable.

Benchmark: mean over 3 executions of
   ELM_TEST_AUTOBOUNCE=100 time elementary_test -to genlist

```
                     BEFORE               AFTER
------------------------------------------------------------
time (ns)            11114111647.0        9147676220.0
frames               2872.3333333333335   2904.6666666666665
time per frame (ns)  3869364.6666666665   3149535.3333333335
user time (s)        11.096666666666666   9.22
cpu (%)              22.666666666666668   18.333333333333332
```

Ref T6580

Reviewers: raster, cedric

Subscribers: cedric, jpeg

Maniphest Tasks: T6580

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

6 years agoselection_dnd: fix warnings in clang
Thiep Ha [Tue, 16 Jan 2018 07:33:30 +0000 (16:33 +0900)]
selection_dnd: fix warnings in clang

Fix warnings about type convert and vars init in clang and remove comments.

6 years agoelm_panel: add exception handling in _drawer_close()
Jaeun Choi [Tue, 16 Jan 2018 05:57:38 +0000 (14:57 +0900)]
elm_panel: add exception handling in _drawer_close()

this fixes a bug with scrollable panel not being blocked
when it is closed. scroll is blocked in _anim_stop_cb()
which is called after elm_interface_scrollable_region_bring_in().
but if panel content is already at the target position, _anim_stop_cb()
is not called. so there is a need to check content's position and
handle the exceptional case.

6 years agoRevert "elm_panel: add exception handling in _drawer_close()"
Jaeun Choi [Tue, 16 Jan 2018 05:48:11 +0000 (14:48 +0900)]
Revert "elm_panel: add exception handling in _drawer_close()"

This reverts commit 2acfc3e381dc4fc87e3249b0f63f1ba5e0d1c2de.

6 years agoelm_panel: add exception handling in _drawer_close()
Jaeun Choi [Tue, 16 Jan 2018 04:51:11 +0000 (13:51 +0900)]
elm_panel: add exception handling in _drawer_close()

this fixes a bug with scrollable panel not being blocked
when it is closed. scroll is blocked in _anim_stop_cb(),
which is called after elm_interface_scrollable_region_bring_in().
but if panel content is already at the target position, _anim_stop_cb()
is not called. so there is a need to check content's position and
handle the exceptional case.

6 years agoelm_panel: prevent redundant callback function addition or deletion
Jaeun Choi [Tue, 16 Jan 2018 04:19:36 +0000 (13:19 +0900)]
elm_panel: prevent redundant callback function addition or deletion

there is a need to check if callback functions already exist or not
before adding or deleting them, because they are added or deleted
at two points:
in _elm_panel_scrollable_set() and _elm_panel_elm_widget_disable().

6 years agoecore: forgotten EFL_MAIN_EX.
Cedric Bail [Mon, 15 Jan 2018 22:22:27 +0000 (14:22 -0800)]
ecore: forgotten EFL_MAIN_EX.

6 years agoelementary dnd: fix tautology
Boris Faure [Mon, 15 Jan 2018 20:30:28 +0000 (21:30 +0100)]
elementary dnd: fix tautology

6 years agoelc_popup: reorder the sub objects free sequence
YeongJong Lee [Mon, 15 Jan 2018 10:55:37 +0000 (19:55 +0900)]
elc_popup: reorder the sub objects free sequence

Summary:
when the popup is deleted, some EVAS_CALLBACK_DEL callback functions
try to use already freed objects.
reorder free sequence to prevent it.

Test Plan:
1. elementary_test -to popup
2. check 'Enable popup scroll'
3. open several popup test and click Close button.
4. check that there are no error message

Reviewers: Jaehyun_Cho, bu5hm4n

Reviewed By: Jaehyun_Cho

Subscribers: cedric, jpeg, herb

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

6 years agoexamples: efl_ui_list: remove unused variables
Stefan Schmidt [Mon, 15 Jan 2018 09:41:58 +0000 (10:41 +0100)]
examples: efl_ui_list: remove unused variables

6 years agoexamples: calendar_cxx: comment out unused variables
Stefan Schmidt [Mon, 15 Jan 2018 09:40:39 +0000 (10:40 +0100)]
examples: calendar_cxx: comment out unused variables

I normally would simply remove them, but they belong to some more
commented out code below. We should either remove both or get this
fixed.

6 years agoexamples: cxx: avoid tick in warning message
Stefan Schmidt [Mon, 15 Jan 2018 09:38:36 +0000 (10:38 +0100)]
examples: cxx: avoid tick in warning message

The compiler is not to happy about having this tick in the warning
message. Switch to the more formal can not and be done with it.

menu_cxx_example_01.cc:3:26: warning: missing terminating ' character

6 years agoecore_file_monitor: replace EINA_LIST_FOREACH to EINA_LIST_FOREACH_SAFE
WooHyun Jung [Mon, 15 Jan 2018 04:54:01 +0000 (13:54 +0900)]
ecore_file_monitor: replace EINA_LIST_FOREACH to EINA_LIST_FOREACH_SAFE

If ecore_file_monitor_del is called inside the file monitor callback function,
eina_list found from monitor_hash would be freed. (You can check this inside
eina_hash_list_remove.)
Then, EINA_LIST_FOREACH makes one more for loop with invalid eina_list pointer.

EINA_LIST_FOREACH_SAFE can prevent from this problem.

6 years agoEcore_Win32: move monitor window initialization to earlier in init func
Vincent Torri [Sun, 14 Jan 2018 13:33:10 +0000 (22:33 +0900)]
Ecore_Win32: move monitor window initialization to earlier in init func

Summary: This monitor window is just used to receive events when mutiple
monitors are available. it should not be managed by the ecore loop
(creation and destruction events), so initting it earlier means
ecore_win32 attaches less memory/overhead to it as it's just being
used for notifications for devices.

Test Plan: DrMemory to check used memory

Reviewers: cedric

Subscribers: jpeg

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

6 years agoPyolian: add tests for recently added funcs
Dave Andreoli [Sun, 14 Jan 2018 11:05:33 +0000 (12:05 +0100)]
Pyolian: add tests for recently added funcs

6 years agoCorrect module name for the interface context
Andy Williams [Sun, 14 Jan 2018 00:21:35 +0000 (00:21 +0000)]
Correct module name for the interface context

6 years agodocs: Show when classes really are top level EFL namespace
Andy Williams [Sun, 14 Jan 2018 00:05:59 +0000 (00:05 +0000)]
docs: Show when classes really are top level EFL namespace

6 years agoecore_audio wasapi - fix ecore win32 handler deletion and destruction
Carsten Haitzler (Rasterman) [Sat, 13 Jan 2018 05:44:07 +0000 (14:44 +0900)]
ecore_audio wasapi - fix ecore win32 handler deletion and destruction

vtorri pointed this out in T6607. this should fix this.

fixed T6607

@fix

6 years agoEvil: remove useless dirent code
Vincent Torri [Fri, 12 Jan 2018 21:33:47 +0000 (13:33 -0800)]
Evil: remove useless dirent code

Test Plan: compilation of the EFL

Reviewers: cedric

Subscribers: jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
6 years agoelm_tooltip: immediately show tooltip if callback is set for obj under pointer
Mike Blumenkrantz [Thu, 11 Jan 2018 21:28:16 +0000 (16:28 -0500)]
elm_tooltip: immediately show tooltip if callback is set for obj under pointer

@fix

6 years agoelm_tooltip: force immediate hint recalc during tooltip creation if 0x0 size
Mike Blumenkrantz [Thu, 11 Jan 2018 21:27:22 +0000 (16:27 -0500)]
elm_tooltip: force immediate hint recalc during tooltip creation if 0x0 size

try to avoid initial 0x0 sized tooltips

@fix

6 years agoeina: document quadtree
Bryce Harrington [Fri, 12 Jan 2018 19:24:59 +0000 (11:24 -0800)]
eina: document quadtree

Reviewers: cedric, ajwillia.ms

Subscribers: segfaultxavi, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
6 years agoefl: remove inclusion of dirent.h where it is not used
Vincent Torri [Fri, 12 Jan 2018 19:06:08 +0000 (11:06 -0800)]
efl: remove inclusion of dirent.h where it is not used

Test Plan: compilation

Reviewers: cedric

Subscribers: jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
6 years agoefl: make efl build again
Daniel Kolesa [Fri, 12 Jan 2018 18:28:35 +0000 (19:28 +0100)]
efl: make efl build again

After a function pointer validation branch got enabled, it turned
out that people have been writing obviously incorrect eo files
all along.

So while I have no idea if this is logically fully correct, at
least EFL builds again now...

cc @thiepha

6 years agoeolian: correctly validate function pointers
Daniel Kolesa [Fri, 12 Jan 2018 18:13:55 +0000 (19:13 +0100)]
eolian: correctly validate function pointers

6 years agoeo: fix tests build.
Cedric BAIL [Fri, 12 Jan 2018 17:56:34 +0000 (09:56 -0800)]
eo: fix tests build.

6 years agoRevert "promise: Add even simpler helper for main loop promise creation"
Cedric BAIL [Thu, 11 Jan 2018 19:21:55 +0000 (11:21 -0800)]
Revert "promise: Add even simpler helper for main loop promise creation"

This reverts commit e931fd698d26b8bec0e34239d2f79c059b339a51.

6 years agoRevert "efl-loop: Don't use 'main' as a variable name"
Cedric BAIL [Thu, 11 Jan 2018 19:21:00 +0000 (11:21 -0800)]
Revert "efl-loop: Don't use 'main' as a variable name"

This reverts commit 214dbdbd590a8f3fd9a0f3d5ef975d6ff9ce0e43.

6 years agoeolian: aliased_base_get funcs don't need unit
Daniel Kolesa [Fri, 12 Jan 2018 17:02:32 +0000 (18:02 +0100)]
eolian: aliased_base_get funcs don't need unit

6 years agoeolian: type_typedecl_get doesn't need a unit
Daniel Kolesa [Fri, 12 Jan 2018 16:52:44 +0000 (17:52 +0100)]
eolian: type_typedecl_get doesn't need a unit

6 years agoeolian: do not require unit for type_class_get
Daniel Kolesa [Fri, 12 Jan 2018 16:33:28 +0000 (17:33 +0100)]
eolian: do not require unit for type_class_get

6 years agoeolian: store typedecl/class in type
Daniel Kolesa [Fri, 12 Jan 2018 16:25:23 +0000 (17:25 +0100)]
eolian: store typedecl/class in type

6 years agoelementary: Fix constant qualifer warning message
Chris Michael [Fri, 12 Jan 2018 15:50:26 +0000 (10:50 -0500)]
elementary: Fix constant qualifer warning message

Gcc complains here due to _wl_default_seat_id_get not accepting a
'const' Evas_Object, so to avoid the warning just case it to a normal
Evas_Object when passing in.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
6 years agopotfiles.in - remove src files no longer in tree
Carsten Haitzler (Rasterman) [Fri, 12 Jan 2018 12:51:09 +0000 (21:51 +0900)]
potfiles.in - remove src files no longer in tree

6 years agoedje - multisense - only complain once about being inable to play audio
Carsten Haitzler (Rasterman) [Fri, 12 Jan 2018 09:47:21 +0000 (18:47 +0900)]
edje - multisense - only complain once about being inable to play audio

no p[oint creating streams of noise, so only once.

6 years agoecore_audio - only complain once about not loading pulse/sndfile
Carsten Haitzler (Rasterman) [Fri, 12 Jan 2018 09:46:04 +0000 (18:46 +0900)]
ecore_audio - only complain once about not loading pulse/sndfile

otherwise we get a complaint for everty time some audio needs/wants to
play and that's just noisy and ugly, so only do it once - the first
time sndfile/pulse are being loaded and it fails.

6 years agoecore_audio - don't about destruction because of failed sndfile load
Carsten Haitzler (Rasterman) [Fri, 12 Jan 2018 09:45:17 +0000 (18:45 +0900)]
ecore_audio - don't about destruction because of failed sndfile load

this means objetcs are only partly destroyed and that is wrong.

@fix

6 years agoeolian_cxx: support multiple function pointers
Thiep Ha [Fri, 12 Jan 2018 09:45:13 +0000 (18:45 +0900)]
eolian_cxx: support multiple function pointers

6 years agoeio: remove unecessary include.
Cedric Bail [Fri, 12 Jan 2018 05:30:16 +0000 (21:30 -0800)]
eio: remove unecessary include.

6 years agoecore: remove use of efl_main_loop_get from efl_net_socket_ssl_server_example.
Cedric BAIL [Thu, 11 Jan 2018 19:12:13 +0000 (11:12 -0800)]
ecore: remove use of efl_main_loop_get from efl_net_socket_ssl_server_example.

6 years agoecore: remove use of efl_main_loop_get from efl_net_socket_ssl_dialer_example.
Cedric BAIL [Thu, 11 Jan 2018 19:05:30 +0000 (11:05 -0800)]
ecore: remove use of efl_main_loop_get from efl_net_socket_ssl_dialer_example.

6 years agoecore: remove use of efl_main_loop_get from efl_net_session_example.
Cedric BAIL [Thu, 11 Jan 2018 18:19:24 +0000 (10:19 -0800)]
ecore: remove use of efl_main_loop_get from efl_net_session_example.

6 years agommap memory allocation - do not used when under valgrind
Carsten Haitzler (Rasterman) [Thu, 11 Jan 2018 17:59:34 +0000 (02:59 +0900)]
mmap memory allocation - do not used when under valgrind

we can't sensibly use things like massif to track memory if we bypass
itr with mmaping -1 fd anonymous memory... so if built with valgrind
support and running under valgrind, use malloc/calloc and free so
these tools actually do something useful for these bits of memory.

6 years agoevas sw generic - don't dlopen osmesa until first needed.
Carsten Haitzler (Rasterman) [Thu, 11 Jan 2018 17:41:50 +0000 (02:41 +0900)]
evas sw generic - don't dlopen osmesa until first needed.

osmesa needs llvm. llvm apparently just by dlopening or linking to the
lib (libLLVM...) gets you 3.5mb of dirty pages just in this lib. that's
a whole lib entirely dirty pages. odd and horrible. in fact once i
stoppd dlopening OSMesa all the time on engine init (and only when gl
is needed)... the amount of dirty pages went from 17208 to 8860.
that's a whopping drop of 8mb! 8mb saved! in fact just dlopening
osmesa and doing the other gl init stuff led to more anonymuse
mappings with dirty pages. 2 of them (2072k and 2076k) which baffled
me as that didn't seem like heap or efl's own data. these disappeared
along with libLLVM-5.0.so (3520k + 60k dirty pages). we stopped
linking/loading libedit (12k dirty), libglapi (20k dirty),
libLLVM-5.0 (3580k dirty), libncursesw (72k dirty),
libOSMesa.so (260k dirty), libtinfo (20k dirty). ... or at least
stopped until absolutely needed. total 17208k of dirty pages went down
to 8860.

my test case was just launching terminology (and doing nothing with it).

@fix memory bloating

6 years agoelementary: Remove use of implicit declaration
Chris Michael [Thu, 11 Jan 2018 17:37:43 +0000 (12:37 -0500)]
elementary: Remove use of implicit declaration

evas_canvas_default_device_get used here leads to an 'implicit
declaration of function warning'. Use evas_default_device_get instead
to remove warning.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
6 years agoecore signal - since we arent going to use threads due to osx, remove
Carsten Haitzler (Rasterman) [Thu, 11 Jan 2018 14:13:13 +0000 (23:13 +0900)]
ecore signal - since we arent going to use threads due to osx, remove

remove thread code since osx is not happy with threads trapping
signals (or at least a thread setting up the handler and trapping
there with signal blocks...). this should now work universally.

6 years agocnp_dnd: make legacy APIs use new interfaces
Thiep Ha [Tue, 9 Jan 2018 09:50:23 +0000 (18:50 +0900)]
cnp_dnd: make legacy APIs use new interfaces

Legacy APIs can uses efl_selection, efl_ui_dnd, efl_ui_dnd_container interfaces
with helper functions.

6 years agodnd: add efl_ui_dnd_container
Thiep Ha [Tue, 9 Jan 2018 07:37:27 +0000 (16:37 +0900)]
dnd: add efl_ui_dnd_container

efl_ui_dnd_container is the interface of dnd for container objects.

6 years agodnd: add efl_ui_dnd
Thiep Ha [Tue, 9 Jan 2018 07:22:49 +0000 (16:22 +0900)]
dnd: add efl_ui_dnd

Efl_Ui_Dnd is the interface for drag and drop of elm_cnp.

6 years agoselection: add efl_selection interface
Thiep Ha [Tue, 9 Jan 2018 06:34:12 +0000 (15:34 +0900)]
selection: add efl_selection interface

Efl_Selection is the object interface for selection api of elm_cnp.
It allows get, set, clear, check selection.

6 years agocnp_dnd: add selection manager
Thiep Ha [Mon, 8 Jan 2018 10:13:10 +0000 (19:13 +0900)]
cnp_dnd: add selection manager

Selection manager implements functions for selection (cnp)
and drag and drop.
All objects can uses it APIs. It also supports multi-seat.

6 years agoefl_ui_focus_manager_calc: store node data before the node is freed
YeongJong Lee [Thu, 11 Jan 2018 08:23:29 +0000 (09:23 +0100)]
efl_ui_focus_manager_calc: store node data before the node is freed

Summary:
we can consider that the node is freed during focus_manager routine.
for example, efl_ui_focus_manager_redirect_set call edje event callbacks,
and a application can delete a object in the edje callback. if the object is
the focusable object of a node, focus_manager make the node freed.
the focus_manager is able to use freed node. (a good example is test_popup.c)

this prevent reusing freed pointers.

Test Plan:
1. elementary_test -to popup
2. popup-center-text + 1 button
3. Click the Close button
4. check that there is no erroe message

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, woohyun, jpeg, Jaehyun_Cho

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

6 years agoecore signal write - save and restore errno since may be on mainloop
Carsten Haitzler (Rasterman) [Thu, 11 Jan 2018 08:25:24 +0000 (17:25 +0900)]
ecore signal write - save and restore errno since may be on mainloop

now i disabled the signal thread watcher ... save+restore errno.

6 years agoecore signal - for now disable the sig watcher thread and do on mainloop
Carsten Haitzler (Rasterman) [Thu, 11 Jan 2018 07:17:18 +0000 (16:17 +0900)]
ecore signal - for now disable the sig watcher thread and do on mainloop

we used to do signals on main loop. keep doing. the pipes should work
in cleanly serializing the signals irrespective of when/where they are
caught (because we do into kernel and back out again). hoping this
makes osx work again. can't test as i have no osx box or vm. works on
linux and freebsd though.

6 years agoElm_test panel: use eina instead of dirent to list files
Vincent Torri [Thu, 11 Jan 2018 06:47:19 +0000 (15:47 +0900)]
Elm_test panel: use eina instead of dirent to list files

Summary:
Short/middle term: use UTF-16 on Windows.

So I plan to remove most of external API (like dirent in Evil) and use only EFL to have less work later

Test Plan: compile and run elm_test

Reviewers: jpeg

Subscribers: raster, cedric

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