From 663e31413a21030be8989eee82204f9351d2517c Mon Sep 17 00:00:00 2001 From: Cedric Bail Date: Tue, 14 Nov 2017 20:08:09 -0800 Subject: [PATCH] Revert "Revert series of patches from cedric (due to dependencies and conflicts)" This reverts commit 2cea85db388d34337676466ef7f50c22e685c7d0. Their was a typo that I made during cleanup of the patch before pushing that I didn't notice broke some stuff. But also you may have an old efl_general.h in your elementary directory that is now being picked instead of the one provided by the tree. --- Makefile.am | 5 +- configure.ac | 1 + pc/.gitignore | 1 + pc/efl-ui.pc.in | 20 ++ src/Makefile_Elementary.am | 4 +- src/lib/ecore/Efl_Core.h | 4 +- src/lib/ecore/efl_general.h | 17 ++ src/lib/elementary/Efl_Ui.h | 253 ++++++++++++++++++ src/lib/elementary/Elementary.h | 4 - src/lib/elementary/efl_ui_multibuttonentry.h | 1 - src/lib/elementary/elm_general.h | 4 +- .../ecore/system/upower/ecore_system_upower.c | 9 +- 12 files changed, 307 insertions(+), 16 deletions(-) create mode 100644 pc/efl-ui.pc.in create mode 100644 src/lib/elementary/Efl_Ui.h diff --git a/Makefile.am b/Makefile.am index 1106b60b01..8fb921c734 100644 --- a/Makefile.am +++ b/Makefile.am @@ -136,7 +136,9 @@ pc/emile.pc \ pc/eet.pc \ pc/evas.pc \ pc/ecore.pc \ +pc/efl-core.pc \ pc/ecore-con.pc \ +pc/efl-net.pc \ pc/ecore-ipc.pc \ pc/ecore-file.pc \ pc/ecore-input.pc \ @@ -157,7 +159,8 @@ pc/emotion.pc \ pc/ethumb.pc \ pc/ethumb_client.pc \ pc/elocation.pc \ -pc/elementary.pc +pc/elementary.pc \ +pc/efl-ui.pc if HAVE_CXX11 pkgconfig_DATA += \ diff --git a/configure.ac b/configure.ac index ba9b78318e..003190ba26 100644 --- a/configure.ac +++ b/configure.ac @@ -5606,6 +5606,7 @@ pc/efl-cxx.pc pc/efl-wl.pc pc/efl-core.pc pc/efl-net.pc +pc/efl-ui.pc pc/evas-fb.pc pc/evas-eglfs.pc pc/evas-opengl-x11.pc diff --git a/pc/.gitignore b/pc/.gitignore index 5e87ab1e64..5657ab6a68 100644 --- a/pc/.gitignore +++ b/pc/.gitignore @@ -76,3 +76,4 @@ /efl-wl.pc /efl-core.pc /efl-net.pc +/efl-ui.pc \ No newline at end of file diff --git a/pc/efl-ui.pc.in b/pc/efl-ui.pc.in new file mode 100644 index 0000000000..04c9dcf472 --- /dev/null +++ b/pc/efl-ui.pc.in @@ -0,0 +1,20 @@ +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ +includedir=@includedir@ +datarootdir=@datarootdir@ +datadir=@datadir@/elementary +pkgdatadir=@datadir@/elementary +vmaj=@VMAJ@ +vmin=@VMIN@ +vmic=@VMIC@ +themes=${pkgdatadir}/themes +eoincludedir=@datadir@/eolian/include +eolian_flags=-I${pc_sysrootdir}${eoincludedir}/elementary-@VMAJ@ -I${pc_sysrootdir}${eoincludedir}/emap-@VMAJ@ -I${pc_sysrootdir}${eoincludedir}/elocation-@VMAJ@ -I${pc_sysrootdir}${eoincludedir}/efreet-@VMAJ@ -I${pc_sysrootdir}${eoincludedir}/edje-@VMAJ@ -I${pc_sysrootdir}${eoincludedir}/eio-@VMAJ@ -I${pc_sysrootdir}${eoincludedir}/eldbus-@VMAJ@ -I${pc_sysrootdir}${eoincludedir}/ecore-con-@VMAJ@ -I${pc_sysrootdir}${eoincludedir}/ecore-@VMAJ@ -I${pc_sysrootdir}${eoincludedir}/efl-@VMAJ@ -I${pc_sysrootdir}${eoincludedir}/eo-@VMAJ@ -I${pc_sysrootdir}${eoincludedir}/eet-@VMAJ@ -I${pc_sysrootdir}${eoincludedir}/emile-@VMAJ@ -I${pc_sysrootdir}${eoincludedir}/eina-@VMAJ@ + +Name: efl_ui +Description: EFL user interface abstraction library +Requires.private: @requirements_pc_elementary@ +Version: @VERSION@ +Libs: -L${libdir} -lelementary -lefl -leina -lpthread -leet -levas -lecore -lecore_evas -lecore_file -lecore_input -ledje -leo -lethumb_client -lemotion -lecore_imf -lecore_con -leldbus -lefreet -lefreet_mime -lefreet_trash -leio @requirements_public_libs_elementary@ @requirements_public_libs_eina@ @requirements_libs_eina@ @requirements_libs_elm@ +Cflags: -I${includedir}/elementary-@VMAJ@ -I${includedir}/emap-@VMAJ@ -I${includedir}/elocation-@VMAJ@ -I${includedir}/efreet-@VMAJ@ -I${includedir}/edje-@VMAJ@ -I${includedir}/eio-@VMAJ@ -I${includedir}/eldbus-@VMAJ@ -I${includedir}/ecore-@VMAJ@ -I${includedir}/efl-@VMAJ@ -I${includedir}/eo-@VMAJ@ -I${includedir}/eet-@VMAJ@ -I${includedir}/emile-@VMAJ@ -I${includedir}/eina-@VMAJ@ diff --git a/src/Makefile_Elementary.am b/src/Makefile_Elementary.am index 4c79dc8007..95d1cf8976 100644 --- a/src/Makefile_Elementary.am +++ b/src/Makefile_Elementary.am @@ -324,7 +324,9 @@ includesunstable_HEADERS = \ lib/elementary/elm_code_indent.h \ lib/elementary/elm_code_file.h \ lib/elementary/elm_code_parse.h \ - lib/elementary/elm_code_syntax.h + lib/elementary/elm_code_syntax.h \ + lib/elementary/efl_ui_multibuttonentry.h \ + lib/elementary/Efl_Ui.h includesunstabledir = $(includedir)/elementary-@VMAJ@ nodist_includesunstable_HEADERS = \ diff --git a/src/lib/ecore/Efl_Core.h b/src/lib/ecore/Efl_Core.h index 585f847b55..8981d4862d 100644 --- a/src/lib/ecore/Efl_Core.h +++ b/src/lib/ecore/Efl_Core.h @@ -64,9 +64,7 @@ extern "C" { extern EAPI double _efl_startup_time; #include "Ecore_Common.h" -#ifdef EFL_OBJECT_BETA -# include "Ecore_Eo.h" -#endif +#include "Ecore_Eo.h" #ifdef __cplusplus } diff --git a/src/lib/ecore/efl_general.h b/src/lib/ecore/efl_general.h index c91f61fce2..3a79e46d33 100644 --- a/src/lib/ecore/efl_general.h +++ b/src/lib/ecore/efl_general.h @@ -13,6 +13,23 @@ #undef __EFL_NET #undef EFL_MAIN #undef EFL_MAIN_EX +#undef EAPI_MAIN + +#ifdef _WIN32 +// There is no support for quicklaunch on windows, so no needs +// to export the efl_main symbol +# define EAPI_MAIN +#else +# ifdef __GNUC__ +# if __GNUC__ >= 4 +# define EAPI_MAIN __attribute__ ((visibility("default"))) +# else +# define EAPI_MAIN +# endif +# else +# define EAPI_MAIN +# endif +#endif /* ! _WIN32 */ #ifdef EFL_VERSION_MICRO # define _EFL_VERSION_MICRO EFL_VERSION_MICRO diff --git a/src/lib/elementary/Efl_Ui.h b/src/lib/elementary/Efl_Ui.h new file mode 100644 index 0000000000..75c3e3cbae --- /dev/null +++ b/src/lib/elementary/Efl_Ui.h @@ -0,0 +1,253 @@ +#ifndef _EFL_CORE_H +#define _EFL_CORE_H + +#include +#include + +#ifdef _MSC_VER +# include +#endif + +/* Standard headers for standard system calls etc. */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#ifdef ELM_DIRENT_H +#include +#endif +#include +#include + +#ifdef ELM_UNIX +#include +#ifdef ELM_LIBINTL_H +#include +#endif +#include +#include +#include +#endif + +#ifdef ELM_ALLOCA_H +#include +#endif + +#ifdef ELM_WIN32 +#include +#ifndef alloca +#define alloca _alloca +#endif +#endif + +#include +#include +#include + +#ifdef EAPI +# undef EAPI +#endif + +#ifdef _WIN32 +# ifdef EFL_ECORE_BUILD +# ifdef DLL_EXPORT +# define EAPI __declspec(dllexport) +# else +# define EAPI +# endif /* ! DLL_EXPORT */ +# else +# define EAPI __declspec(dllimport) +# endif /* ! EFL_ECORE_BUILD */ +#else +# ifdef __GNUC__ +# if __GNUC__ >= 4 +# define EAPI __attribute__ ((visibility("default"))) +# else +# define EAPI +# endif +# else +# define EAPI +# endif +#endif /* ! _WIN32 */ + +#ifdef _WIN32 +# define WIN32_LEAN_AND_MEAN +# include +# undef WIN32_LEAN_AND_MEAN +#elif defined (__FreeBSD__) || defined (__OpenBSD__) +# include +# include +#elif defined (__ANDROID__) +# include +#elif defined (__sun) +# include +#else +# include +# if !defined (EXOTIC_NO_SIGNAL) +# include +# endif +#endif + +#include + +#define __EFL_UI_IS_REQUIRED + +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#ifdef ELM_ELOCATION +#include +#endif + +#ifdef ELM_EMAP +#include +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +extern EAPI double _efl_startup_time; + +// EO types. Defined for legacy-only builds as legacy uses typedef of EO types. +#include "efl_ui.eot.h" + +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include + +# include +# include +# include +# include +# include +# include + +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include + +/** + * Initialize Elementary + * + * @param[in] argc System's argument count value + * @param[in] argv System's pointer to array of argument strings + * @return The init counter value. + * + * This function initializes Elementary and increments a counter of + * the number of calls to it. It returns the new counter's value. + * + * @warning This call is exported only for use by the @c ELM_MAIN() + * macro. There is no need to use this if you use this macro (which + * is highly advisable). An elm_main() should contain the entry + * point code for your application, having the same prototype as + * elm_init(), and @b not being static (putting the @c EAPI_MAIN symbol + * in front of its type declaration is advisable). The @c + * ELM_MAIN() call should be placed just after it. + * + * Example: + * @dontinclude bg_example_01.c + * @skip static void + * @until ELM_MAIN + * + * See the full @ref bg_example_01_c "example". + * + * @see elm_shutdown(). + * @ingroup Elm_General + */ +EAPI int elm_init(int argc, char **argv); + +/** + * Shut down Elementary + * + * @return The init counter value. + * + * This should be called at the end of your application, just + * before it ceases to do any more processing. This will clean up + * any permanent resources your application may have allocated via + * Elementary that would otherwise persist. + * + * @see elm_init() for an example + * + * @note elm_shutdown() will iterate main loop until all ecore_evas are freed. + * There is a possibility to call your ecore callbacks(timer, animator, event, + * job, and etc.) in elm_shutdown() + * + * @ingroup Elm_General + */ +EAPI int elm_shutdown(void); + +#ifdef __cplusplus +} +#endif + +#undef EAPI +#define EAPI + +#endif + +// We are including efl_general.h again, just in case Efl_Core.h was already included before this +// and the __EFL_*_IS_REQUIRED changed since then. +#include diff --git a/src/lib/elementary/Elementary.h b/src/lib/elementary/Elementary.h index 3913084bf3..bf41fdea47 100644 --- a/src/lib/elementary/Elementary.h +++ b/src/lib/elementary/Elementary.h @@ -85,7 +85,6 @@ #endif #ifdef _WIN32 -# define EAPI_MAIN # ifdef ELEMENTARY_BUILD # ifdef DLL_EXPORT # define EAPI __declspec(dllexport) @@ -99,14 +98,11 @@ # ifdef __GNUC__ # if __GNUC__ >= 4 # define EAPI __attribute__ ((visibility("default"))) -# define EAPI_MAIN __attribute__ ((visibility("default"))) # else # define EAPI -# define EAPI_MAIN # endif # else # define EAPI -# define EAPI_MAIN # endif #endif /* ! _WIN32 */ diff --git a/src/lib/elementary/efl_ui_multibuttonentry.h b/src/lib/elementary/efl_ui_multibuttonentry.h index 3c76aa76c7..3d9a75912d 100644 --- a/src/lib/elementary/efl_ui_multibuttonentry.h +++ b/src/lib/elementary/efl_ui_multibuttonentry.h @@ -57,7 +57,6 @@ * @{ */ -#include "efl_ui_multibuttonentry_common.h" #ifdef EFL_EO_API_SUPPORT #include "efl_ui_multibuttonentry_eo.h" #endif diff --git a/src/lib/elementary/elm_general.h b/src/lib/elementary/elm_general.h index d718594f8a..7564f1217c 100644 --- a/src/lib/elementary/elm_general.h +++ b/src/lib/elementary/elm_general.h @@ -96,9 +96,7 @@ extern EAPI double _elm_startup_time; #define ELM_MAIN() int main(int argc, char **argv) { int ret__; _elm_startup_time = ecore_time_unix_get(); ret__ = elm_quicklaunch_fallback(argc, argv); elm_shutdown(); return ret__; } #endif -#define __EFL_UI_IS_REQUIRED - -#include "Efl_Core.h" +#include "Efl_Ui.h" /**************************************************************************/ /* General calls */ diff --git a/src/modules/ecore/system/upower/ecore_system_upower.c b/src/modules/ecore/system/upower/ecore_system_upower.c index abc621ff7a..8a73ac44ac 100644 --- a/src/modules/ecore/system/upower/ecore_system_upower.c +++ b/src/modules/ecore/system/upower/ecore_system_upower.c @@ -149,7 +149,8 @@ _on_low_battery_get_cb(void *data EINA_UNUSED, const Eldbus_Message *msg, _eldbus_pending = eina_list_remove(_eldbus_pending, pending); if (eldbus_message_error_get(msg, &errname, &errmsg)) { - ERR("Message error %s - %s", errname, errmsg); + if (strcmp(errname, "org.enlightenment.DBus.Canceled")) + ERR("Message error %s - %s", errname, errmsg); return; } if (!eldbus_message_arguments_get(msg, "v", &variant)) @@ -197,7 +198,8 @@ _on_battery_get_cb(void *data EINA_UNUSED, const Eldbus_Message *msg, _eldbus_pending = eina_list_remove(_eldbus_pending, pending); if (eldbus_message_error_get(msg, &errname, &errmsg)) { - ERR("Message error %s - %s", errname, errmsg); + if (strcmp(errname, "org.enlightenment.DBus.Canceled")) + ERR("Message error %s - %s", errname, errmsg); return; } if (!eldbus_message_arguments_get(msg, "v", &variant)) @@ -285,7 +287,8 @@ _daemon_version_get_cb(void *data EINA_UNUSED, const Eldbus_Message *msg, _eldbus_pending = eina_list_remove(_eldbus_pending, pending); if (eldbus_message_error_get(msg, &errname, &errmsg)) { - ERR("Message error %s - %s", errname, errmsg); + if (strcmp(errname, "org.enlightenment.DBus.Canceled")) + ERR("Message error %s - %s", errname, errmsg); return; } if (!eldbus_message_arguments_get(msg, "v", &variant))