From 1aad79dbe7110d3a13a3c7fdcf81320b9d530a14 Mon Sep 17 00:00:00 2001 From: "Carsten Haitzler (Rasterman)" Date: Tue, 9 Jun 2020 15:54:58 +0100 Subject: [PATCH] init splash - make it default as it no longer needs an option it used ot be a separate process to run to hide e starting in the bg on a slow hdd loading modules etc. but due to compisitng and other changes its all internal now, so keep it on always as it guarantees a better smoother experience with less complexity to maintain. --- src/bin/e_config.c | 2 -- src/bin/e_config.h | 1 - src/bin/e_main.c | 22 +++++++++------------ src/bin/e_start_main.c | 7 +++++++ src/modules/conf_theme/e_int_config_theme.c | 7 ------- 5 files changed, 16 insertions(+), 23 deletions(-) diff --git a/src/bin/e_config.c b/src/bin/e_config.c index 11a0405ab..bbe845984 100644 --- a/src/bin/e_config.c +++ b/src/bin/e_config.c @@ -462,7 +462,6 @@ _e_config_edd_init(Eina_Bool old) /**/ /* == already configurable via ipc */ E_CONFIG_VAL(D, T, config_version, INT); /**/ E_CONFIG_VAL(D, T, config_type, UINT); /**/ - E_CONFIG_VAL(D, T, show_splash, INT); /**/ E_CONFIG_VAL(D, T, desktop_default_background, STR); /**/ E_CONFIG_LIST(D, T, desktop_backgrounds, _e_config_desktop_bg_edd); /**/ E_CONFIG_LIST(D, T, desktop_names, _e_config_desktop_name_edd); /**/ @@ -1630,7 +1629,6 @@ e_config_load(void) /* limit values so they are sane */ E_CONFIG_LIMIT(e_config->menus_scroll_speed, 1.0, 20000.0); - E_CONFIG_LIMIT(e_config->show_splash, 0, 1); E_CONFIG_LIMIT(e_config->menus_fast_mouse_move_threshhold, 1.0, 2000.0); E_CONFIG_LIMIT(e_config->menus_click_drag_timeout, 0.0, 10.0); E_CONFIG_LIMIT(e_config->window_maximize_animate, 0, 1); diff --git a/src/bin/e_config.h b/src/bin/e_config.h index c761235c4..08922a498 100644 --- a/src/bin/e_config.h +++ b/src/bin/e_config.h @@ -55,7 +55,6 @@ struct _E_Config { int config_version; // INTERNAL E_Config_Profile_Type config_type; // INTERNAL - int show_splash; // GUI const char *desktop_default_background; // GUI Eina_List *desktop_backgrounds; // GUI const char *desktop_default_name; // DEAD diff --git a/src/bin/e_main.c b/src/bin/e_main.c index e9a594468..a9bf081f8 100644 --- a/src/bin/e_main.c +++ b/src/bin/e_main.c @@ -810,18 +810,15 @@ main(int argc, char **argv) TS("E_Scale Init Done"); _e_main_shutdown_push(e_scale_shutdown); - if (e_config->show_splash) + TS("E_Splash Init"); + if (!e_init_init()) { - TS("E_Splash Init"); - if (!e_init_init()) - { - e_error_message_show(_("Enlightenment cannot set up its init screen.\n")); - _e_main_shutdown(-1); - } - TS("E_Splash Init Done"); - _e_main_shutdown_push(e_init_shutdown); + e_error_message_show(_("Enlightenment cannot set up its init screen.\n")); + _e_main_shutdown(-1); } - if (!((!e_config->show_splash) || (after_restart))) + TS("E_Splash Init Done"); + _e_main_shutdown_push(e_init_shutdown); + if (!after_restart) { TS("E_Splash Show"); e_init_show(); @@ -1084,15 +1081,14 @@ main(int argc, char **argv) _idle_after = ecore_idle_enterer_add(_e_main_cb_idle_after, NULL); - if (e_config->show_splash) - e_init_status_set(_("Welcome to Enlightenment")); + e_init_status_set(_("Welcome to Enlightenment")); starting = EINA_FALSE; inloop = EINA_TRUE; e_util_env_set("E_RESTART", "1"); - if (e_config->show_splash && (!after_restart)) + if (!after_restart) ecore_timer_add(2.0, _e_main_cb_startup_fake_end, NULL); if (after_restart) diff --git a/src/bin/e_start_main.c b/src/bin/e_start_main.c index b8c3a145c..a1777c7cd 100644 --- a/src/bin/e_start_main.c +++ b/src/bin/e_start_main.c @@ -31,6 +31,10 @@ #include #include +#ifdef HAVE_MALLOC_H +# include +#endif + #include #define myasprintf(__b, __fmt, args...) do { \ @@ -799,6 +803,9 @@ main(int argc, char **argv) /* now loop until done */ not_done: +#ifdef HAVE_MALLOC_TRIM + malloc_trim(0); +#endif result = waitpid(child, &status, WNOHANG); /* Wait for E */ if (!result) result = waitpid(-1, &status, 0); diff --git a/src/modules/conf_theme/e_int_config_theme.c b/src/modules/conf_theme/e_int_config_theme.c index 1003bf0e1..b90210ed6 100644 --- a/src/modules/conf_theme/e_int_config_theme.c +++ b/src/modules/conf_theme/e_int_config_theme.c @@ -23,7 +23,6 @@ struct _E_Config_Dialog_Data Eio_File *init[2]; Eina_List *theme_init; /* list of eio ops to load themes */ Eina_List *themes; /* eet file refs to work around load locking */ - int show_splash; Eina_Bool free E_BITFIELD; /* Dialog */ @@ -559,7 +558,6 @@ _fill_data(E_Config_Dialog_Data *cfdata) char path[PATH_MAX]; size_t len; - cfdata->show_splash = e_config->show_splash; theme = elm_theme_get(NULL); if (theme) { @@ -777,8 +775,6 @@ _basic_create_widgets(E_Config_Dialog *cfd EINA_UNUSED, Evas *evas, E_Config_Dia e_widget_table_object_align_append(il, o, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0); } - o = e_widget_check_add(evas, _("Show startup splash"), &cfdata->show_splash); - e_widget_table_object_align_append(il, o, 2, 0, 1, 1, 0, 0, 1, 0, 0, 0); e_widget_list_object_append(of, il, 0, 0, 0.0); { @@ -812,9 +808,6 @@ _basic_apply_data(E_Config_Dialog *cfd EINA_UNUSED, E_Config_Dialog_Data *cfdata file = ecore_file_file_get(cfdata->theme); name = ecore_file_strip_ext(file); - if (!!e_config->show_splash != !!cfdata->show_splash) - e_config_save_queue(); - e_config->show_splash = cfdata->show_splash; if (name) { const char *theme = elm_theme_get(NULL);