libsysprof-ui: fit zoom when loading

This commit is contained in:
Christian Hergert
2019-05-15 10:54:02 -07:00
parent 8d41fd48cc
commit 938839c3cb

View File

@ -619,16 +619,31 @@ sysprof_visualizer_view_set_reader (SysprofVisualizerView *self,
if (reader != NULL)
{
GtkAllocation alloc;
gint64 begin_time;
gint64 end_time;
priv->reader = sysprof_capture_reader_ref (reader);
begin_time = sysprof_capture_reader_get_start_time (priv->reader);
end_time = sysprof_capture_reader_get_end_time (priv->reader);
sysprof_visualizer_ticks_set_epoch (priv->ticks, begin_time);
sysprof_visualizer_ticks_set_time_range (priv->ticks, begin_time, begin_time);
sysprof_visualizer_ticks_set_time_range (priv->ticks, begin_time, end_time);
sysprof_selection_unselect_all (priv->selection);
gtk_widget_get_allocation (GTK_WIDGET (self), &alloc);
if (alloc.width)
{
gdouble zoom;
zoom = sysprof_zoom_manager_fit_zoom_for_duration (priv->zoom_manager,
end_time - begin_time,
alloc.width);
sysprof_zoom_manager_set_zoom (priv->zoom_manager, zoom);
}
}
sysprof_visualizer_list_set_reader (priv->list, reader);