#include "e.h"
+#include "e_actions_intern.h"
+#include "e_test_helper_intern.h"
+#include "e_user_intern.h"
+#include "e_utils_intern.h"
+#include "e_theme_intern.h"
+#include "e_signals_intern.h"
+#include "e_security_intern.h"
+#include "e_screensaver_intern.h"
+#include "e_scale_intern.h"
+
#ifdef __linux__
# include <sys/prctl.h>
#endif
static Eina_Inlist *_e_main_hooks[] =
{
[E_MAIN_HOOK_MODULE_LOAD_DONE] = NULL,
- [E_MAIN_HOOK_E_INFO_READY] = NULL
+ [E_MAIN_HOOK_E_INFO_READY] = NULL,
+ [E_MAIN_HOOK_POST_CLIENT_IDLER_BEFORE] = NULL
};
/* external variables */
{
char *s;
const char *p = e_prefix_get();
- char newpath[4096], buf[4096];
+ char newpath[PATH_MAX], buf[PATH_MAX + PATH_MAX + 200];
if (!p) return;
TSE("[DEFERRED] DPMS Init Done");
_e_main_shutdown_push(e_dpms_shutdown);
- TSB("[DEFERRED] Screens Init: win");
- if (!e_win_init())
- {
- e_error_message_show(_("Enlightenment cannot setup elementary trap!\n"));
- goto failed;
- }
- TSE("[DEFERRED] Screens Init: win Done");
-
TSB("[DEFERRED] E_Dnd Init");
if (!e_dnd_init())
{
# endif
#endif
+#ifdef TIZEN_TEST_GCOV
+ setenv("GCOV_PREFIX", "/tmp", 1);
+#endif
+
/* for debugging by redirecting stdout & stderr of e to a log file to tail */
setvbuf(stdout, NULL, _IONBF, 0);
setvbuf(stderr, NULL, _IONBF, 0);
}
TSE("Ecore_Evas Init Done");
- /* e doesn't sync to compositor - it should be one */
- ecore_evas_app_comp_sync_set(0);
-
TSB("Edje Init");
if (!edje_init())
{
e_screensaver_preinit();
e_zone_init();
e_desk_init();
- e_slot_init();
e_magnifier_init();
TRACE_DS_BEGIN(MAIN:WAIT /dev/dri/card0);
e_comp_all_thaw();
TSE("E_Comp Thaw Done");
+ if (e_config->use_thread_max_cpu)
+ {
+ int cpus;
+
+ cpus = eina_cpu_count();
+ if (cpus >= 1)
+ {
+ TSM("Set ecore thread max");
+ ecore_thread_max_set(cpus);
+ }
+ }
+
_idle_after = ecore_idle_enterer_add(_e_main_cb_idle_after, NULL);
starting = EINA_FALSE;
dir = e_util_env_get("XDG_RUNTIME_DIR");
if (dir)
{
- char buf_env[PATH_MAX];
+ char buf_env[PATH_MAX - 12];
snprintf(buf_env, sizeof(buf_env), "%s", dir);
snprintf(buf, sizeof(buf), "%s/.e-deleteme", buf_env);
if (ecore_file_exists(buf)) ecore_file_recursive_rm(buf_env);
static int
_e_main_screens_shutdown(void)
{
- e_win_shutdown();
e_comp_shutdown();
e_client_shutdown();
e_magnifier_shutdown();
- e_slot_shutdown();
e_desk_shutdown();
e_zone_shutdown();
return 1;
_e_main_desk_restore(void)
{
E_Client *ec;
+ E_Zone *zone;
E_CLIENT_REVERSE_FOREACH(ec)
- if ((!e_client_util_ignored_get(ec)) && e_client_util_desk_visible(ec, e_desk_current_get(ec->zone)))
- {
- ec->want_focus = ec->take_focus = 1;
- break;
- }
+ {
+ zone = e_comp_zone_find_by_ec(ec);
+ if ((!e_client_util_ignored_get(ec)) && e_desk_has_ec(e_desk_current_get(zone), ec))
+ {
+ ec->want_focus = ec->take_focus = 1;
+ break;
+ }
+ }
}
static Eina_Bool
_e_main_cb_idle_before(void *data EINA_UNUSED)
{
- e_client_idler_before();
+ e_comp_idler_before();
+ _e_main_hook_call(E_MAIN_HOOK_POST_CLIENT_IDLER_BEFORE, NULL);
edje_thaw();
+
return ECORE_CALLBACK_RENEW;
}