summaryrefslogtreecommitdiff
path: root/src/yuzu
diff options
context:
space:
mode:
Diffstat (limited to 'src/yuzu')
-rw-r--r--src/yuzu/about_dialog.cpp16
-rw-r--r--src/yuzu/aboutdialog.ui2
-rw-r--r--src/yuzu/configuration/configure_debug.ui10
-rw-r--r--src/yuzu/configuration/configure_input_player.cpp8
-rw-r--r--src/yuzu/main.cpp56
-rw-r--r--src/yuzu/main.h1
6 files changed, 58 insertions, 35 deletions
diff --git a/src/yuzu/about_dialog.cpp b/src/yuzu/about_dialog.cpp
index 695b2ef5f..a2e0e6962 100644
--- a/src/yuzu/about_dialog.cpp
+++ b/src/yuzu/about_dialog.cpp
@@ -9,17 +9,19 @@
#include "yuzu/about_dialog.h"
AboutDialog::AboutDialog(QWidget* parent) : QDialog(parent), ui(new Ui::AboutDialog) {
+ const auto branch_name = std::string(Common::g_scm_branch);
+ const auto description = std::string(Common::g_scm_desc);
const auto build_id = std::string(Common::g_build_id);
- const auto fmt = std::string(Common::g_title_bar_format_idle);
- const auto yuzu_build_version =
- fmt::format(fmt.empty() ? "yuzu Development Build" : fmt, std::string{}, std::string{},
- std::string{}, std::string{}, std::string{}, build_id);
+
+ const auto yuzu_build = fmt::format("yuzu Development Build | {}-{}", branch_name, description);
+ const auto override_build = fmt::format(std::string(Common::g_title_bar_format_idle), build_id);
+ const auto yuzu_build_version = override_build.empty() ? yuzu_build : override_build;
ui->setupUi(this);
ui->labelLogo->setPixmap(QIcon::fromTheme(QStringLiteral("yuzu")).pixmap(200));
- ui->labelBuildInfo->setText(ui->labelBuildInfo->text().arg(
- QString::fromStdString(yuzu_build_version), QString::fromUtf8(Common::g_scm_branch),
- QString::fromUtf8(Common::g_scm_desc), QString::fromUtf8(Common::g_build_date).left(10)));
+ ui->labelBuildInfo->setText(
+ ui->labelBuildInfo->text().arg(QString::fromStdString(yuzu_build_version),
+ QString::fromUtf8(Common::g_build_date).left(10)));
}
AboutDialog::~AboutDialog() = default;
diff --git a/src/yuzu/aboutdialog.ui b/src/yuzu/aboutdialog.ui
index 1b320630c..27d81cd13 100644
--- a/src/yuzu/aboutdialog.ui
+++ b/src/yuzu/aboutdialog.ui
@@ -70,7 +70,7 @@
</sizepolicy>
</property>
<property name="text">
- <string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;%1 | %2-%3 (%4)&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
+ <string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;%1 (%2)&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
diff --git a/src/yuzu/configuration/configure_debug.ui b/src/yuzu/configuration/configure_debug.ui
index d812858b6..c9e60ee08 100644
--- a/src/yuzu/configuration/configure_debug.ui
+++ b/src/yuzu/configuration/configure_debug.ui
@@ -23,7 +23,7 @@
<item>
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
- <widget class="QLabel" name="label_2">
+ <widget class="QLabel" name="label_1">
<property name="text">
<string>Global Log Filter</string>
</property>
@@ -66,7 +66,7 @@
</widget>
</item>
<item>
- <widget class="QLabel" name="label_3">
+ <widget class="QLabel" name="label_2">
<property name="font">
<font>
<italic>true</italic>
@@ -92,7 +92,7 @@
<item>
<layout class="QHBoxLayout" name="horizontalLayout_4">
<item>
- <widget class="QLabel" name="label_4">
+ <widget class="QLabel" name="label_3">
<property name="text">
<string>Arguments String</string>
</property>
@@ -155,7 +155,7 @@
</widget>
</item>
<item>
- <widget class="QLabel" name="label_5">
+ <widget class="QLabel" name="label_4">
<property name="font">
<font>
<italic>true</italic>
@@ -200,7 +200,7 @@
</widget>
</item>
<item>
- <widget class="QLabel" name="label_3">
+ <widget class="QLabel" name="label_5">
<property name="font">
<font>
<italic>true</italic>
diff --git a/src/yuzu/configuration/configure_input_player.cpp b/src/yuzu/configuration/configure_input_player.cpp
index c9318c562..ab3512810 100644
--- a/src/yuzu/configuration/configure_input_player.cpp
+++ b/src/yuzu/configuration/configure_input_player.cpp
@@ -153,6 +153,10 @@ QString ButtonToText(const Common::ParamPackage& param) {
return QObject::tr("Button %1").arg(button_str);
}
+ if (param.Has("motion")) {
+ return QObject::tr("SDL Motion");
+ }
+
return {};
}
@@ -1245,12 +1249,16 @@ void ConfigureInputPlayer::UpdateMappingWithDefaults() {
const auto& device = input_devices[ui->comboDevices->currentIndex()];
auto button_mapping = input_subsystem->GetButtonMappingForDevice(device);
auto analog_mapping = input_subsystem->GetAnalogMappingForDevice(device);
+ auto motion_mapping = input_subsystem->GetMotionMappingForDevice(device);
for (std::size_t i = 0; i < buttons_param.size(); ++i) {
buttons_param[i] = button_mapping[static_cast<Settings::NativeButton::Values>(i)];
}
for (std::size_t i = 0; i < analogs_param.size(); ++i) {
analogs_param[i] = analog_mapping[static_cast<Settings::NativeAnalog::Values>(i)];
}
+ for (std::size_t i = 0; i < motions_param.size(); ++i) {
+ motions_param[i] = motion_mapping[static_cast<Settings::NativeMotion::Values>(i)];
+ }
UpdateUI();
}
diff --git a/src/yuzu/main.cpp b/src/yuzu/main.cpp
index 9e72acbf7..9275cba53 100644
--- a/src/yuzu/main.cpp
+++ b/src/yuzu/main.cpp
@@ -241,14 +241,15 @@ GMainWindow::GMainWindow()
ConnectMenuEvents();
ConnectWidgetEvents();
+ const auto branch_name = std::string(Common::g_scm_branch);
+ const auto description = std::string(Common::g_scm_desc);
const auto build_id = std::string(Common::g_build_id);
- const auto fmt = std::string(Common::g_title_bar_format_idle);
- const auto yuzu_build_version =
- fmt::format(fmt.empty() ? "yuzu Development Build" : fmt, std::string{}, std::string{},
- std::string{}, std::string{}, std::string{}, build_id);
- LOG_INFO(Frontend, "yuzu Version: {} | {}-{}", yuzu_build_version, Common::g_scm_branch,
- Common::g_scm_desc);
+ const auto yuzu_build = fmt::format("yuzu Development Build | {}-{}", branch_name, description);
+ const auto override_build = fmt::format(std::string(Common::g_title_bar_format_idle), build_id);
+ const auto yuzu_build_version = override_build.empty() ? yuzu_build : override_build;
+
+ LOG_INFO(Frontend, "yuzu Version: {}", yuzu_build_version);
#ifdef ARCHITECTURE_x86_64
const auto& caps = Common::GetCPUCaps();
std::string cpu_string = caps.cpu_string;
@@ -1377,7 +1378,7 @@ void GMainWindow::BootGame(const QString& filename, std::size_t program_index) {
game_list->hide();
game_list_placeholder->hide();
}
- status_bar_update_timer.start(2000);
+ status_bar_update_timer.start(500);
async_status_button->setDisabled(true);
multicore_status_button->setDisabled(true);
renderer_status_button->setDisabled(true);
@@ -2101,6 +2102,7 @@ void GMainWindow::OnMenuInstallToNAND() {
QStringList new_files{}; // Newly installed files that do not yet exist in the NAND
QStringList overwritten_files{}; // Files that overwrote those existing in the NAND
QStringList failed_files{}; // Files that failed to install due to errors
+ bool detected_base_install{}; // Whether a base game was attempted to be installed
ui.action_Install_File_NAND->setEnabled(false);
@@ -2126,6 +2128,7 @@ void GMainWindow::OnMenuInstallToNAND() {
while (!future.isFinished()) {
QCoreApplication::processEvents();
+ std::this_thread::sleep_for(std::chrono::milliseconds(1));
}
result = future.result();
@@ -2146,6 +2149,10 @@ void GMainWindow::OnMenuInstallToNAND() {
case InstallResult::Failure:
failed_files.append(QFileInfo(file).fileName());
break;
+ case InstallResult::BaseInstallAttempted:
+ failed_files.append(QFileInfo(file).fileName());
+ detected_base_install = true;
+ break;
}
--remaining;
@@ -2153,6 +2160,13 @@ void GMainWindow::OnMenuInstallToNAND() {
install_progress->close();
+ if (detected_base_install) {
+ QMessageBox::warning(
+ this, tr("Install Results"),
+ tr("To avoid possible conflicts, we discourage users from installing base games to the "
+ "NAND.\nPlease, only use this feature to install updates and DLC."));
+ }
+
const QString install_results =
(new_files.isEmpty() ? QString{}
: tr("%n file(s) were newly installed\n", "", new_files.size())) +
@@ -2214,11 +2228,14 @@ InstallResult GMainWindow::InstallNSPXCI(const QString& filename) {
const auto res =
Core::System::GetInstance().GetFileSystemController().GetUserNANDContents()->InstallEntry(
*nsp, true, qt_raw_copy);
- if (res == FileSys::InstallResult::Success) {
+ switch (res) {
+ case FileSys::InstallResult::Success:
return InstallResult::Success;
- } else if (res == FileSys::InstallResult::OverwriteExisting) {
+ case FileSys::InstallResult::OverwriteExisting:
return InstallResult::Overwrite;
- } else {
+ case FileSys::InstallResult::ErrorBaseInstall:
+ return InstallResult::BaseInstallAttempted;
+ default:
return InstallResult::Failure;
}
}
@@ -2751,24 +2768,19 @@ void GMainWindow::MigrateConfigFiles() {
void GMainWindow::UpdateWindowTitle(const std::string& title_name,
const std::string& title_version) {
- const auto full_name = std::string(Common::g_build_fullname);
const auto branch_name = std::string(Common::g_scm_branch);
const auto description = std::string(Common::g_scm_desc);
const auto build_id = std::string(Common::g_build_id);
- const auto date =
- QDateTime::currentDateTime().toString(QStringLiteral("yyyy-MM-dd")).toStdString();
+ const auto yuzu_title = fmt::format("yuzu | {}-{}", branch_name, description);
+ const auto override_title = fmt::format(std::string(Common::g_title_bar_format_idle), build_id);
+ const auto window_title = override_title.empty() ? yuzu_title : override_title;
if (title_name.empty()) {
- const auto fmt = std::string(Common::g_title_bar_format_idle);
- setWindowTitle(QString::fromStdString(fmt::format(fmt.empty() ? "yuzu {0}| {1}-{2}" : fmt,
- full_name, branch_name, description,
- std::string{}, date, build_id)));
+ setWindowTitle(QString::fromStdString(window_title));
} else {
- const auto fmt = std::string(Common::g_title_bar_format_running);
- setWindowTitle(QString::fromStdString(
- fmt::format(fmt.empty() ? "yuzu {0}| {3} | {6} | {1}-{2}" : fmt, full_name, branch_name,
- description, title_name, date, build_id, title_version)));
+ const auto run_title = fmt::format("{} | {} | {}", window_title, title_name, title_version);
+ setWindowTitle(QString::fromStdString(run_title));
}
}
@@ -2797,7 +2809,7 @@ void GMainWindow::UpdateStatusBar() {
} else {
emu_speed_label->setText(tr("Speed: %1%").arg(results.emulation_speed * 100.0, 0, 'f', 0));
}
- game_fps_label->setText(tr("Game: %1 FPS").arg(results.game_fps, 0, 'f', 0));
+ game_fps_label->setText(tr("Game: %1 FPS").arg(results.average_game_fps, 0, 'f', 0));
emu_frametime_label->setText(tr("Frame: %1 ms").arg(results.frametime * 1000.0, 0, 'f', 2));
emu_speed_label->setVisible(!Settings::values.use_multi_core.GetValue());
diff --git a/src/yuzu/main.h b/src/yuzu/main.h
index 98a608fce..b3a5033ce 100644
--- a/src/yuzu/main.h
+++ b/src/yuzu/main.h
@@ -76,6 +76,7 @@ enum class InstallResult {
Success,
Overwrite,
Failure,
+ BaseInstallAttempted,
};
enum class ReinitializeKeyBehavior {