/* Tell the server to move them. The log will tell us about the change (if
* indeed it succeeds!), so no need to rearrange the model now. */
disorder_eclient_moveafter(client,
+ queue_drop_completed,
after_me ? after_me->id : "",
- ntracks, (const char **)ids,
- queue_drop_completed, NULL);
+ (char **)ids, ntracks,
+ NULL);
} else {
/* You can't tell the server to insert after the playing track by ID, you
* have to send "". */
after_me = NULL;
/* Play the tracks */
disorder_eclient_playafter(client,
+ queue_drop_completed,
after_me ? after_me->id : "",
- ntracks, (const char **)tracks,
- queue_drop_completed, NULL);
+ (char **)tracks, ntracks,
+ NULL);
}
}
/** @brief Pop-up menu for queue */
static struct menuitem queue_menuitems[] = {
- { "Track properties", ql_properties_activate, ql_properties_sensitive, 0, 0 },
- { "Select all tracks", ql_selectall_activate, ql_selectall_sensitive, 0, 0 },
- { "Deselect all tracks", ql_selectnone_activate, ql_selectnone_sensitive, 0, 0 },
- { "Scratch playing track", ql_scratch_activate, ql_scratch_sensitive, 0, 0 },
- { "Remove track from queue", ql_remove_activate, ql_remove_sensitive, 0, 0 },
- { "Adopt track", ql_adopt_activate, ql_adopt_sensitive, 0, 0 },
+ { "Track properties", GTK_STOCK_PROPERTIES, ql_properties_activate, ql_properties_sensitive, 0, 0 },
+ { "Select all tracks", GTK_STOCK_SELECT_ALL, ql_selectall_activate, ql_selectall_sensitive, 0, 0 },
+ { "Deselect all tracks", NULL, ql_selectnone_activate, ql_selectnone_sensitive, 0, 0 },
+ { "Scratch playing track", GTK_STOCK_STOP, ql_scratch_activate, ql_scratch_sensitive, 0, 0 },
+ { "Remove track from queue", GTK_STOCK_DELETE, ql_remove_activate, ql_remove_sensitive, 0, 0 },
+ { "Adopt track", NULL, ql_adopt_activate, ql_adopt_sensitive, 0, 0 },
};
static const GtkTargetEntry queue_targets[] = {
GtkLabel *w = callbackdata;
if(playing_track) {
+ const char *artist = namepart(playing_track->track, "display", "artist");
+ const char *album = namepart(playing_track->track, "display", "album");
const char *title = namepart(playing_track->track, "display", "title");
const char *ldata = column_length(playing_track, NULL);
if(!ldata)
ldata = "";
char *text;
- fprintf(stderr, "title=%s\n", title);
- fprintf(stderr, "ldata=%s\n", ldata);
- byte_xasprintf(&text, "%s %s", title, ldata);
+ byte_xasprintf(&text, "%s/%s/%s %s", artist, album, title, ldata);
gtk_label_set_text(w, text);
} else
gtk_label_set_text(w, "");
GtkWidget *playing_widget(void) {
GtkWidget *w = gtk_label_new("");
+ gtk_misc_set_alignment(GTK_MISC(w), 1.0, 0);
/* Spot changes to the playing track */
event_register("playing-track-changed",
queue_set_playing_widget,
event_register("periodic-fast",
queue_set_playing_widget,
w);
- return w;
+ return frame_widget(w, NULL);
}
/*