Commit Graph

3515 Commits

Author SHA1 Message Date
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 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
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
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 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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Marcel Hollerbach 92820dbb88 elm_fileselector: move to focus compostition
Summary:
elm_fileselector was using efl_ui_widget_state_apply to call for internal chain update.
This internal chain update was relying on efl_ui_focus_object_manager_get, which
results in a wrong value at this time, since the value is still the old one and not the
current one. (This behaviour will be updated after the release). Focus composition
solves this issue by not relying on the properties of efl.ui.focus_object, but rather
take the values from the configuration in the state_apply call.

fix T6147
fix T7105

Reviewers: zmike, stefan_schmidt, segfaultxavi, devilhorns, herdsman

Reviewed By: zmike

Subscribers: herdsman, cedric, #committers

Tags: #efl

Maniphest Tasks: T7105, T6147

Differential Revision: https://phab.enlightenment.org/D6552
2018-07-12 09:33:38 -04:00
Prasoon Singh 9c9fa4d401 elm_spinner: Text button and entry both gets hidden when navigated through arrow keys.
Summary:
Summary
When focus rect move from inc/dec button using keyboard arrow keys, entry show callback is called and focus is set on entry and then text button is hidden. Hiding focus button triggers focus cycle to revert focus on entry, due to which entry gets unfocused callback which subsequently hides entry. So, entry and text button both goes to hidden state. To fix this setting focus on entry after text button is hidden.
Signed-Off By: Prasoon Singh<prasoonsingh16@gmail.com>

Test Plan
Move focus rect from inc/dec button to text button, and observe both text button and entry gets
invisible. Expected behavior is entry should become active.

Test Plan:
Move focus rect from inc/dec button to text button, and obesrve both text button and entry gets
invivible. Expected behaviour is entry should become active.

Reviewers: cedric, CHAN, shilpasingh, zmike

Reviewed By: shilpasingh, zmike

Subscribers: zmike, #committers, govi, rajeshps, jpeg

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5153
2018-07-12 09:19:48 -04:00
Marcel Hollerbach a62420ce36 efl_ui_focus_manager_calc: do not error when the configuraiton is equal
Summary:
Before this was erroring. However, this error was not reporting a bad
situation, thus there is no need to error. This patch fixes errors on
the Popup test when scrollable is set to 1.

Reviewers: devilhorns, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6560
2018-07-12 16:15:59 +09:00
Mike Blumenkrantz 4951c8b1e6 elm/win: don't force opaque bg if alpha is set
Summary:
alpha prevents an opaque bg, so ensure that this is being correctly
detected

worth noting here is that the eo api for win calls through _elm_win_standard_init()
during finalize which ensures that need_bg_solid is set; the legacy api
does not call this during "normal" construction

fix T7129
Depends on D6568

Reviewers: devilhorns

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7129

Differential Revision: https://phab.enlightenment.org/D6569
2018-07-11 15:50:23 -04:00
Mike Blumenkrantz 0f4bbb7df6 elm/win: correctly track and set x11 shaped state
Summary:
when applying alpha in a non-composited environment, shaped should be
set. when removing alpha in a non-composited environment, shaped should
be unset if it has not previously been explicitly set

@fix

Reviewers: devilhorns

Subscribers: cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6568
2018-07-11 15:50:09 -04:00
Hermet Park d5db69012e ui scroll_manager: update doc. 2018-07-10 11:23:18 +09:00
Daniel Hirt 0bc002cf4a Ui.Scroll_Manager: restrict to Efl.Ui.Pan type for 'pan' property
Summary:
The implementation calls efl_ui_pan_xxx on what was assumed to be any
Efl.Canvas.Object. This changes the type to be Efl.Ui.Pan.

Also, reordered headers due to the introduced dependency.

Reviewers: devilhorns, Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6536
2018-07-10 11:17:29 +09:00
Mike Blumenkrantz 7a538cbc4a elm/ctxpopup: check for content object before removing callbacks during del
Summary: ref T7030

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7030

Differential Revision: https://phab.enlightenment.org/D6541
2018-07-09 16:53:24 -04:00
Marcel Hollerbach 14f10bfd64 elm_focus_legacy: remove wrong EINA_UNUSED
Summary: Depends on D6532

Reviewers: devilhorns, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6533
2018-07-09 16:39:37 -04:00
Marcel Hollerbach df5c47a9eb elm_focus_legacy: check if top is really a window
Summary:
if not, things are going to fall apart, as manager_top then can be NULL
or invalid. Top has to be a window element, if this is not the case,
then the widget tree of the given widget is dangling somewhere in the
void. Calculating the next object in there or even the active manager
will result in errors, since the active manager is not really the active
manager, but rather just a manager object somewhere in a danging widget
subtree.

Moving the focus into such a dangling widgettree might result in a stuck
focus rect on this object, since the DFS of the focus manager
implementation cannot backtrack anymore into the widgets that are still
part of the widget graph.

Depends on D6531

Reviewers: devilhorns, segfaultxavi, zmike

Reviewed By: segfaultxavi

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6532
2018-07-09 16:39:35 -04:00
Marcel Hollerbach fdc4925bf5 elm_focus_legacy: fix focus moving for legacy
Summary:
elm_object_focus_next was not working correctly for objects where obj is
not the focused object.

fix T5940

Reviewers: devilhorns, segfaultxavi, zmike, stefan_schmidt

Reviewed By: segfaultxavi

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T5940

Differential Revision: https://phab.enlightenment.org/D6531
2018-07-09 16:39:30 -04:00
Xavi Artigas ee8d06c806 elementary: Avoid passing NULL in some win focus methods
Summary:
This one is rather harmless, as the NULL returned by this fuction is handled
correctly in all places, but this commit removes the runtime warning.

ref T7030

Test Plan: After this commit the warning disappears. Got the warning with win_example.

Reviewers: zmike, bu5hm4n, devilhorns

Reviewed By: devilhorns

Subscribers: netstar, cedric, #committers

Tags: #efl

Maniphest Tasks: T7030

Differential Revision: https://phab.enlightenment.org/D6538
2018-07-09 13:32:58 -04:00
Alastair Poole d0840ac793 popup: fix popup sizing when scroll enabled.
Summary:
Force immediate calculate on main_layout after sizing hints set.

@fix T6886

Test Plan: Elementary_test: popup -> select scrollable -> use popup examples.

Reviewers: #committers, zmike, stephenmhouston, bu5hm4n, devilhorns

Reviewed By: #committers, zmike, stephenmhouston

Subscribers: cedric

Tags: #efl

Maniphest Tasks: T6886

Differential Revision: https://phab.enlightenment.org/D6509
2018-07-06 11:09:04 -05:00
Derek Foreman 2452820e59 selection_manager: Silence silly ERR messages
Summary: These should be DBG, they're not errors.

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6526
2018-07-06 11:08:00 -04:00
Derek Foreman c529418580 selection_manager: Remove unused variable
Summary:
gcc somehow didn't notice this until an unrelated use of the variable
later was removed.  Now it's a warning.
Depends on D6523

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6524
2018-07-06 10:16:50 -04:00
Derek Foreman 0fe553cf06 ecore_wl2: Remove ecore_wl2_display_window_find
Summary:
This is now totally trivial and needs not exist.
Depends on D6522

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6523
2018-07-06 10:16:36 -04:00
Derek Foreman 78f27a3eff ecore_wl2: Replace window ids with pointers
Summary:
There's no benefit to generating ids instead of just using the
Ecore_Wl2_Window pointer in events.

This has the added benefit of working around a really nasty hash collision
bug when multiple ecore_evas engines are used at once.

ref T7053
ref T6222

@beta_break
Depends on D6521

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T7053, T6222

Differential Revision: https://phab.enlightenment.org/D6522
2018-07-06 10:16:21 -04:00
Hermet Park bd3298dead elementary textpath: code refactoring.
Don't twist code unnecessarily.
logically same, round() is enough.
Differential Revision: https://phab.enlightenment.org/D6501
2018-07-05 23:01:00 +02:00
Marcel Hollerbach 7a8ff655c8 elm_popup: ensure focus is emitted on this object
Summary:
This mirrors the focus property from the notify to the one from popup.

This is needed to establish legacy behaviour, as earlier popup was able to get focus.

ref T6707
Depends on D6510

Reviewers: zmike, devilhorns

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6707

Differential Revision: https://phab.enlightenment.org/D6511
2018-07-05 15:09:21 -04:00
Marcel Hollerbach 11147284fe efl_ui_focus_manager_root_focus: mirror the focus properties correctly
Summary:
this object takes a internal dummy object, and thus the properties
should be mirrored to the real root.

The focus property on the root of the manager is required that the outer world really sees that the focus is on the root or not.

Depends on D6506

Reviewers: zmike, devilhorns

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6510
2018-07-05 15:09:18 -04:00
Chris Michael ba1ab47294 elementary: Add missing EINA_UNUSED for unused function parameter 2018-07-04 16:51:21 -04:00
Mike Blumenkrantz 553fd7c163 efl/selection_manager: fix some invalid memory reads
Summary:
these selections are data with specified lengths, not strings
Depends on D6483

Reviewers: devilhorns, bu5hm4n

Subscribers: bu5hm4n, netstar, cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6484
2018-07-03 12:39:33 -04:00
Mike Blumenkrantz fff4d1ba97 efl/selection_manager: make selection manager a child of the app
Summary:
a selection manager is application-wide, not per-window. creating separate
managers for each window duplicates all callbacks for the window's display
server, guaranteeing broken behavior at any time when more than one window
exists

fix T6937

Reviewers: bu5hm4n, devilhorns

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6937

Differential Revision: https://phab.enlightenment.org/D6483
2018-07-03 12:39:26 -04:00
Marcel Hollerbach 9c6175b3d6 efl_ui_focus_layer: do not call on NULL objects
This fixes the following backtrace

	#5  0x00007ffff4ee87d0 in efl_ui_focus_manager_root_get (obj=0x0) at lib/elementary/efl_ui_focus_manager.eo.c:17
	#6  0x00007ffff4ef50cb in _efl_ui_focus_layer_enable_set (obj=0x40000004adfe, pd=0x12fde40, v=0 '\000') at lib/elementary/efl_ui_focus_layer.c:127
	#7  0x00007ffff4ef52dd in efl_ui_focus_layer_enable_set (obj=0x40000004adfe, v=1 '\001') at lib/elementary/efl_ui_focus_layer.eo.c:4
	#8  0x00007ffff4ef4df0 in _efl_ui_focus_layer_efl_gfx_entity_visible_set (obj=0x40000004adfe, pd=0x12fde40, v=1 '\001') at lib/elementary/efl_ui_focus_layer.c:35
	#9  0x00007ffff0f366a3 in efl_gfx_entity_visible_set (obj=0x40000004adfe, v=1 '\001') at ../src/lib/efl/interfaces/efl_gfx_entity.eo.c:15
	#10 0x00007ffff5d832bb in evas_object_show (eo_obj=0x40000004adfe) at lib/evas/canvas/evas_object_main.c:1917
	#11 0x00007fffcc365c74 in _bar_icon_preview_show (data=0xfaa7e0) at ../src/modules/luncher/bar.c:906
	#12 0x00007ffff6d4305a in _ecore_call_task_cb (func=0x7fffcc36549c <_bar_icon_preview_show>, data=0xfaa7e0) at lib/ecore/ecore_private.h:442
	#13 0x00007ffff6d434d2 in _ecore_timer_legacy_tick (data=0x12ca950, event=0x7ffffffc57c0) at lib/ecore/ecore_timer.c:160
	#14 0x00007ffff0d06e90 in _event_callback_call (obj_id=0x4000001f25b2, pd=0x923820, desc=0x7ffff6f673e0 <_EFL_LOOP_TIMER_EVENT_TICK>, event_info=0x0, legacy_compare=0 '\000') at lib/eo/eo_base_class.c:1671
	#15 0x00007ffff0d07162 in _efl_object_event_callback_call (obj_id=0x4000001f25b2, pd=0x923820, desc=0x7ffff6f673e0 <_EFL_LOOP_TIMER_EVENT_TICK>, event_info=0x0) at lib/eo/eo_base_class.c:1755
	#16 0x00007ffff0d07208 in efl_event_callback_call (obj=0x4000001f25b2, desc=0x7ffff6f673e0 <_EFL_LOOP_TIMER_EVENT_TICK>, event_info=0x0) at lib/eo/eo_base_class.c:1758
	#17 0x00007ffff6d4478e in _efl_loop_timer_expired_call (obj=0x4000000003dc, pd=0x890bf0, when=333436.894054887) at lib/ecore/ecore_timer.c:634
	#18 0x00007ffff6d445bd in _efl_loop_timer_expired_timers_call (obj=0x4000000003dc, pd=0x890bf0, when=333436.894054887) at lib/ecore/ecore_timer.c:587
	#19 0x00007ffff6d0b423 in _ecore_main_loop_iterate_internal (obj=0x4000000003dc, pd=0x890bf0, once_only=0) at lib/ecore/ecore_main.c:2317
	#20 0x00007ffff6d08e66 in _ecore_main_loop_begin (obj=0x4000000003dc, pd=0x890bf0) at lib/ecore/ecore_main.c:1175
	#21 0x00007ffff6d11757 in _efl_loop_begin (obj=0x4000000003dc, pd=0x890bf0) at lib/ecore/efl_loop.c:83
	#22 0x00007ffff6d13e6e in efl_loop_begin (obj=0x4000000003dc) at lib/ecore/efl_loop.eo.c:28
	#23 0x00007ffff6d08fe0 in ecore_main_loop_begin () at lib/ecore/ecore_main.c:1248
	#24 0x000000000054817c in main (argc=2, argv=0x7fffffffdc78) at ../src/bin/e_main.c:1090

fix T7034.

Differential Revision: https://phab.enlightenment.org/D6492
2018-07-02 18:21:15 +02:00
Marcel Hollerbach b28bd3ac0a elm_toolbar: handle the cleanup in the invalidate call
there is actaully no need to add the event, we can cleanup the pointer
in the invalidate call. Further more, the event was executed before the
method, thus checks against more_item failed because that was already
NULL. The result have been error messages, this fixes the error.

Differential Revision: https://phab.enlightenment.org/D6496
2018-07-02 18:20:09 +02:00
Marcel Hollerbach c14ea532eb elm_toolbar: fix _item_visiblity
'more' should indicate when a more item is needed, this is needed if one
item is set to visibility false, thus checking this here is required.

 #FocusBug

fix T6806

Differential Revision: https://phab.enlightenment.org/D6495
2018-07-02 18:20:09 +02:00
Marcel Hollerbach 16410aa1cf efl_ui_bg: set scale manually to hand by hand
according to 09d3d5b85a elm scale should
be ignored. However, setting no_scale breaks efl_ui_bg as no_scale
disables scale types, which are required to work.

fix T7080

Differential Revision: https://phab.enlightenment.org/D6494
2018-07-02 18:17:20 +02:00
Marcel Hollerbach a6dea4007e efl_ui_image: apply the whole sizing eval
orientation no_scale etc. can have impact on the min max calculation.
Thus that should be called on every property set.

ref T7080

Differential Revision: https://phab.enlightenment.org/D6493
2018-07-02 18:17:20 +02:00
Marcel Hollerbach 9117cdbd74 efl_ui_focus_graph: improve results based on lvls
This improves the results from the graph calculations.
Everything is documented in the comments.

The genlist of focus 6 is placed in a way that the button
at the top is not in reach, before we only had lvl1 and lvl2
(as described in the code comment), thus the button was only
reachable via right not via top. lvl3 makes it accessable
via top AND right.

fix T7098

Differential Revision: https://phab.enlightenment.org/D6491
2018-07-02 18:17:20 +02:00
Xavi Artigas 6d6f943acd elementary: fix buffer overflow in efl/calendar widget
I missed this one in the previous part name refactor, where the efl
namespace was added.
Differential Revision: https://phab.enlightenment.org/D6498
2018-07-02 15:55:50 +02:00
Marcel Hollerbach add0611acc efl_ui_focus_parent_provider_gen: provide results for adapters
Summary:
a adapter is used whenno real widget is created during realization, when
a adapter is used, the parent cannot be fetched via
elm_widget_parent_get, there we need efl_parent_get

Reviewers: ManMower, devilhorns, stephenmhouston, zmike, Hermet

Reviewed By: Hermet

Subscribers: Hermet, cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6339
2018-07-02 20:14:17 +09:00
Xavi Artigas 039818aec2 default theme: fix part names in elm/clock
Summary: Ref T6965

Reviewers: devilhorns, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T6965

Differential Revision: https://phab.enlightenment.org/D6452
2018-06-29 11:49:19 -04:00
Marcel Hollerbach 1730d95896 efl_ui_focus_manager_calc: only perform operation if really required
Summary:
_manager_in_chain_set is not needed to be called if the focus property
is already correct. If a manager is moved out of the redirect property,
then the focus is dropped completly

Reviewers: ManMower, devilhorns, zmike, stephenmhouston

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6338
2018-06-29 11:36:30 -04:00
Xavi Artigas d2e631586c default theme: fix part names in efl/uiclock
Summary:
Ref T6965
Depends on D6450

Reviewers: devilhorns, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T6965

Differential Revision: https://phab.enlightenment.org/D6451
2018-06-29 11:34:57 -04:00
Xavi Artigas 89675c3219 default theme: remove unused elm/uiclock
Summary:
Legacy widget is elm/clock, and the new one is efl/uiclock.
There does not exist a legacy elm/uiclock.
This also reverts commit 20404d79d4
(elm_datetime, efl_ui_clock : Add check 'legacy widget' for layout signal emission)
Since there is no need to check for legacy versions of uiclock.

Ref T6965

Reviewers: devilhorns, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T6965

Differential Revision: https://phab.enlightenment.org/D6450
2018-06-29 11:34:36 -04:00
Marcel Hollerbach 38656301b6 elm_genlist: prepare items before realising them
Summary: Depends on D6339

Reviewers: ManMower, devilhorns, zmike, stephenmhouston

Reviewed By: zmike

Subscribers: Hermet, cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6340
2018-06-29 11:33:18 -04:00
Xavi Artigas f115d878a0 default theme: fix part names in efl/calendar
Summary:
Ref T6967
Depends on D6453

Reviewers: zmike, devilhorns

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6967

Differential Revision: https://phab.enlightenment.org/D6454
2018-06-29 11:32:54 -04:00
Xavi Artigas ce9f568cc9 default theme: fix part names in elm/calendar
Summary: Ref T6967

Reviewers: zmike, devilhorns

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6967

Differential Revision: https://phab.enlightenment.org/D6453
2018-06-29 11:32:03 -04:00
Marcel Hollerbach 2137ce7e1e efl_ui_focus_layer: elm_widget_top_get considered harmfull
Summary:
You think elm_widget_top_get returns a window object ? Oh no! For the
case that the widget tree splits, and the widget_parent gets NULL of
some widget in the chain, elm_widget_top_get returns where the NULL
reference is placed.

For the case of elm_notify this is somehow intended, as the notify does
not have a parent when the parent is deleted.

ref T7090

Reviewers: netstar, zmike, devilhorns

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7090

Differential Revision: https://phab.enlightenment.org/D6471
2018-06-29 11:31:56 -04:00
Xavi Artigas c35214ee9c default theme: fix part names in elm/scrollable/panel
Summary:
Ref T6966

Depends on D6455

Reviewers: zmike, devilhorns

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6966

Differential Revision: https://phab.enlightenment.org/D6456
2018-06-29 11:28:57 -04:00
Carsten Haitzler cc726c011e Revert "elm win - fix resizing on show. rage was broken last week. this fixes it"
This reverts commit 7bf845b24c.
2018-06-27 13:49:57 +09:00
Marcel Hollerbach 5337d908e4 elm: register legacy_type correctly
Summary:
What happened before is that we registered efl_ui_leyout_legacy for
"elm_layout", which is not that good, since checking a (lets say) elm_button, for the type "elm_layout" would result in false. The same is with elm_button.

fixes T7081

Reviewers: devilhorns, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Maniphest Tasks: T7081

Differential Revision: https://phab.enlightenment.org/D6430
2018-06-26 12:21:55 -04:00
Mike Blumenkrantz 93228108ef elm/win: move trigger for "shot" to first pre-render callback
Summary:
in the case where the first render took far longer then the specified
shot interval, this would end up recording garbage since there was nothing
drawn yet

@fix
fix T6929

Reviewers: bu5hm4n, JackDanielZ, devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6929

Differential Revision: https://phab.enlightenment.org/D6426
2018-06-25 15:20:27 -04:00
Chris Michael eed3e5dfe9 efl_ui_layout_pack: Wrap calls to edje_object_part_object_get with
Summary:
freeze/thaw

@ref T6884

Depends on D6418

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6419
2018-06-25 11:36:52 -04:00
Chris Michael 580100d87d elm_clock: Wrap calls to edje_object_part_object_get with freeze/thaw
Summary:
@ref T6884

Depends on D6417

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6418
2018-06-25 11:36:52 -04:00
Chris Michael a1704700ac elm_calendar: Wrap calls to edje_object_part_object_get with freeze/thaw
Summary:
@ref T6884

Depends on D6416

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6417
2018-06-25 11:36:52 -04:00
Chris Michael 70b322b31b elc_popup: Wrap calls to edje_object_part_object_get with freeze/thaw
Summary:
@ref T6884

Depends on D6415

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6416
2018-06-25 11:36:51 -04:00
Chris Michael 42d97d0420 efl_ui_win: Wrap calls to edje_object_part_object_get with freeze/thaw
Summary:
@ref T6884

Depends on D6414

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6415
2018-06-25 11:36:51 -04:00
Chris Michael 7a7ab00955 elc_naviframe: Wrap calls to edje_object_part_object_get with
Summary:
freeze/thaw

@ref T6884

Depends on D6413

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6414
2018-06-25 11:36:51 -04:00
Chris Michael f7064f9500 elc_multibuttonentry: Wrap calls to edje_object_part_object_get with
Summary:
freeze/thaw

@ref T6884

Depends on D6412

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6413
2018-06-25 11:36:51 -04:00
Chris Michael 5a54a3d357 efl_ui_calendar: Wrap calls to edje_object_part_object_get with
Summary:
freeze/thaw

@ref T6884

Depends on D6411

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6412
2018-06-25 11:36:40 -04:00
Chris Michael c1f3cf2a47 elm_spinner: Wrap calls to edje_object_part_object_get with freeze/thaw
Summary:
@ref T6884

Depends on D6410

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6411
2018-06-25 11:32:47 -04:00
Chris Michael 9724f671ed efl_ui_layout_object: Wrap calls to edje_object_part_object_get with
Summary:
freeze/thaw

@ref T6884

Depends on D6409

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6410
2018-06-25 11:32:47 -04:00
Chris Michael 25aed20aed elm_access: Wrap calls to edje_object_part_object_get with freeze/thaw
Summary:
@ref T6884

Depends on D6407

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6408
2018-06-25 11:32:47 -04:00
Chris Michael c8770a54df elm_panel: Wrap calls to edje_object_part_object_get with freeze/thaw
Summary:
@ref T6884

Depends on D6406

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6407
2018-06-25 11:32:47 -04:00
Chris Michael 8ade8932ba efl_ui_view_list: Wrap calls to edje_object_part_object_get with
Summary:
freeze/thaw

@ref T6884

Depends on D6404

Reviewers: zmike, ManMower

Reviewed By: zmike

Subscribers: bu5hm4n, cedric, #committers

Tags: #efl

Maniphest Tasks: T6884

Differential Revision: https://phab.enlightenment.org/D6405
2018-06-25 11:32:47 -04:00
Marcel Hollerbach ef5c93d173 elm_web: convert the enum fields correctly, as previously done
Summary:
ensure that everything stays in the allowed and previously used ranges.
The enums that are passed here are not equivalent.
Depends on D6383

Reviewers: devilhorns, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6384
2018-06-25 06:57:08 -04:00
Marcel Hollerbach 7305051197 elm_map: convert enums correctly
Summary:
ensure that everything stays in the allowed and previously used ranges.
The enums that are passed here are not equivalent.
Depends on D6382

Reviewers: devilhorns, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6383
2018-06-25 06:56:43 -04:00
Marcel Hollerbach d714c21ecb efl_ui_layout_object: fix warnings
Summary:
ensure that the signal is correctly composed.
For the case that the eina value is carrying a error, then we just error
out.
Depends on D6378

Reviewers: devilhorns, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6379
2018-06-25 06:56:09 -04:00
Bowon Ryu ddeae96421 elm_slider: add null check to avoid seg fault.
Summary: a segmentation fault occurs once the argument is not valid.

Test Plan: N/A

Reviewers: eagleeye, devilhorns, zmike

Reviewed By: eagleeye, zmike

Subscribers: #committers, cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6362
2018-06-25 06:55:57 -04:00
Jean-Philippe Andre 6f6b365c84 elm_scroll: Avoid calls to non-existing part
In case of Bryce's style, there are no scroll bars.

this avoids errors for non-existent objects

ref T7030

Signed-off-by: Mike Blumenkrantz <zmike@samsung.com>

Differential Revision: https://phab.enlightenment.org/D6317
2018-06-25 11:30:52 +02:00
Marcel Hollerbach 679ea2d311 efl_ui_focus_graph: remove unused functions
Reviewers: devilhorns, Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6378
2018-06-25 15:02:55 +09:00
Carsten Haitzler ba8a47a316 elm focus - fix focus composition prepare to not seg by unsafe list mods
efl_ui_focus_composition_prepare() methods in 2 widgets were modifying
the list (removing items) as they walked, using unsafe walking macros.
fix - use the safe variants.
2018-06-24 11:56:52 +09:00
Carsten Haitzler 7bf845b24c elm win - fix resizing on show. rage was broken last week. this fixes it
rage window with no file passed ended up like 10x40 ... which is
wrong. it wasn't. rage code explicitly resizes the window before show
and this wsas being overriden. tested rage, terminology, em test in
both x and wl. all still work (for me) post commit.
2018-06-23 23:57:00 +09:00
Derek Foreman c9979ca4c0 genlist: Don't search for an item we know we won't find
Summary:
We track list presence already, so we can just do a boolean test instead
of an O(n) lookup.
Depends on D6349

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6350
2018-06-22 09:38:03 -04:00
Derek Foreman 59c2f78d79 efl_ui_focus_manager: track list presence
By keeping track of whether a node is on the dirty list or not we can
save ourself list walks trying to remove items that aren't present.

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

Signed-off-by: Derek Foreman <derekf@osg.samsung.com>
2018-06-22 10:38:11 +02:00
Alastair Poole 91e146f108 efl_ui_widget: silence warnings with clang.
Clang doesn't like dangling else.
2018-06-22 09:11:32 +01:00
Marcel Hollerbach 5a1e954a13 efl_ui_navigation_bar: less warnings
Reviewers: zmike, ManMower, devilhorns, Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6344
2018-06-21 14:53:36 +09:00
Marcel Hollerbach a2df08cb20 efl_ui_focus_manager_calc: fix warnings
Summary: its a false positive...

Reviewers: zmike, ManMower, devilhorns, Hermet

Reviewed By: Hermet

Subscribers: Hermet, cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6342
2018-06-21 14:52:29 +09:00
SangHyeon Lee ac9dfe7e46 elm_gengrid : fix gengrid cached items disapearing issue by wrong reference counting
gengrid item view is managed by cache while scrolling,
but efl_wref_add/del and VIEW_ADD is not paired well.

this commit is fixing the issue of item dispearing when it scrolls.

Signed-off-by: SangHyeon Lee <sh10233.lee@samsung.com>
2018-06-21 14:09:13 +09:00
Marcel Hollerbach d85abe5e03 efl_ui_widget_focus_manager: less warnings
Summary: fix T7050

Reviewers: zmike, ManMower, devilhorns, Hermet

Reviewed By: Hermet

Subscribers: Hermet, cedric, #committers

Tags: #efl

Maniphest Tasks: T7050

Differential Revision: https://phab.enlightenment.org/D6341
2018-06-21 12:56:07 +09:00
Mike Blumenkrantz 4a2b411287 elm_colorselector: fix improperly named API theme parts
Summary:
API parts require namespacing, these parts have been namespaced with
compatibility code added to handle legacy naming

Reviewers: cedric, Hermet, devilhorns, stephenmhouston

Subscribers: segfaultxavi, Hermet, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6213
2018-06-20 11:57:26 -05:00
Marcel Hollerbach b2409153aa elm: refactor do not call efl_data_scope_get on a object without data
Summary:
A call to efl_data_Scope_get is actually quite dangerous,
efl_data_scope_get will return a pointer to a 0 sized segment in memory,
this is happening based on how the class data is organized. So in theory
you could use this pointer and accidently write to it. This resolves
this issue.

Reviewers: devilhorns, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6337
2018-06-20 12:24:06 -04:00
Mike Blumenkrantz a43cb224c1 elm_list: return from sizing_eval immediately if called during constructor
Summary:
this is both invalid and useless, so return immediately before spending cpu
time and generating error messages

fix T7035

Depends on D6324

Reviewers: bu5hm4n, Hermet, woohyun, devilhorns

Reviewed By: bu5hm4n

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7035

Differential Revision: https://phab.enlightenment.org/D6325
2018-06-19 13:41:44 -04:00
Mike Blumenkrantz 30197a488f elm_colorselector: avoid calling functions with null objects
Summary:
a number of calls during construction resulted in null object errors here

fix T7036

Depends on D6323

Reviewers: bu5hm4n, Hermet, woohyun, devilhorns

Reviewed By: bu5hm4n

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7036

Differential Revision: https://phab.enlightenment.org/D6324
2018-06-19 13:41:16 -04:00
Mike Blumenkrantz 209aca1654 elm_colorselector: avoid passing null to efl functions
Summary:
this check already existed in the function but was not applied to the
entire function

ref T7030
Depends on D6322

Reviewers: bu5hm4n, Hermet, woohyun, devilhorns

Reviewed By: bu5hm4n

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7030

Differential Revision: https://phab.enlightenment.org/D6323
2018-06-19 13:41:02 -04:00
Mike Blumenkrantz 13b702816e efl_ui_win: check frame_obj existence before operating on it in pre_render
Summary:
this object will not exist for fake win objects, e.g., in enlightenment

fix T7033
Depends on D6319

Reviewers: bu5hm4n, Hermet, woohyun, devilhorns

Reviewed By: bu5hm4n

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7033

Differential Revision: https://phab.enlightenment.org/D6320
2018-06-19 13:40:43 -04:00
Mike Blumenkrantz 865774bf81 efl_ui_win: do not attempt to focus a null object on focus-in
Summary:
ref T7033
Depends on D6318

Reviewers: bu5hm4n, Hermet, woohyun, devilhorns

Reviewed By: bu5hm4n

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T7033

Differential Revision: https://phab.enlightenment.org/D6319
2018-06-19 13:40:27 -04:00
Mike Blumenkrantz 9889352bc0 elm_dayselector: fix improperly named API theme parts
Summary:
API parts require namespacing, these parts have been namespaced with
compatibility code added to handle legacy naming
Depends on D6210

Reviewers: cedric

Reviewed By: cedric

Subscribers: #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6211
2018-06-19 13:28:15 -04:00
Mike Blumenkrantz 3c094d8146 theme: fix part namespacing in multibuttonentry theme
Summary:
this was released with improperly namespaced parts which must be maintained
for future releases, but the namespacing can be corrected for future
releases while adding aliasing to preserve compatibility
Depends on D6208

Reviewers: cedric

Reviewed By: cedric

Subscribers: #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6210
2018-06-19 13:27:50 -04:00
Hermet Park 95852ba504 Revert "elementary: fix wrong signal emission"
This reverts commit 1b245787fe.

This is a workaround patch, even occurs a regression bug that
breaks widget signal emission logic. (Happened in Enventor toolbar)

I reviewed this code seriously and found out
ui_layout sub object unset logic has been changed.
Obviously that breaks the elm compatibility.

When sub-object of layout is removed, it tries to remove sub-object from
the layout internal list. Problem is, some widgets sends internal signals
when sub-object is removed(i.e "icon,hidden") , but layout returns the
valid object even though sub-object unset is called prior to signal,
means, "icon,visible" not "icon,hidden" emitted.

This logic obvisouly changed from the previous efl version.
And we need to fix that logic first.

See _efl_ui_button_legacy_efl_ui_widget_widget_sub_object_del()
to check this issue.

1. button: sub_object_del()
2. layout: sub_object_del() => sub object must be removed.
3. button: signal emit() => for updating states
4. layout: content_get() => returns valid object?????! (Issue)
2018-06-19 12:54:15 +09:00
Jihoon Kim 24536de3a9 ecore_imf: Remove security_code in autofill type
Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
2018-06-18 08:45:55 +09:00
Daniel Zaoui 1ab3094dac Clouseau: use the config flag only for the old Clouseau 2018-06-15 10:10:50 +03:00
junsu choi 20404d79d4 elm_datetime, efl_ui_clock : Add check 'legacy widget' for layout signal emission
Summary:
08a11d, Signal name is changed to efl ui signal name
legacy widget should use elm
This commit resolves T6928

#efl, #regression

Test Plan: elementary_test -to datetime

Reviewers: JackDanielZ, Jaehyun_Cho, Hermet, YOhoho, devilhorns, zmike

Reviewed By: zmike

Subscribers: YOhoho, cedric, Hermet, Jaehyun_Cho, #committers, JackDanielZ, zmike

Tags: #efl

Maniphest Tasks: T6928

Differential Revision: https://phab.enlightenment.org/D6289
2018-06-14 08:55:50 -04:00
Chris Michael cd376bbe5f elementary: Add missing EINA_UNUSED for unused function parameter 2018-06-13 11:37:40 -04:00
Marcel Hollerbach 054eab8ad8 elm_gen****: ensure the correct parent is set
fixes T6474
2018-06-12 11:51:08 +02:00
Marcel Hollerbach 42bb537170 efl_ui_focus_parent_provider_gen: do not accidently flatten the widgets
in the provider we accidently flattend out the widget history by
returning the wrong parent. However, this flattening code was required
for the element focus code of the two generic widgets, so the item is
found for every widget, in every subtree.
2018-06-12 11:32:51 +02:00
Larry Lira 0dfadc2322 elm: fix efl_model property_get and children_slice_get in views 2018-06-07 19:15:50 -03:00
Hermet Park 5a4f16531f elementary widget: fix to trigger object signal emit properly.
This is more generic way to trigger signals for all derived classes of layout.

This fixes the dayselector item signal emit issue as well.

@fix T6981
2018-06-05 20:27:56 +09:00
YeongJong Lee 07c627a977 elm_label: remove needless variable
Reviewers: Hermet

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6238
2018-06-04 20:12:50 +09:00
YeongJong Lee 1b245787fe elementary: fix wrong signal emission
Summary:
When _icon_signal_emit is called, "icon" part always exist. so, it only make
"visible" signal.
this fixes that issue

Test Plan:
elm_object_content_unset(button);
elm_object_content_unset(radio);
elm_object_content_unset(check);
elm_object_content_unset(progressbar);

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6241
2018-06-04 17:48:06 +09:00
YeongJong Lee 9758f99e0b elm_table/grid: remove non-widgets from focus elements.
ref 5a3ee984a1
Differential Revision: https://phab.enlightenment.org/D6236
2018-06-03 12:00:11 +02:00
YeongJong Lee 4ea4f0486e elm_hoversel: inherit elm_button
Summary:
elm_hoversel is legacy widget. it should inherit legacy Elm_Button instead of
Efl.Ui.Button.
this patch also fixes icon signal emit bug.

fixes T6971

Test Plan:
1. elementary_test -to hoversel
2. check that ther is icon (sky) on "Icon + Lebel" hoversel

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #committers, JackDanielZ, zmike

Tags: #efl

Maniphest Tasks: T6971

Differential Revision: https://phab.enlightenment.org/D6240
2018-06-01 11:36:01 +09:00
YeongJong Lee 121a85f2fc elm_tooltip: use window as parent instead of NULL for elm_theme_object_set
Summary:
see 421217b150

If parent is NULL, is_legacy in _elm_theme_set is always true. and it will use
"efl/xxx" for mmap_set. this patch avoid this case.

fixes T6921

Test Plan:
1. elementary_test -to tooltip
2. check that "Hello", "Big Icon Tooltip", "Insanel Big Icon Tooltip" is working

Reviewers: zmike

Subscribers: cedric, ManMower, #committers

Tags: #efl

Maniphest Tasks: T6921

Differential Revision: https://phab.enlightenment.org/D6232
2018-05-31 09:46:13 -04:00
YeongJong Lee 61dc4899b5 elm_win: fix widget type name for backward compatibility
Summary:
It should use legacy class in elm_win_add.

this patch fixes T6898, T6899

Test Plan: make check

Reviewers: zmike, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #committers

Tags: #efl

Maniphest Tasks: T6899, T6898

Differential Revision: https://phab.enlightenment.org/D6233
2018-05-31 21:39:34 +09:00
Hermet Park df4e54f4aa elementary genlist: optimize data. 2018-05-30 13:46:12 +09:00
Hermet Park 6e74ab5ac6 elementary: packing data properly. 2018-05-30 13:37:35 +09:00
Wonki Kim 843850154d elementary: Modify key action logic for image.zoomable
Summary:
  1. remove prior/next action
  prior/next key action doesn't look suitable for image.zooamble.
  It is not able to support bi-directional interaction.

  2. remove logic that refers to step_size the logic has been removed
  by applying this commit because api related with step_size has been removed
  since the new scrollable interface introduced.

another patch may follow after discussing on community

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6221
2018-05-28 22:02:04 +09:00
YeongJong Lee 55cd0f4970 efl_part: remove unnecessary default_xxx_part_get
Summary:
They can call default_xxx_part_get of layout.

ref 6e49db0739

Test Plan:
elementary_test -to button
elementary_test -to 'efl.ui.button'
elementary_test -to 'efl.ui.popup'
elementary_test -to 'progressbar'
elementary_test -to 'slider'

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #committers, herb, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6218
2018-05-28 17:32:46 +09:00
Hermet Park 9a25bad5bf elementary textpath: use job for deferred drawing task.
textpath performed drawing task multiple times unnecesarily.
It should be performed only one time after all setting up.
2018-05-28 15:39:23 +09:00
Hermet Park d1cce82565 elementary ui_textpath: remove autofit api.
Toggling this option is unlikely happened by user because with autofit=false,
it doesn't gurantee readable visual text.

We don't need this stupid api yet. So remove it.
2018-05-28 15:23:57 +09:00
Youngbok Shin 8d249c9445 elementary textpath: update Evas map when text is updated
Summary:
Evas map was not updated when text was updated.
@fix

Test Plan:
1. Run the following test case.
  elementary_test -to "efl.ui.textpath"
2. Toggle short text.
3. See a long line from the end of text which is wrong.
  If you change angle, Evas map will be updated properly.
  But, it should be updated when text is updated.

Reviewers: raster, cedric, thiepha, Hermet

Reviewed By: Hermet

Subscribers: Hermet, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6216
2018-05-28 14:48:41 +09:00
YeongJong Lee cf9d396d82 efl_ui_popup: use "elm.swallow.content" name instead of "default" for scroller
Summary:
efl_part don't support legacy aliases.

ref 495edbd995

Test Plan:
1. elementary_test -to 'efl.ui.popup.alert.text'
2. elementary_test -to 'efl.ui.popup.alert.scroll'

Reviewers: Jaehyun_Cho, herb

Reviewed By: Jaehyun_Cho

Subscribers: stefan_schmidt, cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6192
2018-05-28 12:57:00 +09:00
Carsten Haitzler 060e62061d efl ui win - fix legacy theme support correctly
this fixes T6918. during development legacy theme support was b roken.
473e657120 broke it.
2018-05-27 19:48:48 +09:00
Carsten Haitzler 9edce5e078 elm config - fix derived save crash
derived shutdown nuked the edd's and eet still decoded something...
that was junk. oddly. this fixes T6879.
2018-05-27 17:00:09 +09:00
Woochan Lee 3c96fdfc69 elm_spinner: Spinner value adjust when round enabled.
Summary:
The round value was not being applied when input the value as an internal entry.

@fix

Test Plan: elementary_test -> spinner sample.

Reviewers: cedric, woohyun, Jaehyun_Cho

Reviewed By: cedric

Subscribers: cedric

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

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-05-25 10:28:42 -07:00
Mike Blumenkrantz a0db6b351a Revert "efl_ui_win: simplify checking theme version when adding frame"
Summary:
This reverts commit f37b96a1de.

as pointed out in D5957, this would break use of theme_set during the
efl_add constructor once this is implemented in the future

Reviewers: raster, cedric

Reviewed By: cedric

Subscribers: #committers

Tags: #efl

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

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-05-25 10:14:38 -07:00
Mike Blumenkrantz c5fae98de5 elm_notify: remove allow_events_set call in destructor
Summary:
4976f1fc5276835940610b72ca4fa48776fc9410 erroneously flipped the
bool flag on this call, accidentally creating another object during
deletion which is illegal now as the notify object is now unparented
at this point which will result in a CRI error

this call was never required in the first place as the corresponding
layout object would have been deleted automatically due to widget parenting

@fix

Reviewers: cedric

Tags: #efl

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

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-05-25 10:13:31 -07:00
Youngbok Shin 6e6ed72921 elementary widget: Do super's efl_gfx_color_set to apply color to widget itself
Summary:
The efl_gfx_color interface was not applied properly.
The implementation code of evas_object_smart_color_set was moved
to efl_gfx_color_set implementation code. But, these two functions are not same.
In efl_gfx_color_set impl, it has to call super's color set to apply
the given color values to widget object itself.

This bug caused color_set/get test failure and the following bug.
1. elm_image_add
2. evas_object_color_set
3. elm_image_file_set
4. show. See the given color is not applied. It was applied in the past.

Test Plan: color_set/get to elm_image object is included in test suite.

Reviewers: raster, cedric, herdsman, woohyun

Reviewed By: cedric

Subscribers: #committers, zmike

Tags: #efl

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

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-05-25 10:08:24 -07:00
Hosang Kim 37f13a9d10 elm_interface_scrollable: change return value for post events.
Summary:
1. Scroller in scroller case, callback process should continue.
     If child scroller does not scroll, parent scroller should be checked whether scroll or not.
     So returning EINA_TRUE is necessary.
2. down.dragged flag is always EINA_FALSE, so scroll is never unlocked.
@fix

Test Plan:
precondition
  elementary_config -> scrolling -> Set Scroll Smooth Amount to 0
elementary_test -> pagescroller

Reviewers: woohyun, zmike, singh.amitesh, cedric

Reviewed By: cedric

Subscribers: #committers, cedric, zmike

Tags: #efl

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

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-05-25 10:04:50 -07:00
Youngbok Shin 455775c2e3 elementary textpath: improves text rendering quality of curved text
Summary:
There was wrong logic for calculating # of slices, dt, dist of each segment.
It caused bad rendering quality by putting too much slices on small text.

In addition, textpath didn't care about smoothness of curve's slope changing.
The patch fixes to check differences of previous points and next points for Evas Map.
So, textpath can show more smoothly curved text.

Also, it fixes "autofit" bug when text is much huge than given circle's size.

@tix

Test Plan:
- I'll attach screenshots for comparing rendering quality.
- To see "autofit" bug.
1. Run the following command.
   ELM_ACCEL=gl ELM_SCALE=2.0 elementary_test -to "efl.ui.textpath"

2. Toggle "autofit" check box.
3. See the bug case. Textpath can't show all text properly.

Reviewers: raster, cedric, thiepha

Subscribers: #committers, zmike

Tags: #efl

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

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-05-25 09:59:04 -07:00
Cedric BAIL 2a5dc74408 elementary: fetch the model explicitely.
T6939
2018-05-25 09:16:45 -07:00
WooHyun Jung 4d0bb5ec35 efl_ui_win: fix wrong comparison in icon_object_set
@fix
2018-05-25 16:42:52 +09:00
Cedric BAIL 311e35a0dd elementary: prevent model from being invalidated when their parent model get destroyed. 2018-05-24 16:02:21 -07:00
Cedric BAIL a098ee4460 elementary: ctxpopup is using legacy Elm.List which use legacy Elm.Object.Item, fix accordingly. 2018-05-24 16:02:21 -07:00
Cedric BAIL 0eacebfec8 elementary: fix elm_list items lifecycle.
Elm.List.Item lifecycle where an exception in Efl. They were trying to prevent the death of
there parent, to avoid dealing with safely walking on items list. This has been on the todo
list for years and is now fixed by this patch.
2018-05-24 16:02:21 -07:00
Cedric BAIL 40af4fe94b elementary: refactor filesector target cleanup to not leave function handler behind. 2018-05-24 16:02:21 -07:00
Cedric BAIL 85598a8a40 elementary: make sure to use the model that generated the event to fetch information from. 2018-05-24 16:02:21 -07:00
Cedric BAIL 228ecdeb51 elementary: make sure fileselector button model has a parent and self destruct properly. 2018-05-24 16:02:21 -07:00
Cedric BAIL a5f9ee5ab3 elementary: fix configuration destruction by actually calling the proper way of destruction. 2018-05-24 16:02:20 -07:00
Cedric Bail 13ae5b1f0c elementary: the config subsystem expect a stringshare. 2018-05-24 16:02:20 -07:00
Cedric BAIL 3d94f477d4 elementary: properly destroy block events object during destruction. 2018-05-24 16:02:20 -07:00
Cedric BAIL 5f5af596e0 elementary: cleanup genlist destructor to order content destruction correctly. 2018-05-24 16:02:20 -07:00
Cedric BAIL b5b9f72f57 elementary: when there is no file listed yet, no need to request them. 2018-05-24 16:02:19 -07:00
Cedric BAIL e4a6aaa4c1 elementary: enforce walk to protect the object existence by using eo refcounting. 2018-05-24 16:02:19 -07:00
Cedric BAIL 048a93e6e3 elementary: reorder operation to only call efl_parent_set when the object still has a chance to exist. 2018-05-24 16:02:19 -07:00
Cedric Bail f44511d0f9 elementary: refactor by using elm_legacy_add. 2018-05-24 16:02:19 -07:00
Cedric BAIL f29e1db94b elementary: make toolbar 'more_item' properly self destruct. 2018-05-24 16:02:19 -07:00
Cedric BAIL 2ce788063a elementary: no need to recalculate the layout during invalidate. 2018-05-24 16:02:19 -07:00
Cedric BAIL 9e0f9539dd elementary: the pan object of the map object was created with efl_add, adjust accordingly. 2018-05-24 16:02:19 -07:00
Cedric BAIL 0fe3b7962d elementary: due to lifecycle difference between legacy object and unified object, we need to track their lifecycle more explicitely.
It is my understanding that some items view are created with efl_add directly
and manipulate VIEW directly with Eo new API. This clash with the inconsistent
behavior that evas_object_del expect. To work around this, we track object life
by explictely relying on efl_wref_add while holding the pointer to the object.
2018-05-24 16:02:19 -07:00