[Xfce4-commits] <parole:master> Added playlist preferences button, and small fixes and tweaks for playlist.

Sean Davis noreply at xfce.org
Fri Jul 27 21:28:01 CEST 2012


Updating branch refs/heads/master
         to 8a15515bb7be36c752f1abd6983f376eaf5aa061 (commit)
       from 8d242dff6526f754b2df90793335002b929319fb (commit)

commit 8a15515bb7be36c752f1abd6983f376eaf5aa061
Author: Sean Davis <smd.seandavis at gmail.com>
Date:   Fri Jul 27 15:27:45 2012 -0400

    Added playlist preferences button, and small fixes and tweaks for playlist.

 data/interfaces/playlist.ui |   99 +++++++++++++++
 src/parole-medialist.c      |  281 ++++++++++++++++++++++++++-----------------
 2 files changed, 267 insertions(+), 113 deletions(-)

diff --git a/data/interfaces/playlist.ui b/data/interfaces/playlist.ui
index dbd09ab..8b9c409 100644
--- a/data/interfaces/playlist.ui
+++ b/data/interfaces/playlist.ui
@@ -23,6 +23,11 @@
     <property name="pixel_size">20</property>
     <property name="icon_name">media-playlist-repeat</property>
   </object>
+  <object class="GtkImage" id="image_settings">
+    <property name="visible">True</property>
+    <property name="can_focus">False</property>
+    <property name="stock">gtk-properties</property>
+  </object>
   <object class="GtkImage" id="image_shuffle">
     <property name="visible">True</property>
     <property name="can_focus">False</property>
@@ -83,6 +88,7 @@
                     <property name="receives_default">True</property>
                     <property name="use_action_appearance">False</property>
                     <property name="image">image_add</property>
+                    <property name="focus_on_click">False</property>
                     <signal name="clicked" handler="parole_media_list_add_clicked_cb" swapped="no"/>
                   </object>
                   <packing>
@@ -94,10 +100,12 @@
                 <child>
                   <object class="GtkButton" id="remove-media">
                     <property name="visible">True</property>
+                    <property name="sensitive">False</property>
                     <property name="can_focus">True</property>
                     <property name="receives_default">True</property>
                     <property name="use_action_appearance">False</property>
                     <property name="image">image_remove</property>
+                    <property name="focus_on_click">False</property>
                     <signal name="clicked" handler="parole_media_list_remove_clicked_cb" swapped="no"/>
                   </object>
                   <packing>
@@ -109,10 +117,12 @@
                 <child>
                   <object class="GtkButton" id="clear-media">
                     <property name="visible">True</property>
+                    <property name="sensitive">False</property>
                     <property name="can_focus">True</property>
                     <property name="receives_default">True</property>
                     <property name="use_action_appearance">False</property>
                     <property name="image">image_clear</property>
+                    <property name="focus_on_click">False</property>
                     <signal name="clicked" handler="parole_media_list_clear_clicked_cb" swapped="no"/>
                   </object>
                   <packing>
@@ -128,6 +138,7 @@
                     <property name="receives_default">True</property>
                     <property name="use_action_appearance">False</property>
                     <property name="image">image_repeat</property>
+                    <property name="focus_on_click">False</property>
                     <signal name="toggled" handler="parole_media_list_repeat_toggled_cb" swapped="no"/>
                   </object>
                   <packing>
@@ -143,6 +154,7 @@
                     <property name="receives_default">True</property>
                     <property name="use_action_appearance">False</property>
                     <property name="image">image_shuffle</property>
+                    <property name="focus_on_click">False</property>
                     <signal name="toggled" handler="parole_media_list_shuffle_toggled_cb" swapped="no"/>
                   </object>
                   <packing>
@@ -151,6 +163,21 @@
                     <property name="position">4</property>
                   </packing>
                 </child>
+                <child>
+                  <object class="GtkToggleButton" id="settings">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">True</property>
+                    <property name="use_action_appearance">False</property>
+                    <property name="image">image_settings</property>
+                    <property name="focus_on_click">False</property>
+                  </object>
+                  <packing>
+                    <property name="expand">True</property>
+                    <property name="fill">True</property>
+                    <property name="position">5</property>
+                  </packing>
+                </child>
               </object>
               <packing>
                 <property name="expand">False</property>
@@ -169,4 +196,76 @@
       </packing>
     </child>
   </object>
+  <object class="GtkMenu" id="playlist-menu">
+    <property name="visible">True</property>
+    <property name="can_focus">False</property>
+    <child>
+      <object class="GtkCheckMenuItem" id="menu-repeat">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="use_action_appearance">False</property>
+        <property name="label" translatable="yes">Repeat</property>
+        <property name="use_underline">True</property>
+      </object>
+    </child>
+    <child>
+      <object class="GtkCheckMenuItem" id="menu-shuffle">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="use_action_appearance">False</property>
+        <property name="label" translatable="yes">Shuffle</property>
+        <property name="use_underline">True</property>
+      </object>
+    </child>
+    <child>
+      <object class="GtkSeparatorMenuItem" id="menuitem1">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="use_action_appearance">False</property>
+      </object>
+    </child>
+    <child>
+      <object class="GtkCheckMenuItem" id="menu-replace">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="use_action_appearance">False</property>
+        <property name="label" translatable="yes">Replace playlist when opening files</property>
+        <property name="use_underline">True</property>
+      </object>
+    </child>
+    <child>
+      <object class="GtkCheckMenuItem" id="menu-play-opened">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="use_action_appearance">False</property>
+        <property name="label" translatable="yes">Play opened files</property>
+        <property name="use_underline">True</property>
+      </object>
+    </child>
+    <child>
+      <object class="GtkCheckMenuItem" id="menu-remember">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="use_action_appearance">False</property>
+        <property name="label" translatable="yes">Remember playlist</property>
+        <property name="use_underline">True</property>
+      </object>
+    </child>
+    <child>
+      <object class="GtkSeparatorMenuItem" id="menuitem2">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="use_action_appearance">False</property>
+      </object>
+    </child>
+    <child>
+      <object class="GtkMenuItem" id="menu-clear">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="use_action_appearance">False</property>
+        <property name="label" translatable="yes">Clear</property>
+        <property name="use_underline">True</property>
+      </object>
+    </child>
+  </object>
 </interface>
diff --git a/src/parole-medialist.c b/src/parole-medialist.c
index f9997f0..95ec2ba 100644
--- a/src/parole-medialist.c
+++ b/src/parole-medialist.c
@@ -168,11 +168,12 @@ struct ParoleMediaListPrivate
     GtkWidget		*box;
     GtkListStore	*store;
     GtkTreeSelection    *sel;
-    
-    GtkWidget		*remove;
-    GtkWidget		*clear;
-    GtkWidget		*shuffle;
-    GtkWidget		*repeat;
+
+    GtkWidget *remove_button;
+    GtkWidget *clear_button;
+    GtkWidget *repeat_button;
+    GtkWidget *shuffle_button;
+	GtkWidget *settings_button;
 };
 
 enum
@@ -192,8 +193,8 @@ G_DEFINE_TYPE (ParoleMediaList, parole_media_list, GTK_TYPE_VBOX)
 static void
 parole_media_list_set_widget_sensitive (ParoleMediaList *list, gboolean sensitive)
 {
-    gtk_widget_set_sensitive (GTK_WIDGET (list->priv->remove), sensitive);
-    gtk_widget_set_sensitive (GTK_WIDGET (list->priv->clear), sensitive);
+    gtk_widget_set_sensitive (GTK_WIDGET (list->priv->remove_button), sensitive);
+    gtk_widget_set_sensitive (GTK_WIDGET (list->priv->clear_button), sensitive);
 }
 
 /**
@@ -250,8 +251,8 @@ parole_media_list_add (ParoleMediaList *list, ParoleFile *file, gboolean emit, g
     
     if ( nch == 1 )
     {
-	gtk_widget_set_sensitive (list->priv->remove, TRUE);
-	gtk_widget_set_sensitive (list->priv->clear, TRUE);
+	gtk_widget_set_sensitive (list->priv->remove_button, TRUE);
+	gtk_widget_set_sensitive (list->priv->clear_button, TRUE);
     }
     else
 	parole_media_list_set_widget_sensitive (list, TRUE);
@@ -1139,16 +1140,15 @@ static void
 replace_list_activated_cb (GtkWidget *mi, ParoleConf *conf)
 {
     g_object_set (G_OBJECT (conf),
-		  "replace-playlist", gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (mi)),
+		  "replace-playlist", gtk_check_menu_item_get_active (GTK_CHECK_MENU_ITEM (mi)),
 		  NULL);
-		
 }
 
 static void
 play_opened_files_activated_cb (GtkWidget *mi, ParoleConf *conf)
 {
     g_object_set (G_OBJECT (conf),
-		  "play-opened-files", gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (mi)),
+		  "play-opened-files", gtk_check_menu_item_get_active (GTK_CHECK_MENU_ITEM (mi)),
 		  NULL);
 		
 }
@@ -1162,19 +1162,41 @@ remember_playlist_activated_cb (GtkWidget *mi, ParoleConf *conf)
 }
 
 static void
-repeat_activated_cb (GtkWidget *mi, ParoleConf *conf)
+repeat_activated_cb (GtkWidget *mi, ParoleMediaList *list)
 {
-    g_object_set (G_OBJECT (conf),
-		  "repeat", gtk_check_menu_item_get_active (GTK_CHECK_MENU_ITEM (mi)),
-		  NULL);
+	gboolean active = gtk_check_menu_item_get_active( GTK_CHECK_MENU_ITEM( mi ) );
+    gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON( list->priv->repeat_button ), active);
 }
 
 static void
-shuffle_activated_cb (GtkWidget *mi, ParoleConf *conf)
+shuffle_activated_cb (GtkWidget *mi, ParoleMediaList *list)
 {
-    g_object_set (G_OBJECT (conf),
-		  "shuffle", gtk_check_menu_item_get_active (GTK_CHECK_MENU_ITEM (mi)),
-		  NULL);
+	gboolean active = gtk_check_menu_item_get_active( GTK_CHECK_MENU_ITEM( mi ) );
+    gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON( list->priv->shuffle_button ), active);
+}
+
+void
+parole_media_list_menu_pos (GtkMenu *menu, gint *px, gint *py, gpointer data)
+{
+	gint x, y;
+	GtkAllocation widget_allocation, menu_allocation;
+	GtkWidget *widget = gtk_menu_get_attach_widget( menu );
+	
+	gtk_widget_get_allocation( widget, &widget_allocation );
+	gtk_widget_get_allocation( GTK_WIDGET(menu), &menu_allocation );
+	
+	//g_print("h = %i", requisition.height);
+	GdkWindow *window = gtk_widget_get_window( widget );
+	gdk_window_get_position( window, &x, &y );
+	
+	px += x + widget_allocation.x - menu_allocation.width + widget_allocation.width;
+	py += y + widget_allocation.y + widget_allocation.height;
+}
+
+static void
+parole_media_list_hide_menu (GtkWidget *widget)
+{
+	gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( widget ), FALSE );
 }
 
 static void
@@ -1193,122 +1215,147 @@ parole_media_list_destroy_menu (GtkWidget *menu)
 }
 
 static void
-parole_media_list_show_menu (ParoleMediaList *list, GdkEventButton *ev)
+menu_detach( GtkMenu *menu )
 {
-    GtkWidget *menu, *mi;
-    gboolean val;
-    guint button = ev->button; 
-    guint activate_time = ev->time;
+	//gtk_menu_detach (menu);
+}
 
-    menu = gtk_menu_new ();
+static void
+parole_media_list_show_button_menu (GtkToggleButton *button, ParoleMediaList *list)
+{
+	gboolean toggled = gtk_toggle_button_get_active( button );
+	if (!toggled)
+	return;
 
-    parole_media_list_add_open_containing_folder (list, menu, (gint)ev->x, (gint)ev->y);
+	gboolean val;
     
+    GtkBuilder *builder;
+    
+    builder = parole_builder_new_from_string (playlist_ui, playlist_ui_length);
+    
+    GtkMenu *menu = GTK_MENU (gtk_builder_get_object (builder, "playlist-menu"));
+    GtkCheckMenuItem *repeat_menu = GTK_CHECK_MENU_ITEM (gtk_builder_get_object (builder, "menu-repeat"));
+    GtkCheckMenuItem *shuffle_menu = GTK_CHECK_MENU_ITEM (gtk_builder_get_object (builder, "menu-shuffle"));
+    GtkCheckMenuItem *replace = GTK_CHECK_MENU_ITEM (gtk_builder_get_object (builder, "menu-replace"));
+    GtkCheckMenuItem *play_opened = GTK_CHECK_MENU_ITEM (gtk_builder_get_object (builder, "menu-play-opened"));
+    GtkCheckMenuItem *remember = GTK_CHECK_MENU_ITEM (gtk_builder_get_object (builder, "menu-remember"));
+    GtkMenuItem *clear = GTK_MENU_ITEM (gtk_builder_get_object (builder, "menu-clear"));
+    
+    gtk_menu_attach_to_widget( GTK_MENU(menu), list->priv->settings_button, (GtkMenuDetachFunc) menu_detach );
 
-    /**
-     * Repeat playing.
-     **/
     g_object_get (G_OBJECT (list->priv->conf),
 		  "repeat", &val,
 		  NULL);
+    gtk_check_menu_item_set_active (repeat_menu, val);
+    g_signal_connect (repeat_menu, "activate",
+                      G_CALLBACK (repeat_activated_cb), list);
 
-    mi = gtk_check_menu_item_new_with_label (_("Repeat"));
-    gtk_widget_set_sensitive (mi, TRUE);
-    gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (mi), val);
-    g_signal_connect (mi, "activate",
-                      G_CALLBACK (repeat_activated_cb), list->priv->conf);
-			      
-    gtk_menu_shell_append (GTK_MENU_SHELL (menu), mi);
-    gtk_widget_show (mi);
-
-    /**
-     * Shuffle playing.
-     **/
     g_object_get (G_OBJECT (list->priv->conf),
 		  "shuffle", &val,
 		  NULL);
 
-    mi = gtk_check_menu_item_new_with_label (_("Shuffle"));
-    gtk_widget_set_sensitive (mi, TRUE);
-    gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (mi), val);
-    g_signal_connect (mi, "activate",
-                      G_CALLBACK (shuffle_activated_cb), list->priv->conf);
+    gtk_check_menu_item_set_active (shuffle_menu, val);
+    g_signal_connect (shuffle_menu, "activate",
+                      G_CALLBACK (shuffle_activated_cb), list);
 			      
-    gtk_menu_shell_append (GTK_MENU_SHELL (menu), mi);
-    gtk_widget_show (mi);
-
-    /**
-     * Separator
-     **/
-    mi = gtk_separator_menu_item_new ();
-    gtk_widget_show (mi);
-    gtk_menu_shell_append (GTK_MENU_SHELL (menu), mi);
-
-    /**
-     * replace playlist
-     **/
     g_object_get (G_OBJECT (list->priv->conf),
 		  "replace-playlist", &val,
 		  NULL);
 
-    mi = gtk_check_menu_item_new_with_label (_("Replace playlist when opening files"));
-    gtk_widget_set_sensitive (mi, TRUE);
-    gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (mi), val);
-    g_signal_connect (mi, "activate",
+    gtk_check_menu_item_set_active (replace, val);
+    g_signal_connect (replace, "activate",
                       G_CALLBACK (replace_list_activated_cb), list->priv->conf);
 			      
-    gtk_menu_shell_append (GTK_MENU_SHELL (menu), mi);
-    gtk_widget_show (mi);
-    
-    /**
-     * Play when files are open.
-     **/
-    
     g_object_get (G_OBJECT (list->priv->conf),
 		  "play-opened-files", &val,
 		  NULL);
-    mi = gtk_check_menu_item_new_with_label (_("Play opened files"));
-    gtk_widget_set_sensitive (mi, TRUE);
-    gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (mi), val);
-    g_signal_connect (mi, "activate",
+    gtk_check_menu_item_set_active (play_opened, val);
+    g_signal_connect (play_opened, "activate",
                       G_CALLBACK (play_opened_files_activated_cb), list->priv->conf);
-			      
-    gtk_menu_shell_append (GTK_MENU_SHELL (menu), mi);
-    gtk_widget_show (mi);
-    
-    /**
-     * Remember media list entries
-     **/
+
     g_object_get (G_OBJECT (list->priv->conf),
 		  "remember-playlist", &val,
 		  NULL);
-    mi = gtk_check_menu_item_new_with_label (_("Remember playlist"));
-    gtk_widget_set_sensitive (mi, TRUE);
-    gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (mi), val);
-    g_signal_connect (mi, "activate",
+    gtk_check_menu_item_set_active (remember, val);
+    g_signal_connect (remember, "activate",
                       G_CALLBACK (remember_playlist_activated_cb), list->priv->conf);
-			      
-    gtk_menu_shell_append (GTK_MENU_SHELL (menu), mi);
+
+    g_signal_connect_swapped (clear, "activate",
+                              G_CALLBACK (parole_media_list_clear_list), list);
+
+    g_signal_connect_swapped (menu, "selection-done",
+                              G_CALLBACK (parole_media_list_destroy_menu), menu);
+                              
+	g_signal_connect_swapped (menu, "destroy",
+                              G_CALLBACK (parole_media_list_hide_menu), list->priv->settings_button);
     
-    gtk_widget_show (mi);
+    gtk_menu_popup (GTK_MENU (menu), 
+                    NULL, NULL,
+                    (GtkMenuPositionFunc) parole_media_list_menu_pos, NULL,
+                    3, gtk_get_current_event_time ());
+}
+
+static void
+parole_media_list_show_menu (ParoleMediaList *list, GdkEventButton *ev)
+{
+    gboolean val;
+    guint button = ev->button; 
+    guint activate_time = ev->time;
     
-    /**
-     * Separator
-     **/
-    mi = gtk_separator_menu_item_new ();
-    gtk_widget_show (mi);
-    gtk_menu_shell_append (GTK_MENU_SHELL (menu), mi);
+    GtkBuilder *builder;
     
+    builder = parole_builder_new_from_string (playlist_ui, playlist_ui_length);
     
-    /* Clear */
-    mi = gtk_image_menu_item_new_from_stock (GTK_STOCK_CLEAR, NULL);
-    gtk_widget_set_sensitive (mi, TRUE);
-    gtk_widget_show (mi);
-    g_signal_connect_swapped (mi, "activate",
-                              G_CALLBACK (parole_media_list_clear_list), list);
-			      
-    gtk_menu_shell_append (GTK_MENU_SHELL (menu), mi);
+    GtkMenu *menu = GTK_MENU (gtk_builder_get_object (builder, "playlist-menu"));
+    GtkCheckMenuItem *repeat_menu = GTK_CHECK_MENU_ITEM (gtk_builder_get_object (builder, "menu-repeat"));
+    GtkCheckMenuItem *shuffle_menu = GTK_CHECK_MENU_ITEM (gtk_builder_get_object (builder, "menu-shuffle"));
+    GtkCheckMenuItem *replace = GTK_CHECK_MENU_ITEM (gtk_builder_get_object (builder, "menu-replace"));
+    GtkCheckMenuItem *play_opened = GTK_CHECK_MENU_ITEM (gtk_builder_get_object (builder, "menu-play-opened"));
+    GtkCheckMenuItem *remember = GTK_CHECK_MENU_ITEM (gtk_builder_get_object (builder, "menu-remember"));
+    GtkMenuItem *clear = GTK_MENU_ITEM (gtk_builder_get_object (builder, "menu-clear"));
     
+    parole_media_list_add_open_containing_folder (list, GTK_WIDGET(menu), (gint)ev->x, (gint)ev->y);
+
+    g_object_get (G_OBJECT (list->priv->conf),
+		  "repeat", &val,
+		  NULL);
+    gtk_check_menu_item_set_active (repeat_menu, val);
+    g_signal_connect (repeat_menu, "activate",
+                      G_CALLBACK (repeat_activated_cb), list);
+
+    g_object_get (G_OBJECT (list->priv->conf),
+		  "shuffle", &val,
+		  NULL);
+
+    gtk_check_menu_item_set_active (shuffle_menu, val);
+    g_signal_connect (shuffle_menu, "activate",
+                      G_CALLBACK (shuffle_activated_cb), list);
+			      
+    g_object_get (G_OBJECT (list->priv->conf),
+		  "replace-playlist", &val,
+		  NULL);
+
+    gtk_check_menu_item_set_active (replace, val);
+    g_signal_connect (replace, "activate",
+                      G_CALLBACK (replace_list_activated_cb), list->priv->conf);
+			      
+    g_object_get (G_OBJECT (list->priv->conf),
+		  "play-opened-files", &val,
+		  NULL);
+    gtk_check_menu_item_set_active (play_opened, val);
+    g_signal_connect (play_opened, "activate",
+                      G_CALLBACK (play_opened_files_activated_cb), list->priv->conf);
+
+    g_object_get (G_OBJECT (list->priv->conf),
+		  "remember-playlist", &val,
+		  NULL);
+    gtk_check_menu_item_set_active (remember, val);
+    g_signal_connect (remember, "activate",
+                      G_CALLBACK (remember_playlist_activated_cb), list->priv->conf);
+
+    g_signal_connect_swapped (clear, "activate",
+                              G_CALLBACK (parole_media_list_clear_list), list);
+
     g_signal_connect_swapped (menu, "selection-done",
                               G_CALLBACK (parole_media_list_destroy_menu), menu);
     
@@ -1502,14 +1549,18 @@ parole_media_list_init (ParoleMediaList *list)
     
     parole_media_list_setup_view (list);
     
-    gtk_builder_connect_signals (builder, list);
-
     gtk_box_pack_start (GTK_BOX (list), box, TRUE, TRUE, 0);
+    
+    list->priv->remove_button = GTK_WIDGET (gtk_builder_get_object (builder, "remove-media"));
+    list->priv->clear_button = GTK_WIDGET (gtk_builder_get_object (builder, "clear-media"));
+    list->priv->repeat_button = GTK_WIDGET (gtk_builder_get_object (builder, "repeat-media"));
+    list->priv->shuffle_button = GTK_WIDGET (gtk_builder_get_object (builder, "shuffle-media"));
+    list->priv->settings_button = GTK_WIDGET (gtk_builder_get_object (builder, "settings"));
+    
+    g_signal_connect (GTK_TOGGLE_BUTTON(list->priv->settings_button), "toggled",
+		      G_CALLBACK (parole_media_list_show_button_menu), list);
 
-    list->priv->remove = GTK_WIDGET (gtk_builder_get_object (builder, "remove-media"));
-    list->priv->clear = GTK_WIDGET (gtk_builder_get_object (builder, "clear-media"));
-    list->priv->repeat = GTK_WIDGET (gtk_builder_get_object (builder, "repeat-media"));
-    list->priv->shuffle = GTK_WIDGET (gtk_builder_get_object (builder, "shuffle-media"));
+    gtk_builder_connect_signals (builder, list);
 
     g_object_unref (builder);
     
@@ -1910,10 +1961,12 @@ parole_media_list_set_repeat_toggled (ParoleMediaList *list,
 {
 	gboolean toggled;
     
-    toggled = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (list->priv->repeat));
+    toggled = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (list->priv->repeat_button));
     
     if (toggled != repeat_toggled)
-    	gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON (list->priv->repeat), repeat_toggled );
+    {
+    	gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON (list->priv->repeat_button), repeat_toggled );
+	}
 }
 																
 void 
@@ -1922,8 +1975,10 @@ parole_media_list_set_shuffle_toggled (ParoleMediaList *list,
 {
 	gboolean toggled;
     
-    toggled = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (list->priv->shuffle));
+    toggled = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (list->priv->shuffle_button));
     
     if (toggled != shuffle_toggled)
-    	gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON (list->priv->shuffle), shuffle_toggled );
+    {
+    	gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON (list->priv->shuffle_button), shuffle_toggled );
+	}
 }


More information about the Xfce4-commits mailing list