- fix crash if process_names are ommitted

- minor ui improvements
This commit is contained in:
EinTim23 2025-05-10 21:43:01 +02:00
parent a6f5d3277b
commit 7fc1ac5d5d
2 changed files with 7 additions and 8 deletions

View File

@ -13,6 +13,7 @@
#include "lastfm.hpp"
#include "rsrc.hpp"
#include "utils.hpp"
#include "wx/sizer.h"
std::string lastPlayingSong = "";
std::string lastMediaSource = "";
@ -228,11 +229,8 @@ public:
wxEVT_TEXT, [this, app](wxCommandEvent& event) { app->searchEndpoint = event.GetString().ToStdString(); });
formSizer->Add(searchEndpointInput, 1, wxALL | wxEXPAND, 5);
mainSizer->Add(formSizer, 0, wxEXPAND | wxALL, 5);
// Dropdown
wxBoxSizer* dropdownSizer = new wxBoxSizer(wxHORIZONTAL);
dropdownSizer->Add(new wxStaticText(this, wxID_ANY, "Activity Type:"), 0, wxALL | wxALIGN_CENTER_VERTICAL, 5);
formSizer->Add(new wxStaticText(this, wxID_ANY, "Activity Type:"), 0, wxALL | wxALIGN_CENTER_VERTICAL, 5);
wxString choices[] = {_("Listening"), _("Watching"), _("Playing")};
wxChoice* activityChoice = new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 3, choices);
@ -259,11 +257,12 @@ public:
app->type = typeMap.at(event.GetString());
});
dropdownSizer->Add(activityChoice, 1, wxALL | wxEXPAND, 5);
mainSizer->Add(dropdownSizer, 0, wxEXPAND);
formSizer->Add(activityChoice, 1, wxALL | wxEXPAND, 5);
mainSizer->Add(formSizer, 0, wxEXPAND);
// Process names group
wxStaticBoxSizer* processBox = new wxStaticBoxSizer(wxVERTICAL, this, _("Process names"));
formSizer->Add(new wxStaticText(this, wxID_ANY, _("Process names:")), 0, wxALL | wxALIGN_CENTER_VERTICAL, 5);
wxBoxSizer* processBox = new wxBoxSizer(wxVERTICAL);
wxListBox* listBox = new wxListBox(this, wxID_ANY);

View File

@ -317,7 +317,7 @@ namespace utils {
a.enabled = app.value("enabled", false);
a.type = app.value("type", 2);
for (const auto& process : app["process_names"]) a.processNames.push_back(process.get<std::string>());
for (const auto& process : app.value("process_names", nlohmann::json())) a.processNames.push_back(process.get<std::string>());
ret.apps.push_back(a);
}