Commit Graph

57 Commits

Author SHA1 Message Date
Cedric BAIL 50cc85f426 elementary: fix quicklaunch support. 2017-11-07 16:08:39 -08:00
Cedric BAIL e32dd07c9d elementary: refactor and clean efl_quicklaunch_prepare. 2017-11-07 16:08:39 -08:00
Cedric BAIL ee65414ef6 ecore: introduce ecore_init_ex/ecore_shutdown_ex to propagate argc,argv properly. 2017-11-07 16:08:39 -08:00
Cedric BAIL dd40079185 ecore,elementary: move startup time accounting in ecore. 2017-11-07 16:08:39 -08:00
Jean-Philippe Andre 824792f09d elm: Major cleanup of EO files
This prevents legacy EO classes from being exposed through .eo.h headers
or .eo in share/eolian/includes. Also removes a slew of useless xxx_eo.h
intermediate headers.

Notes:
 - elm_systray has no proper API: it's not clear if the EO API should be
   released (in which case it needs to be renamed to efl_something) and
   there is no legacy API to create a systray object.
 - Some files have been placed in a "FIXME" section, as I believe they
   are necessary within EO land, but at the same time still don't
   conform to the interfaces (eg. name starts with elm_).
 - elm_interface_scrollable is required by photocam. This means photocam
   needs to be adapted to fit the EO scroller API (still to be
   completed, I believe).

Bugs:
 - This breaks most C++ examples. I KNOW. And I'm working on it.

Ref T5301
2017-11-01 21:23:31 +09:00
Cedric Bail 173de925ed elementary, ecore: move efl_exit helper to Ecore. 2017-10-27 16:37:58 -07:00
Cedric Bail a959337a29 elementary: rely on main loop terminate event to execute ELM_POLICY_EXIT_WINDOWS_DEL. 2017-10-27 16:20:56 -07:00
Cedric Bail ba01c5c3eb elementary: actually we do not need efl_quicklaunch_fallback. 2017-10-27 15:46:26 -07:00
Cedric Bail 03df8483f6 elementary: update efl_quicklaunch_fallback to use the new EFL exit API. 2017-10-27 15:43:23 -07:00
Cedric Bail 3e41da66a8 elementary: update elm_quicklaunch_fork to use the new Eina_Value exit API. 2017-10-27 15:41:37 -07:00
Cedric Bail e361189e27 elementary: make the exit helper work with int (This is just for C). 2017-10-27 15:39:34 -07:00
Marcel Hollerbach fa49488f3a elm_main: make sure we dont go deeper than the widget top level 2017-10-25 14:36:13 +02:00
Marcel Hollerbach a417af04e8 elm_widget: also delay focus set if something is not registered
this fixes a infinite loop
2017-10-24 17:37:31 +02:00
Jean-Philippe Andre 2f465e1fbb widget: Rename EO APIs to efl_ui_widget_xxx
This only changes the eo_prefix for APIs.

Ref T5363
2017-10-24 14:30:21 +09:00
Cedric Bail 6998134669 elementary: add an exit_code to efl_exit as originally planned.
T6228
2017-10-17 10:39:05 -07:00
Marcel Hollerbach c4583e1647 elm_main: also return true when the object is a redirect manager 2017-10-10 22:25:22 +02:00
Marcel Hollerbach 247d203c68 elm_main: port to new focus api 2017-10-10 19:28:48 +02:00
Cedric BAIL 0b37853f14 elementary: actually implement the terminate event. 2017-09-26 10:15:07 -07:00
Jean-Philippe Andre 5cea60d157 elm: Fix elm_shutdown
ecore could not shut down properly in an elm_init()/elm_shutdown()
cycle, with 7 remaining references, all because of a typo.

This should help @cedric as well
2017-09-26 17:58:07 +09:00
Jean-Philippe Andre e9dfcb44ff widget: Implement translation API in layout
This moves the API entry points from Widget to Layout parts. I don't
think the other widgets support translation, but that is easy to fix.
The actual code implementation remains in elm_widget.c.

Legacy-only widgets are covered by Part_Legacy, while all EO widgets
that have text inherit from Layout (except Win but I don't think the
window title was translatable in legacy).

This removes 2/3 remaining part APIs from Widget.

Ref T5363
2017-09-26 17:58:07 +09:00
Cedric BAIL fdc92ca868 elementary: provide a new initialization macro that support lifecycle.
EFL_MAIN_EX require efl_main, efl_resume, efl_pause and efl_terminate
to be working. Quicklaunch support added too.
2017-09-25 15:51:19 -07:00
Vincent Torri 0cdd501246 EFL For WIN32: Replace HAVE_EVIL define with _WIN32 2017-09-22 05:06:10 -05:00
Jean-Philippe Andre b6bab481aa widget: Mark old focus API as beta.
It's not beta. It's about to die.
Also, move #define ELM_WIDGET_BETA to the common header file, as it is
consequently required by ALL widgets. :(

Ping @bu5hm4n :)

Ref T5363
2017-08-31 11:22:04 +09:00
Jean-Philippe Andre 692282e67a widget: Move item_loop_enabled to scrollable (EO)
I was told that the scrollable interface is being redesigned for EO.
This API definitely does not belong to the base Widget class, as it's
quite specific to item-based scrollable widgets, such as lists and
grids. Since Elm.Interface_Scrollable is itself being revamped, it is a
good place to move that EO API for now.

Ref T5363
2017-08-30 17:29:52 +09:00
Jean-Philippe Andre 6bb9f4fd16 widget: Remove scroll_lock from EO
1. Uniformize the API, which is now for internal use:
   This uses the same enum as scroller "movement_block" instead
   of 2 separate properties. Less APIs, more consistence.

2. Remove scroll_lock x/y from EO widget. I was told it is not going to
   exist in the upcoming scrollable interface.

3. Remove scroll hold/freeze getters.
   scroll hold/freeze push/pop are still there but it remains to be seen
   how the EO scrollable interface will exploit them. Right now they are
   full of bugs.

Ref T5363
2017-08-30 17:29:52 +09:00
Jean-Philippe Andre c690469fcc widget: Rename drag_lock to scroll_lock (EO)
This also includes the drag_child_lock APIs. This had nothing to do with
dragging beyond maybe the case where scrolling is done by thumbscroll
(ie. finger drag).

Note that the EAPI were called already scroll_lock, not drag_lock.

Ref T5363
2017-08-30 17:29:52 +09:00
Carsten Haitzler 10ea932262 elm init - fix init seq and quicklaunch as we shut down x before evas
... and others. this leads to crashes if x ops are busy in a thread or
engine evas thread shutdown happens to call engine calls that then do
x calls... should apply in general to wl too. fixes some segv's on
shutdown given the new gl thread patches.

@fix
2017-08-23 17:25:43 +09:00
Jean-Philippe Andre 6bfbeff47e widget: Move mirrored_automatic to Efl.Ui.Base
This is, unlike what some of the documentation says, a public
API on elm_object. Let's place it along mirrored for consistency,
even if edje object will not implement it.

Ref T5363
2017-06-15 17:35:44 +09:00
Jean-Philippe Andre ed41adf791 widget: Implement mirrored from Efl.Ui.Base
Ref T5363
2017-06-14 11:02:05 +09:00
Jean-Philippe Andre 06b14827b7 widget: Implement scale from Efl.Ui.Base 2017-06-12 11:50:30 +09:00
Daniel Zaoui a466eca426 Add Clouseau loading at the init of the application 2017-06-05 08:55:37 +03:00
Marcel Hollerbach 178b363bac efl_ui_focus_manager: specify the event in the same way evas does 2017-05-04 20:44:42 +02:00
Marcel Hollerbach fb6c37f16f elementary: introduce helper functions for the redirects 2017-04-20 14:38:59 +02:00
Carsten Haitzler 987620390b elm - cache dump - disable this to fix jp's issues of proxies etc.
this will stop proxies, maps, and other filter object content from
being dropped whenever elm calls elm_cache_all_flush() to flush all
caches.

@fix
2017-04-06 14:31:19 +09:00
Cedric BAIL 93b63b48e8 elementary: avoid crash during shutdown due to Ecore_Event queue. 2017-03-09 16:17:58 -08:00
Andy Williams 9bdaf07d6e elm_code: remove unneeded init code.
Move elm_code init to the main elementary as that's where it lives
2017-01-01 20:10:07 +00:00
Tom Hacohen d5e321466e Efl object: Rename Eo_Event -> Efl_Event.
This is the last step of the Eo renaming efforts.
2016-08-30 13:34:10 +01:00
Tom Hacohen e65aae994e Eo: Finish the renaming of Eo to the EFL.
This renames all the rest of the API to the EFL namespace except for
Eo_Event that will follow soon.

Obviously breaks both API and ABI.
2016-08-15 15:07:42 +01:00
Tom Hacohen c662934be8 Change the EFL to follow the new Eo rename. 2016-08-11 17:04:43 +01:00
Carsten Haitzler e5dbf6cfba elm init - handle return value of ecore_file_init make coverity happy
this isn't an issue as init will never fail, but makes coverity happy
with CID 1353589
2016-08-08 17:47:14 +09:00
Carsten Haitzler c827d42fbd elm_need_efret() - improve error handling according to coverity
fix CID 1360466

we don't actually chekc if efreet inits right with elm_need_efreet()
as we just assume it inits (And there pretty much is no case where it
will not), but make coverity happy and check.

@fix
2016-08-08 17:47:14 +09:00
Stefan Schmidt a17d59c7c3 Revert "access: add API to get access object of given part"
This reverts commit 57d77c9041.

We are in freeze right now and this is a new feature. Considering the access
API is still in beta I might have let this slip by but its does not even build

../../../src/tests/elementary/elm_test_popup.c:27:1: error: conflicting types for ‘elm_object_part_access_object_get’
 START_TEST (elm_object_part_access_object_get)
 ^
In file included from ../../../src/lib/elementary/Elementary.h:240:0,
                 from ../../../src/tests/elementary/elm_test_popup.c:6:
../../../src/lib/elementary/elm_object.h:521:54: note: previous declaration of ‘elm_object_part_access_object_get’ was here
 EAPI Evas_Object *elm_object_part_access_object_get(const Evas_Object *obj, const char *part);
                                                      ^
../../../src/tests/elementary/elm_test_popup.c: In function ‘elm_object_part_access_object_get’:
../../../src/tests/elementary/elm_test_popup.c:39:47: warning: passing argument 1 of ‘elm_object_part_access_object_get’ makes integer from pointer without a cast [-Wint-conversion]
    access = elm_object_part_access_object_get(popup, "access.title");
                                               ^
../../../src/tests/elementary/elm_test_popup.c:27:1: note: expected ‘int’ but argument is of type ‘Evas_Object * {aka struct _Eo_Opaque *}’
 START_TEST (elm_object_part_access_object_get)
 ^
../../../src/tests/elementary/elm_test_popup.c:39:13: error: too many arguments to function ‘elm_object_part_access_object_get’
    access = elm_object_part_access_object_get(popup, "access.title");
             ^
../../../src/tests/elementary/elm_test_popup.c:27:1: note: declared here
 START_TEST (elm_object_part_access_object_get)
 ^
../../../src/tests/elementary/elm_test_popup.c:39:11: error: void value not ignored as it ought to be
    access = elm_object_part_access_object_get(popup, "access.title");
           ^
Makefile:43996: recipe for target 'tests/elementary/tests_elementary_elm_suite-elm_test_popup.o' failed
make[5]: *** [tests/elementary/tests_elementary_elm_suite-elm_test_popup.o] Error 1

If you still want this in make sure it actually can compile the tests you added.
2016-07-25 18:01:37 +02:00
Chris Michael 8be8f8cbd3 elementary: Fix formatting
NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-25 11:54:32 -04:00
Shinwoo Kim 57d77c9041 access: add API to get access object of given part 2016-07-25 22:05:24 +09:00
Carsten Haitzler 743880a175 elm main - fix indentation whitespace since iw as the last to touch it 2016-07-11 17:35:25 +09:00
Jinyong Park 3271ec8d18 theme: return enum from elm_widget_style_set instead of bool
Summary:
if trying to apply incorrect theme, widget apply default theme and return TRUE.
so there is no way to check it really apply correct theme.
To resolve this problem, _elm_theme_set return three type enum

* related history : 4ca3ef4514
* elm_object_style_set is public api, so I didn't change it.
* typedef name [ Theme_Apply ] is temporarily, please suggest better one.

@fix

Reviewers: singh.amitesh, herb, Hermet, cedric, jpeg, raster

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4073
2016-07-01 15:09:43 +09:00
Jean-Philippe Andre 6250cfc39d elm_main: Remove useless shadowing variable 2016-06-27 16:40:59 +09:00
Cedric BAIL 12703b3fe7 elementary: return an exit code at exit with the new EFL_MAIN macro. 2016-06-24 16:45:22 -07:00
Cedric BAIL 9bc1ad102a elementary: introduce EFL_MAIN and rely on Eo_Event to call the initialisation function.
FIXME: Find a way to return an exit value. Maybe on efl_loop_quit ?
2016-06-24 15:32:21 -07:00
Cedric BAIL c512bb68e7 ecore: fix Windows build by properly defining EAPI in all case for internal API user. 2016-06-23 10:53:46 -07:00