[brasero] Set the progress bar to pulse while ejecting



commit 4b8e7f00f18c4abadb66ebe6f99c8936bb85c78d
Author: Philippe Rouquier <bonfire-app wanadoo fr>
Date:   Thu Oct 15 13:22:07 2009 +0200

    Set the progress bar to pulse while ejecting

 libbrasero-burn/brasero-burn.c |   43 +++++++++++++++++++++++++--------------
 1 files changed, 27 insertions(+), 16 deletions(-)
---
diff --git a/libbrasero-burn/brasero-burn.c b/libbrasero-burn/brasero-burn.c
index a7a1214..7981c6e 100644
--- a/libbrasero-burn/brasero-burn.c
+++ b/libbrasero-burn/brasero-burn.c
@@ -214,6 +214,31 @@ brasero_burn_emit_signal (BraseroBurn *burn, guint signal, BraseroBurnResult def
 	return g_value_get_int (&return_value);
 }
 
+static void
+brasero_burn_action_changed_real (BraseroBurn *burn,
+				  BraseroBurnAction action)
+{
+	g_signal_emit (burn,
+		       brasero_burn_signals [ACTION_CHANGED_SIGNAL],
+		       0,
+		       action);
+
+	if (action == BRASERO_BURN_ACTION_FINISHED)
+		g_signal_emit (burn,
+		               brasero_burn_signals [PROGRESS_CHANGED_SIGNAL],
+		               0,
+		               1.0,
+		               1.0,
+		               -1);
+	else if (action == BRASERO_BURN_ACTION_EJECTING)
+		g_signal_emit (burn,
+			       brasero_burn_signals [PROGRESS_CHANGED_SIGNAL],
+			       0,
+			       -1.0,
+			       -1.0,
+			       -1);
+}
+
 static gboolean
 brasero_burn_wakeup (BraseroBurn *burn)
 {
@@ -402,12 +427,8 @@ brasero_burn_eject (BraseroBurn *self,
 		}
 
 		counter ++;
-		if (counter == 1) {
-			g_signal_emit (self,
-				       brasero_burn_signals [ACTION_CHANGED_SIGNAL],
-				       0,
-				       BRASERO_BURN_ACTION_EJECTING);
-		}
+		if (counter == 1)
+			brasero_burn_action_changed_real (self, BRASERO_BURN_ACTION_EJECTING);
 
 		if (counter > MAX_EJECT_ATTEMPTS) {
 			BRASERO_BURN_LOG ("Max attempts reached at ejecting");
@@ -1179,16 +1200,6 @@ brasero_burn_progress_changed (BraseroTaskCtx *task,
 }
 
 static void
-brasero_burn_action_changed_real (BraseroBurn *burn,
-				  BraseroBurnAction action)
-{
-	g_signal_emit (burn,
-		       brasero_burn_signals [ACTION_CHANGED_SIGNAL],
-		       0,
-		       action);
-}
-
-static void
 brasero_burn_action_changed (BraseroTask *task,
 			     BraseroBurnAction action,
 			     BraseroBurn *burn)



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]