projects
/
lttv.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixes to control flow view GC
[lttv.git]
/
ltt
/
branches
/
poly
/
lttv
/
modules
/
gui
/
controlflow
/
eventhooks.c
diff --git
a/ltt/branches/poly/lttv/modules/gui/controlflow/eventhooks.c
b/ltt/branches/poly/lttv/modules/gui/controlflow/eventhooks.c
index cc152eef16015b3fe171f5bd3e9bc907643fa878..e2a42d4fea5a5fa6c4a718c5b17387f448572d9c 100644
(file)
--- a/
ltt/branches/poly/lttv/modules/gui/controlflow/eventhooks.c
+++ b/
ltt/branches/poly/lttv/modules/gui/controlflow/eventhooks.c
@@
-88,7
+88,7
@@
extern GSList *g_legend_list;
* Wait for all the awaited computations to be over.
*/
* Wait for all the awaited computations to be over.
*/
-gint background_ready(void *hook_data, void *call_data)
+
static
gint background_ready(void *hook_data, void *call_data)
{
ControlFlowData *control_flow_data = (ControlFlowData *)hook_data;
LttvTrace *trace = (LttvTrace*)call_data;
{
ControlFlowData *control_flow_data = (ControlFlowData *)hook_data;
LttvTrace *trace = (LttvTrace*)call_data;
@@
-113,7
+113,7
@@
gint background_ready(void *hook_data, void *call_data)
/* Request background computation. Verify if it is in progress or ready first.
* Only for each trace in the tab's traceset.
*/
/* Request background computation. Verify if it is in progress or ready first.
* Only for each trace in the tab's traceset.
*/
-void request_background_data(ControlFlowData *control_flow_data)
+
static
void request_background_data(ControlFlowData *control_flow_data)
{
LttvTracesetContext * tsc =
lttvwindow_get_traceset_context(control_flow_data->tab);
{
LttvTracesetContext * tsc =
lttvwindow_get_traceset_context(control_flow_data->tab);
@@
-138,9
+138,8
@@
void request_background_data(ControlFlowData *control_flow_data)
* information. Happens when two viewers ask for it before servicing
* starts.
*/
* information. Happens when two viewers ask for it before servicing
* starts.
*/
- lttvwindowtraces_background_request_remove(trace, "state");
- lttvwindowtraces_background_request_queue(trace,
- "state");
+ if(!lttvwindowtraces_background_request_find(trace, "state"))
+ lttvwindowtraces_background_request_queue(trace, "state");
lttvwindowtraces_background_notify_queue(control_flow_data,
trace,
ltt_time_infinite,
lttvwindowtraces_background_notify_queue(control_flow_data,
trace,
ltt_time_infinite,
@@
-183,7
+182,7
@@
GtkWidget *
h_guicontrolflow(Tab *tab)
{
g_info("h_guicontrolflow, %p", tab);
h_guicontrolflow(Tab *tab)
{
g_info("h_guicontrolflow, %p", tab);
- ControlFlowData *control_flow_data = guicontrolflow() ;
+ ControlFlowData *control_flow_data = guicontrolflow(
tab
) ;
control_flow_data->tab = tab;
control_flow_data->tab = tab;
@@
-1915,8
+1914,10
@@
gint update_time_window_hook(void *hook_data, void *call_data)
control_flow_data->drawing->height);
}
control_flow_data->drawing->height);
}
+ /* Update directly when scrolling */
+ gdk_window_process_updates(control_flow_data->drawing->drawing_area->window,
+ TRUE);
-
return 0;
}
return 0;
}
@@
-1925,6
+1926,12
@@
gint traceset_notify(void *hook_data, void *call_data)
ControlFlowData *control_flow_data = (ControlFlowData*) hook_data;
Drawing_t *drawing = control_flow_data->drawing;
ControlFlowData *control_flow_data = (ControlFlowData*) hook_data;
Drawing_t *drawing = control_flow_data->drawing;
+ if(unlikely(drawing->gc == NULL)) {
+ return FALSE;
+ }
+ if(drawing->dotted_gc == NULL) {
+ return FALSE;
+ }
drawing_clear(control_flow_data->drawing);
processlist_clear(control_flow_data->process_list);
drawing_clear(control_flow_data->drawing);
processlist_clear(control_flow_data->process_list);
@@
-2077,8
+2084,11
@@
gint update_current_time_hook(void *hook_data, void *call_data)
}
gtk_widget_queue_draw(control_flow_data->drawing->drawing_area);
}
gtk_widget_queue_draw(control_flow_data->drawing->drawing_area);
-
+ /* Update directly when scrolling */
+ gdk_window_process_updates(control_flow_data->drawing->drawing_area->window,
+ TRUE);
+
return 0;
}
return 0;
}
This page took
0.03931 seconds
and
4
git commands to generate.