Update of /cvsroot/gtkpod/gtkpod/src
In directory sc8-pr-cvs2.sourceforge.net:/tmp/cvs-serv14251/src
Modified Files:
Tag: coverart_display_development_branch
display_coverart.c display_sorttabs.c misc_confirm.c
display_coverart.h
Log Message:
- fire_display_change attribute changed to block_display_change and function
created for externally setting it if required.
- fix to avoid sigsegv in display_sorttabs.c. coverart_select_cover() only
called if list has not been deleted.
- Deafen coverart_select_cover() while deletion of tracks is taking place.
Index: display_coverart.c
===================================================================
RCS file: /cvsroot/gtkpod/gtkpod/src/Attic/display_coverart.c,v
retrieving revision 1.1.2.5
retrieving revision 1.1.2.6
diff -u -d -r1.1.2.5 -r1.1.2.6
--- display_coverart.c 8 Feb 2007 00:25:41 -0000 1.1.2.5
+++ display_coverart.c 12 Feb 2007 23:06:09 -0000 1.1.2.6
@@ -407,13 +407,13 @@
/* Stop redisplay of the artwork as its already
* in the correct location
*/
- cdwidget->fire_display_change = FALSE;
+ coverart_block_change (TRUE);
/* Select the correct track in the sorttabs */
status = st_set_selection (cover->track);
/* Turn the display change back on */
- cdwidget->fire_display_change = TRUE;
+ coverart_block_change (FALSE);
g_return_if_fail (status);
}
@@ -822,7 +822,7 @@
g_signal_connect (G_OBJECT(cdwidget->cdslider), "value-changed",
G_CALLBACK(on_cover_display_slider_value_changed), NULL);
- cdwidget->fire_display_change = TRUE;
+ coverart_block_change (FALSE);
gtk_widget_show_all (cdwidget->contentpanel);
}
@@ -872,7 +872,7 @@
gint displaytotal, index;
/* Only select covers if fire display change is enabled */
- if (! cdwidget->fire_display_change)
+ if (cdwidget->block_display_change)
return;
displaytotal = g_list_length(cdwidget->displaytracks);
@@ -961,7 +961,7 @@
/* Ensure that the setting of images hasnt been turned off
* due to being in the middle of a selection operation
*/
- if (! cdwidget->fire_display_change)
+ if (cdwidget->block_display_change)
return;
cover_window = gtkpod_xml_get_widget (main_window_xml,
"cover_display_window");
@@ -1006,3 +1006,8 @@
debug_albums ();
printf("######### END OF ORIGINAL LINE UP #######\n");*/
}
+
+void coverart_block_change (gboolean val)
+{
+ cdwidget->block_display_change = val;
+}
Index: display_sorttabs.c
===================================================================
RCS file: /cvsroot/gtkpod/gtkpod/src/display_sorttabs.c,v
retrieving revision 1.85.2.4
retrieving revision 1.85.2.5
diff -u -d -r1.85.2.4 -r1.85.2.5
--- display_sorttabs.c 8 Feb 2007 00:25:42 -0000 1.85.2.4
+++ display_sorttabs.c 12 Feb 2007 23:06:10 -0000 1.85.2.5
@@ -2031,7 +2031,6 @@
Playlist *plitem = pm_get_selected_playlist ();
coverart_set_images (plitem->members);
-
}
gboolean st_set_selection (Itdb_Track *track)
@@ -2209,8 +2208,12 @@
/* Select the cover in the coverart_display */
GList *gl = g_list_first(new_entry->members);
- Track *track = gl->data;
- coverart_select_cover (track->album);
+ if (gl != NULL)
+ {
+ Track *track = gl->data;
+ if (track != NULL)
+ coverart_select_cover (track->album);
+ }
}
#if DEBUG_TIMING
Index: misc_confirm.c
===================================================================
RCS file: /cvsroot/gtkpod/gtkpod/src/misc_confirm.c,v
retrieving revision 1.44.2.1
retrieving revision 1.44.2.2
diff -u -d -r1.44.2.1 -r1.44.2.2
--- misc_confirm.c 8 Feb 2007 00:25:42 -0000 1.44.2.1
+++ misc_confirm.c 12 Feb 2007 23:06:10 -0000 1.44.2.2
@@ -249,6 +249,9 @@
/* should never happen */
if (!dd->tracks) delete_track_cancel (dd);
+ /* Deafen the coverart display while deletion is occurring */
+ coverart_block_change (TRUE);
+
/* nr of tracks to be deleted */
n = g_list_length (dd->tracks);
if (dd->itdb->usertype & GP_ITDB_TYPE_IPOD)
@@ -309,7 +312,9 @@
gp_playlist_remove_track (dd->pl, l->data, dd->deleteaction);
}
- /* Update the coverart display and ensure it is sorted
correctly */
+ /* Awaken coverart selection and update the
+ * coverart display and ensure it is sorted correctly */
+ coverart_block_change (FALSE);
coverart_set_images (dd->pl->members);
g_list_free (dd->tracks);
g_free (dd);
Index: display_coverart.h
===================================================================
RCS file: /cvsroot/gtkpod/gtkpod/src/Attic/display_coverart.h,v
retrieving revision 1.1.2.5
retrieving revision 1.1.2.6
diff -u -d -r1.1.2.5 -r1.1.2.6
--- display_coverart.h 8 Feb 2007 00:25:42 -0000 1.1.2.5
+++ display_coverart.h 12 Feb 2007 23:06:10 -0000 1.1.2.6
@@ -32,7 +32,7 @@
GPtrArray *cdcovers;
GList *displaytracks;
gint first_imgindex;
- gboolean fire_display_change;
+ gboolean block_display_change;
} CD_Widget;
void init_default_file (gchar *progpath);
@@ -40,6 +40,7 @@
void coverart_select_cover (gchar *album);
void coverart_set_images (GList *tracks);
void coverart_clear_images ();
+void coverart_block_change ();
gint sort_tracks (Itdb_Track *a, Itdb_Track *b);
#endif
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier.
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
gtkpod-cvs2 mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/gtkpod-cvs2