Esempio n. 1
0
static void
pragha_art_cache_changed_handler (PraghaArtCache *cache, PraghaApplication *pragha)
{
	PraghaBackend *backend;
	PraghaToolbar *toolbar;
	PraghaMusicobject *mobj = NULL;
	gchar *album_art_path = NULL;
	const gchar *artist = NULL, *album = NULL;

	backend = pragha_application_get_backend (pragha);
	if (pragha_backend_get_state (backend) != ST_STOPPED) {
		mobj = pragha_backend_get_musicobject (backend);

		artist = pragha_musicobject_get_artist (mobj);
		album = pragha_musicobject_get_album (mobj);

		album_art_path = pragha_art_cache_get_album_uri (cache, artist, album);

		if (album_art_path) {
			toolbar = pragha_application_get_toolbar (pragha);
			pragha_toolbar_set_image_album_art (toolbar, album_art_path);
			g_free (album_art_path);
		}
	}
}
Esempio n. 2
0
static void
pragha_playlist_update_change_tags (PraghaPlaylist *playlist, gint changed, PraghaMusicobject *mobj, PraghaApplication *pragha)
{
	PraghaBackend *backend;
	PraghaToolbar *toolbar;
	PraghaMusicobject *cmobj = NULL;

	backend = pragha_application_get_backend (pragha);

	if(pragha_backend_get_state (backend) != ST_STOPPED) {
		cmobj = pragha_backend_get_musicobject (backend);
		pragha_update_musicobject_change_tag (cmobj, changed, mobj);

		toolbar = pragha_application_get_toolbar (pragha);
		pragha_toolbar_set_title (toolbar, cmobj);
	}
}
Esempio n. 3
0
static void on_media_player_key_pressed(con_gnome_media_keys *gmk,
                                        const gchar *key)
{
	PraghaBackend *backend;
	PraghaPreferences *preferences;

    PraghaApplication *pragha = gmk->pragha;

	backend = pragha_application_get_backend (pragha);
	preferences = pragha_application_get_preferences (pragha);

    if (pragha_backend_emitted_error (backend))
        return;

    if (g_strcmp0("Play", key) == 0)
        pragha_playback_play_pause_resume(pragha);
    else if (g_strcmp0("Pause", key) == 0)
        pragha_backend_pause (backend);
    else if (g_strcmp0("Stop", key) == 0)
        pragha_playback_stop(pragha);
    else if (g_strcmp0("Previous", key) == 0)
        pragha_playback_prev_track(pragha);
    else if (g_strcmp0("Next", key) == 0)
        pragha_playback_next_track(pragha);
    else if (g_strcmp0("Repeat", key) == 0)
    {
        gboolean repeat = pragha_preferences_get_repeat (preferences);
        pragha_preferences_set_repeat (preferences, !repeat);
    }
    else if (g_strcmp0("Shuffle", key) == 0)
    {
        gboolean shuffle = pragha_preferences_get_shuffle (preferences);
        pragha_preferences_set_shuffle (preferences, !shuffle);
    }

    //XXX missed buttons: "Rewind" and "FastForward"
}