Commit Graph

16643 Commits

Author SHA1 Message Date
Derek Foreman 4f720657d2 efl_ui_win: Pass seat info for wayland move/resize
Summary:
In wayland we need to know which seat initiated the CSD compositor move
request to properly handle input.
Depends on D6124

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

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

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

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

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

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6119
2018-05-08 13:25:54 -05:00
Derek Foreman cad847cf13 edje: Send seat name to all seat emitted events
Summary:
We now send the name of the seat (if available) to legacy and seat events
so the callbacks can query them via the new seat data api.

This isn't quite what I wanted, but it's enough to fix the ecore_wl2
input problems for now.  When multi-seat is a usable thing we can rework
these bits.
Depends on D6117

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6118
2018-05-08 13:25:46 -05:00
Derek Foreman ad5db090ab edje: Add beta api for seat_data_get
Summary:
Currently this is only to help wayland CSD function correctly, so the
opaque pointer is very poorly defined.
Depends on D6116

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6117
2018-05-08 12:26:36 -05:00
Derek Foreman be7f692ea5 edje: Emit extra/seat data from programmed signal emits
Summary:
Now if we generate an event in response to an event with seat data we
automatically carry the seat data with the emitted event.

This allows something like elm,action,move,start to have seat data
attached.

NB: Since extra and seat data share the same structs, extra data such as
the data from edje_entry is similarly propagated as a side effect.
Depends on D6115

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6116
2018-05-08 12:26:20 -05:00
Derek Foreman 1982046315 edje: Pass extra signal data to program_run
Summary: Depends on D6114

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6115
2018-05-08 12:26:13 -05:00
Derek Foreman 6d4f78d676 edje: Add edje_emit_full_data
Summary:
This is an even fuller emit_full, that takes a pre-made signal data
struct.  The original edje_emit_full is now implemented as a call to it.
Depends on D6113

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6114
2018-05-08 12:26:08 -05:00
Derek Foreman e12498f4d4 edje: Add seat data to extra data struct
Summary:
Since the extra data struct is already nicely refcounted, it's easy to
add the seat data to it instead of making a new struct with almost
identical code.
Depends on D6112

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6113
2018-05-08 12:26:02 -05:00
Derek Foreman da8127e1f8 edje: Create signal extra data before calling _edje_emit_send
Summary:
Steps towards recursively sending these.
Depends on D6111

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6112
2018-05-08 12:25:56 -05:00
Derek Foreman d21ff733df edje: Factor out signal extra data setup code
Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

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

fix T6908
2018-05-08 11:50:04 +02:00
Cedric BAIL b8cf656bd3 eina: actually it make more sense to do the check for EINA_VALUE_EMPTY inside eina_value_type_get. 2018-05-07 09:46:42 -07:00
Cedric BAIL 2b489d5627 eina: allow EINA_VALUE_EMPTY for Eina_Future as Eina_Value. 2018-05-07 09:34:04 -07:00
Youngbok Shin fa8aa7c9c8 evas textblock: remove NULL checking after dereferencing
Summary:
c->paragraphs couldn't be NULL if it is created by
_layout_paragraph_new() well. So, NULL checking should be
moved to after _layout_paragraph_new().

Test Plan: N/A

Reviewers: jpeg, tasn, raster, herdsman, cedric

Subscribers: zmike, stefan_schmidt, jpeg

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D4300
2018-05-06 12:01:41 +03:00
Youngbok Shin 73c39bcf12 Evas textblock: fix wrong hyphenation issues with non UTF8 encoded dictionary
Summary:
hnj_hyphen_hyphenate2() needs properly encoded text based on the given
dictionary. Each dictionary contains its encoding information at the head
of file. So, text will be converted to proper encoding before calling
the function. It fixes T3221.
@fix

Test Plan: Included in Evas test suite.

Reviewers: z-wony, tasn, woohyun, herdsman, Blackmole, minudf

Subscribers: zmike, stefan_schmidt, raster, cedric, jpeg

Tags: #efl

Maniphest Tasks: T3221

Differential Revision: https://phab.enlightenment.org/D3863
2018-05-06 12:01:41 +03:00
Youngbok Shin c33ef15d5d evas textblock: fix double free issue from user style push/pop and free
Summary: The Textblock Style which is created for user style was managed
application side.  It is created and free'd from application - outside
of Evas Textblock.  Recently, evas_object_textblock_style_user_push/pop
start to call efl_canvas_text_style_set() instead of legacy code. The
problem is efl_canvas_text_style_set() is always going to call free()
when a style is going to be deleted.  It makes conflicts(double free
issue) with application which is used to call
evas_textblock_style_free().  So, the issue will be fixed by this patch.

The patch also revise push/pop/peek code to make clean and avoid
meaningless calculation/events.

@fix

Test Plan:
A test case is Included in this patch.
The test case try to trigger double free.

Reviewers: herdsman, raster, cedric

Subscribers: zmike, woohyun

Tags: #efl

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

Committer's note: formatted commit summary (80 width).
2018-05-06 12:01:41 +03:00
Cedric BAIL 380c45722b elementary: unreak non tree mode for fileselector.
The model can outlive the item which resulted in keeping a dead reference in the model.
2018-05-05 21:27:31 -07:00
Cedric BAIL e8df3515d7 eio: on error/cancel properly destroy weak reference. 2018-05-05 21:15:55 -07:00
Cedric BAIL 382079bccd eio: cancel idler on Eio.Model destruction properly. 2018-05-05 21:15:24 -07:00
Cedric BAIL 90c2e05788 eina: Eina_Future as Eina_Value can also be cancelled. 2018-05-05 21:04:20 -07:00
Myoungwoon Roy, Kim 2733277b2a evas_main: fix structually dead code
Summary: Fix structually dead code in evas_main owing to wrong #ifdef EVAS_CSERVE2 definition

Test Plan: Execute test suite

Reviewers: raster, Hermet, cedric, jpeg, stefan_schmidt, Jaehyun_Cho

Reviewed By: raster

Subscribers: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6053
2018-05-05 12:02:34 +09:00
Cedric BAIL d84a268a71 eio: do not call efl_model_child_del at the end of build_st as that might result in the destruction of files. 2018-05-04 16:23:01 -07:00
junsu choi c1f5d64511 elm_object : Support to translatable_part_text of legacy widget
Summary:
this commit supports aliasing of legacy widget
about translatable_part_text_set/get.

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

Reviewers: cedric, herb, id213sin, woohyun

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6056
2018-05-04 20:34:29 +09:00
Chris Michael 3920247ff6 elementary: Fix eina_safety return val
The function that this is used in returns Eina_Bool, but the safety
check was returning NULL
2018-05-04 07:07:41 -04:00
Lauro Moura c9dd86579f efl_mono: More uniformization of the handling of names
Summary:
Uses a common helper to open and close namespaces, to get the managed
and unmanaged name of things, the interface, concrete and inherit class
names, etc.

eolian_cxx: Add namespace information to func_def, as it'll avoid
eolian-cxx clients dealing with the eolian C api directly when trying
to access a function pointer namespace.
Depends on D6048

Reviewers: felipealmeida, vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6049
2018-05-03 18:04:41 -03:00
Mike Blumenkrantz da13878cc2 efl_ui_focus_manager_calc: resolve shadow warning
Summary:
lib/elementary/efl_ui_focus_manager_calc.c: In function ‘node_item_free’:
lib/elementary/efl_ui_focus_manager_calc.c:208:20: warning: declaration of ‘n’ shadows a previous local [-Wshadow]
         Eina_List *n;
                    ^
lib/elementary/efl_ui_focus_manager_calc.c:197:10: note: shadowed declaration is here
    Node *n;
          ^

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6020
2018-05-03 16:13:30 -04:00
Daniel Kolesa f58bdbf23a eolian: switch Eina.Future instances to future<T> 2018-05-03 17:14:39 +02:00
Daniel Kolesa 3a55fe0bbf eolian: allow void and non-ownable types in future 2018-05-03 17:14:39 +02:00
Daniel Kolesa c116695311 eolian: add builtin type for Eina_Future 2018-05-03 17:14:39 +02:00
Daniel Kolesa 0a399be7b0 eolian: add source file for the future static checker 2018-05-03 17:14:39 +02:00
Daniel Kolesa f5c85daca7 eolian: add API that will allow for additional static analysis
Currently this API does nothing.
2018-05-03 17:14:39 +02:00
Jaeun Choi 473755fd66 efl_ui_image: add NULL check in elm_image_memfile_set() function
return EINA_FALSE if the data source is NULL elm_image_memfile_set()

@fix
2018-05-03 20:46:56 +09:00
Carsten Haitzler be770d37fb efl ui fmt - make strbuf simpler and dont use printf to avoid warnings
if someone turns on a lot of warning flags this is a warning (fals as
the string is checked already for having a static format - no fmt
flags, thus printf is valid).
2018-05-03 14:22:23 +09:00
Bryce Harrington 16fd04cc94 eina: Revise documentation for eina_hash_foreach
Summary: Reword description to clarify what it does.

Reviewers: cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6022
2018-05-02 19:46:00 -04:00
Bryce Harrington 43aac2f7de eina: Clarify bezier documentation
Summary:
Adds documentation about internals of a couple functions and cleans up
some stray doxygen tags.

Reviewers: cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6039
2018-05-02 19:45:35 -04:00
Bryce Harrington ea52774fbd eina: Improve documentation for Eina Matrix functions
Summary:
Adds documentation for several routines, fixes some incorrect
documentation, cleans up grammar throughout, corrects a few remaining
spelling errors.

Reviewers: cedric

Differential Revision: https://phab.enlightenment.org/D6021
2018-05-02 19:44:56 -04:00
Bryce Harrington cefd8018a5 eina: Move include file to top
Reviewers: cedric

Differential Revision: https://phab.enlightenment.org/D6038
2018-05-02 19:44:25 -04:00
Mike Blumenkrantz 061d665e50 ecore-win32: propagate WM_SIZE event
Summary:
this is the event which informs an app of its current size

also use the HWND from the msg pointer to avoid invalid access in
the WM_SIZE event which passes different message data

Reviewers: vtorri

Reviewed By: vtorri

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D6033
2018-05-02 15:57:22 -04:00
Mike Blumenkrantz 78c2f1e659 efl_ui_win: ignore attempts to resize window to 0x0 during frame sizing
Summary:
in many cases, a 0x0 size is found here as a result of various quirks at
different states of window initialization. passing 0x0 will clamp the size
to 1x1 and, for some engines, create a race condition during initial
sizing which causes the window not to render

ref T6907

Reviewers: cedric, ManMower, vtorri

Reviewed By: vtorri

Subscribers: raster, stefan_schmidt

Tags: #efl

Maniphest Tasks: T6907

Differential Revision: https://phab.enlightenment.org/D6016
2018-05-02 15:57:21 -04:00
Cedric Bail 94d9a0fd24 elementary: fix fileselector tree mode to properly nest files into directory. 2018-05-02 10:46:34 -07:00
Xavi Artigas 5d1e1bf3ae Update docs for efl_add() and efl_add_ref()
Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

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

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-05-02 10:46:34 -07:00
Cedric Bail c3072e77e6 eio: prevent asynchronous destruction of object while thread is still running. 2018-05-02 10:46:34 -07:00
Marcel Hollerbach b2437c0339 efl_ui_focus_graph: add a new way for calculating relations
this fixes the testsuite, and brings better relations back.
2018-05-02 19:20:23 +02:00
Youngbok Shin cd0bd865eb edje: fix backward compatibility issue caused by legacy cursor funcs
Summary:
edje_object_part_text_cursor_prev/next/up/down has return value.
It has to return EINA_TRUE when only it successed.
But, when these funcs moved to legacy, it changed to return EINA_TRUE
whenever it fails or success. It must return EINA_FALSE when it fails.
@fix

Test Plan:
- Run test suite
  make check

Reviewers: herdsman, raster, cedric, woohyun

Subscribers: zmike

Differential Revision: https://phab.enlightenment.org/D5972
2018-05-02 19:48:46 +03:00
Mike Blumenkrantz f1d411db2f eio: fix windows build
Summary: S_ISSOCK does not exist because sockets do not exist

Reviewers: vtorri, cedric

Reviewed By: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D6035
2018-05-02 12:26:24 -04:00
Bowon Ryu 67045ea28a efl_ui_tab_pager: add Efl.Ui.Tab_Pager and related classes
Summary:
the basic concept of Efl.Ui.Tab_Pager is similar to elm_toolbar.
user can attach Efl.Ui.Tab_Bar to the tab_pager.
user can create an Efl.Ui.Tab_Page to add tab label, tab icon and set the content of the page.
user can pack Efl.Ui.Tab_Page into tab_pager.
The tab and page match one to one.
user can controls tab and page through tab_pager.

See T5317

Test Plan: elementary_test -to efl.ui.tab_pager

Reviewers: cedric, woohyun, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: eunue

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

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

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric

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

Reviewers: herdsman

Subscribers: cedric

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

fix T6908
2018-05-01 20:27:07 +02:00
Marcel Hollerbach dc57abfafd efl_ui_focus_manager: remove partners field 2018-05-01 20:27:07 +02:00
Marcel Hollerbach 258b96be35 efl_ui_focus: move graph calculation to seperated file 2018-05-01 20:27:07 +02:00
Marcel Hollerbach 9669ca9ab9 efl_ui_focus_manager_calc: prepare the tree when we attempt to move 2018-05-01 20:27:07 +02:00
Marcel Hollerbach 7c9afc6d7b elm: remove unused vars 2018-05-01 20:27:07 +02:00
Marcel Hollerbach b5baa68c88 elm_focus_legacy: fix cycling in legacy windows 2018-05-01 20:26:41 +02:00
Marcel Hollerbach ad3d741fa0 elm_focus_legacy: remove useless function
it was only used in one place and had a wrong name.
2018-05-01 20:26:41 +02:00
Marcel Hollerbach f75bce9597 elm_focus_legacy: only search widget mapping on elm_widgets
fix T6909
2018-05-01 20:26:41 +02:00
Chris Michael 66a5126d97 elementary: Remove unused variable 2018-05-01 13:50:41 -04:00
Chris Michael 0d34987438 elementary: Remove unused variable 2018-05-01 13:49:42 -04:00
Chris Michael 25835c6c5c elementary: Remove unused variable 2018-05-01 13:49:01 -04:00
Cedric BAIL cdbbaede7e efl: remove old Efl_Future, Efl_Promise. 2018-05-01 10:39:01 -07:00
Cedric BAIL a34a733b7b eio: remove last remnant of Efl_Promise. 2018-05-01 10:39:01 -07:00
Cedric BAIL 894c2e6c8c ecore: remove BETA thread API integration with old Efl_Future. 2018-05-01 10:39:01 -07:00
Cedric BAIL 042de32421 eolian: remove old support for Efl_Future. 2018-05-01 10:39:01 -07:00
Lauro Moura 473d5b79c5 efl_cxx: remove eolized promises from the CXX bindings
Summary:
Also added a blacklist header to temporarily disable generation of eo
methods with futures as arguments or return type.

Once the models branch lands, we should enable future support again with
eina_futures.

Reviewers: cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D6018
2018-05-01 10:39:01 -07:00
Cedric BAIL 33fd77e9e4 ecore: move close_on_destructor to close_on_invalidate as that describe the behavior best.
Fix all use to correctly behave on invalidate.
2018-05-01 10:39:01 -07:00
Cedric BAIL 193149deb8 ecore: apply the same rules as set on the inner_io on the read and write pipe. 2018-05-01 10:39:01 -07:00
Cedric BAIL ec44120e93 ecore_con: migrate efl_net_ip_address_resolve to use Eina_Future. 2018-05-01 10:39:01 -07:00
Cedric BAIL b1883c7989 eina: make eina_value_pget on an EINA_VALUE_TYPE_STRINGSHARE return a new reference to a stringshare. 2018-05-01 10:39:01 -07:00
Cedric Bail e7d5d34158 eo: invalidate before setting the parent to NULL. 2018-05-01 10:39:01 -07:00
Cedric Bail 473ed10c02 eina: add an EINA_VALUE_TYPE_BOOL. 2018-05-01 10:39:01 -07:00
Cedric BAIL 550b14261e efl: refactor model error creation. 2018-05-01 10:39:01 -07:00
Cedric BAIL b30587f5b0 eo: linking a future lifecycle with an object lifecycle doesn't change the object. 2018-05-01 10:39:01 -07:00
Cedric BAIL 8e107c991c efl: update Efl.Model to properly propagate EFL_MODEL_EVENT_CHILDREN_COUNT_CHANGED. 2018-05-01 10:39:01 -07:00
Cedric BAIL af9b5f2f85 ecore: efl_model_list_value_get will throw error when asked for out of range value. 2018-05-01 10:39:01 -07:00
Cedric BAIL 67d9c0c11e eo: implement a copy function.
we do not rely on copying the object, but on refcounting it. This seems
to match the usage we have with object.
2018-05-01 10:39:01 -07:00
Cedric BAIL 0c3508c2a2 eldbus: make sure we do not destroy our log domain until we shutoff eina. 2018-05-01 10:39:01 -07:00
Cedric BAIL 119cba7d1c ecore: make sure that we only install and expose EFL unified API we intend to. 2018-05-01 10:39:01 -07:00
Cedric BAIL 57953e953b ecore: ecore_event_message is not an Efl unified API. 2018-05-01 10:39:01 -07:00
Cedric BAIL 7058312809 ecore: ecore_exe.eo is no longer a Eo unified API. 2018-05-01 10:39:01 -07:00
Cedric BAIL 57320c190f ecore_con: if we rely on parent lifecycle for automatic destruction, do not call efl_del in the destructor. 2018-05-01 10:39:01 -07:00
Cedric BAIL a327a0e7c7 ecore_con: expose proper DBG macro with ecore_con log domain. 2018-05-01 10:39:01 -07:00
Cedric BAIL 407c53e280 ecore_con: legacy API do not expect object to be destroyed under our feet in any circumstances. 2018-05-01 10:39:01 -07:00
Cedric BAIL 67cbc0d8af ecore_con: make the ecore_con log domain available during ecore_shutdown. 2018-05-01 10:39:01 -07:00
Cedric BAIL 3e648c475f ecore: when relying on parent relationship for lifecycle, we should not use efl_del in the destructor. 2018-05-01 10:39:01 -07:00
Cedric BAIL 2306a3b090 ecore: logically do the disconnection from the main loop API during invalidate. 2018-05-01 10:39:01 -07:00
Cedric BAIL 79afb51626 eo: if the pointer is incorrect, goto to the error handler. 2018-05-01 10:39:01 -07:00
Cedric BAIL 8f17ab22ac eio: handle future cancellation properly for Efl.Io.Manager. 2018-05-01 10:39:01 -07:00
Cedric Bail c0bcd32591 eina: allow EINA_VALUE_EMPTY to be propagated with eina_future_as_value. 2018-05-01 10:39:01 -07:00
Cedric Bail 135a39dd14 evas: keep the devices around until full destruction of the canvas. 2018-05-01 10:39:01 -07:00
Cedric Bail 0e5aa8dccd evas: do not link the life cycle of the device with the parent. 2018-05-01 10:39:01 -07:00
Cedric Bail 356e37564a eo: handle NULL nicely in efl_replace. 2018-05-01 10:39:01 -07:00
Cedric Bail e22e433d38 efl: Efl_Model can decide to optionnaly provide a child if it has it at hand. 2018-05-01 10:39:01 -07:00
Cedric BAIL d895527bd5 ecore: optimize efl_model_list_value_get by using eina_list_nth_list. 2018-05-01 10:39:01 -07:00
Cedric BAIL 5bfdc435c7 eina: improve EINA_VALUE_ARRAY_FOREACH to not systematically require &. 2018-05-01 10:39:01 -07:00
Cedric BAIL bf2e65a38d elementary: converting Efl.Ui.List to the new Efl.Model API. 2018-05-01 10:39:01 -07:00
Cedric BAIL 16d5caa2ee elementary: remove Efl_Future reference from efl_ui_layout. 2018-05-01 10:39:01 -07:00
Cedric BAIL 2c2df5b18b elementary: migrate elm_view_list to use the new Efl.Model API. 2018-05-01 10:39:01 -07:00
Cedric BAIL 90e0190161 elementary: migrate Elm.View.Form to use Efl.Model new interface.
Elm.View.Form is not done and require more work to be released.
2018-05-01 10:39:01 -07:00
Cedric BAIL 756f4cee0e elementary: migrate Efl.Ui.Layout to use the new Efl.Model API. 2018-05-01 10:39:01 -07:00
Cedric BAIL 8093eca7f3 elementary: migrate filesector to use the new Efl.Model API. 2018-05-01 10:39:01 -07:00
Cedric BAIL a408c145e9 elementary: migrate Efl.Ui.Image to use the new Efl.Model API. 2018-04-30 14:21:12 -07:00
Cedric BAIL be9b50cf80 eina: make the function created by EINA_VALUE_STRUCT_DESC_DEFINE inline to avoid unused warning. 2018-04-30 14:21:12 -07:00
Cedric Bail 46ac187bd8 elementary: add an Efl.Ui.Model.State in charge of visibility, selection and enable state. 2018-04-30 14:21:12 -07:00
Cedric Bail 4a54ae0b0a eio: migrate to the new efl.model API. 2018-04-30 14:21:12 -07:00
Cedric BAIL bba8fbe449 eio: improve efl.io.manager API by being const when not touching the object. 2018-04-30 14:21:12 -07:00
Cedric Bail 202f433476 eio: remove unecessary helper function Efl.Io.Manager. 2018-04-30 14:21:12 -07:00
Cedric Bail 9882a28736 eio: fix efl_io_manager_stat after conversion to Eina_Future. 2018-04-30 14:21:12 -07:00
Cedric Bail 6de16678b9 eio: convert efl_io_manager_stat_ls to use Eina_Future. 2018-04-30 14:21:12 -07:00
Cedric Bail 51776fb94a eio: convert efl_io_manager_direct_ls to Eina_Future. 2018-04-30 14:21:12 -07:00
Cedric Bail da45eb54a8 eio: switch Efl.Io.Manager to actually use Array instead of Accessor (to avoid unecessary callback). 2018-04-30 14:21:12 -07:00
Cedric BAIL 44dceade11 eio: share _efl_io_manager_future_cancel with all of eio. 2018-04-30 14:21:12 -07:00
Cedric BAIL afb18198bb eio: allow access to Eina_Value Eina_Stat description from all part of the library. 2018-04-30 14:21:12 -07:00
Cedric BAIL 9e2493760b ecore: move efl_model_list_value_get to be an internal function. 2018-04-30 14:21:12 -07:00
Cedric Bail 3edb4ca697 eldbus: migrate and refactor eldbus.model to new efl.model API. 2018-04-30 14:21:11 -07:00
Cedric Bail ddcf8d8b97 eldbus: refactor model code. 2018-04-30 14:21:11 -07:00
Cedric BAIL 7019b8857b ecore: don't artificially block fonctionnality for nested loop.
We do have nested loop when manually calling iterate and was used
in legacy code that got broken with this change.
2018-04-30 14:21:11 -07:00
Cedric BAIL 725c8add86 ecore: move efl_loop_message_process to ecore_internal.h to allow other EFL component to use it. 2018-04-30 14:21:11 -07:00
Cedric Bail d7fe2d5608 ecore: refactor and migrate efl.model.container to the new efl.model API. 2018-04-30 14:21:11 -07:00
Cedric Bail 741a6c4126 ecore: refactor and migrate efl.model.composite.selection to the new efl.model API. 2018-04-30 14:21:11 -07:00
Cedric Bail 9211fd73a7 ecore: refactor and migrate efl.model.composite.boolean to the new efl.model API. 2018-04-30 14:21:11 -07:00
Cedric Bail 2049c44c78 ecore: convert efl.model.item to the new efl.model API. 2018-04-30 14:21:11 -07:00
Cedric Bail 0ce9fc5db0 ecore: add a class to factorize efl.model.composite. 2018-04-30 14:21:11 -07:00
Cedric Bail 8f00bf5681 efl: make efl.model use of eina_value and eina_future instead of efl_future. 2018-04-30 14:21:11 -07:00
Marcel Hollerbach 04c63cb489 elm_focus_legacy: set custom chain
fix T6182
2018-04-30 19:26:06 +02:00
Marcel Hollerbach e3049e4a16 efl_ui_widget: do not register if the child is missing in a custom chain 2018-04-30 19:24:47 +02:00
Marcel Hollerbach d8a0ee9021 efl_ui_focus_composition: legacy compatibility 2018-04-30 19:24:47 +02:00
Marcel Hollerbach fdfcae968b elm_widget: Introduce elm_focus_legacy
Code located here is meant for a legacy tree and legacy widgets.
This is checked on the entry of the function
2018-04-30 19:24:47 +02:00
Marcel Hollerbach 27d6f3a65d efl_ui_focus_util: add new function for complementing the direction 2018-04-30 19:24:47 +02:00
Jaehyun Cho 81f94f5a09 efl_canvas_object: Add event info to animation events in eo 2018-05-01 00:40:34 +09:00
Jaehyun Cho e9b61a8969 efl_canvas_object: Change name of animation event info
Change name of animation event info to synchronize with other event
info names.

Change data name in animation event info to synchronize with data type
name, Efl.Event.Description.
2018-05-01 00:13:56 +09:00
Jaehyun Cho 485fe6cd61 efl_canvas_object: Remove unnecessary import 2018-04-30 23:52:31 +09:00
Marcel Hollerbach 33b9577013 elm_widget_item_static_focus: do not call prepare on all realized items
we should spare out the group and disabled items
2018-04-30 15:22:52 +02:00
Marcel Hollerbach 8b2a6a0b4d elm_widget_item_static_focus: a other element could also hide behind the
adapter
2018-04-30 15:22:52 +02:00
Marcel Hollerbach 3571b35a30 efl_ui_focus_manager_calc: drop redirect if there is no candidate 2018-04-30 15:22:52 +02:00
Marcel Hollerbach 139efaaba3 elm_interface_scrollable: rework filtering
A item might be in the middle of the viewport and still miss relations.
2018-04-30 15:22:52 +02:00
Marcel Hollerbach 5815ba52ec elm_****: do not make group items focusable 2018-04-30 15:22:52 +02:00
Marcel Hollerbach bd9b112094 efl_ui_focus_manager_calc: make the preparation call tree style
So we make sure that all children are prepared.
2018-04-30 15:22:52 +02:00
Marcel Hollerbach 3b17135d5b elm_widget_item_static_focus: prepare the item not the widget
fix T6894
2018-04-30 15:17:24 +02:00
Jaehyun Cho ec59f8053a elm_multibuttonentry: Fix make check fail
Fix make check fail of elm_multibuttonentry caused by
939690a8a9
2018-04-30 19:53:26 +09:00
SangHyeon Lee 8718e2995e efl.ui.layout_factory : use interface layout theme set for now
interface object need to use efl.ui.layout_object theme set
instead of legacy one, for applying proper theme naming rules.
2018-04-30 19:27:13 +09:00
Jaeun Choi 9fa1c8a2e3 evas: fix default return value of image-related legacy functions
In commit 8367f497b8,
type checking code was added for legacy image functions
in order to reduce failing calls of efl_xxx function.
The default return values of some functions for none-legacy
objects (including NULL), however, were not equal to eo-based
default return value, which broke compatibility.
This commit fixes it.

@fix
2018-04-30 17:55:24 +09:00
Carsten Haitzler 5b08611a9e ecore animator, x, vsync ecore evas restore x vsync to work again
so i found the work with wayland and having animator sources broke
that same source from ecore_x that was there from long ago, so i've
put in an exception if there are x based engines from restting to a
timer animator because ecore_x would have switched toa custom ticker
already, and this just resets it. also just set the source after
setting the tick callbacks and ensure tick cb's are null before going
to timer source as well. this cleans up this little but of animaatior
vsync modification to properly vsync in both x and wayland too now.

@fix
2018-04-30 15:32:10 +09:00
Davide Andreoli 93e9259d6f Genlist: fix doc for item_next/prev_get()
See T5938 for details
2018-04-28 10:31:23 +02:00
Davide Andreoli 69cf5754b5 Revert "genlist: fix "insane" order [BUG COMPATIBILITY]"
This reverts commit fd82c2521e.

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

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

Test Plan: tested in efl_ui_list_example_1.c in examples.

Reviewers: cedric, felipealmeida

Subscribers: woohyun, Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5861
2018-04-28 13:41:41 +09:00
Xavi Artigas bf8ce8ff7a eina: Provide actual len (after possible truncation) to eina_stringshare_add_length
Summary:
vsnprintf() returns "The number of characters that would have been written if n had been sufficiently large",
so if this is larger than the requested length, we pass the requested length to eina_stringshare_add_length,
to avoid reading uninitialised memory.

Fix T6903

Reviewers: zmike

Subscribers: cedric

Maniphest Tasks: T6903

Differential Revision: https://phab.enlightenment.org/D6011
2018-04-27 13:43:12 -04:00
Mike Blumenkrantz 18b6b1248d efreet: add method for disabling efreetd connection
Summary:
some minimal applications, such as test suites, may want to
disable this if they are not in need of any of the
functionality that is provided

@feature

Depends on D5965

Reviewers: cedric, stefan_schmidt

Reviewed By: cedric

Subscribers: stefan_schmidt, cedric

Differential Revision: https://phab.enlightenment.org/D5966
2018-04-27 14:35:13 +02:00
JongMin Lee 4092c3a554 evas: resolve possible memory leak. 2018-04-27 14:14:37 +09:00
JongMin Lee 296d117f2a elm efl_selection_manager: resolve possible memory leak. 2018-04-27 14:04:02 +09:00
Mike Blumenkrantz e0f8e65d20 eina: provide full string length to vsnprintf to allow for null character
Summary: fix T6903

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric

Maniphest Tasks: T6903

Differential Revision: https://phab.enlightenment.org/D6009
2018-04-26 12:24:16 -04:00
Daniel Kolesa bef66f507d eolian: check event vs function/part conflicts as well
Still behind the env var, because there would be a lot of failures
otherwise.
2018-04-26 16:41:32 +02:00
Daniel Kolesa d810c1e71d eolian: use pointer hashes in validation for performance
We can use pointer hashes because the keys will have the same
addresses during validation. This should be faster, so do that.
2018-04-26 16:23:13 +02:00
Daniel Kolesa a0e7564836 eolian: stricter function/part redef checks
Now we also check part redefinitions and function redefinitions
are checked against parts as well.
2018-04-26 16:15:04 +02:00
Daniel Kolesa f796a21d72 eolian: add event redefinition checks
As EFL fails build with this enabled, hide these behind the
EOLIAN_EVENT_REDEF_WARN environment variable for the time being.
2018-04-26 16:15:04 +02:00
Daniel Kolesa 6f69a8c56d eolian: clear chash on each iteration during validation
This is necessary because inheritance trees need to be validated
individually for proper name conflict checks. It also prevents
eina_hash_add related errors.
2018-04-26 16:15:04 +02:00
Lauro Moura a413914c18 efl_mono: Move event generators to its own header.
Summary:
Making it easier to share code between self and inherited events.

During this move, the namespace and keyword headers were merged into the
name_helpers header.

Also added the first seed of a generic namespace reducer function,
to be used by other functions in later commits.
Depends on D5994

Reviewers: felipealmeida

Reviewed By: felipealmeida

Subscribers: segfaultxavi, cedric

Differential Revision: https://phab.enlightenment.org/D5995
2018-04-26 10:55:18 -03:00
Jaehyun Cho 08a11dcbf9 efl theme: Replace legacy signal names with efl ui signal names
Replace legacy signal/source names with efl ui signal/source names.
e.g. From "elm,state,content,set" "elm" to "efl,state,content,set" "efl"
2018-04-26 22:45:59 +09:00
Taehyub Kim c83895b144 efl_ui_win: fix the wrong bracket
Summary: efl_ui_win: fix the wrong bracket

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, stefan

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

Test Plan: run elementary_test and test efl ui widget cases

Reviewers: Jaehyun_Cho, woohyun, cedric, raster, jpeg

Reviewed By: Jaehyun_Cho

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

Reviewed By: ManMower

Subscribers: cedric

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

Reviewers: cedric

Reviewed By: cedric

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

Reviewers: ManMower, cedric

Reviewed By: ManMower, cedric

Subscribers: cedric

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

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

also removes an unnecessary smart calc

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

ref T6884

Differential Revision: https://phab.enlightenment.org/D5944
2018-04-25 12:06:33 -04:00
Mike Blumenkrantz a1f649fa9d eet: add counter for number of frees needed in each directory
Summary:
further optimize the eet_shutdown case of closing files and avoid
endlessly looping over empty nodes
Depends on D5950

Reviewers: cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D5951
2018-04-25 12:00:11 -04:00
Mike Blumenkrantz e917be8831 eet: simplify shutdown file closing
no need to free mempool memory when the mempool is about to be freed,
and eet_clearcache duplicates existing shutdown functionality

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

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

Differential Revision: https://phab.enlightenment.org/D5948
2018-04-25 12:00:11 -04:00
Mike Blumenkrantz 668d68cdf4 edje: remove recalc from content_get and text_get
neither of these functions should force a recalc under any circumstance
as they are simply returning pointers

@fix

Differential Revision: https://phab.enlightenment.org/D5947
2018-04-25 12:00:11 -04:00
Mike Blumenkrantz e1036aff40 edje: make most edje_util.c functions obey freeze
a number of these functions have implicit recalcs, which is bad because
it's a pretty significant perf bottleneck, but it can't be improved
without breaking existing behavior expectations so this is probably the
best that can be done

ref T6884

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

Test Plan: datepicker, timepicker sample.

Reviewers: herb, Jaehyun_Cho, woohyun, SanghyeonLee

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5871
2018-04-25 16:48:21 +09:00
Myoungwoon Roy, Kim e62b97814d evas_main: Add null exception handling
Summary: Need to check whether Evas_Public_Data is null or not before dereferencing it.

Test Plan: Execute test suite

Reviewers: raster, Hermet, cedric, jpeg, stefan_schmidt, Jaehyun_Cho

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

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 17:41:47 -07:00
Marcel Hollerbach ac4d75a1ae efl_ui_focus_composition: permit anything but adapters and widgets
a wildcard gfx object could bring focus to a evas object that has no
smart parent, and thus keyboard events are left at a place where they
cannot come away from.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:51 -07:00
Xavi Artigas a785ba5495 Efl.Net.Dialer_* (from Efl.Net.Dialer.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:50 -07:00
Xavi Artigas 566a36dc99 Efl.Model_* (from Efl.Model.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:49 -07:00
Xavi Artigas 23c303f87b Efl.Loop_* (from Efl.Loop.*)
Ref https://phab.enlightenment.org/T6847

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

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:04:02 -07:00
Xavi Artigas c94befd3ca Efl.Canvas.Gesture_* (from Efl.Canvas.Gesture.*)
Ref https://phab.enlightenment.org/T6847

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