diff --git a/src/frontend_common/data_manager.cpp b/src/frontend_common/data_manager.cpp index 1df828d028..48835086d3 100644 --- a/src/frontend_common/data_manager.cpp +++ b/src/frontend_common/data_manager.cpp @@ -51,14 +51,16 @@ u64 ClearDir(DataDir dir, const std::string &user_id) const std::string ReadableBytesSize(u64 size) { - static constexpr std::array units{"B", "KiB", "MiB", "GiB", "TiB", "PiB"}; + static constexpr u64 base = 1000; + static constexpr std::array units{"B", "KB", "MB", "GB", "TB", "PB"}; + if (size == 0) { return "0 B"; } - const int digit_groups = (std::min) (static_cast(std::log10(size) / std::log10(1024)), - static_cast(units.size())); - return fmt::format("{:.1f} {}", size / std::pow(1024, digit_groups), units[digit_groups]); + auto const digit_groups = std::min(static_cast(std::log10(size) / std::log10(base)), + static_cast(units.size())); + return fmt::format("{:.1f} {}", size / std::pow(base, digit_groups), units[digit_groups]); } u64 DataDirSize(DataDir dir) diff --git a/src/qt_common/CMakeLists.txt b/src/qt_common/CMakeLists.txt index 2100760d9c..b0e11ab983 100644 --- a/src/qt_common/CMakeLists.txt +++ b/src/qt_common/CMakeLists.txt @@ -19,6 +19,8 @@ add_library(qt_common STATIC util/rom.h util/rom.cpp util/applet.h util/applet.cpp util/compress.h util/compress.cpp + util/fs.h util/fs.cpp + util/display.h util/display.cpp abstract/frontend.h abstract/frontend.cpp abstract/qt_progress_dialog.h abstract/qt_progress_dialog.cpp @@ -27,7 +29,6 @@ add_library(qt_common STATIC qt_compat.h discord/discord.h - util/fs.h util/fs.cpp ) if (UNIX) diff --git a/src/yuzu/util/util.cpp b/src/qt_common/util/display.cpp similarity index 94% rename from src/yuzu/util/util.cpp rename to src/qt_common/util/display.cpp index de9194e61f..0415ec37aa 100644 --- a/src/yuzu/util/util.cpp +++ b/src/qt_common/util/display.cpp @@ -4,7 +4,6 @@ // SPDX-FileCopyrightText: 2015 Citra Emulator Project // SPDX-License-Identifier: GPL-2.0-or-later -#include #include #include @@ -29,13 +28,7 @@ QFont GetMonospaceFont() { } QString ReadableByteSize(qulonglong size) { - static constexpr std::array units{"B", "KB", "MB", "GB", "TB", "PB"}; - if (size == 0) - return {}; - auto const digit_groups = std::min(std::log10(size) / std::log10(1000), units.size()); - return QStringLiteral("%L1 %2") - .arg(size / std::pow(1000, digit_groups), 0, 'f', 1) - .arg(QString::fromUtf8(units[digit_groups])); + return QString::fromStdString(FrontendCommon::DataManager::ReadableBytesSize(size)); } QPixmap CreateCirclePixmapFromColor(const QColor& color) { diff --git a/src/yuzu/util/util.h b/src/qt_common/util/display.h similarity index 100% rename from src/yuzu/util/util.h rename to src/qt_common/util/display.h diff --git a/src/qt_common/util/game.cpp b/src/qt_common/util/game.cpp index e34a388993..c798ef6300 100644 --- a/src/qt_common/util/game.cpp +++ b/src/qt_common/util/game.cpp @@ -11,7 +11,7 @@ #include "qt_common/abstract/frontend.h" #include "qt_common/config/uisettings.h" #include "qt_common/qt_common.h" -#include "yuzu/util/util.h" +#include "qt_common/util/display.h" #include #include diff --git a/src/yuzu/CMakeLists.txt b/src/yuzu/CMakeLists.txt index e505319b3c..cf8e5c861a 100644 --- a/src/yuzu/CMakeLists.txt +++ b/src/yuzu/CMakeLists.txt @@ -158,7 +158,6 @@ add_executable(yuzu debugger/console.h debugger/controller.cpp debugger/controller.h - game_list.cpp game_list.h game_list_p.h @@ -215,8 +214,7 @@ add_executable(yuzu util/sequence_dialog/sequence_dialog.h util/url_request_interceptor.cpp util/url_request_interceptor.h - util/util.cpp - util/util.h + vk_device_info.cpp vk_device_info.h compatdb.cpp diff --git a/src/yuzu/configuration/configure_per_game.cpp b/src/yuzu/configuration/configure_per_game.cpp index d175724288..8e044bdf30 100644 --- a/src/yuzu/configuration/configure_per_game.cpp +++ b/src/yuzu/configuration/configure_per_game.cpp @@ -42,7 +42,7 @@ #include "yuzu/configuration/configure_per_game_addons.h" #include "yuzu/configuration/configure_system.h" #include "qt_common/config/uisettings.h" -#include "yuzu/util/util.h" +#include "qt_common/util/display.h" #include "yuzu/vk_device_info.h" ConfigurePerGame::ConfigurePerGame(QWidget* parent, u64 title_id_, const std::string& file_name, diff --git a/src/yuzu/game_list_p.h b/src/yuzu/game_list_p.h index ea11d34865..422ca46903 100644 --- a/src/yuzu/game_list_p.h +++ b/src/yuzu/game_list_p.h @@ -23,7 +23,7 @@ #include "common/string_util.h" #include "frontend_common/play_time_manager.h" #include "qt_common/config/uisettings.h" -#include "yuzu/util/util.h" +#include "qt_common/util/display.h" enum class GameListItemType { Game = QStandardItem::UserType + 1,