aboutsummaryrefslogtreecommitdiff
path: root/src/yuzu
diff options
context:
space:
mode:
authorSchweGELBin <abramjannikmichael06@gmail.com>2026-03-07 20:08:47 +0100
committercrueter <crueter@eden-emu.dev>2026-03-07 20:08:47 +0100
commita02256099164ef8e080505bc958aa6fcfbe7b459 (patch)
tree03c0066df71eba599f210388782dccf9a8fcf237 /src/yuzu
parent11ad71b1e7db5206f074481d642020d1c30dafb1 (diff)
[desktop] tas: add option to disable file overwrite dialog (#3657)
Hello everybody, thank you for letting me participate in the development of the Eden emulator! I've been playing around with the TAS functionality and didn't want to always click "Yes" in the dialog that askes if I want to "Overwrite file of player 1?" after recording the inputs. So I can't record and play TAS files with keybinds only, because I'd still need to switching from my contoller to my keyboard and back. So I added the option "Show recording dialog" into the configure_tas screen. (The final naming and string can be changed of course.) It's a checkbox that is enabled by default (so no changes if ignored), but can be unchecked to disable the popup. The change has been tested on top of the current master branch. I've also created a commit to add the relevant translation data, where german is translated and the rest unfinished. I'm not sure how this would be handled as this project uses transifex for it localization, so I can remove this commit if preferred. Have a great day! - Michi Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3657 Reviewed-by: crueter <crueter@eden-emu.dev> Reviewed-by: CamilleLaVey <camillelavey99@gmail.com> Co-authored-by: SchweGELBin <abramjannikmichael06@gmail.com> Co-committed-by: SchweGELBin <abramjannikmichael06@gmail.com>
Diffstat (limited to 'src/yuzu')
-rw-r--r--src/yuzu/configuration/configure_tas.cpp4
-rw-r--r--src/yuzu/configuration/configure_tas.ui7
-rw-r--r--src/yuzu/main_window.cpp14
3 files changed, 19 insertions, 6 deletions
diff --git a/src/yuzu/configuration/configure_tas.cpp b/src/yuzu/configuration/configure_tas.cpp
index 8bdb987426..75d5a5eeaf 100644
--- a/src/yuzu/configuration/configure_tas.cpp
+++ b/src/yuzu/configuration/configure_tas.cpp
@@ -1,4 +1,4 @@
-// SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project
+// SPDX-FileCopyrightText: Copyright 2026 Eden Emulator Project
// SPDX-License-Identifier: GPL-3.0-or-later
// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project
@@ -35,6 +35,7 @@ void ConfigureTasDialog::LoadConfiguration() {
ui->tas_enable->setChecked(Settings::values.tas_enable.GetValue());
ui->tas_loop_script->setChecked(Settings::values.tas_loop.GetValue());
ui->tas_pause_on_load->setChecked(Settings::values.pause_tas_on_load.GetValue());
+ ui->tas_show_recording_dialog->setChecked(Settings::values.tas_show_recording_dialog.GetValue());
}
void ConfigureTasDialog::ApplyConfiguration() {
@@ -42,6 +43,7 @@ void ConfigureTasDialog::ApplyConfiguration() {
Settings::values.tas_enable.SetValue(ui->tas_enable->isChecked());
Settings::values.tas_loop.SetValue(ui->tas_loop_script->isChecked());
Settings::values.pause_tas_on_load.SetValue(ui->tas_pause_on_load->isChecked());
+ Settings::values.tas_show_recording_dialog.SetValue(ui->tas_show_recording_dialog->isChecked());
}
void ConfigureTasDialog::SetDirectory(DirectoryTarget target, QLineEdit* edit) {
diff --git a/src/yuzu/configuration/configure_tas.ui b/src/yuzu/configuration/configure_tas.ui
index da8f2a86c5..5b4bba53b6 100644
--- a/src/yuzu/configuration/configure_tas.ui
+++ b/src/yuzu/configuration/configure_tas.ui
@@ -78,6 +78,13 @@
</property>
</widget>
</item>
+ <item row="3" column="0" colspan="4">
+ <widget class="QCheckBox" name="tas_show_recording_dialog">
+ <property name="text">
+ <string>Show recording dialog</string>
+ </property>
+ </widget>
+ </item>
</layout>
</widget>
</item>
diff --git a/src/yuzu/main_window.cpp b/src/yuzu/main_window.cpp
index e02e02b413..688078385a 100644
--- a/src/yuzu/main_window.cpp
+++ b/src/yuzu/main_window.cpp
@@ -3665,13 +3665,17 @@ void MainWindow::OnTasRecord() {
const bool is_recording = input_subsystem->GetTas()->Record();
if (!is_recording) {
- is_tas_recording_dialog_active = true;
+ if (Settings::values.tas_show_recording_dialog.GetValue()) {
+ is_tas_recording_dialog_active = true;
- bool answer = question(this, tr("TAS Recording"), tr("Overwrite file of player 1?"),
- QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);
+ bool answer = question(this, tr("TAS Recording"), tr("Overwrite file of player 1?"),
+ QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);
- input_subsystem->GetTas()->SaveRecording(answer);
- is_tas_recording_dialog_active = false;
+ input_subsystem->GetTas()->SaveRecording(answer);
+ is_tas_recording_dialog_active = false;
+ } else {
+ input_subsystem->GetTas()->SaveRecording(true);
+ }
}
OnTasStateChanged();
}