use crate::player::RepeatMode;
use gtk::prelude::*;
pub fn set_love_appearance(button: >k::Button, loved: bool) {
if loved {
button.add_css_class("loved-heart");
button.set_tooltip_text(Some("Unlove"));
} else {
button.remove_css_class("loved-heart");
button.set_tooltip_text(Some("Love on Last.fm"));
}
}
pub fn apply_repeat(repeat: >k::Button, mode: RepeatMode) {
match mode {
RepeatMode::Off => {
repeat.set_icon_name("media-playlist-repeat-symbolic");
repeat.set_opacity(0.5);
repeat.remove_css_class("accent-toggle");
}
RepeatMode::All => {
repeat.set_icon_name("media-playlist-repeat-symbolic");
repeat.set_opacity(1.0);
repeat.add_css_class("accent-toggle");
}
RepeatMode::One => {
repeat.set_icon_name("media-playlist-repeat-song-symbolic");
repeat.set_opacity(1.0);
repeat.add_css_class("accent-toggle");
}
}
}
pub fn set_adaptive_accent(color: Option<(u8, u8, u8)>) {
if let Some(controller) = crate::theme::ThemeController::current() {
controller.set_artwork_color(color);
}
}