kraken: Fix errors from rebase and format files

This commit is contained in:
german77
2021-10-15 19:07:47 -05:00
committed by Narr the Reg
parent 06a5ef5874
commit e0da5c1bbc
20 changed files with 83 additions and 53 deletions

View File

@ -106,7 +106,6 @@ private:
Core::Frontend::ControllerParameters parameters;
InputCommon::InputSubsystem* input_subsystem;
Core::System& system;
std::unique_ptr<InputProfiles> input_profiles;

View File

@ -74,7 +74,7 @@ ConfigureDialog::ConfigureDialog(QWidget* parent, HotkeyRegistry& registry,
hotkeys_tab->Populate(registry);
setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint);
input_tab->Initialize(input_subsystem);
input_tab->Initialize(input_subsystem, system_);
general_tab->SetResetCallback([&] { this->close(); });

View File

@ -146,10 +146,11 @@ void ConfigureInput::Initialize(InputCommon::InputSubsystem* input_subsystem, Co
advanced = new ConfigureInputAdvanced(this);
ui->tabAdvanced->setLayout(new QHBoxLayout(ui->tabAdvanced));
ui->tabAdvanced->layout()->addWidget(advanced);
connect(advanced, &ConfigureInputAdvanced::CallDebugControllerDialog, [this, input_subsystem] {
CallConfigureDialog<ConfigureDebugController>(*this, input_subsystem, profiles.get(),
system);
});
connect(advanced, &ConfigureInputAdvanced::CallDebugControllerDialog,
[this, input_subsystem, &system] {
CallConfigureDialog<ConfigureDebugController>(*this, input_subsystem,
profiles.get(), system);
});
connect(advanced, &ConfigureInputAdvanced::CallMouseConfigDialog, [this, input_subsystem] {
CallConfigureDialog<ConfigureMouseAdvanced>(*this, input_subsystem);
});

View File

@ -19,15 +19,11 @@ PlayerControlPreview::PlayerControlPreview(QWidget* parent) : QFrame(parent) {
}
PlayerControlPreview::~PlayerControlPreview() {
if (is_controller_set) {
controller->DeleteCallback(callback_key);
}
UnloadController();
};
void PlayerControlPreview::SetController(Core::HID::EmulatedController* controller_) {
if (is_controller_set) {
controller->DeleteCallback(callback_key);
}
UnloadController();
is_controller_set = true;
controller = controller_;
Core::HID::ControllerUpdateCallback engine_callback{
@ -36,14 +32,21 @@ void PlayerControlPreview::SetController(Core::HID::EmulatedController* controll
ControllerUpdate(Core::HID::ControllerTriggerType::All);
}
void PlayerControlPreview::BeginMappingButton(std::size_t index) {
button_mapping_index = index;
void PlayerControlPreview::UnloadController() {
if (is_controller_set) {
controller->DeleteCallback(callback_key);
is_controller_set = false;
}
}
void PlayerControlPreview::BeginMappingButton(std::size_t button_id) {
button_mapping_index = button_id;
mapping_active = true;
}
void PlayerControlPreview::BeginMappingAnalog(std::size_t index) {
button_mapping_index = Settings::NativeButton::LStick + index;
analog_mapping_index = index;
void PlayerControlPreview::BeginMappingAnalog(std::size_t stick_id) {
button_mapping_index = Settings::NativeButton::LStick + stick_id;
analog_mapping_index = stick_id;
mapping_active = true;
}

View File

@ -25,11 +25,25 @@ public:
explicit PlayerControlPreview(QWidget* parent);
~PlayerControlPreview() override;
// Sets the emulated controller to be displayed
void SetController(Core::HID::EmulatedController* controller);
// Disables events from the emulated controller
void UnloadController();
// Starts blinking animation at the button specified
void BeginMappingButton(std::size_t button_id);
void BeginMappingAnalog(std::size_t button_id);
// Starts moving animation at the stick specified
void BeginMappingAnalog(std::size_t stick_id);
// Stops any ongoing animation
void EndMapping();
// Handles emulated controller events
void ControllerUpdate(Core::HID::ControllerTriggerType type);
// Updates input on sheduled interval
void UpdateInput();
protected:

View File

@ -10,7 +10,8 @@
#include "yuzu/configuration/configure_input_player_widget.h"
#include "yuzu/debugger/controller.h"
ControllerDialog::ControllerDialog(QWidget* parent) : QWidget(parent, Qt::Dialog) {
ControllerDialog::ControllerDialog(Core::System& system, QWidget* parent)
: QWidget(parent, Qt::Dialog) {
setObjectName(QStringLiteral("Controller"));
setWindowTitle(tr("Controller P1"));
resize(500, 350);
@ -20,7 +21,7 @@ ControllerDialog::ControllerDialog(QWidget* parent) : QWidget(parent, Qt::Dialog
Qt::WindowMaximizeButtonHint);
widget = new PlayerControlPreview(this);
widget->SetController(Core::System::GetInstance().HIDCore().GetEmulatedController(
widget->SetController(system.HIDCore().GetEmulatedController(
Core::HID::NpadIdType::Player1));
QLayout* layout = new QVBoxLayout(this);
layout->setContentsMargins(0, 0, 0, 0);
@ -45,6 +46,10 @@ QAction* ControllerDialog::toggleViewAction() {
return toggle_view_action;
}
void ControllerDialog::UnloadController() {
widget->UnloadController();
}
void ControllerDialog::showEvent(QShowEvent* ev) {
if (toggle_view_action) {
toggle_view_action->setChecked(isVisible());

View File

@ -11,6 +11,10 @@ class QHideEvent;
class QShowEvent;
class PlayerControlPreview;
namespace Core {
class System;
}
namespace InputCommon {
class InputSubsystem;
}
@ -19,11 +23,14 @@ class ControllerDialog : public QWidget {
Q_OBJECT
public:
explicit ControllerDialog(QWidget* parent = nullptr);
explicit ControllerDialog(Core::System& system, QWidget* parent = nullptr);
/// Returns a QAction that can be used to toggle visibility of this dialog.
QAction* toggleViewAction();
// Disables events from the emulated controller
void UnloadController();
protected:
void showEvent(QShowEvent* ev) override;
void hideEvent(QHideEvent* ev) override;

View File

@ -228,7 +228,7 @@ GMainWindow::GMainWindow()
ConnectMenuEvents();
ConnectWidgetEvents();
Core::System::GetInstance().HIDCore().ReloadInputDevices();
system->HIDCore().ReloadInputDevices();
const auto branch_name = std::string(Common::g_scm_branch);
const auto description = std::string(Common::g_scm_desc);
@ -924,7 +924,7 @@ void GMainWindow::InitializeDebugWidgets() {
waitTreeWidget->hide();
debug_menu->addAction(waitTreeWidget->toggleViewAction());
controller_dialog = new ControllerDialog(this);
controller_dialog = new ControllerDialog(*system, this);
controller_dialog->hide();
debug_menu->addAction(controller_dialog->toggleViewAction());
@ -3372,7 +3372,8 @@ void GMainWindow::closeEvent(QCloseEvent* event) {
UpdateUISettings();
game_list->SaveInterfaceLayout();
hotkey_registry.SaveHotkeys();
Core::System::GetInstance().HIDCore().UnloadInputDevices();
controller_dialog->UnloadController();
system->HIDCore().UnloadInputDevices();
// Shutdown session if the emu thread is active...
if (emu_thread != nullptr) {