From 798ac4748748d5562e7b9211ac96eeb7d0dc25af Mon Sep 17 00:00:00 2001 From: ITotalJustice <47043333+ITotalJustice@users.noreply.github.com> Date: Sat, 24 May 2025 22:17:12 +0100 Subject: [PATCH] limit fs hash to a single file. --- sphaira/source/ui/menus/filebrowser.cpp | 32 +++++++++++++------------ 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/sphaira/source/ui/menus/filebrowser.cpp b/sphaira/source/ui/menus/filebrowser.cpp index 52042a1..86f23d3 100644 --- a/sphaira/source/ui/menus/filebrowser.cpp +++ b/sphaira/source/ui/menus/filebrowser.cpp @@ -676,23 +676,25 @@ FsView::FsView(Menu* menu, const fs::FsPath& path, const FsEntry& entry, ViewSid })); } - options->Add(std::make_shared("Hash"_i18n, [this](){ - auto options = std::make_shared("Hash Options"_i18n, Sidebar::Side::RIGHT); - ON_SCOPE_EXIT(App::Push(options)); + if (IsSd() && m_entries_current.size() && !m_selected_count && GetEntry().IsFile()) { + options->Add(std::make_shared("Hash"_i18n, [this](){ + auto options = std::make_shared("Hash Options"_i18n, Sidebar::Side::RIGHT); + ON_SCOPE_EXIT(App::Push(options)); - options->Add(std::make_shared("CRC32"_i18n, [this](){ - DisplayHash(hash::Type::Crc32); + options->Add(std::make_shared("CRC32"_i18n, [this](){ + DisplayHash(hash::Type::Crc32); + })); + options->Add(std::make_shared("MD5"_i18n, [this](){ + DisplayHash(hash::Type::Md5); + })); + options->Add(std::make_shared("SHA1"_i18n, [this](){ + DisplayHash(hash::Type::Sha1); + })); + options->Add(std::make_shared("SHA256"_i18n, [this](){ + DisplayHash(hash::Type::Sha256); + })); })); - options->Add(std::make_shared("MD5"_i18n, [this](){ - DisplayHash(hash::Type::Md5); - })); - options->Add(std::make_shared("SHA1"_i18n, [this](){ - DisplayHash(hash::Type::Sha1); - })); - options->Add(std::make_shared("SHA256"_i18n, [this](){ - DisplayHash(hash::Type::Sha256); - })); - })); + } options->Add(std::make_shared("Ignore read only"_i18n, m_menu->m_ignore_read_only.Get(), [this](bool& v_out){ m_menu->m_ignore_read_only.Set(v_out);