Commit Graph

3181 Commits

Author SHA1 Message Date
Xavi Artigas 5a6486ea9f Efl.Page.*_* (From Efl.Page.*.*)
Including Efl.Page.Indicator.* and Efl.Page.Transition.*

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

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

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

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

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

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

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

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

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

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

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

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:04:01 -07:00
Xavi Artigas 3b489a71e2 Efl.Ui.Textpath_* (from Efl.Ui.Textpath.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:04:00 -07:00
Xavi Artigas 9ded795830 Efl.Ui.Slider_Part_Indicator (from Efl.Ui.Slider.Part_Indicator)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:04:00 -07:00
Xavi Artigas 0b6a0fdc97 Efl.Ui.Scrollable_Interactive (from Efl.Ui.Scrollable.Interactive)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:59 -07:00
Xavi Artigas d61f3fbb1d Efl.Ui.Progressbar_Part (from Efl.Ui.Progressbar.Part)
Ref https://phab.enlightenment.org/T6847

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

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:57 -07:00
Xavi Artigas bf4156b1c7 Efl.Ui.Panes_Part (from Efl.Ui.Panes.Part)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:56 -07:00
Xavi Artigas 08e93f8df8 Efl.Ui.Multibuttonentry_Part (from Efl.Ui.Multibuttonentry.Part)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:55 -07:00
Xavi Artigas b2d25a6e10 Efl.Ui.Layout.Part_* (from Efl.Ui.Layout.Part.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:54 -07:00
Xavi Artigas 6a98b84cd7 Efl.Ui.Layout.Object (from Efl.Ui.Layout)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:54 -07:00
Xavi Artigas 8da98a47f0 Efl.Ui.Image_* (from Efl.Ui.Image.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:53 -07:00
Xavi Artigas 8f3dc5d0ba Efl.Ui.Flip_* (from Efl.Ui.Flip.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:52 -07:00
Xavi Artigas 7e34e100d2 Efl.Ui.Clock_Type (from Efl.Ui.Clock.Type)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:50 -07:00
Xavi Artigas 5c258c238e Efl.Ui.Calendar_* (from Efl.Ui.Calendar.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:50 -07:00
Xavi Artigas 6b5ac687c1 Efl.Text_* (from Efl.Text.*)
Including:
Efl.Text.Cursor_* (from Efl.Text.Cursor.Cursor_*)
Efl.Text.Font_* (from Efl.Text.Font.*)
Efl.Text.Format_* (from Efl.Text.Format.*)
Efl.Text.Style_* (from Efl.Text.Style.*)
Efl.Ui.Text_* (from Efl.Ui.Text.*)

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

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:49 -07:00
Xavi Artigas b693b06339 Efl.Selection_Manager (from Efl.Selection.Manager)
Ref https://phab.enlightenment.org/T6847

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

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:48 -07:00
Xavi Artigas 5697f6e94b Efl.Gfx.Image* (From Efl.Image*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:40 -07:00
Xavi Artigas c837b321bf Efl.Image_Load_Controller* (From Efl.Image.Load*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:39 -07:00
Xavi Artigas 7be849c63e Efl.Gfx.Size_Hint* (from Efl.Gfx.Size.Hint*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:36 -07:00
Xavi Artigas 55bd097a3d Efl.Gfx.Entity (from Efl.Gfx)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:32 -07:00
Xavi Artigas 7934d152dd Efl.Config_Global (from Efl.Config.Global)
Ref https://phab.enlightenment.org/T6847

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

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:29 -07:00
Xavi Artigas 9dcc31ed4a Efl.Access.Object (from Efl.Access)
Ref https://phab.enlightenment.org/T6847

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

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:23 -07:00
Jaehyun Cho 454cc48841 efl_page_transition_scroll: Fix warning of uninitialized variable 2018-04-24 17:19:47 +09:00
Carsten Haitzler 3e3462f0d3 elm - sel manager - build on windows AND x11 now 2018-04-24 13:45:45 +09:00
Hermet Park 81bc0122ca elementary: update progressbar doc.
update doc in up-to-dated efl_ui_progressbar APIs.
2018-04-24 13:29:20 +09:00
Benjamin Jacobs 96ff273449 elementary: Spurious EINA_UNUSED.
Subscribers: cedric

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

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-04-23 13:38:00 -07:00
Alastair Poole bbd4247d6a elementary: fix build on X11.
@fix
2018-04-23 20:41:38 +01:00
Carsten Haitzler f805cc2be9 elm - sel manager - fix windows build with selection vars 2018-04-24 01:36:44 +09:00
Youngbok Shin f7826ea1af elementary bg: allow NULL pointers in legacy usage
Summary:
It should not cause crash with NULL parameters.
@fix

Reviewers: woohyun, raster, cedric

Reviewed By: woohyun, raster

Differential Revision: https://phab.enlightenment.org/D5979
2018-04-23 21:25:15 +09:00
Jaeun Choi e74ebca670 efl_ui_pager: Add Efl.Ui.Pager class and related classes
Efl.Ui.Pager is a widget which contains many pages in a linear fashion
and allows users to scroll through them.
Users can attach Efl.Page.Transition and Efl.Page.Indicator to a pager.
2018-04-23 20:33:04 +09:00
Derek Foreman 3acd8cdf80 efl_ui_win: Remove _elm_win_opaque_update
This stuff is all in the wayland ecore_evas now, so elm no longer needs
to handle it.
2018-04-20 13:00:28 -05:00
Derek Foreman 36f015cda1 efl_ui_win: Remove special wayland opaque_dirty stuff
This isn't necessary anymore as ecore_evas handles it internally now.
2018-04-20 13:00:28 -05:00
Derek Foreman a9fd904a6e efl_ui_win: Explicitly set alpha for wayland cursors
Instead of depending on the backend figuring it out.
2018-04-20 13:00:28 -05:00
Derek Foreman 3d2f5b1fd8 efl_ui_win: stop updating wdata->content
We don't need this because we calculate it in ecore_evas from the shadow
value and framespace.
2018-04-20 13:00:27 -05:00
Bowon Ryu 90135320d1 efl_ui_progressbar: add null check
Summary: a segmentation fault occurs once the argument is not valid.

Test Plan: N/A

Reviewers: cedric, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5974
2018-04-20 17:49:44 +09:00
JongMin Lee 47caa0115a elm: resolve possible memory leak.
@fix
2018-04-20 16:45:50 +09:00
JongMin Lee c21ffd8735 elm: resolve possible memory leak.
@fix
2018-04-20 15:59:49 +09:00
JongMin Lee a07d729b2f elm: resolve possible memory leak.
@fix
2018-04-20 15:41:32 +09:00
JongMin Lee a42451d688 elm: resolve possible memory leak.
@fix
2018-04-20 15:36:32 +09:00
Jaehyun Cho 0bebd097b5 elc_multibuttonentry: Fix to make multibuttonentry to be legacy only
To make multibuttonentry to be legacy only, inappropriate efl ui
interface usages are removed in multibuttonentry.
2018-04-20 14:07:35 +09:00
Stephen 'Okra' Houston cf359629a5 Focus: If tree focus is set to not allow focus on the object - don't give it focus.
Patch from Marcel 'bu5hm4n' Hollerbach
2018-04-19 11:19:51 -05:00
Lauro Moura 90f7144e81 elementary: Fix multibuttonentry legacy build.
Summary:
The legacy header was still referencing the eo class removed in
939690a8a9.

Reviewers: cedric, Jaehyun_Cho, vitor.sousa

Reviewed By: vitor.sousa

Differential Revision: https://phab.enlightenment.org/D5970
2018-04-19 12:38:19 -03:00
Jaehyun Cho 6c65b6368a efl_ui_navigation_bar: Add Efl.Ui.Navigation_Bar class
Efl.Ui.Navigation_Bar is a widget which provides a bar form useful for
navigation.
2018-04-19 23:40:06 +09:00
Jaehyun Cho 7e8722be00 efl_ui_navigation_layout: Add Efl.Ui.Navigation_Layout class
Efl.Ui.Navigation_Layout is a widget which provides a layout form useful
for navigation.
2018-04-19 23:40:01 +09:00
Jaehyun Cho ab4fa83f62 efl_ui_stack: Add Efl.Ui.Stack class
Efl.Ui.Stack is a container arranges objects in stack structure by
pushing and popping them.
2018-04-19 23:39:57 +09:00
Woochan Lee 939690a8a9 Revert Efl.Ui.Multibuttonentry to create new one.
Summary:
Revert e02b2f04c2945ad60fab5612af1e02b0838b7ff5.

I couldnt make a revert commit for many commit has been related with above commit.

I will create a new MBE eo class ASAP. (https://phab.enlightenment.org/T5358)

Reviewers: cedric, woohyun, Jaehyun_Cho, SanghyeonLee, herb

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5954
2018-04-19 22:22:01 +09:00
Lauro Moura 15fcaaec69 elm: Move legacy genlist types to elm_general.
Summary: Fixes T6771

Reviewers: bu5hm4n, felipealmeida

Subscribers: q66, cedric

Maniphest Tasks: T6771

Differential Revision: https://phab.enlightenment.org/D5938
2018-04-18 19:03:19 +02:00
Derek Foreman 50a9b49acc elm_win: Don't do auto norender on non X11 engines
This only really makes sense on X11 and can lead to some seriously
confusing cases on other engines (*cough* wayland) when elm's idea
of iconified state doesn't match the compositor's.

While currently only X11 is whitelisted, other backends can be
added, though I suspect most are more like wayland where it makes
no sense at all.

ref T6834
2018-04-18 09:15:39 -05:00
YeongJong Lee 2c8c7807f1 config: fix Efl.Ui.Slider key binding
Summary: this fixes T6796

Test Plan: elemetary_test -to slider

Reviewers: woohyun, Hermet, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Maniphest Tasks: T6796

Differential Revision: https://phab.enlightenment.org/D5962
2018-04-18 15:34:35 +09:00
Daniel Kolesa fcae7cab27 eolian gen: enable constness generation on property getter impls
This changes a lot of things all across the EFL. Previously,
methods tagged @const had both their external prototype and
internal impl generated with const on object, while property
getters only had const on the external API. This is now changed
and it all has const everywhere.

Ref T6859.
2018-04-17 20:31:55 +02:00
YeongJong Lee c943c4a2ff elm_dbus_menu: add missing const for Eina_List
Summary:
This fixes following warning

../src/lib/eina/eina_list.h:1421:10: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]

Test Plan: make

Reviewers: SanghyeonLee

Reviewed By: SanghyeonLee

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5952
2018-04-17 11:08:25 +09:00
Davide Andreoli 01a95d1f40 Revert "Genlist: restore old behaviour of item next/prev in group items"
This reverts commit f0a0da9f44.

As per T5938 seems we really want to restore a totally wrong
behaviour, without taking care of newer apps being broken.

I revert this for now, but I'm still convinced that we must
find a way to let user use a sane ordering for newer app.

I'm thinking about adding an api in genlist to let the widget
use the new sane ordering, something like
elm_genlist_fixed_ordering_set(bool) so that new apps can use
this to ensure correct behaviour. zmike what do you think about
this solution?
2018-04-17 00:11:11 +02:00
Wonki Kim d1ed913f85 elementary: Remove unreachable code lines
Summary: This patch removes unreacahble code lines

Reviewers: cedric, woohyun, eagleeye

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

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-04-16 11:21:21 -07:00
SangHyeon Lee 9c8ebc9dfc elm_menu, toolbar, ctxpopup : remove unnecesary interface efl_ui_item and efl_ui_menu
Summary:
Legacy menu toolbar and ctxpopup are not new efl interface widget,
but it have efl interfaces, efl_ui_item and efl_ui_menu.
if we plan to implement this two, it should be a class not a interface,
so I remove it on legacy widget.

Subscribers: cedric

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

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-04-16 11:03:02 -07:00
YeongJong Lee ffbbf7b7d6 elm_list: check there is focused item when list get focus at first
Summary:
list have got focus. but there isn't logic to check whether focused_item exist.
we need that logic for list focus
this fixes T6807, T6799

Test Plan: elementary_test -to 'list focus'

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric

Maniphest Tasks: T6807, T6799

Differential Revision: https://phab.enlightenment.org/D5935
2018-04-15 11:52:34 +02:00
Davide Andreoli f0a0da9f44 Genlist: restore old behaviour of item next/prev in group items
Commit fd82c2521 has changed the behaviour of item_next/prev_get()
in case of genlist with group items (not tree).

The lagacy behaviour was to tread normal items and group items
in a flat way, like if group items was on the same level of
the children normal items.

As the commit already implement bug compatibility, seems to me
the case to restore also this case. Note that this changes only
apply to legacy genlist (I think).

Let me know if this broke something for you...as touching genlist
code is always an "I hope this is right" operation.
2018-04-13 20:37:36 +02:00
Carsten Haitzler 703277b242 efl selection manager - fix x11 cnp from entry to plain text conversion
use sel data not input data/size... copy & paste fix problem...
fixes 28d06f9a5f
@fix
2018-04-13 23:28:21 +09:00
Derek Foreman e066e574cb Revert "elm entry - fix wayland bug by not updating selection until after mse up"
Summary:
This reverts commit b0a7c4b086.

This is adding another EFL bug to work around an EFL bug.

Reviewers: raster

Subscribers: devilhorns, stefan_schmidt, bu5hm4n, thiepha, cedric

Differential Revision: https://phab.enlightenment.org/D5933
2018-04-13 20:50:24 +09:00
Carsten Haitzler eab91edcb2 efl selection manager - fix dnd end handling to only handle on dnd
dnd end handling was being done even if no dnd started, like an
ungrab. this caused side effects like stoping selections in their
tracks.

@fix
2018-04-13 20:50:24 +09:00
Marcel Hollerbach 803fddea5d efl_ui_focus_manager_calc: do not redirect requested calls
this is not documented and does not make sense.
2018-04-13 11:07:34 +02:00
Marcel Hollerbach 9d5a9cf2e1 efl_ui_focus_util: add helper for getting the highest manager objekt 2018-04-13 11:07:34 +02:00
YeongJong Lee 35e7b36411 efl_ui_focus_manager_calc: a node from focus_stack is always normal node.
Summary:
focus_stack can't store logical node. we don't need to check a node from
focus_stack is not normal.
see line 1613

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5927
2018-04-13 11:07:34 +02:00
YeongJong Lee 4841165530 efl_ui_focus_manager_calc: remove needless check for normal node
Summary:
a node in focus stack is always normal node. we don't need to check whether
node is normal.

see also, 97ec48434f

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5930
2018-04-13 11:07:34 +02:00
YeongJong Lee 1d182a44f3 efl_ui_win: add "focused" and "unfocused" signals emission
Summary:
Win is root of focus manager. it means Win is logical node and "focused" and
"unfocused" signals in Win aren't handled by focus manager.
Win needs to emit the signals itself.

Reported by eagleeye, jsuya

Test Plan:
1. elementary_test -to 'window states'
2. Check that "WIN FOCUS: focused" and "WIN FOCUS: unfocused" printed.

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: jsuya, cedric, eagleeye

Differential Revision: https://phab.enlightenment.org/D5931
2018-04-13 11:07:34 +02:00
Marcel Hollerbach 01272c71d0 efl_ui_focus_manager: make request_move more powerfull
it turns out that it is useful and needed (for future patches) to
request moves for nodes that are not focused currently. It is also
needed to request a move that might end up in a logical node.
2018-04-13 11:07:33 +02:00
Marcel Hollerbach 32e17ecdc2 efl_ui_focus_manager_calc: only call next when the node is unexpected
ref T6793
2018-04-13 11:07:33 +02:00
Derek Foreman 2ad9b80517 efl_ui_win: Always show the wayland pointer
It's hidden by the compositor as required, so this just makes life much
more complicated in other code.

ref T6834
2018-04-12 15:59:39 -05:00
Carsten Haitzler b0a7c4b086 elm entry - fix wayland bug by not updating selection until after mse up
or update with a small delay after any change and check mouse button
mask to avoid some bizarre mouse up event that is stopping the
selection form continuing with a mouse up event... so this works
around that and still works.
2018-04-13 04:19:16 +09:00
Carsten Haitzler 28d06f9a5f efl selection - fix another binary buffer treates as string bug
as per subject.

@fix
2018-04-13 04:19:16 +09:00
Carsten Haitzler 13734e51c1 efl selection - fix entry <-> plain text compy and paste in wl
efl didnt convert markup to plain text when pasting markup -> text.
this fixes that and enables middle mouse paste etc. etc.

@fix
2018-04-13 04:19:16 +09:00
Carsten Haitzler 9d6ac24a9c efl selection manager - fix anoyther binary buffer treated as string bug
yet another "binary buffer" (pointer + size) streated as a string with
strdup + strlen which is oh so wrong. this fixes up some cnp in
wayland with garbage at the end of strings

@fix
2018-04-13 04:19:16 +09:00
Carsten Haitzler 59f3dbdd34 efl selection manager - fix crashes when doing selections on non-x11
elm was calling x calls when on wayland here... because it didnt check
the RUNTIME display system type for the window, relying on ifdefs
instead.

@fix
2018-04-13 04:19:16 +09:00
YeongJong Lee 4793398759 efl_ui_frame: remove dulicated _content_aliases
Summary:
Frame inherits from layout. it can use same _content_aliases of Layout

ref 3114ee264b

Reviewers: Jaehyun_Cho, woohyun, cedric

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5929
2018-04-12 22:11:39 +09:00
Marcel Hollerbach 253430ab76 efl_ui_focus_manager_calc: call next after requesting a subchild
requesting subchild for subchild is not a good idea, as it really only
fetches for a subchild, and never calls next and escapes the children of
the passed node.

fix T6793
2018-04-11 17:16:34 +02:00
Chris Michael b5c9742cb7 efl_ui_focus: Add missing EINA_UNUSED for unused function parameters 2018-04-11 10:11:20 -04:00
Marcel Hollerbach eef0c5164a elc_popup: no need to make them focusable
if they have content the content will be focusable, if there is no
content the rect of root_focus will be focused instead.
2018-04-11 10:36:24 +02:00
Marcel Hollerbach f4b70fc6cd efl_ui_focus_manager_root_focus: maintain focus state over state eval
the rect is unregistered and registered again, if it was focused, still
focus it.
2018-04-11 10:33:19 +02:00
Woochan Lee 0088189eee elementary: add new config value to handle tap finger size.
Summary:
The tap_finger_size value of the concept is different from the finger_size value used in the past.

We need a minimum value for recognize the gesture as a tap or not.

Since the actual screen has different screen sizes, there is a problem that the recognition rate of tap is lowered when using the existing value(finger_size)

Test Plan: elementary_test -> gesture sample.

Reviewers: cedric, woohyun, Jaehyun_Cho, herb, id213sin

Subscribers: cedric

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

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2018-04-09 10:36:43 -07:00
Marcel Hollerbach 78f4babbb5 efl_ui_focus_object:
make the prepare call safe to recursive calls. There is no need to
prepare a item again if it is already in prepare.
2018-04-09 18:27:45 +02:00
Marcel Hollerbach e70bf4e231 efl_ui_focus_manager_root_focus: refactor _state_eval
Summary:
we have to check whether all of descendant are none_logical.

this fixes T6800

Test Plan:
1. elementary_test -to ctxpopup
2. Click 'Ctxpopup with user content'
3. Try focus ctxpopup content(button) using arrow key.
4. Check that the content is focused (you can move scroll bar)

Reviewers: bu5hm4n

Subscribers: raster, cedric

Maniphest Tasks: T6800

Differential Revision: https://phab.enlightenment.org/D5856
2018-04-09 18:27:09 +02:00
Marcel Hollerbach 84ad5d9fe3 introduce efl_ui_focus_manager_window_root
Which is a interface that indicates that this is the root of all focus
managers.
2018-04-09 18:05:27 +02:00
Marcel Hollerbach 33921385f9 efl_ui_focus_util: support later managers not beeing registered
this should fix some corner cases when setting focus by hand
2018-04-09 18:05:27 +02:00
Marcel Hollerbach 59828721d8 efl_ui_focus_layer: return the registered focus manager when active
this fixes in chain setting for hovers and ctxpopups
2018-04-09 18:05:27 +02:00
Marcel Hollerbach 39af0ebde0 elm_hoversel: make the keyevent handlers work again
i am not sure when this stopped working, elm hover sends focus to the
children it has, thus the propergation line for the key down events is
going from the hover up accross the over parent, however, the
hoverparent can be different to the hoversel, which would lead to
missing navigation in the hoversel.

this fixes T6802
2018-04-09 18:05:27 +02:00
Carsten Haitzler e29102e134 Revert "efl_ui_focus_manager_root_focus: refactor _state_eval"
This reverts commit c6ce04e48f.

OK. I bisected and found that this is ythe root cause for 2 pretty
chunky bugs. Reverting this fixes T6870 and fixes T6871.

so that's 2 segvs in existing uses and even olne (elm config) ships
with efl. Having a look at the diff doesn't jump out what is wrong
here, but the best course IMHO is to take this patch and put it back
into review again... :)
2018-04-07 16:42:51 +09:00
Cedric Bail 14b9a674ac elementary: in case of an object being destroyed, there is no point to warn. 2018-04-06 11:32:00 -07:00
YeongJong Lee 3114ee264b efl_part: remove duplicated text_aliases code
Summary: this widgets inherit from Layout. they can use same text_aliases of Layout.

Reviewers: Jaehyun_Cho, woohyun

Subscribers: herb, cedric

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

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-06 10:10:08 -07:00
YeongJong Lee 0e035b2e22 elm_inwin: use macro for content set/get/unset
Summary: also, content_aliases is not necessary. it can use Layout's content_aliases.

Test Plan:
elementary_test -to inwin
elementary_test -to inwin2
elementary_test -to inwin3

Reviewers: Jaehyun_Cho, woohyun

Subscribers: herb, cedric

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

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-06 10:08:52 -07:00
Alastair Poole 10fb87bbcd efl_selection_manager: fix build on MacOS and WL2. 2018-04-06 16:11:41 +01:00
Carsten Haitzler fcd7c3097c elm - selection manager - fix string buffer handling and format types
this has 2 bugs really. 1 - the format masks for plain text included
markup which ... is wrong - right? that should have a mime type of its
own... either way it leads to plain text pasts being handled wrong in
wayland... so this fixes that

also the string buffers in wayland just were nothandled right. buffers
were raw binary buffers plus size,not strings, but they were strdup'd
etc. assuming nul termination. oh so wrong to do that. this also fixes
that as i fpound it while fixing the above format bug.

this fixes T6284

@fix
2018-04-05 21:17:22 +09:00
Shinwoo Kim 3cd2243028 Fix static analysis result
[Dereference after null check]

(1) src/lib/ecore/ecore_main.c
 - _efl_loop_handler_efl_object_finalize checks if pd->loop_data is NULL.
   After that, _handler_reset > _handler_clear > _ecore_main_fd_handler_del >
   _ecore_main_fdh_pool_del is directly dereferencing pd->pool_data.
 - _efl_loop_handler_efl_object_parent_set checks if pd->loop_data as well.
   Then it calls _handler_reset as well.

(2) src/lib/ecore_wayland/ecore_wl_dnd.c
  - ecore_wl_dnd_selection_set checks if t - result of wl_array_add - is NULL.
    And it is dereferecing t directly for wl_data_source_offer.

(3) src/lib/elementary/efl_ui_dnd.c
 - Third parameter const char *data could be NULL.
   In this case strlen dereferences NULL. The data should be non NULL value.
   I have checked this with Mr. Thiep Ha.

(4) src/lib/evas/canvas/evas_object_inform.c
 - _efl_canvas_object_efl_gfx_stack_stack_below checks if obj->layer is NULL.
   So it could call evas_object_inform_call_call_restack which is dereferencing
   obj->layer directly.
2018-04-05 19:40:57 +09:00
Carsten Haitzler 2105bc4fb1 efl selection manager - build again if no wl or no x is enabled
so make check and my builds passed because i have wl and x enabled. if
one of these isnt then this build will fail. my fix fails. this fixes
that.
2018-04-05 19:16:16 +09:00
Carsten Haitzler 37ff19c80e elm - fix selection debug print to not print unterminated buffers
so it's printfing a non-0 byte terminated string ... it's a
buffer/slice which has explicit lenmgth and no nul, so fwrite it
approplriately.
2018-04-05 18:52:57 +09:00
Carsten Haitzler d009a231e9 efl selection manager - handle multi window selections properly
tell other windows they lost their selections correctly if you have
multiple windows within the same process. this fixes multi-window mode
in terminology.

@fix
2018-04-05 18:52:57 +09:00
Carsten Haitzler 468d55e284 efl selection - fix paste with multiple windows and filter by window
so changes in elm cnp (efl selection) broke cnp with terminology
multi-window mode. this fixes it.

@fix
2018-04-05 18:52:57 +09:00
Carsten Haitzler cffb31f4a7 elm config - dont leak config if re-loading it again later on
delete config object and so on before the relaod
2018-04-05 18:52:57 +09:00
Carsten Haitzler 08dc189053 elm win - change parent to only use win parents in efl win struct as parent 2018-04-05 18:52:57 +09:00
Mike Blumenkrantz 7bf389f3a7 elm: remove hacky calls to emotion_init/shutdown
these are irrelevant since emotion manages init/shutdown internally

fixes elm test pass state

Reviewed-by: Stefan Schmidt <stefan@osg.samsung.com>
2018-04-05 11:10:27 +02:00
Derek Foreman 2ec16fbf32 elm_win: Improve wayland cursor change race
When changing cursors under wayland sometimes we'll see the old cursor
moved to the new hotspot briefly before the cursor changes.  This makes
that suck less often.

A proper fix would involve creating a new wayland surface for every
cursor change (actual change, not just a new frame of an animated
cursor).  Given the current internals this is invasive.  Do the
easy thing for now.
2018-04-04 15:31:05 -05:00
YeongJong Lee c6ce04e48f efl_ui_focus_manager_root_focus: refactor _state_eval
Summary:
we have to check whether all of descendant are none_logical.

ref T6800

Test Plan:
1. elementary_test -to ctxpopup
2. Click 'Ctxpopup with user content'
3. Try focus ctxpopup content(button) using arrow key.
4. Check that the content is focused (you can move scroll bar)

Reviewers: bu5hm4n

Subscribers: cedric

Maniphest Tasks: T6800

Differential Revision: https://phab.enlightenment.org/D5856
2018-04-04 19:52:46 +02:00
Derek Foreman 63c96df0d4 elm_win: Remove unused variable
hot_obj is unused
2018-04-04 11:16:32 -05:00
SangHyeon Lee ae8df9ba07 efl_ui_view_list : change the name of Model based list
Summary:
model based list need to be under the namespace of 'Efl.Ui.View".
thus, I renamed 'Efl.Ui.List' to 'Efl.Ui.View.List' properly.

Test Plan: N/A

Reviewers: cedric, felipealmeida

Differential Revision: https://phab.enlightenment.org/D5855
2018-04-04 19:13:41 +09:00
Marcel Hollerbach 39739ba333 efl_ui_focus_manager_calc: node depth is 0 for a NULL object 2018-04-04 10:11:22 +02:00
Marcel Hollerbach 7fe52c55cf efl_ui_focus_manager_calc: fix infinite loop in _request_subchild
When the subchild where we request subchilds from was regular, the while
loop would have run infinitly. This is now fixed by at least calling
once _next, the check to not run outside the node is now done with
calculating the depth of the nodes.
2018-04-03 14:08:28 +02:00
Marcel Hollerbach 36d9fdc770 elm_toolbar: use the correct flag to detect wether a item is visible
fix T6806
2018-04-03 14:08:28 +02:00
Marcel Hollerbach 03efb59da9 elm_entry: use a normal calc manager instead of the root focus
fix T6795
2018-04-03 14:08:28 +02:00
Carsten Haitzler 2fb5cc3ad0 efl_add_ref - fis to use efl_add properly with a parent.
fixes bc18b7e7ad and
168849e8a0
2018-03-29 13:30:55 +09:00
Andy Williams cc2b7a10a8 elm_code: Remove a render test and complex workarounds required
Fixes issues with Windows and general unused method warnings
2018-03-28 17:30:17 +01:00
Andy Williams 3b60da0e37 elm_code: Fix line selection with leading tabs 2018-03-28 16:47:55 +01:00
Marcel Hollerbach 28201f32a6 efl_ui_focus_manager_calc: do not crash for the case of a invalid child 2018-03-28 10:48:01 +02:00
Marcel Hollerbach 8fa22f2ab7 elm_config: add new infra for reloading config into the widget tree
fix T6792
2018-03-28 10:48:01 +02:00
Marcel Hollerbach e40f25b67e efl_interface_scrollable: call constructor at first
other calls could lead to a geometry_get call, which will crash if the
constructor of the canvas_object is not called yet.
2018-03-28 10:48:01 +02:00
Marcel Hollerbach b23c2b34e3 efl_ui_focus_manager: NULL out fields correctly 2018-03-28 10:48:01 +02:00
Marcel Hollerbach ca2461c280 efl_ui_focus_manager: move cleanup into one place
ref T6793
2018-03-28 10:48:01 +02:00
Cedric BAIL cd8952cc6c efl_ui_win: match return value to function type in elm_win_window_id_get
ref 08c9f99134

Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2018-03-20 17:20:57 -07:00
Cedric BAIL 4c4177ac20 efl: use efl_add_ref to create objects which have no parent
Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2018-03-20 17:20:56 -07:00
Woochan Lee 008d990181 efl_ui_clock: Fix wrong target to compare with.
Summary:
It breaks API action.

It missed when implement efl_ui_clock i think.

@fix

Test Plan: elementary_test -> efl_ui_clock sample.

Reviewers: cedric, woohyun, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5826
2018-03-20 21:09:30 +09:00
Cedric Bail 08c9f99134 elementary: make sure windows are not born orfan and properly have at least a main loop as parent. 2018-03-19 15:39:14 -07:00
Cedric Bail 1fcb33f422 elementary: make global object lifecycle depends on the main loop. 2018-03-19 15:38:26 -07:00
Marcel Hollerbach 432deb1129 efl_ui_focus_manager_root_focus: switch to focus adapter 2018-03-15 15:39:12 +01:00
Marcel Hollerbach c8ba7a070f efl_ui_focus_manager_calc: set redirect before setting focus
settings the redirect might result in unfocus calls, that might unset
evas_object_focus on a object that might be registered in two managers
due to border linking. This fixes mysterical disapearing focus.
2018-03-15 15:39:12 +01:00
Marcel Hollerbach 875a7eb0da efl_ui_focus_manager_calc: do not set focus on a deletion manager
otherwise objects might already be on the way out, without a elementary
parent.
2018-03-15 15:39:12 +01:00
Marcel Hollerbach 8746c275f5 elm_interface_scrollable: make sure to have the content always focusable 2018-03-15 15:39:12 +01:00
Marcel Hollerbach 1d3209a9ec elm_widget_item_static_focus: move canvas_object_set to later
We dont delete the adapeter when we are still focused, to set anyway the
correct view to it, we need to set the view to the adapeter as often as
possible
2018-03-15 15:39:12 +01:00
Marcel Hollerbach 02a062ba67 elm_genlist: support immidiate focus once the item is realized
this supports the case of item.focus = true before the item is realized.
2018-03-15 15:39:12 +01:00
Marcel Hollerbach be3cfcec66 elm_genlist: move focus recovering to first_touch instead of
focus_update

this means that the function is called more reliable, and not only based
on focus state, but also based on the redirect situation.
2018-03-15 15:39:12 +01:00
Marcel Hollerbach 844854d3e8 efl_ui_focus_manager_calc: add onedirection to dirty 2018-03-15 15:39:12 +01:00
Marcel Hollerbach 7d2d6c7e1d elm_genlist: performe elm_item_focus_set
this means all neccessary fields with last focus and current focused
item are updated correctly
2018-03-15 15:39:12 +01:00
Marcel Hollerbach df55911967 efl_ui_focus_composition: redirect canvas move events to the adapter
otherwise a moving canvas object will not be recalculated, as the
manager does not know about the new focus geometry
2018-03-15 15:39:12 +01:00
Marcel Hollerbach b7a5a9298d elm_widget_item_static_focus: fix fetching of the item 2018-03-15 15:39:12 +01:00
Marcel Hollerbach 0b1d67e793 elm_widget_item_static_focus: delete adapter when deleted or unrealized
somehow genlist leaks the view sometimes, thus the adapter is not
deleted when the item is deleted. This resulted in strange ghost focus
objects in the window.
2018-03-15 15:39:12 +01:00
Marcel Hollerbach e5af7c914a elm_genlist: set focus to the item when a user calls the function 2018-03-15 15:39:12 +01:00
Marcel Hollerbach 8410659bb6 elm_genlist: set focus to the item when a user calls the function 2018-03-15 15:39:12 +01:00
Marcel Hollerbach 44a3e2b7c4 efl_ui_focus_manager_sub: flush the border if we cannot find a candidate
after that someone probebly wants to check where the last focus was on,
if the set of boder elements has changed since the last border flush, then the
element might not be registered in the parent manager
2018-03-15 15:39:12 +01:00
Jean-Philippe Andre fd82c2521e genlist: fix "insane" order [BUG COMPATIBILITY]
This patch implements bug compatibility.

genlist internally uses both a tree structure with Eina_List and a flat
Eina_Inlist to track its items. ALL of the items are in the inlist while
subitems appear in their parent's list. As a consequence both lists must
be kept in sync pretty tightly. Obviously this is not done at all and
has led to countless bugs, as soon as tree or groups are used:
 - Invalid order of items (visually)
 - Invalid order of items with sorted_insert
 - Glitches in the matrix
 - Crashes with sorted_insert
 - Odd/even styles not properly set
 - Promote/demote functions broken by design
 - Developers send to psychiatric hospitals
 - Etc...

Legacy genlist (1.19 and before) used an inlist order that basically
didn't make sense, as it didn't follow the logical order of elements (as
they appear visually). Unfortunately this has "worked" (really, that's a
huge stretch to use this word here) for a long time this way. As a
consequence, some applications (*cough* empc *cough*) have relied on
this order to implement "next album" or "previous album" where the
album title is a group node.

By changing the order of items in the inlist, this has broken the
assumptions made above, and ends up in cases that return NULL, leading
to SEGV. Sure, the app should have checked NULL, but that's not really
the point here. The behavior has been changed.

This patch implements "fixes" for the following functions:
 - elm_genlist_first_item_get(): Don't return a parent
 - elm_genlist_last_item_get(): Return a parent
 - elm_genlist_item_next_get(): return a parent upon reaching the last child
 - elm_genlist_item_prev_get(): return a child when a parent is passed

Important notes:
 - This does not cover 100% behavior compatibility here. The only way to
   have it would be to simply revert the entire genlist code to its
   original version and never touch it again, ever.
 - An explicit API is required for an application to specify which API
   level it targets, so that we can cherry-pick which bug compatibility
   features we want to enable. We are already doing this for EDC,
   unfortunately.

@fix

fix T5938

Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2018-03-13 15:15:01 -07:00
Cedric BAIL 7c2a1932c7 efl_ui_clock: do not locally store clock module api
there is no corresponding code to unset this global pointer when the module
is unloaded, so this will crash if elm_shutdown is ever called

Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2018-03-13 15:14:50 -07:00
Cedric BAIL 067c9afa4e elm_gengrid: do not zero item cache if object is not finalized
this is a no-op case which causes unnecessary errors

Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2018-03-13 15:14:50 -07:00
Cedric BAIL 0a6c302e9a elm_map: remove unnecessary error message in destructor
there is no check for the existence of this file so this will error most times
from it not existing

Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2018-03-13 15:14:50 -07:00
Cedric BAIL 24db9f60be elm: call ecore_event_shutdown during elm_shutdown
ref 4e14ba3f48

Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2018-03-13 15:14:50 -07:00
Cedric BAIL 14bbae9b23 efl_ui_win: do not trigger elm quit policy twice for same win
only check each policy for the case which should trigger it to avoid borking
main loop

Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2018-03-13 15:14:50 -07:00
Cedric BAIL 5dcbda3137 efl_ui_win: track the finalize future for del to avoid crash
Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2018-03-13 15:14:50 -07:00
Amitesh Singh 0dd8f97a8e doc: check - correct the ingroup name for legacy apis 2018-03-12 15:05:01 +09:00
Cedric Bail 6b1b3d25d6 elementary: fix backward compatibility bug introduced by 9c8749b99a. 2018-03-07 09:34:49 -08:00
Marcel Hollerbach 253680f754 efl_ui_focus_manager_calc: performe refocus after the node is deleted
if node is the last element, the element will be focused again, and
later deleted, without cleaning up the history
2018-03-07 19:27:12 +09:00
Minkyu Kang 98a36f37f3 elementary: entry - recover cursor position when theme is changed
Summary:
When theme is applied text is reset and cursor position is set to 0.
This patch is recover the position to previous after text is reset.

Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>

Reviewers: cedric, jpeg, woohyun, herdsman

Reviewed By: cedric

Subscribers: cedric, jpeg

Tags: #efl

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2018-03-06 19:05:57 -08:00
Youngbok Shin b147b5062f elementary: bg - keep file path and key string for legacy bg widget
Summary:
If a file path and key string was passed to elm_bg, we could get
the same file path and key string. Even if it failed to load the image file.
And the file path also remained its original form.
ex) Setting file path "~/image.png" => Getting file path "~/image.png"
                                       (Not "/home/user_name/image.png")

@fix

Test Plan: Included in elementary test suite.

Reviewers: jpeg, cedric, raster

Reviewed By: cedric

Subscribers: woohyun

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2018-03-06 19:05:57 -08:00
Jeonghyun Yun b63cdb6497 elementary: entry - fix to generate "activated" and "aborted" event in single line entry only
Summary:
"aborted": The escape key was pressed on a single line entry. (since 1.7)
"activated": The enter key was pressed on a single line entry.

Reviewers: id213sin, jpeg, cedric, herdsman

Subscribers: cedric, jpeg

Tags: #efl

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2018-03-06 19:05:57 -08:00
Woochan Lee eb865ab537 elementary: add missed type for legacy.
Summary:
We've been missed type of class name.

Add legacy class name to maintain compatibility.

@fix

Reviewers: jpeg, woohyun, Jaehyun_Cho

Subscribers: cedric, jpeg

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2018-03-06 19:05:57 -08:00
Woochan Lee 533537c0f2 elemetary: spinner - free the longpress_timer when unfocused
Summary:
It needs to delete when widget unfocused.

@minkyu
Gets from tizen.
0bc1a19703dc204c8d347794bae0290006f4bde5

Reviewers: jpeg, Jaehyun_Cho, minkyu, cedric

Subscribers: minkyu, cedric, jpeg

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2018-03-06 19:05:57 -08:00
Lauro Moura d78620e001 elm: fix location of legacy include for elm_code.
Summary:
Instead of including the legacy header on the main header, just include
it where it is actually used (diff_widget.c), like in elm_code_widget.c.

Test Plan: Try to compile edi with the tarball from `make dist`. It should not fail with elm_code related errors.

Reviewers: raster, stefan_schmidt, felipealmeida

Subscribers: cedric

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2018-03-06 19:05:57 -08:00
Woochan Lee 6b29613bbe efl_ui_multibuttonentry: maintainance legacy function type.
Summary:
I did it wrong.

The "Elm_Multibuttonentry_Format_Cb" should be maintain for legacy.

efl_ui_XXX has to use efl_format interface.

@fix

Test Plan: elementary_test->multibuttonentry sample.

Reviewers: cedric, woohyun, Jaehyun

Subscribers: cedric

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

Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2018-03-06 19:05:57 -08:00
Amitesh Singh f5b0cd2b3b Efl.Ui.Slider: implement Efl.Ui.Range.range_step_set/get()
Also move elm_slider_step_set/get() as legacy APIs.
remove eo api step.set/get() as well since range intf
already implements it.
2018-03-06 16:25:41 +09:00
Vincent Torri 32b2102774 Elm_code test: fix compilation
Reviewers: cedric, raster

Differential Revision: https://phab.enlightenment.org/D5831
2018-03-04 21:41:34 +09:00
Carsten Haitzler 1bdd9e4dd1 ecore - a different take on efl.app class as a super class to efl.loop
so the MAIN loop is actually an efl.app object. which inherits from
efl.loop. the idea is that other loops in threads will not be efl.app
objects. thread on the creator side return an efl.thread object.
inside the thread, like the mainloop, there is now an efl.appthread
object that is for all non-main-loop threads.

every thread (main loop or child) when it spawns a thread is the
parent. there are i/o pipes from parnet to child and back. so parents
are generally expected to, if they want to talk to child thread, so
use the efl.io interfaces on efl.thread, and the main loop's elf.app
class allows you to talk to stdio back to the parent process like the
efl.appthread does the same using the efl.io interfaces to talk to its
parent app or appthread. it's symmetrical

no tests here - sure. i have been holding off on tests until things
settle. that's why i haven't done them yet. those will come back in a
subsequent commit

for really quick examples on using this see:

https://phab.enlightenment.org/F2983118
https://phab.enlightenment.org/F2983142

they are just my test code for this.

Please see this design document:

https://phab.enlightenment.org/w/efl-loops-threads/
2018-03-03 13:40:33 +09:00
Carsten Haitzler 1c74aaa7e9 Revert "cxx: Fix manual code after efl_app change."
This reverts commit 135154303b.

Revert "efl: move signal events from efl.loop to efl.app"
This reverts commit 3dbca39f98.

Revert "efl: add test suite for efl_app"
This reverts commit 3e94be5d73.

Revert "efl: create Efl.App class, the parent of Efl.Loop"
This reverts commit 28fe00b94e.

Go back to before efl.app because I think this should be done with
superclassing here not a parent object. reasons?

1. multiple loops per single thread make no sense. so if multilpe loop
objects they wont be contained in a single app object and then deleted
like this.
2. the app object is not really sharable in this design so it cant be
accessed from other threads
3. it makes it harder to get the main loop or app object (well 2 func
calls one calling the other and more typing. it is longer to type and
more work where it is not necessary, and again it can't work from
other threads unless we go duplicating efl.app per thread and then
what is the point of splittyign out the signal events from efl.loop
then?)

etc.
2018-03-03 13:40:33 +09:00
Carsten Haitzler ca93267670 Revert "theme: rename "default" theme to "dark""
This reverts commit d764e0b279.

The whole idea of renaming the default theme is an "api break" even if
config is changed. and symlinks don't work on windows as a solution.
(well on ntfs only as only as administrator, so they don't exist).

modifying config for switch from default to dark also will break the
case where someone put ~/.elementary/themes/default.edj there and it just
is different to the system one and how their theme changes on them as
it switches to dark.

basically we can't rename a theme like this mid-flight in efl. default is
default and has to stay that name. it can change the look, but not the
name.

i think the apparent reasoning behind this is not a good one. the work on
flat is temporary. i don't think we will ever maintain multiple "default
themes" as its just far too much work.

we can maintain color SCHEMES which are just a list of colorclasses and
colors for them - that's separate to a theme and would override. right now
these things don't exist. we are not going to create a dark.edj and a
light.edj just to store differing default colorclass values. we should be
doing the above with colorclass "color palette/scheme/whatever" files
that override those named colorclasses globally on init.

so reverting because this is an api break and we shouldn't break api
unless there is really absolutely no other choice.

here the choice is to just temporarily work in a branch and modify
default and then merge the branch when done.
2018-03-01 16:44:01 +09:00
Mike Blumenkrantz d764e0b279 theme: rename "default" theme to "dark"
this inhibits maintenance and development of multiple stock themes

a symlink is created to 'default.edj' to preserve compatibility
2018-02-28 16:02:39 -05:00
Mike Blumenkrantz 7f67f99111 elm: fix config upgrades for user profiles
loading the system profile only works if the current profile has the
same name as a system profile
2018-02-28 16:02:38 -05:00
Mike Blumenkrantz bf7890c806 theme: add fallback matching when referenced theme is not found
if done properly, this should never occur, but at least find some
layout to use if one is available
2018-02-28 16:02:38 -05:00
Mike Blumenkrantz 07d0fb03db theme: introduce theme overlay/extension matching
after this commit, efl base themes should now specify:

data.item: "efl_theme_base" "theme_name";

and overlays/extensions which match a given theme should use:

data.item: "efl_theme_match" "theme_name";

this will cause overlays and extensions with the data.item to only
be loaded when the corresponding theme is in use. note that this
should not be specified for theme-independent overlays/extensions
as it will completely block loading of themes
2018-02-28 16:02:38 -05:00
Mike Blumenkrantz 7353fc1cb8 elm_theme: deduplicate theme apply code
the "default" style fallback code here was identical, so just call again
with "default" instead of copy and pasting the same code
2018-02-28 16:02:38 -05:00
Mike Blumenkrantz fe0bd38f4c elm_theme: massively simplify internals
instead of maintaining separate lists for the file and the edje file,
maintain a single list of structs containing both of these

also dynamically manage a string list of files to preserve compat with
existing (bad) functions which return this directly
2018-02-28 16:02:38 -05:00
Mike Blumenkrantz a0f7dd5aa9 elm: set default theme name internally when applying config
for whatever reason this is only generated in elm_theme_get(), so call
that whenever doing theme string parsing

@fix
2018-02-28 16:02:38 -05:00
Woochan Lee 9f63fac2d2 elm_datetime: Handle wrong param case for legacy.
Summary:
This wrapper didn't consider wrong param given case.

@fix

Test Plan: elementary_test -> elm_datetime sample.

Reviewers: cedric, woohyun, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5825
2018-02-27 20:01:22 +09:00
Mike Blumenkrantz 50e6b8ff4c efl_ui: do not include evas gl header if legacy support is not requested
this will not build without legacy
2018-02-26 14:47:25 -05:00
Mike Blumenkrantz 28fe00b94e efl: create Efl.App class, the parent of Efl.Loop 2018-02-26 14:02:51 -05:00
YeongJong Lee 403c014bd2 efl.ui.progressbar: change signal name for icon/text
Summary: see also 73f8b3b78f

Test Plan:
1. elementary_test -to progressbar
and elementary_test -to efl.ui.progressbar
2. check that icon and text are visible

Reviewers: cedric, woohyun, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5818
2018-02-26 21:22:26 +09:00
YeongJong Lee 160b6d202f elm_part: use TYPE _CLASS instead of MY_CLASS
Summary:
legacy part do not have MY_CLASS. if ELM_PART_OVERRIDE_PARTIAL is used for
legacy part, it call efl_super(non-legacy class).
we need super of TYPE _CLASS instead of MY_CLASS.

Test Plan:
WITH D5818
1. elementary_test -to progressbar
2. check that efl_part is working in _progressbar_part_value_set

Reviewers: cedric, woohyun, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5819
2018-02-26 21:21:57 +09:00
YeongJong Lee 736de05ea7 efl.ui.check: change signal name for icon/text
Summary: see also 73f8b3b78f

Test Plan:
1. elementary_test -to check
2. check that icon is visible

Reviewers: cedric, woohyun, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5816
2018-02-26 20:28:56 +09:00
YeongJong Lee e25bd086c5 efl.ui.radio: change signal name for icon/text
Summary: see also 73f8b3b78f

Test Plan:
1. elementary_test -to radio
2. check that icon is visible

Reviewers: cedric, woohyun, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5815
2018-02-26 19:59:31 +09:00
Marcel Hollerbach 85ebb13abc elm_config: fixup copy paste error
when i did the vpath transition i made a copy and paste error, that
might made a few people miss theire config and appear weird directories
~/elementary.elementary/ in theire homedirectory, sorry for that!
2018-02-24 21:07:13 +01:00
Mike Blumenkrantz b851afcb13 elm_win: disable handling of auto_norender_withdrawn for fake wins
these wins are not to be trifled with.

fix T6377
2018-02-23 14:18:41 -05:00
Cedric Bail d57b9a7d14 eina: make eina_vpath_interface_app_set an internal function.
I am wondering if this one shouldn't even be a private one and
directly used by eina_prefix.
2018-02-22 15:26:28 -08:00
Marcel Hollerbach c4f33c67a8 move from efl.vpath to eina_vpath
The usages from efl.vpath are moved to to eina_vpath
2018-02-22 09:26:55 +01:00
Mike Blumenkrantz 8555a22972 elm_list: revert some accidental changes
ref f8e93775c0

fix T6712
2018-02-20 10:56:14 -05:00
Marcel Hollerbach d9ae0657e8 efl_ui_focus_manager: do not call on a NULL object 2018-02-20 16:48:42 +01:00
Marcel Hollerbach ea6a4e1a60 efl_ui_focus_manager_calc: unset manager to make touching sure
when there is only one object in a manager, and this object has a
redirect manager, then right now nothing will happen and nothing will be
called on the redirect manager.

With this patch the redirect manager will be unset when the manager
cannot give a correct candidate.
2018-02-20 16:48:42 +01:00
Yeongjong Lee e031867354 efl_ui_focus_manager_calc: fallback to use root if the focus stack is empty
Summary: this patch fixes T6664

Test Plan:
1. elementary_test -to focus
2. click Disable button
3. check whether you can move focus using key event.

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric

Maniphest Tasks: T6664

Differential Revision: https://phab.enlightenment.org/D5813
2018-02-20 16:48:42 +01:00
YeongJong Lee f6777aa4ac efl_ui_focus_manager_calc: search redirect_entry if there is no candidate
Summary:
redirect is out of the focus stack. we need to find redirect_entry after last
node of redirect manager instead of focus stack.

Test Plan:
1. elementary_test -to focus
2. move focus using tab key
3. check that there is focus cycle

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5811
2018-02-20 16:48:42 +01:00
Marcel Hollerbach b0f989b699 elc_popup: revert changes that accidently sneaked in.
I must have done some ammend error ... sorry

thx daveMDS for spotting it!
2018-02-18 14:00:03 +01:00
Marcel Hollerbach 881fddc7a3 elm_config: save the backend string as stringshare
the string might be on the stack ...

The same as in the previous commit, that path was never really tested,
caused by the fact that the *none* engine was not even running
2018-02-17 21:17:59 +01:00
Marcel Hollerbach 8aa4df37c3 elm: fix test case for elm_web
This is a funny story:
elm_web loads modules for getting a actual elm.web object. However, when
elementary was merged into EFL someone (... :)) forgot to change the
path that is used to load intree modules, so elm.web.none was never
actaully tested ... :)

But thx to the wonderfull legacy patch its super simple to fix this :)
2018-02-17 21:17:59 +01:00
Marcel Hollerbach 86b4af41c3 elementary: use new bs static lib 2018-02-17 21:17:58 +01:00
Marcel Hollerbach c93bd1b81b Introduction of buildtools!
buildtool is a little static library for the abstraction of buildtool
depedend path generation.
2018-02-17 21:17:47 +01:00
Marcel Hollerbach c8f32bd770 elementary: listen to EFL_RUN_IN_TREE instead of ELM_RUN_IN_TREE
so its unified and easier to handle
2018-02-17 21:17:47 +01:00
Carsten Haitzler 6b2f39a59d elm entry - dont seg if the obj has been deleted by callback time
i spotted a segv with elm entry + efm ... sd was NULl because obj was
seemingly not valid at that point, so fix and check the smart data
returns before moving on.
2018-02-17 18:00:19 +09:00
Carsten Haitzler 8a1ac683d4 elm - efl selection - don't seg if not in wayland
this code would execute wayland path code totally unconditionally if
compiled in even if in x11 to gegt seat id info from wayland... check
if we are in wl first at runtime.
2018-02-17 17:58:59 +09:00