GtkToolitemGroup: Use monotonic clock for animation timeout

This commit is contained in:
Matthias Clasen
2010-11-01 11:15:30 -04:00
committed by Tristan Van Berkom
parent ed62f93439
commit bb0ff159cb

View File

@@ -1798,10 +1798,10 @@ gtk_tool_item_group_set_header_relief (GtkToolItemGroup *group,
static gint64
gtk_tool_item_group_get_animation_timestamp (GtkToolItemGroup *group)
{
GTimeVal now;
GTimeSpec now;
g_source_get_current_time (group->priv->animation_timeout, &now);
return (now.tv_sec * G_USEC_PER_SEC + now.tv_usec - group->priv->animation_start) / 1000;
g_source_get_time (group->priv->animation_timeout, &now);
return (now.tv_sec * G_USEC_PER_SEC + now.tv_nsec / 1000 - group->priv->animation_start) / 1000;
}
static void
@@ -1924,14 +1924,14 @@ gtk_tool_item_group_set_collapsed (GtkToolItemGroup *group,
{
if (priv->animation)
{
GTimeVal now;
GTimeSpec now;
g_get_current_time (&now);
g_get_monotonic_time (&now);
if (priv->animation_timeout)
g_source_destroy (priv->animation_timeout);
priv->animation_start = (now.tv_sec * G_USEC_PER_SEC + now.tv_usec);
priv->animation_start = (now.tv_sec * G_USEC_PER_SEC + now.tv_nsec / 1000);
priv->animation_timeout = g_timeout_source_new (ANIMATION_TIMEOUT);
g_source_set_callback (priv->animation_timeout,