diff --git a/data/data.qrc b/data/data.qrc index 8d1da3038..757a5756f 100644 --- a/data/data.qrc +++ b/data/data.qrc @@ -172,6 +172,8 @@ icons/32x32/phone-palm-pre.png icons/32x32/phone.png icons/32x32/qtlogo.png + icons/32x32/rate-disabled.png + icons/32x32/rate-enabled.png icons/32x32/search.png icons/32x32/tools-wizard.png icons/32x32/view-choose.png diff --git a/src/ui/mainwindow.cpp b/src/ui/mainwindow.cpp index e679960a5..d055bfcb9 100644 --- a/src/ui/mainwindow.cpp +++ b/src/ui/mainwindow.cpp @@ -1163,17 +1163,29 @@ void MainWindow::MediaPlaying() { IconLoader::Load("media-playback-pause", IconLoader::Base)); ui_->action_play_pause->setText(tr("Pause")); - bool enable_play_pause = !(app_->player()->GetCurrentItem()->options() & - PlaylistItem::PauseDisabled); + const PlaylistItemPtr item = app_->player()->GetCurrentItem(); + + bool enable_play_pause = !(item->options() & PlaylistItem::PauseDisabled); ui_->action_play_pause->setEnabled(enable_play_pause); - bool can_seek = !(app_->player()->GetCurrentItem()->options() & - PlaylistItem::SeekDisabled); + bool can_seek = !(item->options() & PlaylistItem::SeekDisabled); ui_->track_slider->SetCanSeek(can_seek); // We now always enable Love when playing since it works for local files ui_->action_love->setEnabled(true); + // Set the rate/love icon + if (item) { + if (item->IsLocalLibraryItem()) { + ui_->action_love->setIcon(IconLoader::Load("rate-enabled", + IconLoader::Base)); + } + else { + ui_->action_love->setIcon(IconLoader::Load("love", + IconLoader::Lastfm)); + } + } + #ifdef HAVE_LIBLASTFM bool enable_love = app_->scrobbler()->IsScrobblingEnabled(); if (tray_icon_) {