Commit Graph

3126 Commits

Author SHA1 Message Date
Cedric BAIL bf2e65a38d elementary: converting Efl.Ui.List to the new Efl.Model API. 2018-05-01 10:39:01 -07:00
Cedric BAIL 16d5caa2ee elementary: remove Efl_Future reference from efl_ui_layout. 2018-05-01 10:39:01 -07:00
Cedric BAIL 2c2df5b18b elementary: migrate elm_view_list to use the new Efl.Model API. 2018-05-01 10:39:01 -07:00
Cedric BAIL 90e0190161 elementary: migrate Elm.View.Form to use Efl.Model new interface.
Elm.View.Form is not done and require more work to be released.
2018-05-01 10:39:01 -07:00
Cedric BAIL 756f4cee0e elementary: migrate Efl.Ui.Layout to use the new Efl.Model API. 2018-05-01 10:39:01 -07:00
Cedric BAIL 8093eca7f3 elementary: migrate filesector to use the new Efl.Model API. 2018-05-01 10:39:01 -07:00
Cedric BAIL a408c145e9 elementary: migrate Efl.Ui.Image to use the new Efl.Model API. 2018-04-30 14:21:12 -07:00
Cedric Bail 46ac187bd8 elementary: add an Efl.Ui.Model.State in charge of visibility, selection and enable state. 2018-04-30 14:21:12 -07:00
Marcel Hollerbach 04c63cb489 elm_focus_legacy: set custom chain
fix T6182
2018-04-30 19:26:06 +02:00
Marcel Hollerbach e3049e4a16 efl_ui_widget: do not register if the child is missing in a custom chain 2018-04-30 19:24:47 +02:00
Marcel Hollerbach d8a0ee9021 efl_ui_focus_composition: legacy compatibility 2018-04-30 19:24:47 +02:00
Marcel Hollerbach fdfcae968b elm_widget: Introduce elm_focus_legacy
Code located here is meant for a legacy tree and legacy widgets.
This is checked on the entry of the function
2018-04-30 19:24:47 +02:00
Marcel Hollerbach 27d6f3a65d efl_ui_focus_util: add new function for complementing the direction 2018-04-30 19:24:47 +02:00
Jaehyun Cho e9b61a8969 efl_canvas_object: Change name of animation event info
Change name of animation event info to synchronize with other event
info names.

Change data name in animation event info to synchronize with data type
name, Efl.Event.Description.
2018-05-01 00:13:56 +09:00
Marcel Hollerbach 33b9577013 elm_widget_item_static_focus: do not call prepare on all realized items
we should spare out the group and disabled items
2018-04-30 15:22:52 +02:00
Marcel Hollerbach 8b2a6a0b4d elm_widget_item_static_focus: a other element could also hide behind the
adapter
2018-04-30 15:22:52 +02:00
Marcel Hollerbach 3571b35a30 efl_ui_focus_manager_calc: drop redirect if there is no candidate 2018-04-30 15:22:52 +02:00
Marcel Hollerbach 139efaaba3 elm_interface_scrollable: rework filtering
A item might be in the middle of the viewport and still miss relations.
2018-04-30 15:22:52 +02:00
Marcel Hollerbach 5815ba52ec elm_****: do not make group items focusable 2018-04-30 15:22:52 +02:00
Marcel Hollerbach bd9b112094 efl_ui_focus_manager_calc: make the preparation call tree style
So we make sure that all children are prepared.
2018-04-30 15:22:52 +02:00
Marcel Hollerbach 3b17135d5b elm_widget_item_static_focus: prepare the item not the widget
fix T6894
2018-04-30 15:17:24 +02:00
Jaehyun Cho ec59f8053a elm_multibuttonentry: Fix make check fail
Fix make check fail of elm_multibuttonentry caused by
939690a8a9
2018-04-30 19:53:26 +09:00
SangHyeon Lee 8718e2995e efl.ui.layout_factory : use interface layout theme set for now
interface object need to use efl.ui.layout_object theme set
instead of legacy one, for applying proper theme naming rules.
2018-04-30 19:27:13 +09:00
Davide Andreoli 93e9259d6f Genlist: fix doc for item_next/prev_get()
See T5938 for details
2018-04-28 10:31:23 +02:00
Davide Andreoli 69cf5754b5 Revert "genlist: fix "insane" order [BUG COMPATIBILITY]"
This reverts commit fd82c2521e.

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

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

Test Plan: tested in efl_ui_list_example_1.c in examples.

Reviewers: cedric, felipealmeida

Subscribers: woohyun, Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5861
2018-04-28 13:41:41 +09:00
JongMin Lee 296d117f2a elm efl_selection_manager: resolve possible memory leak. 2018-04-27 14:04:02 +09:00
Jaehyun Cho 08a11dcbf9 efl theme: Replace legacy signal names with efl ui signal names
Replace legacy signal/source names with efl ui signal/source names.
e.g. From "elm,state,content,set" "elm" to "efl,state,content,set" "efl"
2018-04-26 22:45:59 +09:00
Taehyub Kim c83895b144 efl_ui_win: fix the wrong bracket
Summary: efl_ui_win: fix the wrong bracket

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, stefan

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

Test Plan: run elementary_test and test efl ui widget cases

Reviewers: Jaehyun_Cho, woohyun, cedric, raster, jpeg

Reviewed By: Jaehyun_Cho

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

Reviewed By: ManMower

Subscribers: cedric

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

Reviewers: cedric

Reviewed By: cedric

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

Reviewers: ManMower, cedric

Reviewed By: ManMower, cedric

Subscribers: cedric

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

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

also removes an unnecessary smart calc

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

ref T6884

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

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

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

Test Plan: datepicker, timepicker sample.

Reviewers: herb, Jaehyun_Cho, woohyun, SanghyeonLee

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5871
2018-04-25 16:48:21 +09:00
Marcel Hollerbach ac4d75a1ae efl_ui_focus_composition: permit anything but adapters and widgets
a wildcard gfx object could bring focus to a evas object that has no
smart parent, and thus keyboard events are left at a place where they
cannot come away from.

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

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

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

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

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

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

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

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

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

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

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

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

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:52 -07:00
Xavi Artigas 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