Qt: Use temporary game list entry for properties of playlists

Doesn't provide full functionality, but this is not a supported setup
and it's better than only making the first disc accessible.
This commit is contained in:
Stenzek
2026-01-06 14:57:05 +10:00
parent bff1f473d6
commit ace6cd2da4
2 changed files with 6 additions and 2 deletions

View File

@@ -1647,7 +1647,9 @@ bool FullscreenUI::SwitchToGameSettingsForPath(const std::string& path, Settings
{
auto lock = GameList::GetLock();
const GameList::Entry* entry = !path.empty() ? GameList::GetEntryForPath(path) : nullptr;
if (!entry || entry->serial.empty())
// playlists will always contain the first disc's serial, so use the current game instead
if (!entry || entry->serial.empty() || entry->type == GameList::EntryType::Playlist)
{
Host::RunOnCoreThread([page]() {
Error error;

View File

@@ -2782,7 +2782,9 @@ void MainWindow::openGamePropertiesForCurrentGame(const char* category /* = null
// show for first disc instead
entry = GameList::GetFirstDiscSetMember(entry->dbentry->disc_set);
}
if (entry)
// playlists will always contain the first disc's serial, so use the current game instead
if (entry && entry->type != GameList::EntryType::Playlist)
SettingsWindow::openGamePropertiesDialog(entry, category);
else
g_core_thread->openGamePropertiesForCurrentGame(category ? QString::fromUtf8(category) : QString());