Enlightenment CVS committal Author : ningerso Project : e17 Module : libs/ewl
Dir : e17/libs/ewl/src/lib Modified Files: ewl_config.h ewl_misc.c Log Message: Add render debugging command line option. =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_config.h,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- ewl_config.h 14 Mar 2006 06:00:43 -0000 1.10 +++ ewl_config.h 28 Mar 2006 12:29:15 -0000 1.11 @@ -29,6 +29,7 @@ int image_cache; /**< Image cache size */ int engine; /**< Engines available */ char *render_method; /**< Current render method */ + int render_debug; /**< Enable debugging mode in Evas */ } evas; /**< Evas configuration */ struct { =================================================================== RCS file: /cvs/e/e17/libs/ewl/src/lib/ewl_misc.c,v retrieving revision 1.48 retrieving revision 1.49 diff -u -3 -r1.48 -r1.49 --- ewl_misc.c 13 Mar 2006 18:14:14 -0000 1.48 +++ ewl_misc.c 28 Mar 2006 12:29:15 -0000 1.49 @@ -149,6 +149,11 @@ DRETURN_INT(--ewl_init_count, DLEVEL_STABLE); } + /* + * Global freeze on edje events while edje's are being manipulated. + */ + edje_freeze(); + reveal_list = ecore_list_new(); obscure_list = ecore_list_new(); configure_list = ecore_list_new(); @@ -391,11 +396,6 @@ DRETURN_INT(TRUE, DLEVEL_STABLE); /* - * Global freeze on edje events while edje's are being manipulated. - */ - edje_freeze(); - - /* * Freeze events on the evases to reduce overhead */ ecore_list_goto_first(ewl_embed_list); @@ -459,11 +459,28 @@ ecore_list_goto_first(ewl_embed_list); while ((emb = ecore_list_next(ewl_embed_list)) != NULL) { if (REALIZED(emb) && emb->evas) { + double render_time = 0; + evas_event_thaw(emb->evas); + if (ewl_config.evas.render_debug) { + printf("Entering render\n"); + render_time = ecore_time_get(); + } + evas_render(emb->evas); + + if (ewl_config.evas.render_debug) { + printf("Render time: %f seconds\n", + ecore_time_get() - render_time); + } } } + /* + * Global freeze on edje events while edje's are being manipulated. + */ + edje_freeze(); + DRETURN_INT(TRUE, DLEVEL_STABLE); } @@ -569,6 +586,10 @@ ewl_config.debug.enable = 1; matched ++; } + else if (!strcmp(argv[i], "--ewl-debug-paint")) { + ewl_config.evas.render_debug = 1; + matched ++; + } else if (!strcmp(argv[i], "--ewl-help")) { ewl_print_help(); exit(0); @@ -613,6 +634,7 @@ printf("EWL Help\n" "\t--ewl-backtrace Print a stack trace warnings occur.\n" "\t--ewl-debug <level> Set the debugging printf level.\n" + "\t--ewl-debug-paint Enable repaint debugging.\n" "\t--ewl-fb Use framebuffer display engine.\n" "\t--ewl-gl-x11 Use GL X11 display engine.\n" "\t--ewl-help Print this help message.\n" ------------------------------------------------------- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs