+2006-08-08 Soren Sandmann <ssp@localhost.localdomain>
+
+ * sysprof.c (main): Make the load_file() idle low priority to
+ avoid weird toolbar flash.
+
+ * TODO: updates.
+
2006-07-31 Paolo Borelli <pborelli@katamail.com>
* sysprof.c (expand_descendants_tree): small cleanup.
- Assign time spent in kernel to the user process responsible
- New screenshot window
- Device based on udev [Kristian Hoegsberg]
+- Port to RHEL4 [Bastien Nocera]
- Performance improvements
Requirements:
-- A Linux kernel version 2.6.11 or newer is required.
- Unlike Sysprof 0.9, this version should work fine on SMP systems.
+- A Linux kernel version 2.6.9 or newer, compiled with profiling
+ support, is required.
- GTK+ 2.6.0 or newer is required
DONE:
+* When you load a file from the commandline, there is a weird flash of the toolbar.
+ What's going on is this:
+ - this file is loaded into a tree model
+ - the tree model is set for the function list
+ - this causes the selection changed signal to be emitted
+ - the callback for that signal process updates
+ - somehow in that update process, the toolbar flashes.
+ - turns out to be a gtk+ issue: 350517
+
- screenshot window must be cleared when you press start.
- Formats should become first-class, stand-alone objects that offers
gpointer data)
{
Application *app = data;
-
+
set_busy (app->main_window, TRUE);
gdk_window_process_all_updates (); /* Display updated selection */
Application *app = file_open_data->app;
GError *err = NULL;
Profile *profile;
-
+
set_busy (app->main_window, TRUE);
profile = profile_load (filename, &err);
#if 0
/* FIXME: enable this when compiled against the relevant glib
- * version. (The reason we want to enable it is that gslice
- * caches too much memory and also confuses valgrind).
+ * version. The reason we want to disable it is that gslice
+ * - confuses valgrind
+ * - caches too much memory
+ * - is not actually faster
*/
g_slice_set_config (G_SLICE_CONFIG_ALWAYS_MALLOC, TRUE);
#endif
FileOpenData *file_open_data = g_new0 (FileOpenData, 1);
file_open_data->filename = argv[1];
file_open_data->app = app;
-
- g_idle_add (load_file, file_open_data);
+
+ /* This has to run at G_PRIORITY_LOW because of bug 350517
+ */
+ g_idle_add_full (G_PRIORITY_LOW, load_file, file_open_data, NULL);
}
gtk_main ();