Commit Graph

17441 Commits

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

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

Reviewers: Hermet, raster, woohyun

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7074
2018-09-21 15:08:43 +09:00
Taehyub Kim 54c68e445b eina_vpath: fix the memory leak
Summary:
 fix the memory leak
@fix

Reviewers: Jaehyun_Cho, bu5hm4n

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

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

Reviewers: Jaehyun_Cho, jpeg, raster, cedric, woohyun

Reviewed By: Jaehyun_Cho

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7079
2018-09-21 15:05:49 +09:00
Taehyub Kim d8182638f2 ecore_main: fix the invalid return value
Summary:
fix the invalid return value
@fix

Reviewers: Jaehyun_Cho, raster, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7080
2018-09-21 14:46:50 +09:00
Woochanlee d702f714fe ecore_wl2_window: Fix incorrectly implemented null check.
Summary: It checks 'window->xdg_toplevel'  two times.

Reviewers: ManMower, devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

it occurs wrong result of SCROLLTO_MIDDLE and SCROLLTO_BOTTOM cases.

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

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

(bottom case may need D7035 as precede patch)

{F3311262}

Reviewers: Hermet, eagleeye

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

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

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

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

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

{F3300793}

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

Reviewed By: Hermet, #reviewers

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

Test Plan: elementary_test

Reviewers: Hermet, eagleeye

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

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

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

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

Reviewers: eagleeye, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7367

Differential Revision: https://phab.enlightenment.org/D7014
2018-09-19 09:21:31 +09:00
Bryce Harrington b5409faf8b eina: Improve explanation of read-only binbuf's
Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7057
2018-09-19 08:41:52 +09:00
Bryce Harrington af8a96ff46 eina: Refer to sin/cos as sine/cosine instead of sinus/cosinus
Summary:
Sinus and cosinus are just the Latin words for sine and cosine, but we
should use the English versions to avoid any possible confusion.

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7059
2018-09-19 08:38:33 +09:00
Bryce Harrington 124ecdfbde eina promise: Fix example error message in docs
Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7060
2018-09-19 08:37:39 +09:00
Bryce Harrington b02257e781 eina cow: Cleanup doxygen syntax
Summary:
The "be careful" advice seems a bit odd in api docs, better to just flag
them with doxygen @note's.

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7061
2018-09-19 08:35:02 +09:00
Derek Foreman d8d5fec1a5 efl_canvas_animation_player: Convert to new animators
Summary:
Use more efficient animator mechanism.
Depends on D7050

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7051
2018-09-18 09:43:17 -05:00
Derek Foreman be752e6bc1 emotion: Convert to new animators
Summary:
Use more efficient animator mechanism.
Depends on D7049

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7050
2018-09-18 09:43:14 -05:00
Derek Foreman 64208d4d65 elu_ews_wm: Convert to new animators
Summary:
Use more efficient animator mechanism.
Depends on D7048

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

Depends on D7041

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7042
2018-09-18 09:42:42 -05:00
Derek Foreman 4dc1e8273d ecore: Add new way to register animators
Summary:
We have back-ends that can generate their own tick sources, but
ecore_animator_add()/ecore_animator_timeline_add() gives no indication
which backend the animator is running on.  This means that all animators
have to cause all currently in use backends to tick.

For example, if under wayland 4 application windows are open, all 4
windows will create ticks when any animator is present.

These new animator APIs that take an evas object allow us to figure out
out the backend and only cause the appropriate one to tick.

Depends on D7040

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: devilhorns, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7041
2018-09-18 09:42:38 -05:00
Derek Foreman 448c7ca2ce ecore_anim: Move struct Ecore_Animator to private header
Summary:
We're going to use this in ecore_evas shortly.

Depends on D7039

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7040
2018-09-18 09:42:34 -05:00
Derek Foreman 501114e679 ecore_evas: Refactor out ticking start/stop as functions
Summary:
These are the refcounted ticky guts of the signal add/del catchers, we'll
need to use these to start/stop from other call chains in the near
future.

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7039
2018-09-18 09:42:30 -05:00
Hermet Park 8b17564c74 efl gfx_path: prevent buffer overflow.
Summary:
the counter must be less than 7,
don't allow to over the index.

@fix

Reviewers: #committers

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7053
2018-09-18 11:48:27 +09:00
SubodhKumar f107ea2432 edje: Remove hack code
Summary:
special calculation for textblock is for fit calculation.
This is obvious from code that fit is being calculated
before text is actually been set to textblock.
I am not sure whether this is intentional or mistake
but it make sense to calculate fit after text is being
set so that formatted and native calculation can be proper.

@fix

Test Plan: NA

Reviewers: cedric, zmike, herdsman, devilhorns

Subscribers: stefan_schmidt, #reviewers, #committers, shilpasingh

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6045
2018-09-17 17:38:24 +03:00
Marcel Hollerbach f570e7435e elm-containers: use alive api
check if the object is in its correct lifetime before performing
operations

Differential Revision: https://phab.enlightenment.org/D6724
2018-09-14 11:19:01 +02:00
Marcel Hollerbach 068e09cf2e eo: add funktion for alive checks
The function simply checks if the object is finalized and not
started to be invalidated or invalidated.

Differential Revision: https://phab.enlightenment.org/D6723
2018-09-14 11:18:56 +02:00
Gwanglim Lee 772759baa2 evas canvas: fix null possibility of evas_object_above_get().
fix null object return when trying to get an object
above the current object and a layer with no objects is present.
probably a layer not being cleaned somewhere.

Reviewed By: Hermet

@fix
2018-09-13 18:28:13 +09:00
Marcel Hollerbach 2d94b8b93f ethumb: fix module loading when running in tree
Differential Revision: https://phab.enlightenment.org/D6820
2018-09-13 09:54:13 +02:00
Alastair Poole 0b79c20c16 evas_events: NULL check before evas_event_freezes_through.
In some cases focused_obj can be NULL. Add a check before
calling evas_event_freezes_through. Was causing a SEGV
in some situations. Avoiding a crash here is good
but we also need to warn for future debugging to
be more useful.
Differential Revision: https://phab.enlightenment.org/D7027
2018-09-12 21:20:19 +02:00
Alastair Poole 111f2fe89c efl_ui_focus_manager_calc: invalidate obj on delete.
Summary:
In some situations focus is being set to a deleted object.
Use EFL_EVENT_INVALIDATE on object deletion not
EFL_EVENT_DEL. This prevents the object to be again selected for restoring focus when a redirect is deleted.

This fixes SEGV with some widgets including popup tests.

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

Reviewers: bu5hm4n, zmike

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7026
2018-09-12 20:02:09 +01:00
Marcel Hollerbach 4aa480f6d3 ecore_wl2: add support for intree loading of the module
Summary: the module was not loaded when we were running intree.

Reviewers: ManMower, devilhorns

Reviewed By: devilhorns

Subscribers: devilhorns, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7023
2018-09-12 08:39:14 -04:00
Hermet Park 945eeeab33 evas neon: fix build break.
there is a grammatic error, just fix it.
2018-09-12 13:36:35 +09:00
Alastair Poole fb58e4a35e elm_code: Make sure we handle python3 mime type.
Summary:
Let's not miss python3 mimetype when setting up
syntax highlighting.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7000
2018-09-11 12:22:43 +01:00
Derek Foreman b43033e393 ecore_wl2: Move surface module file to modules directory
It is now similar to how other modules are handled.

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

Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
2018-09-11 09:54:49 +02:00
Marcel Hollerbach 0d506bf346 efl_ui_focus_util: refactor the util for focusing objects
the previous code had the problem that we moved focus onto logical
objects which were not having any children, thus we saw errors from the
focus manager.
Now we are checking if we are able to deliver focus onto a child of the
passed user.

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

Reviewers: woohyun, felipealmeida, Hermet, bu5hm4n

Reviewed By: Hermet, bu5hm4n

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

Tags: #efl

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

ref 31be3af62d

Test Plan: make

Reviewers: Jaehyun_Cho, Hermet

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7015
2018-09-10 20:22:53 +09:00
Hermet Park 2614179af8 Revert "evas vg: changed "vg object" to "vg""
This reverts commit ec69abed9d.

Ooops, I didn't intended this patch.  @#!@#!@#!@#
2018-09-10 17:27:42 +09:00
Hermet Park 8daf8e4db8 evas image: remove duplicated EINA_UNUSED specifier. 2018-09-10 17:26:12 +09:00
Hermet Park ec69abed9d evas vg: changed "vg object" to "vg"
Summary:
Following our naming rule, rename to like other primitives.

i.e. efl_canvas_rect, efl_canvas_image, efl_canvas_vg ...

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7013
2018-09-10 14:06:58 +09:00
Wonki Kim 4fb9effee9 evas: replace a current copy color function for neon
Summary:
current copy color function has problem sometime on a arm neon environment.
inline asm code makes crashing problem.

so that this patch replace the asm code with a function which is a part of pixman project.

Reviewers: cedric, Hermet

Subscribers: kimcinoo, #reviewers, #committers

Tags: #efl

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

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

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

Reviewers: woohyun, felipealmeida, Hermet, segfaultxavi

Reviewed By: Hermet, segfaultxavi

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

Tags: #efl

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

Reviewers: ajwillia.ms

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7008
2018-09-09 21:26:10 +01:00
Bryce Harrington f6d397df04 eina: Add doxygen in/out tags for remaining APIs
Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

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

ref T7030

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

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

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

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

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

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

Reviewers: woohyun, felipealmeida, Hermet

Reviewed By: Hermet

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

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6982
2018-09-05 15:05:23 +09:00
Shinwoo Kim ad97989b28 ecore_event: initialize uninitialized variable
Summary:
The following commit (1) made an abort (2)

(1) commit d1e4c6bab8
Author: Jean Guyomarc'h <jean@guyomarch.bzh>
Date:   Mon Aug 27 12:04:35 2018 +0900

    ecore: fix built-in event types generation

(2) abort
/lib/x86_64-linux-gnu/libc.so.6(+0x777e5)
/lib/x86_64-linux-gnu/libc.so.6(+0x8037a)
/lib/x86_64-linux-gnu/libc.so.6(cfree+0x4c)
/home/kimcinoo/install/lib/libecore.so.1(+0x237d7)
/home/kimcinoo/install/lib/libeo.so.1(efl_destructor+0x64)
/home/kimcinoo/install/lib/libeo.so.1(+0x18029)
/home/kimcinoo/install/lib/libeo.so.1(efl_unref+0x44c)
/home/kimcinoo/install/lib/libecore.so.1(+0x201f2)
/home/kimcinoo/install/lib/libecore.so.1(ecore_shutdown+0x145)
/home/kimcinoo/Upstream/efl/src/tests/ecore/.libs/lt-efl_app_suite(+0xb85d)
/home/kimcinoo/install/lib/libcheck.so.0(srunner_run_tagged+0xa13)
/home/kimcinoo/Upstream/efl/src/tests/ecore/.libs/lt-efl_app_suite(+0xead9)
/home/kimcinoo/Upstream/efl/src/tests/ecore/.libs/lt-efl_app_suite(+0x4ade)
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0)
/home/kimcinoo/Upstream/efl/src/tests/ecore/.libs/lt-efl_app_suite

And following commit (3) fixed the abort.

(3) commit 3f306491a3
Author: Yeongjong Lee <cleanlyj@naver.com>
Date:   Mon Sep 3 15:55:13 2018 +0000

    ecore_event: fix ecore event handler iterator range

The above commit fixed the abort though, we could access uninitialized memory
and make another abort again. This would prevent such unwanted case.

Reviewers: Hermet, YOhoho, bu5hm4n, netstar

Reviewed By: netstar

Subscribers: netstar, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6970
2018-09-04 11:54:17 +01:00
Yeongjong Lee fd87dbce38 edje_calc: remove unused variable
Summary: those variables should be removed at 05e3e450e5

Reviewers: eagleeye

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6968
2018-09-04 17:40:06 +09:00
Woochanlee 7655a0d267 Clean up efl_ui_XXX eo files.
Summary:
Delete unnecessary interface references.

Delete unnecessary annotations.

Reviewers: Hermet, Jaehyun_Cho, zmike

Reviewed By: Hermet

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

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6945
2018-09-04 09:37:01 +09:00
Hermet Park 65648335c5 evas canvas: fix overflowed function initialization.
Summary:
last function pointer indicates render_pre(),
add one more element is unnecessary.

Reviewers: #committers, netstar

Reviewed By: #committers, netstar

Subscribers: netstar, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6967
2018-09-04 09:08:54 +09:00
Yeongjong Lee 3f306491a3 ecore_event: fix ecore event handler iterator range
event handler start at 1 (see _ecore_event_message_handler_type_new and
_ecore_event_message_handler_efl_object_constructor) so that handlers[0] is not
allocated. this patch avoid invalid memory access.

this fixes T7349
Differential Revision: https://phab.enlightenment.org/D6966
2018-09-03 18:13:32 +02:00
Hermet Park 423d8a2296 evas image: fix a bug in image preloading.
Summary:
Current preloading is too buggy since it's on thread-based.
This is a fundamental improvement to fix a bug.

The critical issue here is,
When preloading img object suddenly cancel its preloading,
the object possibly cannot render image next then because
renderer doesn't have any idea when async cancelling is
finished. Renderer just tries to render regardless of
image loading status, and this could occur no-texture(in gl case)
image object.

So, here improvement is, adding a notification for async cancelled
so that putting img objects to redraw images properly after their preloading is
cancelled.

The best scenario to reproduce this bug is this one.

Evas_Object *img2 = evas_object_image_filled_add(evas);
evas_object_image_file_set(img2, "test.jpg", NULL);
evas_object_image_preload(img2, EINA_FALSE);
evas_object_resize(img2, 200, 200);
evas_object_show(img2);

Evas_Object *img = evas_object_image_filled_add(evas);
evas_object_image_file_set(img, "test.jpg", NULL);
evas_object_image_preload(img, EINA_FALSE);
evas_object_move(img, 200, 200);
evas_object_resize(img, 200, 200);
evas_object_show(img);

evas_object_image_preload(img2, EINA_TRUE);
If you run this on gl backend, occasionally happens rendering fail.

Yet there other bugs on preloading feature....

@fix

Reviewers: #committers, raster

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6919
2018-09-03 17:12:55 +09:00
Yeongjong Lee 4e0b2c2fff docs: Fix typos in API reference doc
Reviewers: segfaultxavi, kimcinoo

Reviewed By: kimcinoo

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

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

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

Reviewed By: Hermet, SanghyeonLee

Subscribers: SanghyeonLee, cedric, #reviewers, #committers

Tags: #efl

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

Reviewed By: Hermet, segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

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

Reviewers: Hermet, Jaehyun_Cho

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

Test Plan: N/A

Reviewers: raster, zmike, Hermet, segfaultxavi

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6943
2018-08-30 14:01:21 +09:00
Chris Michael 5b9d152e14 efl: Remove cserve2 support
Summary:
As cserve2 support has not worked (if ever) in a very long time, and
it's authors are gone, this series of patches removes cserve2 (and
thus cache2) from our codebase to remove cruft and reduce
maintainability of unused code.

ref T7226
Depends on D6941

Reviewers: raster, cedric, zmike, Hermet

Reviewed By: Hermet

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7226

Differential Revision: https://phab.enlightenment.org/D6942
2018-08-30 13:59:53 +09:00
Chris Michael f5086dde02 evas: Remove cache2 support
As cserve2 support has been removed, cache2 can go away also

ref T7226
Depends on D6940
2018-08-30 13:59:14 +09:00
Chris Michael 78d5c4bdae evas-file: Remove cserve2 support
Summary:
ref T7226
Depends on D6935

Reviewers: raster, cedric, zmike, Hermet

Reviewed By: Hermet

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7226

Differential Revision: https://phab.enlightenment.org/D6937
2018-08-30 13:49:04 +09:00
Chris Michael 5b36506a68 evas-canvas: Remove cserve2 support
Summary:
ref T7226

Depends on D6933

Reviewers: raster, cedric, zmike, Hermet

Reviewed By: Hermet

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7226

Differential Revision: https://phab.enlightenment.org/D6934
2018-08-30 13:48:38 +09:00
Chris Michael 3862b304b0 evas-common: Remove cserve2 support
ref T7226

Depends on D6934
2018-08-30 13:47:27 +09:00
Hermet Park 54f2a554da evas cache: refactor internal logic.
Summary:
Adding cache targets in other modules are inproper.
This can't be managed by cache module inside.

One representive scenario is,
when preload cancel is triggered, preload canceling sequence
can't be performed properly because cache targets implicitly were
increased by backend modules.

And then, Cache itself couldn't get notified it.
see this condition.

if ((!ie->targets) && (ie->preload) && (!ie->flags.pending))
in _evas_cache_image_entry_preload_remove()

Consequently, I move preloaded callbacks to sync with adding cache targets,
not to add by backed engines themselves.

This will bring Cache to manage cache targets properly.

Reviewers: #committers, raster

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6912
2018-08-30 13:26:06 +09:00
Hermet Park 4e1553905c evas cache: remove unused custom task in preload.
Summary:
That redundant code just made code complex.

This is one of intermediate patches for preload

Reviewers: raster, #committers

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

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

ref D6830

Reviewers: Hermet, devilhorns

Reviewed By: Hermet, devilhorns

Subscribers: devilhorns, cedric, #reviewers, #committers

Tags: #efl

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

Reviewers: Hermet, eagleeye, zmike

Reviewed By: Hermet

Subscribers: #reviewers, cedric, #committers, zmike

Tags: #efl_widgets

Differential Revision: https://phab.enlightenment.org/D6593
2018-08-29 21:38:20 +09:00
Yeongjong Lee e19292aa2b evas: call evas_find before safety check
Summary:
edje_edit_object_add
edje_object_add
emotion_object_add
evas_object_xxx_add

These APIs had allowed to set parent to EFL_CANVAS_OBJECT(Evas_Object) before
8bb11a17. we should call evas_find before safety check for backward compatibility.

Test Plan:
  win = elm_win_add(NULL, "main", ELM_WIN_BASIC);

 1.  `rect = evas_object_rectangle_add(evas_object_evas_get(win));`

 2.  `rect = evas_object_rectangle_add(win);`

Check that 1. and 2. works.

Reviewers: Hermet, zmike

Reviewed By: Hermet

Subscribers: cedric, #reviewers, CHAN, #committers

Tags: #efl

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

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

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

from:

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

or there could be another way.

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

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

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

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

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

    SVN revision: 56220

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

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

   elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);

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

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

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

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

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

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

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

   elm_mapbuf_enabled_set(mb, EINA_TRUE);

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

   elm_run();

   return 0;
}
ELM_MAIN()

Reviewers: raster, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

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

1. animation duration

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

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

2. distance to move

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

3. accelerate logic

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

@feature

Reviewers: zmike, #reviewers, Hermet

Reviewed By: #reviewers, Hermet

Subscribers: Hermet, cedric, zmike

Tags: #efl, #do_not_merge

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

To remove multiple class inheritance, each part class in elementary
should implement interfaces instead of inheriting from other widget
class because part class in elementary basically inherit from the class
Efl.Ui.Widget_Part.
Differential Revision: https://phab.enlightenment.org/D6904
2018-08-27 21:18:25 +02:00
Hosang Kim 586f8ae957 efl_input: fix problem that ref count does not become 0.
1.fix reusing instance logic.
2.remove efl_ref() when default devices are created.
Differential Revision: https://phab.enlightenment.org/D6882
2018-08-27 09:43:50 +02:00
Ross Vandegrift b55ae24440 Format-string harden eina_strbuf_append_printf use
Summary:
gcc -Werror=format-security flags this for lacking a format string.  Fixes:
https://phab.enlightenment.org/T7325

Reviewers: #committers, Hermet

Reviewed By: #committers, Hermet

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

Tags: #efl

Maniphest Tasks: T7325

Differential Revision: https://phab.enlightenment.org/D6867
2018-08-27 12:10:12 +09:00
Mike Blumenkrantz 1d7fb47f04 efl/timer: correctly handle timer freeze during construction
Summary:
it is not correct to throw an error when methods are called during
construction

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: Hermet, cedric, #reviewers, #committers

Tags: #efl_main_loop

Differential Revision: https://phab.enlightenment.org/D6787
2018-08-27 12:09:49 +09:00
Jean Guyomarc'h d1e4c6bab8 ecore: fix built-in event types generation
Summary:
Ecore internally uses 10 events, from ECORE_EVENT_SIGNAL_USER=1 to
ECORE_EVENT_SYSTEM_TIMEDATE_CHANGED=10. The Ecore.Event.Message_Handler
singleton that holds the counter of events is initialized with -1.
This is followed in _ecore_event_init() by ten calls to
ecore_event_message_handler_type_new(), which increase the counter of
event by one each.

This results in an event counter to be 9 (-1 + 10) at the end of the
initialization of ecore_events. This means that the next event to be
created will have a value of 10, which will overlap with
ECORE_EVENT_SYSTEM_TIMEDATE_CHANGED. As such, these two distinct events
will be aliased and their associated handlers will be called at
unexpected times, with unexpected data.

By changing the constructor value from -1 to 0, we prevent this event
aliasing.

Fixes T6605

Reviewers: zmike, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

Maniphest Tasks: T6605

Differential Revision: https://phab.enlightenment.org/D6894
2018-08-27 12:04:36 +09:00
Yeongjong Lee db15b03472 ecore_buffer: move include to out side of extern "C"
Summary: This fixes ecore_buffer_queue_init, shutdown compile error.

Test Plan:
1. compile with --enable-ecore-buffer
2. gcc -o ecore_buffer_consumer_example ecore_buffer_consumer_example.c \
   `pkg-config --libs --cflags eina ecore evas ecore-buffer ecore-evas`
3. check there is no error message like
`undefined reference to `ecore_buffer_queue_init'`

Reviewers: Hermet, zmike

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6898
2018-08-27 12:00:17 +09:00
Marcel Hollerbach 4a808834d0 Revert "efl_ui_focus_manager: do not adjust values on a inactive manager"
Sorry this was a accident

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

resolves test failures in elm_config

Differential Revision: https://phab.enlightenment.org/D6825
2018-08-24 15:50:35 +02:00
Wonki Kim 3ea6f58ec6 eina: find a real path of dynamic library
In general case, user library path is specifed as /usr/lib/, however,
if the user library path is specified as /lib/ which is a symbolic link to /usr/lib/,
current eina_prefix_new logic will print warning messages.
(actually the logic finds a /usr/lib/ path once a fallback logic runs)

This patch modifies the logic to find a proper path of lib path even if it is specified as symlink.
Differential Revision: https://phab.enlightenment.org/D6869
2018-08-24 15:48:38 +02:00
Marcel Hollerbach a6ee2061a3 efl_ui_focus_manager: do not adjust values on a inactive manager
Differential Revision: https://phab.enlightenment.org/D6903
2018-08-24 15:48:38 +02:00
Hermet Park 568ddfe397 ecore wl2: change logging level.
Summary: ease the error message to warning because it's not serious one.

Reviewers: devilhorns, ManMower

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6899
2018-08-23 07:29:35 -04:00
Hermet Park 541fe885ac evas image: remove redundant code. 2018-08-23 19:19:09 +09:00
Marcel Hollerbach 28423160d6 ecore_cocoa: move MARKUP outside of ecore_cocoa
the elementary MARKUP stuff requires ecore_cocoa to be linked to evas to
find the function. However, ecore_XXXXX things should stay unrelated to
evas in most cases. Thus this was not a good idea and created a circular
dependency, this is fixed now.

Differential Revision: https://phab.enlightenment.org/D6865
2018-08-22 20:39:35 +02:00
Mike Blumenkrantz ba3fe6c1cb ecore-evas/buffer: implement ignore_events method
Summary:
this is a simple implementation of ignore_events functionality which
sets pass_events if it's an image or prevents the emission of events
in other cases

the result should be that no user events are received. this deliberately
does not block the triggering of resize callbacks as in the original ticket
since this guarantees broken functionality and is just not a good idea

fix T4700

Reviewers: devilhorns, Hermet

Reviewed By: Hermet

Subscribers: Hermet, cedric, #reviewers, #committers

Tags: #efl_display_system

Maniphest Tasks: T4700

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

@fix
2018-08-22 10:10:42 +09:00
Lauro Moura f1fddf5c74 cxx: Remove libeolian_cxx dependency on eo_cxx
Summary: Fixes T7324

Reviewers: felipealmeida, bu5hm4n, zmike

Reviewed By: felipealmeida, bu5hm4n, zmike

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

Tags: #efl

Maniphest Tasks: T7324

Differential Revision: https://phab.enlightenment.org/D6881
2018-08-21 14:21:43 -04:00
Hermet Park c4124f8b36 efl_ui_image: apply some image options as retained way.
Summary:
load_size will be applied when file is set,
orientation, flip would be applied when starting sizing calc.

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

This is a regression bug by ae51c81a686ca47c93eedc99beaf3a84f8a9cb96

Reviewers: #committers, zmike

Reviewed By: #committers, zmike

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6855
2018-08-21 10:38:54 -04:00
Mike Blumenkrantz 69fae8c7bf evas: remove render2
Summary:
this is more or less a dead project, having not been actively developed
in over 2 years and instead forcing people to expend more time and energy
to keep it compiling across refactors

fix T7227

Reviewers: stefan_schmidt, Hermet, ManMower, devilhorns

Reviewed By: Hermet, devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7227

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

ref T7292

Reviewers: SanghyeonLee

Reviewed By: SanghyeonLee

Subscribers: cedric, #reviewers, #committers

Tags: #efl_widgets

Maniphest Tasks: T7292

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

ref T7292

Reviewers: SanghyeonLee

Reviewed By: SanghyeonLee

Subscribers: cedric, #reviewers, #committers

Tags: #efl_widgets

Maniphest Tasks: T7292

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

Test Plan: elementary_test -to efl.ui.tab_pager

Reviewers: Jaehyun_Cho, Hermet

Reviewed By: Jaehyun_Cho

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

Tags: #efl

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

User can use 'efl_ui_direction()' for spin_button.

@feature

Test Plan: elementary_test-> spin_button sample.

Reviewers: Hermet, Jaehyun_Cho

Subscribers: cedric, #committers, zmike

Tags: #efl

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

Reviewers: bu5hm4n, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6872
2018-08-21 13:22:40 +09:00
Marcel Hollerbach 365c0334ff efl_object: add call for getting invalidating
Summary:
there is now invalidated & invalidating.

invalidated returns true when all children are invalidated, and the
object is / was requested to be invalidated.

invalidating return true when the object is called to be invalidated but
not all children are invalidated yet. However, the object is garanteed
to be invalidated in near future.

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric

Tags: #efl, #do_not_merge

Differential Revision: https://phab.enlightenment.org/D6722
2018-08-20 13:15:57 -04:00
Marcel Hollerbach cf74462b76 eina_debug: switch to vpath
Summary:
eina debug was using the xdg runtime dir in a wrong manner. Since the
directory should be only used by the user, and the directory should be
be subject of any other usage. Additionally, apps tend to create files
like: $XDG_RUNTIME_DIR/foo.bar which is probebly not what you want in
$HOME.

ref T7107

Depends on D6747

Reviewers: zmike, stefan_schmidt, #committers

Reviewed By: zmike, #committers

Subscribers: #reviewers, cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T7107

Differential Revision: https://phab.enlightenment.org/D6748
2018-08-20 12:59:15 -04:00
Marcel Hollerbach f6579e47ab ecore_con: migrate to eina_vpath
Summary:
the logic here was against the xdg standard, thus we migrate to
eina_vpath which uses the correct xdg standard

Depends on D6745

Reviewers: zmike, stefan_schmidt, #committers

Reviewed By: zmike, #committers

Subscribers: #reviewers, cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6746
2018-08-20 12:58:35 -04:00
Marcel Hollerbach 7968a0d0b9 move efreet xdg envvars to eina
Summary:
The contents of the XDG_ env vars are also usefull for eina subsystems,
thus we should init those env vars here.

Depends on D6751

Reviewers: zmike, stefan_schmidt, #committers

Reviewed By: zmike, #committers

Subscribers: #reviewers, cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6744
2018-08-20 12:57:57 -04:00
Marcel Hollerbach e31ce7b287 eina_vpath: introduce eina_vpath in style of snprintf
Summary:
this can be usefull for later regactor usages.

Depends on D6742

Reviewers: zmike, stefan_schmidt, #committers

Reviewed By: zmike, #committers

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

Tags: PHID-PROJ-55rnlag4d454jfmlmuhu

Differential Revision: https://phab.enlightenment.org/D6743
2018-08-20 12:56:51 -04:00
Marcel Hollerbach aa416afffb eina_vpath: fix homedirectory fetching
Summary:
the fetching of the homedirectorty did not work. pw_dir was never
prepended. Additionally you would get a silent NULL string back
if the system does not support HAVE_GETPWENT.

ref T7107

Depends on D6737

Reviewers: zmike

Reviewed By: zmike

Subscribers: #reviewers, raster, vtorri, cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T7107

Differential Revision: https://phab.enlightenment.org/D6742
2018-08-20 12:56:30 -04:00
Stefan Schmidt 9e7d0d03e4 Revert "elm/win: move trigger for "shot" to first pre-render callback"
Summary:
This reverts commit 93228108ef.

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

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

Fixes T7166

Reviewers: zmike, JackDanielZ, xavi

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7166

Differential Revision: https://phab.enlightenment.org/D6873
2018-08-20 11:00:09 -04:00
Youngbok Shin 517018e008 evas textblock: add/apply cursor cluster APIs based on grapheme cluster
Summary:
Add a feature for moving cursor over a grapheme cluster.
It is applied to edje_entry.c and elm_entry.c for improving
cursor handling just like other modern text editors. ex) gedit
The patch on Evas needs to update libunibreak library.
So, the patch will update libunibreak, too.
@feature

Test Plan:
1. Put "ഹലോ" in your entry.
2. Your cursor can reach at the end of text from the beginning
   only in 2 right key event with this feature.

Reviewers: raster, cedric, jpeg, herdsman, zmike, devilhorns

Reviewed By: herdsman, zmike

Subscribers: #reviewers, #committers, zmike, bowonryu, woohyun

Tags: #efl

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

fix T7213

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

Reviewers: Hermet, YOhoho

Reviewed By: YOhoho

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

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

related with D6567

Reviewers: Hermet, eagleeye, devilhorns

Reviewed By: Hermet

Subscribers: cedric, zmike

Tags: #efl, #do_not_merge

Differential Revision: https://phab.enlightenment.org/D6585
2018-08-20 13:56:46 +09:00
Mike Blumenkrantz 9f8a7acfcf eio/sentry: destroy event handlers when deleting sentry
this will crash due to invalid memory access if an event is triggered after
the sentry is destroyed

Differential Revision: https://phab.enlightenment.org/D6845
2018-08-17 22:19:32 +02:00
Mike Blumenkrantz 791fc27c40 elm/list: correctly handle ELM_LIST_COMPRESS
according to the docs, this mode means that no content size hints should
be taken into account when calculating size hints for the overall object

fix T7313

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

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

@fix T7259
Differential Revision: https://phab.enlightenment.org/D6835
2018-08-17 21:44:17 +02:00
Hermet Park c9a89158db evas vg: prevent invalid access.
Summary:
Canvas allows objects become zombies.
Even though they were deleted they could be accessed by canvas
for second frames.

Reviewers: #committers, zmike

Reviewed By: #committers, zmike

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6849
2018-08-17 15:12:19 -04:00
Mike Blumenkrantz a96933f964 efl_ui/format: revert some patches to fix some regressions
Summary:
it seems that the original patch in this case introduced a regression
where format strings ending with %% in progressbar would not be
displayed correctly. a followup patch attempted to resolve this, but
this second patch introduced another regression where some format strings
would always display 0%

fixing compiler warnings is always valued, but in the case where the
patch to fix the warning creates regressions then we will live with the
warnings instead

This reverts commit b4112b9735.
This reverts commit be770d37fb.

Subscribers: cedric, #reviewers, #committers

Tags: #efl_widgets

Differential Revision: https://phab.enlightenment.org/D6863
2018-08-17 18:10:50 +01:00
Derek Foreman 6fe7e1155d efl_wl: Send unique keymap fds to clients
Summary:
Prevent wayland clients from being able to destroy the compositor's
singleton keymap by making individual copies for each client.

Reviewers: zmike, devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6862
2018-08-17 12:46:39 -04:00
Yeongjong Lee 15cc9a65aa ecore_pipe: remove null check condition and fix segfualt on Windows
Summary:
This reverts commit 4917910b49.

4917910b break backward compatibility.

Reproduction:
   void pipe_handler(...);

   pipe = ecore_pipe_add(pipe_handler, NULL);
   ecore_pipe_write(pipe, NULL, 0);

Because of the null check condition, pipe_handler isn't called after 4917910b.
Some apps behavior which is written to expected to call pipe_handler was broken.

also, this patch fixed segfault during build on Windows

Test Plan: make on Windows

Reviewers: raster, zmike, vtorri

Reviewed By: zmike, vtorri

Subscribers: woohyun, cedric, #reviewers, #committers, zmike, vtorri

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6824
2018-08-17 12:42:35 -04:00
Shinwoo Kim cbe9b6f770 eina_file: check copied using copied
Summary:
From (1) "the following commit" message, the changed condition in this patch
should check if the virtualized file is copied or not.

In eina_file_virtualize
head_padded = 16 * ((sizeof(Eina_File) + slen + 15) / 16);
file->global_map = ((char *)file) + head_padded;

In eina_file_dup
file->global_map != (void*)(file->filename + strlen(file->filename) + 1)

Because of this discord condition makes eina_file_dup copies always.

(1) This is "the following commit":
commit 4766316935
Author: Cedric Bail <cedric@osg.samsung.com>
Date:   Wed Mar 8 10:13:36 2017 -0800

    eina: force copy of not copied virtualized file while doing an eina_file_dup.

    The other way around is pretty much impossible as you don't know who does
    an eina_file_dup and for how long they keep there reference.

    T5234

Reviewers: zmike, Hermet

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6857
2018-08-17 12:42:18 -04:00
Chris Michael ae894a0509 Revert this patch. It was not supposed to land yet as it was awaiting
review

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

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

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: devilhorns, cedric, #reviewers, #committers

Tags: #efl_widgets

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

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

ref T7030

Depends on D6703

Reviewers: bu5hm4n, YOhoho

Subscribers: #reviewers, cedric, #committers, zmike

Tags: #efl_widgets_focus

Maniphest Tasks: T7030

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

fixes unit test failures

Subscribers: cedric, #reviewers, #committers

Tags: #efl_widgets_code

Differential Revision: https://phab.enlightenment.org/D6852
2018-08-16 20:00:41 +01:00
Yeongjong Lee 8bb11a172b evas: check evas class instead of using evas_find
Summary:
A object that is not evas class shouldn't use evas_find. it may occurs segfault.

ref c2e8b492b1

Test Plan:
Evas *evas = evas_new();
evas_free(evas);
evas_object_line_add(evas);

Check weather there is segfault.

Reviewers: Hermet, raster, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

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

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

Reviewers: devilhorns, zmike

Reviewed By: devilhorns, zmike

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

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6822
2018-08-16 10:17:23 -04:00
Mike Blumenkrantz 3c15bf1663 edje/multisense: always return muted=true if multisense is disabled
Summary:
there is no sound when multisense is disabled, so this is functionally
equivalent to the audio being muted

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl_layout_engine

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

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

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

Reviewers: #committers, ajwillia.ms, zmike

Reviewed By: #committers, zmike

Subscribers: cedric, #reviewers, zmike

Tags: #efl

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

Reviewers: Hermet, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

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

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

img should not be NULL.

Reviewers: Hermet, zmike

Reviewed By: zmike

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

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6828
2018-08-16 10:01:37 -04:00
Bryce Harrington 1320ba435e eina: Add doxygen in/out tags for safepointer, safety_checks, slice, etc.
Reviewers: netstar

Reviewed By: netstar

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

Tags: #efl

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

fix T7266

Reviewers: netstar

Reviewed By: netstar

Subscribers: netstar, cedric, #reviewers, #committers

Tags: #efl_widgets

Maniphest Tasks: T7266

Differential Revision: https://phab.enlightenment.org/D6829
2018-08-15 09:45:06 +01:00
Marcel Hollerbach 7ef8ab559d evas: support wayland static engine loading
Summary: This fixes static loading of the here changes engines.

Reviewers: ManMower, devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

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

these issues will be resolved in future patches

fix T7243
ref T7008

Reviewers: devilhorns, ManMower

Reviewed By: devilhorns, ManMower

Subscribers: ManMower, cedric, #reviewers, #committers

Tags: #efl_display_system

Maniphest Tasks: T7243, T7008

Differential Revision: https://phab.enlightenment.org/D6794
2018-08-14 17:11:53 -04:00
Mike Blumenkrantz 8e6d66450d ecore/main: only update loop_time during loop iteration if the change is monotonic
Summary:
in the case where the user has called loop_time_set with a value in the future,
avoid setting the loop time to something that would potentially cause a callback
to occur with a loop_time value before a previous occurrence of that callback

@fix

Reviewers: ManMower

Reviewed By: ManMower

Subscribers: ManMower, #reviewers, cedric, #committers

Tags: #efl_main_loop

Differential Revision: https://phab.enlightenment.org/D6764
2018-08-14 17:09:32 -04:00
Marcel Hollerbach 55a2e77d60 eina_vpath: specilice the eina_vpath headers
Summary: For now its beta, and the since tag is added.

Reviewers: zmike

Reviewed By: zmike

Subscribers: #reviewers, kimcinoo, Hermet, cedric, #committers, zmike

Tags: #efl

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

@fix T7265

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

Reviewers: #committers, zmike

Reviewed By: #committers, zmike

Subscribers: cedric, #reviewers, zmike

Tags: #efl

Maniphest Tasks: T7265

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

This fixes an issue where NULL is passed to efl_layout_signal_emit.

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

ref T7030

Reviewers: netstar, ajwillia.ms

Reviewed By: netstar

Subscribers: #reviewers, cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T7030

Differential Revision: https://phab.enlightenment.org/D6701
2018-08-14 15:45:57 +01:00
Mike Blumenkrantz 59b8a63d65 edje: unset internal _need_imf flag on shutdown
Summary:
failing to unset this causes the ecore_imf flag to go negative if edje
is ever completely shut down twice

@fix

Reviewers: ManMower

Reviewed By: ManMower

Subscribers: ManMower, #reviewers, cedric, #committers

Tags: #efl_layout_engine, #easy

Differential Revision: https://phab.enlightenment.org/D6763
2018-08-14 10:45:13 -04:00
Marcel Hollerbach 37308192d9 efl_ui_focus_manager_calc: restore focus correctly if redirect gets NULL
Otherwise we might end up with focus beeing NULL.

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

ref D6800

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

Differential Revision: https://phab.enlightenment.org/D6801
2018-08-14 15:00:58 +02:00
Marcel Hollerbach e308513f2e emotion: make intree running work
Summary:
before it would have only worked if there would have been the
architecture in the path, which was definitly not the case.
This fixes the problems.
Depends on D6795

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

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

Fixes T6928

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

Reviewers: zmike, jsuya, CHAN, devilhorns, Jaehyun_Cho

Reviewed By: zmike, jsuya, CHAN

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

Tags: #efl

Maniphest Tasks: T6928

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

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

fix T7236

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: #reviewers, stefan_schmidt, cedric, #committers

Tags: #efl_widgets

Maniphest Tasks: T7236

Differential Revision: https://phab.enlightenment.org/D6759
2018-08-13 15:07:31 +09:00
Marcel Hollerbach c77ba1672e eio: fix poll backend
it seems that this should have been a pop call, not the function
pointer. This key eina_array_pop is never used. Nor would the array get
smaller, so i assume this should be a pop call.

Differential Revision: https://phab.enlightenment.org/D6814
2018-08-12 14:25:09 +02:00
Yeongjong Lee 7685654d76 elm_map: add EINA_UNUSED to avoid build warning
Test Plan: make

Reviewers: devilhorns, zmike

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6813
2018-08-10 12:49:50 -04:00
Mike Blumenkrantz f2adbe1452 ecore-evas: make manual_render_set a no-op when setting the current value
Summary:
this should not take any action if the existing value of manual_render is
set to the passed value

Reviewers: devilhorns, kimcinoo, ManMower

Reviewed By: devilhorns, kimcinoo, ManMower

Subscribers: ManMower, cedric, #reviewers, #committers

Tags: #efl_display_system

Differential Revision: https://phab.enlightenment.org/D6786
2018-08-09 15:51:41 -04:00
Yeongjong Lee 206d40e331 evas: add safety check code to avoid crash
Test Plan: evas_smart_objects_calculate(NULL);

Reviewers: zmike, Hermet, devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6805
2018-08-09 11:19:46 -04:00
Carsten Haitzler 84e7925ab9 elm genlist - remove execsivve calls where we could do less eo lookups
something to help T6580 ... but not that much (0.3% fewer eo calls)
2018-08-09 13:16:40 +09:00
Stephen Houston b4112b9735 efl/ui_format: Use STRING type for format strings that contain %%
Summary: This fixes progressbar format strings that contain the pattern %%, thus making it a string and not a format.

Test Plan: elementary_test progressbar shows %% on the first vertical progressbar before this patch.  afterwords it shows % correctly.

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6790
2018-08-08 14:57:32 -04:00
Marcel Hollerbach d3f8ca2902 efl_ui_composition: remove all registered children on unregister
Summary:
ensure that all the children are gone once we unregister the widget
itself. This helps widgets that are not cleaning up theire children /
items on invalidation.

ref T7213.

Reviewers: CHAN, YOhoho, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T7213

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

ref T7213
Depends on D6755

Reviewers: YOhoho, zmike, CHAN

Reviewed By: YOhoho

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T7213

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

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

Reviewers: zmike, devilhorns

Reviewed By: zmike, devilhorns

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

Tags: #efl

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

Test Plan:
map_example_01

Check that there is no error message.

Reviewers: zmike, Hermet

Reviewed By: Hermet

Subscribers: #reviewers, cedric, #committers

Tags: #efl

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

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

Reviewers: zmike, Hermet

Reviewed By: Hermet

Subscribers: #reviewers, cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6771
2018-08-08 16:05:16 +09:00
Hermet Park bb984b566b evas image: fix screen flickering issue at partial + image preloading
Summary:
Prerequisite: Partial rendering ON + Image Prealoding + Triple surface buffer of GL.

Previously, evas trys to draw of an image which didn't prepare of image data yet (in case of preloading)
This time, it will draw a solid color onto the dest sufrace 1,
But luckily, preloading is finished just after, it draws proper image data onto next surface 2 and 3.

Now, triple buffer is filled with the image data but only first frame is still empty. That's a problem.

This patch skips to draw image if it doesn't prepare data yet, but once the preloading is finished,
it starts to draw images.

@fix

Reviewers: #committers

Subscribers: kimcinoo, cedric, #committers, zmike

Tags: #efl

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

this resolves the crash in the `efl_ui_image_zoomable_icon` test

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: #reviewers, cedric, #committers

Tags: #efl_widgets

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

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

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

@fix

Reviewers: #committers, zmike

Subscribers: #reviewers, cedric, #committers, zmike

Tags: #efl

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

Test Plan: elementary_test -to efl.ui.tab_pager

Reviewers: Jaehyun_Cho, Hermet

Reviewed By: Jaehyun_Cho

Subscribers: #reviewers, cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6770
2018-08-08 15:20:42 +09:00
Bryce Harrington dd5a78d9c3 eina: Add doxygen in/out tags for rectangle
Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6776
2018-08-08 13:52:25 +09:00
Shinwoo Kim 117a0ca298 evas_image: do not render while preloading
Summary:
Unexpected image shows if image data is not ready.
Even though there is a change to check the 'preloading' in pre_render phase,
evas_object_image_render is called. So we need to check here as well.

Reference: https://phab.enlightenment.org/D6739

It seems that the 'preloading' is not enough. The 'preloading' could be reset
to FALSE by _evas_image_load_async_cancel > _image_preload_internal.

If the following step happens, then this patch set is neccessary.
(1) evas_object_image_pre_render
(2) _evas_iamge_load_async_start
(3) evas_object_image_render

I could not find out what the correct step, but it actullay happens.
The evas_object_image_render could be called with the 'preloading' TURE.

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

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

fix T7247

Reviewers: zmike, SanghyeonLee, YOhoho

Reviewed By: zmike

Subscribers: Hermet, cedric, #committers

Tags: #efl

Maniphest Tasks: T7247

Differential Revision: https://phab.enlightenment.org/D6737
2018-08-07 13:25:34 +09:00
Hermet Park 31b6e87495 evas image: code refactoring.
Summary: remove duplicated, no logical changes.

Reviewers: #committers, zmike

Reviewed By: #committers, zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6738
2018-08-06 07:23:48 -04:00
Marcel Hollerbach d922587764 elm_genlist: remove unused function
Summary:
this got replaced by the none composition implementation and is not
required anymore.

Depends on D6737

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers, zmike

Tags: #efl

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

Subscribers: cedric, #committers, zmike

Tags: #efl

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

Reviewers: #committers, ajwillia.ms, zmike

Reviewed By: #committers, ajwillia.ms

Subscribers: cedric

Tags: #efl

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

ref D6720
fix T7246

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

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

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

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

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

Reviewers: ManMower, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

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

Reviewers: #committers

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6726
2018-08-02 09:25:27 -04:00
Hosang Kim a92274f811 ecore: fix that timers are not called in the order they were registered.
Summary:
Timers are not called in the order they were registered.
Because when current timer is deleted, getting next timer is called twice.

Test Plan:
<error>
Timer1 expired after 0.001 seconds.
Timer3 expired after 0.001 seconds.
Timer5 expired after 0.001 seconds.
Timer7 expired after 0.001 seconds.
Timer2 expired after 0.001 seconds.
Timer6 expired after 0.001 seconds.
Timer4 expired after 0.001 seconds.
Timer8 expired after 0.001 seconds.
<correct>
Timer1 expired after 0.001 seconds.
Timer2 expired after 0.001 seconds.
Timer3 expired after 0.001 seconds.
Timer4 expired after 0.001 seconds.
Timer5 expired after 0.001 seconds.
Timer6 expired after 0.001 seconds.
Timer7 expired after 0.001 seconds.
Timer8 expired after 0.001 seconds.|

{F3268233}

Reviewers: Hermet, Jaehyun_Cho, zmike, SanghyeonLee

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl_tests

Differential Revision: https://phab.enlightenment.org/D6700
2018-08-02 09:14:15 -04:00
Shinwoo Kim 9666f288ae Efl.Canvas.Group: use desired function
Summary:
If a smart class overrides Evas_Smart_Class.move as below,
then original behavior must not be used for the smart class.

   Evas_Smart_Class sc = EVAS_SMART_CLASS_INIT_NAME_VERSION("MyClass");
   evas_object_smart_clipped_smart_set(&sc);
   sc.move = &myMove;

But current implementation makes original behavior work.
So before using the original method, this patch is checking if the original
method is changed or not.

Reviewers: zmike, devilhorns

Reviewed By: zmike

Subscribers: woohyun, jypark, cedric, raster, jpeg, #committers

Tags: #efl

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

Reviewers: #committers, zmike

Reviewed By: #committers, zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

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

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

fix T6368
@fix

Differential Revision: https://phab.enlightenment.org/D6466
2018-08-02 13:29:35 +02:00
Jaehyun Cho 0b27fd8dfd evas_events: Fix to set mouse_in state to all pointers in the seat.
Summary:
mouse coordinate is set by seat.
Therefore, mouse_in state should be set based on seat.
As a result, mouse_in state of all pointers in the seat should be
updated at the same time.

Reviewers: eagleeye, devilhorns, zmike

Reviewed By: eagleeye, devilhorns, zmike

Subscribers: devilhorns, Hermet, kimcinoo, cedric, iscaro, zmike, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6699
2018-08-02 18:16:47 +09:00
Mike Blumenkrantz dbc2c880a8 edje: add back function prototype for edje_object_color_class_description_get
this was removed in D4403

Differential Revision: https://phab.enlightenment.org/D6694
2018-08-02 10:17:26 +02:00
Felipe Magno de Almeida 71d339579c elementary: efl_ui_view_list cleanup
Summary:
private data cleanup
removed callbacks

Reviewers: felipealmeida, SanghyeonLee

Reviewed By: felipealmeida

Subscribers: Hermet

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

Reviewers: felipealmeida

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

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

fix T7232

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers

Tags: #efl_widgets

Maniphest Tasks: T7232

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

ref T7030
Depends on D6704

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T7030

Differential Revision: https://phab.enlightenment.org/D6710
2018-07-31 17:24:10 -04:00
Derek Foreman 35622614d0 ecore_evas: Make sure a manual render does a manual render
Summary:
If we call ecore_evas_manual_render() during an async render, it does
nothing.

This is harmful if we've added render post callbacks during that async
render and expect them to fire.

Force a sync and another render if we're in an async render.

ref T7156
Depends on D6714

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T7156

Differential Revision: https://phab.enlightenment.org/D6715
2018-07-31 17:03:16 -04:00
Derek Foreman b7444e0b87 ecore_evas: Sync evas on manual_render_set
Summary:
Make sure any ongoing async rendering is finished before manual_render_set
returns.
Depends on D6711

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6714
2018-07-31 17:03:16 -04:00
Derek Foreman e7bcf0e690 evas: Defer render post callbacks added during async render
Summary:
To take screenshots, Enlightenment makes a new snapshot object, performs
a manual render, and uses the snapshot results.

Turns out if this happens while an async render is in progress, the
async render's completion triggers a render post callback on the snapshot
object even though it's never been involved in a render.

We need to defer new render post callbacks until any currently running
render completes, then add them during that render's post.

Fix T7156

Reviewers: devilhorns, zmike

Reviewed By: devilhorns, zmike

Subscribers: devilhorns, cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T7156

Differential Revision: https://phab.enlightenment.org/D6711
2018-07-31 17:03:16 -04:00
Bryce Harrington 3524d48719 eina: Add doxygen in/out tags for value and value_util
Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6713
2018-07-31 16:40:43 -04:00
Bryce Harrington 14aeb24483 eina: Add doxygen in/out tags for rbtree
Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6709
2018-07-31 15:27:09 -04:00
Bryce Harrington 28d359b00c eina: Add doxygen in/out tags for quaternion
Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6708
2018-07-31 15:16:53 -04:00
Marcel Hollerbach 8f352dedd0 efl_model: fix redefine warning
Summary:
The struct definition here is not needed as it will be redefined anyways
later in the efl_model.eo.h header.
Depends on D6705

Reviewers: zmike, #committers, lauromoura, felipealmeida

Reviewed By: zmike, #committers

Subscribers: cedric, #committers, zmike

Tags: #efl

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

Reviewers: CHAN, zmike, #committers

Reviewed By: zmike, #committers

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6705
2018-07-31 11:26:17 -04:00
Yeshwanth Reddivari 52cf0a49c6 region_add: Fix copying wrong rect during smart merge
Summary:
When testing partial rendering on TV, found this bug.
Probably this was caused because of wrong copy/paste.
When region1 completely subsumes region2, region2 should be ignored.
But currently region2 is copied to region1 which makes region1 rect completly wrong.
This was causing lot of visual defects because of wrong rects.
This patch will fix those visual defects when partial rendering is enabled.

Test Plan: Tested with the patch on TV after enabling partial rendering.

Reviewers: raster, cedric, Hermet, ManMower

Reviewed By: ManMower

Subscribers: bu5hm4n, ajwillia.ms, ManMower, devilhorns, cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6696
2018-07-31 07:29:03 -05:00
Bryce Harrington dc2ad11281 eina: Add doxygen in/out tags for promise
Summary: Also, add some missing param docs, and fix some incorrect ones.

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers, zmike

Tags: #efl

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

The commit which introduced this:  e88bbaa1e3

This patch re-introduced the symbol and expected behaviour.

Reviewers: #committers, zmike, bu5hm4n, herb

Reviewed By: #committers, zmike

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

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6689
2018-07-30 11:42:28 -04:00
Marcel Hollerbach 39202e00f2 elm_entry: make the hoversel not focusable
Summary:
the hoversel is added to a entry while entrys are not build for handling
children focus. Disabling this prevents wrong focus operations.

fix T7163

Reviewers: zmike, #committers, netstar

Reviewed By: netstar

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T7163

Differential Revision: https://phab.enlightenment.org/D6695
2018-07-30 13:19:08 +01:00
Bryce Harrington 185f2f55fd eina: Add doxygen in/out tags for mmap and module
Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6691
2018-07-28 11:50:49 -04:00
Bryce Harrington 06e7c859c9 eina: Add doxygen in/out tags for log
Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6690
2018-07-27 20:20:44 -04:00
Alastair Poole ad379ce04f elm_code_widget: fix keyboard and scrolling with active selection.
Summary:
This adds some attributes to the selectiont type in elm_code.
Including the type (whether it is mouse or keyboard) and also whether
a selection is in progress. Thus we can reliably select around the
file and also move/scroll when there is an active selection.

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

Reviewers: #committers, ajwillia.ms, cedric

Reviewed By: ajwillia.ms

Subscribers: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6676
2018-07-27 17:08:44 +01:00
Bryce Harrington 49554b2b6c eina: Add doxygen in/out tags for lalloc and list
Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6688
2018-07-27 03:59:44 -04:00
Mike Blumenkrantz be33c835ac evas: handle all failure cases with error messages in evas_init
Summary: fix T7026

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7026

Differential Revision: https://phab.enlightenment.org/D6677
2018-07-26 21:43:50 +09:00
Mike Blumenkrantz 67f50eb5d6 edje: handle all failure cases with error messages in init
Summary:
fix T7025
Depends on D6677

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7025

Differential Revision: https://phab.enlightenment.org/D6678
2018-07-26 21:30:03 +09:00
Mike Blumenkrantz 69fdec545e elm: handle all failure cases with error messages in init
Summary:
fix T7021
Depends on D6678

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7021

Differential Revision: https://phab.enlightenment.org/D6679
2018-07-26 21:13:46 +09:00
Bryce Harrington ff5cc5d988 eina: Add doxygen in/out tags for inlist and iterator
Reviewers: segfaultxavi

Subscribers: segfaultxavi, cedric, #committers, zmike

Tags: #efl

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

ref T7030
Depends on D6639

Reviewers: zmike

Reviewed By: zmike

Subscribers: Hermet, bu5hm4n, cedric, #committers

Tags: #efl

Maniphest Tasks: T7030

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

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

ref T7030
Depends on D6638

Reviewers: zmike

Reviewed By: zmike

Subscribers: Hermet, cedric, #committers

Tags: #efl

Maniphest Tasks: T7030

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

ref T7030

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7030

Differential Revision: https://phab.enlightenment.org/D6637
2018-07-25 14:57:14 -04:00
Hermet Park cd3f808725 evas canvas: fix not to trigger unnecessary events.
Summary:
Here comparision is logically wrong because it compares
the coordinates(cur, prev) of the different spaces.

As you can see just above the conditions,
Cur coordinates could be transformed into the map space (if objs have)
on the otherhands, prev is not. These wrong condition could occur
embarassing event trigger.

@fix

Reviewers: #committers, zmike

Reviewed By: #committers, zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

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

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

fix T7176

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers

Tags: #efl_widgets

Maniphest Tasks: T7176

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

ref T7172
Depends on D6646

Reviewers: kimcinoo, eagleeye, ManMower

Reviewed By: ManMower

Subscribers: cedric, #committers

Tags: #efl_widgets

Maniphest Tasks: T7172

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

fix T7172
ref fa02f16a3f

Reviewers: kimcinoo, eagleeye

Reviewed By: kimcinoo

Subscribers: cedric, #committers

Tags: #efl_widgets

Maniphest Tasks: T7172

Differential Revision: https://phab.enlightenment.org/D6646
2018-07-24 09:18:50 -05:00
Bryce Harrington 6fb4608458 eina: Add doxygen in/out tags for evlog, file, fp, freeq
Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers, zmike

Tags: #efl

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

@fix T6470

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

Reviewers: #committers, ajwillia.ms

Reviewed By: #committers, ajwillia.ms

Subscribers: cedric, zmike

Tags: #efl

Maniphest Tasks: T6470

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

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

Reviewers: #committers, ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6632
2018-07-24 10:04:28 +01:00
Carsten Haitzler 18cccd8798 ecore x - fix vsync to not block amdgpu drivers
amdgpu vsync works so don't block is so those drivers get proper
vsynced rendering as well.

@fix
2018-07-24 13:09:55 +09:00
Mike Blumenkrantz 8f05d03639 ecore/signal: use a volatile int to prevent further SIGPIPE during shutdown
Summary:
attempt to prevent any access of the signal pipe once signal handlers are
removed in order to avoid triggering a SIGPIPE which would kill the app
Depends on D6670

Reviewers: ManMower

Reviewed By: ManMower

Subscribers: cedric, #committers

Tags: #efl_main_loop

Differential Revision: https://phab.enlightenment.org/D6672
2018-07-23 17:30:56 -04:00
Mike Blumenkrantz bf92738a57 ecore/signal: delete signal pipe after unsetting signal handlers
Summary:
if a signal is already in the signal pipe when close() is called,
this will trigger a SIGPIPE. if the signal handler exists, this will
cause the signal handler to infinitely recurse when trying to print
the error messages from write()ing the signal data to the close()d
pipe

fix T7158

Reviewers: ManMower

Reviewed By: ManMower

Subscribers: cedric, #committers

Tags: #efl_main_loop

Maniphest Tasks: T7158

Differential Revision: https://phab.enlightenment.org/D6670
2018-07-23 17:30:54 -04:00
Alastair Poole 4924fc73ee macos: allow text to be selected.
Summary: This gives us basic clipboard handling for MacOS after the refactor was done.

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

Reviewers: ajwillia.ms, zmike, jayji

Reviewed By: zmike

Subscribers: jayji, herdsman, cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6599
2018-07-23 15:48:29 -04:00
Hermet Park 2ea7bc5a81 evas clip: more strict comparison.
Summary: just improvement from D6645

Reviewers: zmike, #committers

Reviewed By: zmike, #committers

Subscribers: cedric, #committers, zmike

Tags: #efl

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

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

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

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

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

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

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

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

 So i will consider more for this case.

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

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

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

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

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

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

Reviewers: Hermet, zmike, ManMower, segfaultxavi, devilhorns

Reviewed By: Hermet

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6626
2018-07-23 15:49:10 +09:00
Andy Williams 3ca3f865fd elm_code: (cherry-pick) Fix cusor pos after newline when indenting with tabs
@fix
2018-07-22 17:03:44 +01:00
Andy Williams 1485cf9df5 elm_code: (cherry-pick) Support indentation styles that are purely tab based
read: Allow non-EFL style indentation.
This is off by default but is switched on if you turn 'tabs insert spaces' off
2018-07-22 17:02:23 +01:00
Mike Blumenkrantz 44bce025fa ecore: remove exit_signal_received conditional from windows build
Summary:
windows does not include ecore_signal.c, so this is not a defined symbol

lib/ecore/.libs/lib_ecore_libecore_la-ecore_anim.o: In function `timer_tick_notify':D:\Documents\MSYS2\home\vtorri\gitroot\efl3\src/lib/ecore/ecore_anim.c:372: undefined reference to `exit_signal_received'lib/ecore/.libs/lib_ecore_libecore_la-ecore_anim.o: In function `ecore_animator_custom_tick':D:\Documents\MSYS2\home\vtorri\gitroot\efl3\src/lib/
ecore/ecore_anim.c:940: undefined reference to `exit_signal_received'

ref 6405a5a68c

Reviewers: vtorri, devilhorns

Reviewed By: vtorri

Subscribers: cedric, #committers

Tags: #efl_build

Differential Revision: https://phab.enlightenment.org/D6648
2018-07-20 15:21:28 -04:00
Bryce Harrington d9515f002a eina: Add doxygen in/out tags for cow, cpu, and debug
Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6642
2018-07-20 10:36:24 -04:00
Hermet Park e34136ea72 evas clip: stop move events feeds.
Summary:
there is no point to feeding mouse events
if clipped object is invisible because
previsou/current situation won't be different.

fyi, move events won't be triggered if prev/cur coordinates
are same.

Reviewers: #committers, zmike

Reviewed By: #committers, zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6645
2018-07-20 10:36:00 -04:00
Hermet Park 1297e81e81 elementary list: add a todo comment. 2018-07-19 17:04:42 +09:00
Mike Blumenkrantz 5e64ddec31 elm/list: block recursive recalc loops
Summary:
this size hints callback is triggered by both list objects and list
item objects, meaning that setting size hints on the item objects during
recalc will trigger a recursive recalc, potentially infinitely

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

fix T7121

Reviewers: devilhorns, Hermet

Reviewed By: Hermet

Subscribers: netstar, DaveMDS, cedric, #committers

Tags: #efl_widgets

Maniphest Tasks: T7121

Differential Revision: https://phab.enlightenment.org/D6572
2018-07-19 17:01:05 +09:00
Alastair Poole b00f0e0630 ecore_main: silence warning when compiling.
Summary:
Silence compilation warning.
There is an ifdef'd block of code which accesses obj but
I don't think it's in use in production?

Test Plan: Build EFL and watch for warning.

Reviewers: #committers, zmike, Hermet

Reviewed By: #committers, Hermet

Subscribers: cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6628
2018-07-19 15:53:49 +09:00
Bryce Harrington 582d342afe eina: Fix doxygen in/out tags for eina_bezier
Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6630
2018-07-19 15:51:53 +09:00
Bryce Harrington 096c01a818 eina: Add doxygen in/out tags
Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6624
2018-07-18 15:21:07 +09:00
Hermet Park 268d3fcef5 emile image: close file properly.
@fix
2018-07-18 14:26:16 +09:00
Jaehyun Cho 2916cfd86b efl_ui_layout_object: Fix not to use background/shadow part interface in legacy
Summary:
"background" and "shadow" part interface was designed to be used in efl
ui interface only.
Therefore, "background" and "shadow" part interface is not used in
legacy.

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

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6595
2018-07-18 12:10:17 +09:00
Chris Michael df13fb4a70 elput: Remove unused and useless event type
f220f08 introduced this event, however this event never gets raised or
used. I believe this was an accidental inclusion.

'#betabreak'

Reviewed-By: Derek Foreman <derek.foreman.samsung@gmail.com>
2018-07-17 22:39:50 -04:00
Daniel Hirt cafe84a2c2 Evas text textblock: call evas_font_free even on null fonts
A null font set can potentially be stored and passed on. There is no
specific fallback in our codebase to roll-back if something like that
occurs.

This fixes a case where an entry of a null font was not removed from the
fonts_cache and was leaked to subsequent tests (the null font entry was
not removed from the fonts_cache).

Note that this was only apparent when EFL was built with
`--disable-fontconfig`, likely due to fontconfig succeeding to always
retrieve some non-null font.

@fix
2018-07-16 16:45:53 +03:00
Daniel Hirt 93397449d4 Eina binbuf: add explicit null-check before magic-check
Summary:
Using `--disable-magic-debug` defines EINA_MAGIC_CHECK to always
evaluate to `1`. Eina_Binbuf's null-check relied solely on the
EINA_MAGIC_CHECK, and failed to pick up on the cases where `buf` was
passed as NULL. This has led to  a segfault when a NULL `buf` was passed
in the test suite (see referenced ticket).

This fix adds an explicit NULL check.

Fixes https://phab.enlightenment.org/T7147

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6592
2018-07-16 06:09:38 -04:00
Yeongjong Lee a61786bd0e elm_spinner: Do not focus to text button on non-editable mode
Summary:
text button don't need to be focused if spinner is non-editable mode.

ref T6798

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

Reviewers: CHAN

Reviewed By: CHAN

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T6798

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

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

this fixes T7113.
2018-07-16 16:31:53 +09:00
Mike Blumenkrantz 6fa8c581b5 evas: fix minor typo in smart class color_set method doc
Reviewers: vtorri

Reviewed By: vtorri

Subscribers: cedric, #committers

Tags: #efl_docs

Differential Revision: https://phab.enlightenment.org/D6591
2018-07-13 17:09:06 -04:00
Mike Blumenkrantz 6405a5a68c ecore: immediately block animator ticking upon receiving an exit signal
Summary:
when an exit (SIGINT, SIGQUIT, SIGTERM) signal is received, the ui should
immediately stop updating in order to present the user with an instant
response

this uses a simple volatile int to block any ticks which begin after the
signal is received; if a signal is received during a tick then it will complete
normally

fix T7000
Depends on D6589

Reviewers: ManMower

Reviewed By: ManMower

Subscribers: cedric, #committers

Tags: #efl_main_loop

Maniphest Tasks: T7000

Differential Revision: https://phab.enlightenment.org/D6590
2018-07-13 15:40:55 -04:00
Mike Blumenkrantz dab2a9ca68 ecore/animator: break out _ecore_animator_flush() from tick function
Summary: no functional changes

Reviewers: ManMower

Reviewed By: ManMower

Subscribers: cedric, #committers

Tags: #efl_main_loop

Differential Revision: https://phab.enlightenment.org/D6589
2018-07-13 15:40:50 -04:00
Bryce Harrington 45173fa375 eina: Add doxygen in/out tags for strbuf's and ustrbuf's parameters
Reviewers: devilhorns, Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6586
2018-07-13 18:23:27 +09:00
Daniel Hirt e9925e609f Selection manager: properly clean in drop_target_del
Summary:
The last lines in _efl_selection_manager_drop_target_del were skipped
when `!pd->drop_list` was met. These lines clear the selection event
handlers. Thus, events kept firing and causing erratic behavior.

Fixes T7130

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T7130

Differential Revision: https://phab.enlightenment.org/D6579
2018-07-13 09:24:00 +03:00