Skip to content
Snippets Groups Projects
Commit c0c4ed0d authored by Morph's avatar Morph
Browse files

controllers/npad: Connect a controller on init if none are connected

parent 5cafa70d
No related branches found
No related tags found
No related merge requests found
......@@ -224,6 +224,19 @@ void Controller_NPad::OnInit() {
player.connected};
});
// Connect the Player 1 or Handheld controller if none are connected.
if (std::none_of(connected_controllers.begin(), connected_controllers.end(),
[](const ControllerHolder& controller) { return controller.is_connected; })) {
const auto controller = MapSettingsTypeToNPad(Settings::values.players[0].controller_type);
if (controller == NPadControllerType::Handheld) {
Settings::values.players[HANDHELD_INDEX].connected = true;
connected_controllers[HANDHELD_INDEX] = {controller, true};
} else {
Settings::values.players[0].connected = true;
connected_controllers[0] = {controller, true};
}
}
// Account for handheld
if (connected_controllers[HANDHELD_INDEX].is_connected) {
connected_controllers[HANDHELD_INDEX].type = NPadControllerType::Handheld;
......
......@@ -280,7 +280,8 @@ void Config::ReadPlayerValue(std::size_t player_index) {
}
} else {
player.connected =
ReadSetting(QStringLiteral("%1connected").arg(player_prefix), false).toBool();
ReadSetting(QStringLiteral("%1connected").arg(player_prefix), player_index == 0)
.toBool();
player.controller_type = static_cast<Settings::ControllerType>(
qt_config
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment