Commit Graph

22630 Commits

Author SHA1 Message Date
Jean-Philippe Andre 934f23c9be win: Remove unusable type "dnd"
Override mode is not available in the unified api. That's because you
can't do it in Wayland.

I still think those types are stupid and should all die: Win subclasses
handle them for you. Odd types can't be used anyway.

Ref T5322
2018-01-18 14:20:49 +09:00
Jean-Philippe Andre 50e0099ceb ui.list: Fix shadow variable warnings
node2 didn't conflict, just making it consistent with nodedata2
2018-01-18 14:13:05 +09:00
Jean-Philippe Andre 50a082cab9 win: Remove "ioerr" event
Unless it's implemented for Wayland as well, AND provides more
information than a NULL event_info, I see no point in this being an EO
event. Keep legacy as-is: a smart callback only.

Also, minor cleanups to the EO file.

Ref T5322
2018-01-18 14:06:45 +09:00
Jean-Philippe Andre 8abf43b373 edje: Return "" as state for invalid parts
Instead of "default". This is consistent with legacy, and allows for
some kind of error checking. Not returning NULL helps avoiding crashes.
2018-01-18 13:57:31 +09:00
Mike Blumenkrantz 4d32334f21 Revert "efl wl - fix segv where garbage ptr to comp surface is still there"
This reverts commit 574ef9a5e5.

this should be resolved by 863a6e159e99c5f69ecc7461106aba2102f1da11 and is
only a possible case when an unmapped surface was activated, something which
is prevented by spec and can only occur if bugs exist elsewhere
2018-01-17 17:33:23 -05:00
Mike Blumenkrantz b48781aa6c wayland: always flush client display when protocol sends are pending
in the case where a connection was not actively rendering, there was nothing
which would trigger a display flush, leading to applications potentially
deadlocking

@fix
2018-01-17 17:06:13 -05:00
Mike Blumenkrantz 4fb807dd20 efl-wl: only perform mouse-out operations for a seat if the mouse was "in"
this could lead to cases where the original application's cursor was permanently
lost

@fix

 #TheDisappointer
2018-01-17 17:04:20 -05:00
Mike Blumenkrantz 9ccf88e326 efl-wl: ensure parent surface is mapped before attempting to revert activation 2018-01-17 17:03:48 -05:00
Mike Blumenkrantz beb430a00b efl-wl: immediately unset a destroyed surface's cursor
@fix
2018-01-17 17:01:01 -05:00
Mike Blumenkrantz c13ae0a630 efl-wl: enforce xdg-shell spec requiring a commit to an unmapped surface
a separate commit is required for a newly-unmapped surface in order for
the surface to be able to attach a buffer and be mapped
2018-01-17 16:55:35 -05:00
Mike Blumenkrantz 02af7e8210 efl-wl: only send keyboard enter and activation for mapped surfaces
setting active for unmapped surfaces bypasses the expected path for
unsetting activate during surface unmap if the surface is destroyed
while active and unmapped

@fix
2018-01-17 16:52:34 -05:00
Mike Blumenkrantz f6d045ea8d efl-wl: remove some broken logic for activating toplevel parents
parents of parents should not be marked as activated...probably

@fix
2018-01-17 16:42:31 -05:00
Mike Blumenkrantz 11a9ed301d efl-wl: set event ON_HOLD flag when they are sent to a surface
use a flag to indicate when processed events have been internally processed

@fix
2018-01-17 16:41:41 -05:00
Mike Blumenkrantz b7eba8af7b efl-wl: propagate surface activation back to parent if child is hidden
a toplevel child will always be stacked right above its parent

@fix
2018-01-17 16:39:44 -05:00
Mike Blumenkrantz 45191ff294 efl-wl: send more mouse buttons to clients
@fix
2018-01-17 16:39:44 -05:00
Mike Blumenkrantz 742e20a002 efl-wl: split case for toplevel vs popup during surface hide activate propagation
this should have no functional differences due to spec, but make sure it reads
more clearly
2018-01-17 16:39:44 -05:00
Carsten Haitzler 20605953f5 Revert "efl loop - provide efl namespace versions of begin/end locks on mainloop"
This reverts commit 76b837002e.

seems no one wants efl api's for this
2018-01-17 21:30:49 +09:00
Jaehyun Cho 119c41d7f2 elm_test: Fix to call efl_add with parent
To trace back to the main loop, call efl_add with parent.
(See https://phab.enlightenment.org/T6573)
2018-01-17 18:58:30 +09:00
Carsten Haitzler b461830e64 elput - fix crash on shutdown where input.lib was NULL
this was null checked everywhere except in 1 place. fix. now more
crash on shutdown now
2018-01-17 18:14:51 +09:00
Vincent Torri 910f318ad9 examples: Simplify & fix thread example
This fixes the example for Windows, where apparently it ran into a lot
of errors with spinlock. Note that on Linux we have such errors too
(both before and after the patch):
EINA ERROR: 'Invalid argument' on lock 0x7ffd218af410
EINA ERROR: 'Invalid argument' on unlock 0x7ffd218af410

Patch by @vtorri
2018-01-17 17:37:03 +09:00
Jean-Philippe Andre 1a39e2d429 glview: Remove trailing newline in ERR
It's not needed.
2018-01-17 15:23:52 +09:00
Jean-Philippe Andre 24447641d3 evas gl: Properly verify that Evas GL works
For SW engine we need to verify that OSMesa is present. The patch
fb048e7312 broke the logic.

Tested by temporarily removing OSMesa from my system.

Fixes T6617 (again)
2018-01-17 15:22:46 +09:00
subhransu mohanty 2a31883f5a efl/vg: Refactor the svg path handling and interpolation.
Summary:
This patch is taken from the tizen branch

1. Take care when the locale is different than POSIX.
See: strtod, strtol

2. Interpolate  all the property of a shape.

Reviewers: jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5740
2018-01-17 14:54:18 +09:00
Jean-Philippe Andre 7cef580f11 win: Fix standard window bg with custom themes
Ref T6579
See also D5740
2018-01-17 14:18:25 +09:00
Jean-Philippe Andre 421217b150 Revert "elm: disable interface theme loading"
This reverts commit 3d07b90461.

Some commits should address the issues mentioned in T6579
  959571b995
  fe346d2ee2

But to be honest I am still not sure exactly what the issue was?

Ref T6579
2018-01-17 14:18:17 +09:00
Jean-Philippe Andre 6a8816b50c Revert "warning remove - comment out unused vars"
This reverts commit bbac253f11.
2018-01-17 14:03:09 +09:00
Sungtaek Hong 959571b995 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
2018-01-17 13:49:49 +09:00
Sungtaek Hong fe346d2ee2 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
2018-01-17 13:49:49 +09:00
Jean-Philippe Andre 1375705168 panes: Expose parts in EO file 2018-01-17 13:49:49 +09:00
Myoungwoon Roy, Kim ecaec8b0af docs: Fix wrong doxygen expressions.
Summary: This patch fixes wrong doxygen expressions in elm_box legacy API reference doxygen.

Test Plan: documentation

Reviewers: cedric, raster, jpeg, stefan, Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5743
2018-01-17 13:22:56 +09:00
YeongJong Lee 2bad31bdc4 efl_animation: fix typo
Test Plan: make

Reviewers: Jaehyun_Cho

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5746
2018-01-17 12:51:31 +09:00
Thiep Ha e625c9b830 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.
2018-01-17 09:25:57 +09:00
Mike Blumenkrantz 17b0db9ed3 efl-wl: add lots of null checks to egl init
ref T6617
2018-01-16 18:38:25 -05:00
Marcel Hollerbach 5b64079ee9 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!
2018-01-16 23:22:01 +01:00
Yeongjong Lee 210db8fc5d 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
2018-01-16 22:39:13 +01:00
Davide Andreoli 9160bfe901 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 ;)
2018-01-16 20:53:20 +01:00
Cedric BAIL 1af649d57b eina: make updating rectangle cache thread safe. 2018-01-16 09:54:04 -08:00
Daniel Kolesa d47610a732 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.
2018-01-16 16:39:05 +01:00
Daniel Kolesa dd2e579fec 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.
2018-01-16 16:37:52 +01:00
Daniel Kolesa b70604d018 eolian: cache enum expr in the database 2018-01-16 16:37:52 +01:00
Daniel Kolesa 29a9b9ad44 eolian: expose _eval_type to internals 2018-01-16 16:37:52 +01:00
Jean-Philippe Andre 5555726fef examples: Show off usage of "background" part
See bg_cxx_example_01
2018-01-16 22:04:55 +09:00
Jean-Philippe Andre ccf90aa0e4 widget: Expose "background" part (for bindings) 2018-01-16 22:04:55 +09:00
Jean-Philippe Andre 854cce329a cxx: Remove elm_widget.h from Elementary.hh
It's internal.
2018-01-16 22:04:55 +09:00
Jean-Philippe Andre 2686742587 selection: Fix two remaining warnings 2018-01-16 22:04:55 +09:00
Jean-Philippe Andre f1dd333e81 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);
2018-01-16 22:04:55 +09:00
Sungtaek Hong 588995da31 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
2018-01-16 22:04:55 +09:00
Amitesh Singh 1da72770f3 Efl.Ui.Progressbar: Add Efl.Ui.Translatable/Markable too.
it was missed in previous patch.
2018-01-16 20:35:56 +09:00
Amitesh Singh 4e3d71ef22 Efl.Ui.Progressbar: Add missing Efl.Text/Content 2018-01-16 20:15:10 +09:00
Jean-Philippe Andre dd2f450ea7 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 34d9f20706
2018-01-16 19:50:52 +09:00
Jean-Philippe Andre 8b4abdcd0e eo: Remove unused goto label 2018-01-16 19:35:54 +09:00
Jean-Philippe Andre df1900b9bd 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.
2018-01-16 19:35:54 +09:00
Jean-Philippe Andre eb9f35bcb9 panes: Fix invalid part name in layout recalc 2018-01-16 19:35:54 +09:00
Jean-Philippe Andre e592a0ab5b code widget: Fix order of operations
super functions, when creating stuff, should be called first.
2018-01-16 19:35:54 +09:00
Jean-Philippe Andre 001fa5af11 edje: add invalid part handler 2018-01-16 19:35:54 +09:00
Jean-Philippe Andre a92186be6a ecore/edje/elm: Fix a few WRN from calls to NULL
This fixes some of the warnings generated by calling functions on NULL
objects. One of the main remaining points is to avoid unwanted warnings
on non-existing parts.

Ref T6326
2018-01-16 18:37:05 +09:00
Jean-Philippe Andre f2b5b00ca2 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
2018-01-16 18:37:05 +09:00
Jean-Philippe Andre f47f8dcf82 evas: Remove stupid warning 2018-01-16 18:37:04 +09:00
Jean-Philippe Andre 9e2f2970b8 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.
2018-01-16 18:37:04 +09:00
Jean-Philippe Andre d133336399 selection: Disable debug logs
selection's namespacing still requires some love
2018-01-16 18:36:47 +09:00
Carsten Haitzler 4800ce4635 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.
2018-01-16 17:50:46 +09:00
Jean Guyomarc'h 34d9f20706 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
2018-01-16 17:50:46 +09:00
Carsten Haitzler 574ef9a5e5 efl wl - fix segv where garbage ptr to comp surface is still there
comp surface destruction doesnt clear the pointer to one in the comp
struct that then is garbage later. fix.
2018-01-16 17:49:52 +09:00
Thiep Ha 07e7bbd4b5 selection_dnd: fix warnings in clang
Fix warnings about type convert and vars init in clang and remove comments.
2018-01-16 16:35:14 +09:00
Jaeun Choi d36c849e20 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.
2018-01-16 14:57:38 +09:00
Jaeun Choi 4f2b04c7a2 Revert "elm_panel: add exception handling in _drawer_close()"
This reverts commit 2acfc3e381.
2018-01-16 14:48:11 +09:00
Jaeun Choi 2acfc3e381 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.
2018-01-16 14:42:58 +09:00
Jaeun Choi 65b828b050 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().
2018-01-16 13:19:36 +09:00
Cedric Bail 631eb3701d ecore: forgotten EFL_MAIN_EX. 2018-01-15 14:22:27 -08:00
Boris Faure a8d2c6c42f elementary dnd: fix tautology 2018-01-15 21:30:28 +01:00
YeongJong Lee f7849d0727 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
2018-01-15 19:55:37 +09:00
Stefan Schmidt 8fc21da029 examples: efl_ui_list: remove unused variables 2018-01-15 10:41:58 +01:00
Stefan Schmidt ef71e2550c 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.
2018-01-15 10:40:39 +01:00
Stefan Schmidt 2cc63bb8b2 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
2018-01-15 10:38:36 +01:00
WooHyun Jung 9fc1dd1a4e 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.
2018-01-15 13:54:01 +09:00
Vincent Torri 487f2a5f81 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
2018-01-14 22:33:34 +09:00
Davide Andreoli 0179d34f0f Pyolian: add tests for recently added funcs 2018-01-14 12:05:33 +01:00
Andy Williams 939237ad7f Correct module name for the interface context 2018-01-14 00:21:35 +00:00
Andy Williams 8a71ac57ab docs: Show when classes really are top level EFL namespace 2018-01-14 00:05:59 +00:00
Carsten Haitzler 90e186a0c8 ecore_audio wasapi - fix ecore win32 handler deletion and destruction
vtorri pointed this out in T6607. this should fix this.

fixed T6607

@fix
2018-01-13 14:46:08 +09:00
Vincent Torri 83b91fff02 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>
2018-01-12 13:34:32 -08:00
Mike Blumenkrantz abc88c498e efl-wl: multiply axis events by 10 to send normalized values
ref T6443
2018-01-12 16:03:12 -05:00
Mike Blumenkrantz 60028fafb7 efl-wl: unset cursor role on existing cursor surface if new cursor is set
this avoids killing clients which replace cursors

@fix
2018-01-12 15:49:06 -05:00
Mike Blumenkrantz b585dd0de7 elm_tooltip: immediately show tooltip if callback is set for obj under pointer
@fix
2018-01-12 14:58:34 -05:00
Mike Blumenkrantz 6822927988 elm_tooltip: force immediate hint recalc during tooltip creation if 0x0 size
try to avoid initial 0x0 sized tooltips

@fix
2018-01-12 14:58:34 -05:00
Mike Blumenkrantz d176fbc806 efl-wl: return NULL without error when non-extracted parent is found
in  efl_wl_extracted_surface_extracted_parent_get()
2018-01-12 14:58:34 -05:00
Bryce Harrington ebdfc54def 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>
2018-01-12 11:25:04 -08:00
Vincent Torri 4916973a60 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>
2018-01-12 11:06:12 -08:00
Daniel Kolesa dd11d19653 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
2018-01-12 19:31:45 +01:00
Daniel Kolesa 54eac123c2 eolian: correctly validate function pointers 2018-01-12 19:14:13 +01:00
Cedric BAIL 082ebac3e3 eo: fix tests build. 2018-01-12 09:56:34 -08:00
Cedric BAIL e90a9f3eef Revert "promise: Add even simpler helper for main loop promise creation"
This reverts commit e931fd698d.
2018-01-12 09:37:47 -08:00
Cedric BAIL f5a5609c27 Revert "efl-loop: Don't use 'main' as a variable name"
This reverts commit 214dbdbd59.
2018-01-12 09:37:47 -08:00
Daniel Kolesa c6436337a4 eolian: aliased_base_get funcs don't need unit 2018-01-12 18:05:13 +01:00
Daniel Kolesa 19c16b671e eolian: type_typedecl_get doesn't need a unit 2018-01-12 18:05:13 +01:00
Daniel Kolesa 707ed05d58 eolian: do not require unit for type_class_get 2018-01-12 18:05:13 +01:00
Daniel Kolesa db41734954 eolian: store typedecl/class in type 2018-01-12 18:05:13 +01:00
Chris Michael 4dfde2cd24 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>
2018-01-12 10:50:26 -05:00
Carsten Haitzler 99bf0732af edje - multisense - only complain once about being inable to play audio
no p[oint creating streams of noise, so only once.
2018-01-12 22:32:39 +09:00
Carsten Haitzler ce0ea3c297 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.
2018-01-12 22:32:39 +09:00
Carsten Haitzler 368e0c5d8f ecore_audio - don't about destruction because of failed sndfile load
this means objetcs are only partly destroyed and that is wrong.

@fix
2018-01-12 22:32:39 +09:00
Thiep Ha 360ce182ef eolian_cxx: support multiple function pointers 2018-01-12 18:45:40 +09:00
SangHyeon Lee f7d9f0dde6 gengrid: add visible/hidden signal for texts and contents
Send visible/hidden signal when text/content are realized.
This feature is already implemented in genlist widget,
for reacting dynamically in item layout depending on their
text/content realizations.
2018-01-12 14:41:13 +09:00
Cedric Bail 23624acc16 eio: remove unecessary include. 2018-01-11 21:30:39 -08:00
Cedric BAIL be3abbd105 ecore: remove use of efl_main_loop_get from efl_net_socket_ssl_server_example. 2018-01-11 11:13:17 -08:00
Cedric BAIL 1f784b8c6c ecore: remove use of efl_main_loop_get from efl_net_socket_ssl_dialer_example. 2018-01-11 11:13:17 -08:00
Cedric BAIL 0e91525d25 ecore: remove use of efl_main_loop_get from efl_net_session_example. 2018-01-11 11:13:17 -08:00
Carsten Haitzler f32f0d89f4 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.
2018-01-12 03:02:43 +09:00
Carsten Haitzler fb048e7312 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
2018-01-12 03:02:43 +09:00
Chris Michael 075b14d53f 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>
2018-01-11 12:37:43 -05:00
Carsten Haitzler 659d5d2894 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.
2018-01-11 23:13:13 +09:00
Thiep Ha e88bbaa1e3 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.
2018-01-11 17:56:24 +09:00
Thiep Ha 35339504b0 dnd: add efl_ui_dnd_container
efl_ui_dnd_container is the interface of dnd for container objects.
2018-01-11 17:56:24 +09:00
Thiep Ha e6ab4b41ed dnd: add efl_ui_dnd
Efl_Ui_Dnd is the interface for drag and drop of elm_cnp.
2018-01-11 17:56:24 +09:00
Thiep Ha f191d6821f selection: add efl_selection interface
Efl_Selection is the object interface for selection api of elm_cnp.
It allows get, set, clear, check selection.
2018-01-11 17:56:24 +09:00
Thiep Ha 763daa870e 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.
2018-01-11 17:56:24 +09:00
YeongJong Lee 1b4f330c9c 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
2018-01-11 09:51:59 +01:00
Carsten Haitzler af681a1091 ecore signal write - save and restore errno since may be on mainloop
now i disabled the signal thread watcher ... save+restore errno.
2018-01-11 17:25:24 +09:00
Carsten Haitzler 21c8e73111 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.
2018-01-11 16:17:54 +09:00
Vincent Torri 77dc44ff1f 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
2018-01-11 16:15:48 +09:00
Jongmin Lee 904ba231c3 remove proper timer in landscape indicator connect callback
Change-Id: I7b6971502a8c26f06ceccf1a7ed5f567cb42da54
Signed-off-by: Jaehyun Cho <jae_hyun.cho@samsung.com>
2018-01-11 15:12:24 +09:00
Cedric Bail 3412ad9ca3 ecore: remove use of efl_main_loop_get from ecore_promise2_example. 2018-01-10 18:16:25 -08:00
Cedric Bail 79d7483fe7 eina: add eina_promise_continue_new to create a promise using an existing dead future. 2018-01-10 18:16:25 -08:00
Cedric Bail 0b6f74fde6 ecore: no write after del for efl_loop_timeout. 2018-01-10 18:16:25 -08:00
Cedric Bail c5cd3f1a79 ecore: remove use of efl_main_loop_get from efl_net_server_simple_example. 2018-01-10 18:16:25 -08:00
Cedric Bail 1b10ef1313 ecore: remove use of efl_main_loop_get from efl_net_server_example. 2018-01-10 18:16:25 -08:00
Cedric Bail dacf3293a9 ecore: remove use of efl_main_loop_get from efl_net_dialer_windows_example. 2018-01-10 18:16:25 -08:00
Mike Blumenkrantz 571702aebb efl-wl: do not modify extracted surface visibility during commit
extracted surfaces are wholly managed externally, so this should not be modified

ref T6443

@fix
2018-01-10 14:21:03 -05:00
Derek Foreman 54fede47a9 ecore_drm2: simplify device selection code
The platform check was added for systems (like ARM) that don't generally
have PCI graphics devices.  However, now we pick a fallback device that
doesn't have a PCI constraint, so the platform check should no longer be
necessary.
2018-01-10 12:54:42 -06:00
Derek Foreman 324c917a20 ecore_drm2: Allow non-pci DRM devices to be selected
Summary: This is a tweak to c264ef264f for D5712 . chosen_dev in the loop was only being set for DRM devices attached to PCI devices. While this is useful for determining if the device is the preferred boot_vga device, There is no apparent requirement (comparing to Weston) for all DRM devices to be attached to a PCI device. (This is considering USB DisplayLink devices. I am not sure how the parent device tree is with these...)

Reviewers: devilhorns, ManMower

Reviewed By: devilhorns, ManMower

Subscribers: cedric, jpeg, #efl

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5727
2018-01-10 12:23:34 -06:00
Mike Blumenkrantz ffa276fce3 wayland: add xdg-shell vfinal support for client-side
@feature
2018-01-10 11:39:52 -05:00
Mike Blumenkrantz 79ca67d8a5 efl-wl: move to xdg-shell vfinal
@feature
2018-01-10 11:39:52 -05:00
Jean-Philippe Andre f285fd5925 eo: Add "destruct" event
Triggered after (almost) complete destruction of the object.

Not called "deleted" because the other event is already "del".
I don't like "destruct" much but this follows the terminology of
"constructor" / "destructor".

@feature
2018-01-10 16:31:06 +09:00
Jean-Philippe Andre 63bbf0f3e5 elm_test: Fix invalid define for widget style api 2018-01-10 16:31:06 +09:00
Jihoon Kim 1069c28b95 entry: Add autofill hint
@feature

Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
2018-01-10 16:00:49 +09:00
Cedric BAIL dda427dc51 ecore: remove use of efl_main_loop_get from efl_net_dialer_websocket_example. 2018-01-09 16:29:30 -08:00
Cedric BAIL 6667a914ac ecore: remove use of efl_main_loop_get from efl_net_dialer_websocket_autobahntestee. 2018-01-09 16:29:30 -08:00
Cedric BAIL 489671f4e1 ecore: remove use of efl_main_loop_get from efl_net_dialer_unix_example. 2018-01-09 16:29:30 -08:00
Cedric BAIL 76d91121f8 ecore: remove use of efl_main_loop_get from efl_net_dialer_udp_example. 2018-01-09 16:29:30 -08:00
Cedric BAIL 1393df02f1 ecore: remove use of efl_main_loop_get from efl_net_dialer_simple_example. 2018-01-09 16:29:30 -08:00
Cedric BAIL a9fb821559 ecore: forgot to switch to use Efl_Net.h for efl_net_dialer_http_example. 2018-01-09 16:29:30 -08:00
Chris Michael 2ac8458238 ecore-drm2: return supported rotations if not using hardware
If we are Not using Atomic/Hardware support for output rotations, we
should return all available rotations as these will still work in
software mode.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2018-01-09 12:48:25 -05:00
Chris Michael 4aeca75cff ecore-drm2: Fix enabling outputs
Commit 9d583b3fdb broke
ecore_drm2_output_enabled_set function due changing order of setting
output->enabled value. This patch fixes both issues by checking the
'enabled' variable being passed in.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2018-01-09 12:48:07 -05:00
Jihoon Kim d1823c6152 ecore_imf: Add transaction start and end event callback
@feature

Change-Id: I091b4e291b821ee5b6cc180d98024e251d4bcd03
Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
2018-01-09 11:00:43 +09:00
Cedric BAIL bb5f9d156c ecore: remove use of efl_main_loop_get from efl_net_dialer_http_example. 2018-01-08 16:18:52 -08:00
Cedric BAIL 419145a298 ecore: remove use of efl_main_loop_get from efl_net_control_example. 2018-01-08 16:04:22 -08:00
Cedric BAIL a0e81d1276 ecore: remove use of efl_main_loop_get from efl_io_queue_example. 2018-01-08 15:55:17 -08:00
Cedric BAIL e38a5b1234 ecore: remove use of efl_main_loop_get from efl_io_copier_simple_example. 2018-01-08 15:47:18 -08:00
Cedric BAIL 1f28dce028 ecore: make loop quit exit code work with EINA_VALUE_EMPTY. 2018-01-08 13:40:02 -08:00
Cedric BAIL dbba64a5f9 ecore: remove more use of main loop reference from unified API example. 2018-01-08 13:19:48 -08:00