Use fallback only if no player was requested;

Request no player by default
pull/264/head
Lars Krämer 4 years ago
parent 9a34b55498
commit 6dd08c89bc

@ -157,7 +157,9 @@ bool dbus_manager::get_media_player_metadata(metadata& meta, std::string name) {
bool dbus_manager::init(const std::string& requested_player) {
if (m_inited) return true;
m_requested_player = "org.mpris.MediaPlayer2." + requested_player;
if(not requested_player.empty()){
m_requested_player = "org.mpris.MediaPlayer2." + requested_player;
}
if (!m_dbus_ldr.IsLoaded() && !m_dbus_ldr.Load("libdbus-1.so.3")) {
std::cerr << "MANGOHUD: Could not load libdbus-1.so.3\n";
@ -191,22 +193,29 @@ bool dbus_manager::select_active_player() {
auto old_active_player = m_active_player;
m_active_player = "";
metadata meta{};
// If the requested player is available, use it
if (m_name_owners.count(m_requested_player) > 0) {
m_active_player = m_requested_player;
std::cerr << "Selecting requested player: " << m_requested_player
<< "\n";
get_media_player_metadata(meta, m_active_player);
if(not m_requested_player.empty()){
std::cerr << "Requested player: " << m_requested_player << "\n";
// If the requested player is available, use it
if (m_name_owners.count(m_requested_player) > 0) {
m_active_player = m_requested_player;
std::cerr << "Selecting requested player: " << m_requested_player
<< "\n";
get_media_player_metadata(meta, m_active_player);
}
}
// Else, use any player that is currently playing..
if (m_active_player.empty()) {
for (const auto& entry : m_name_owners) {
const auto& name = std::get<0>(entry);
get_media_player_metadata(meta, name);
if (meta.playing) {
m_active_player = name;
std::cerr << "Selecting fallback player: " << name << "\n";
else {
// If no player is requested, use any player that is currently playing
if (m_active_player.empty()) {
for (const auto& entry : m_name_owners) {
const auto& name = std::get<0>(entry);
get_media_player_metadata(meta, name);
if (meta.playing) {
m_active_player = name;
std::cerr << "Selecting fallback player: " << name << "\n";
}
else {
meta = {};
}
}
}
}

@ -423,7 +423,7 @@ parse_overlay_config(struct overlay_params *params,
params->background_color = 0x020202;
params->text_color = 0xffffff;
params->media_player_color = 0xffffff;
params->media_player_name = "spotify";
params->media_player_name = "";
params->font_scale = 1.0f;
params->font_scale_media_player = 0.55f;
params->log_interval = 100;

Loading…
Cancel
Save