[snappy] ui: don't update progress if media has no duration
- From: Luis de Bethencourt <luisbg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [snappy] ui: don't update progress if media has no duration
- Date: Mon, 7 May 2012 16:07:06 +0000 (UTC)
commit 887306321ea481ac472aaa0af6d9e208cc6d2ba7
Author: Luis de Bethencourt <luis debethencourt com>
Date: Mon May 7 17:07:16 2012 +0100
ui: don't update progress if media has no duration
src/user_interface.c | 35 +++++++++++++++++++----------------
1 files changed, 19 insertions(+), 16 deletions(-)
---
diff --git a/src/user_interface.c b/src/user_interface.c
index 4554b62..2037f7f 100644
--- a/src/user_interface.c
+++ b/src/user_interface.c
@@ -714,15 +714,18 @@ static gboolean
progress_update_text (gpointer data)
{
UserInterface *ui = (UserInterface *) data;
+ GstEngine *engine = ui->engine;
- if (ui->controls_showing && !ui->engine->queries_blocked) {
- gchar *duration_str;
- gint64 pos;
+ if (ui->controls_showing && !engine->queries_blocked) {
+ if (engine->media_duration == -1) {
+ gchar *duration_str;
+ gint64 pos;
- pos = query_position (ui->engine);
- duration_str = g_strdup_printf (" %s/%s", position_ns_to_str (pos),
- ui->duration_str);
- clutter_text_set_text (CLUTTER_TEXT (ui->control_pos), duration_str);
+ pos = query_position (engine);
+ duration_str = g_strdup_printf (" %s/%s", position_ns_to_str (pos),
+ ui->duration_str);
+ clutter_text_set_text (CLUTTER_TEXT (ui->control_pos), duration_str);
+ }
}
return TRUE;
@@ -734,19 +737,19 @@ progress_update_seekbar (gpointer data)
UserInterface *ui = (UserInterface *) data;
GstEngine *engine = ui->engine;
- if (ui->controls_showing && !ui->engine->queries_blocked) {
- gint64 pos;
- gfloat progress = 0.0;
-
+ if (ui->controls_showing && !engine->queries_blocked) {
if (engine->media_duration == -1) {
+ gint64 pos;
+ gfloat progress = 0.0;
+
update_media_duration (engine);
- }
- pos = query_position (engine);
- progress = (float) pos / engine->media_duration;
+ pos = query_position (engine);
+ progress = (float) pos / engine->media_duration;
- clutter_actor_set_size (ui->control_seekbar, progress * ui->seek_width,
- ui->seek_height);
+ clutter_actor_set_size (ui->control_seekbar, progress * ui->seek_width,
+ ui->seek_height);
+ }
}
return TRUE;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]