From 1d968569c252361aeb68f7675cf983a36e3154f7 Mon Sep 17 00:00:00 2001 From: Carsten Haitzler Date: Sat, 21 Oct 2006 10:52:43 +0000 Subject: [PATCH] more instrumenting for e startup SVN revision: 26730 --- src/bin/e_main.c | 37 ++++++++++++++++++++++++++----------- src/bin/e_manager.c | 5 +++-- 2 files changed, 29 insertions(+), 13 deletions(-) diff --git a/src/bin/e_main.c b/src/bin/e_main.c index a4b8d2101..cc907f35f 100644 --- a/src/bin/e_main.c +++ b/src/bin/e_main.c @@ -44,6 +44,18 @@ static Ecore_Idle_Enterer *_e_main_idle_enterer_flusher = NULL; #define TS_DO +#ifdef TS_DO +#define TS(x) \ + { \ + t1 = ecore_time_get(); \ + printf("ESTART: %1.5f [%1.5f] - %s\n", t1 - t0, t1 - t2, x); \ + t2 = t1; \ + } +static double t0, t1, t2; +#else +#define TS(x) +#endif + /* externally accessible functions */ int main(int argc, char **argv) @@ -57,19 +69,9 @@ main(int argc, char **argv) struct sigaction action; double t, tstart, begin; -#ifdef TS_DO -#define TS(x) \ - { \ - t1 = ecore_time_get(); \ - printf("ESTART: %1.5f [%1.5f] - %s\n", t1 - t0, t1 - t2, x); \ - t2 = t1; \ - } - double t0, t1, t2; +#ifdef TS_DO t0 = t1 = t2 = ecore_time_get(); -#else -#define TS(x) #endif - TS("begin"); #if 0 @@ -1028,14 +1030,22 @@ _e_main_screens_init(void) Ecore_X_Window *roots; int num, i; + TS("screens: atoms"); if (!e_atoms_init()) return 0; + TS("screens: manager"); if (!e_manager_init()) return 0; + TS("screens: container"); if (!e_container_init()) return 0; + TS("screens: zone"); if (!e_zone_init()) return 0; + TS("screens: desk"); if (!e_desk_init()) return 0; + TS("screens: menu"); if (!e_menu_init()) return 0; + TS("screens: exehist"); if (!e_exehist_init()) return 0; + TS("screens: get roots"); num = 0; roots = ecore_x_window_root_list(&num); if ((!roots) || (num <= 0)) @@ -1044,9 +1054,13 @@ _e_main_screens_init(void) num); return 0; } + TS("screens: focus"); if (!e_focus_init()) return 0; + TS("screens: border"); if (!e_border_init()) return 0; + TS("screens: win"); if (!e_win_init()) return 0; + TS("screens: manage roots"); for (i = 0; i < num; i++) { E_Manager *man; @@ -1082,6 +1096,7 @@ _e_main_screens_init(void) return 0; } } + TS("screens: sync"); free(roots); ecore_x_sync(); diff --git a/src/bin/e_manager.c b/src/bin/e_manager.c index fe799984d..4abc9d8d5 100644 --- a/src/bin/e_manager.c +++ b/src/bin/e_manager.c @@ -181,6 +181,7 @@ e_manager_manage_windows(E_Manager *man) int ret; ecore_x_window_attributes_get(windows[i], &att); + if ((att.override) || (att.input_only)) continue; if (!ecore_x_window_prop_property_get(windows[i], atom_xmbed, atom_xmbed, 32, @@ -265,10 +266,10 @@ e_manager_manage_windows(E_Manager *man) * should be seen */ E_Container *con; E_Border *bd; + con = e_container_current_get(man); bd = e_border_new(con, windows[i], 1, 0); - if (bd) - e_border_show(bd); + if (bd) e_border_show(bd); } } free(windows);