From 0359a01cc89b1bbcf0bd08799d2c8dfd09f609d0 Mon Sep 17 00:00:00 2001 From: mustafa salih Date: Wed, 3 Feb 2021 03:42:05 +0300 Subject: removed some doublicated code --- src/utils/spotify.rs | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'src/utils/spotify.rs') diff --git a/src/utils/spotify.rs b/src/utils/spotify.rs index a73128d..9e5c5da 100644 --- a/src/utils/spotify.rs +++ b/src/utils/spotify.rs @@ -1,14 +1,15 @@ use crate::config::CONFIG; +use crate::types::ThreadsData; use dbus::blocking::stdintf::org_freedesktop_dbus::Properties; use dbus::{arg, blocking::Connection}; use std::time::Duration; - // getting spotify current artist and title. -// FIXME: I know im lazy asshole, this error handling looks ugly, i dont like it too, need to fix soon. -pub fn get_spotify() -> String { + +pub fn get_spotify() -> ThreadsData { + let empty_data = ThreadsData::Spotify(String::from("")); let conn = match Connection::new_session() { Ok(conn) => conn, - _ => return String::from(""), + _ => return empty_data, }; let p = conn.with_proxy( @@ -19,7 +20,7 @@ pub fn get_spotify() -> String { let metadata: arg::PropMap = match p.get("org.mpris.MediaPlayer2.Player", "Metadata") { Ok(data) => data, - _ => return String::from(""), + _ => return empty_data, }; let title: Option<&String> = arg::prop_cast(&metadata, "xesam:title"); @@ -38,8 +39,9 @@ pub fn get_spotify() -> String { None => "", }; - format!( + let data = format!( " {} {} - {} {}", CONFIG.spotify.icon, artist, title, CONFIG.seperator - ) + ); + ThreadsData::Spotify(data) } -- cgit v1.2.3