From caf3ed433550adf16166b3f5304db10bb69ca306 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Rydg=C3=A5rd?= Date: Wed, 9 Sep 2026 12:56:43 -0600 Subject: [PATCH] Firmware screen: don't list details a fonts-only install doesn't have With no kernel modules there's no firmware to speak of - it's the fonts we pulled off a game's disc - and rows reading "Kernel modules: 0 / XMB: No" say nothing. Keep the font count and the size. Co-Authored-By: Claude Opus 5 --- UI/FirmwareScreen.cpp | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/UI/FirmwareScreen.cpp b/UI/FirmwareScreen.cpp index ab042c7376..6bd2e1251a 100644 --- a/UI/FirmwareScreen.cpp +++ b/UI/FirmwareScreen.cpp @@ -82,11 +82,21 @@ void FirmwareScreen::CreateContentViews(UI::ViewGroup *parent) { sy->T("Some system files are present, but not a complete firmware"))); } + // Without any kernel modules there's no firmware here to speak of - it's the fonts we pulled + // off a game's disc, and rows reading "Kernel modules: 0 / XMB: No" say nothing useful. + const bool fullFirmware = info_.kernelModuleCount > 0; + content->Add(new ItemHeader(sy->T("Contents"))); content->Add(new InfoItem(sy->T("Fonts"), info_.fontCount)); - content->Add(new InfoItem(sy->T("Kernel modules"), info_.kernelModuleCount)); - content->Add(new InfoItem(sy->T("XMB (VSH)"), info_.hasVsh ? di->T("Yes") : di->T("No"))); - content->Add(new InfoItem(sy->T("Files"), info_.fileCount)); + if (fullFirmware) { + content->Add(new InfoItem(sy->T("Kernel modules"), info_.kernelModuleCount)); + } + if (fullFirmware || info_.hasVsh) { + content->Add(new InfoItem(sy->T("XMB (VSH)"), info_.hasVsh ? di->T("Yes") : di->T("No"))); + } + if (fullFirmware) { + content->Add(new InfoItem(sy->T("Files"), info_.fileCount)); + } content->Add(new InfoItem(st->T("Size"), NiceSizeFormat(info_.totalSize))); content->Add(new ItemHeader(iz->T("Install into folder")));