Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion dll/dll/common_includes.h
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@ static inline void reset_LastError()
#endif

// Other libs includes
#include "gamepad/gamepad.h"
// #include "gamepad/gamepad.h"

// Steamsdk includes
#include "steam/steam_api.h"
Expand Down
5 changes: 4 additions & 1 deletion dll/dll/settings.h
Original file line number Diff line number Diff line change
Expand Up @@ -307,7 +307,10 @@ class Settings {
//controller
struct Controller_Settings controller_settings{};
std::string glyphs_directory{};

bool flip_nintendo_layout = false;
bool combine_joycons = true;
uint16 inner_deadzone = 2000;
uint16 outer_deadzone = 3000;

// allow Steam_User_Stats::FindLeaderboard() to always succeed and create the given unknown leaderboard
bool disable_leaderboards_create_unknown = false;
Expand Down
10 changes: 8 additions & 2 deletions dll/dll/steam_controller.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,10 @@

#ifndef __INCLUDED_STEAM_CONTROLLER_H__
#define __INCLUDED_STEAM_CONTROLLER_H__
#define GAMEPAD_COUNT 4

#include "base.h"

#include "gamepad_provider/gamepad_provider.hpp"

struct Controller_Map {
std::map<ControllerDigitalActionHandle_t, std::set<int>> active_digital{};
Expand All @@ -30,10 +31,13 @@ struct Controller_Action {
ControllerHandle_t controller_handle{};
struct Controller_Map active_map{};
ControllerDigitalActionHandle_t active_set{};
std::map<ControllerActionSetHandle_t, struct Controller_Map> active_layers{};

Controller_Action(ControllerHandle_t controller_handle);

void activate_action_set(ControllerDigitalActionHandle_t active_set, std::map<ControllerActionSetHandle_t, struct Controller_Map> &controller_maps);
void activate_action_set_layer(ControllerActionSetHandle_t active_layer, std::map<ControllerActionSetHandle_t, struct Controller_Map> &controller_maps);
void deactivate_action_set_layer(ControllerActionSetHandle_t active_layer);
std::set<int> button_id(ControllerDigitalActionHandle_t handle);
std::pair<std::set<int>, enum EInputSourceMode> analog_id(ControllerAnalogActionHandle_t handle);
};
Expand Down Expand Up @@ -101,14 +105,16 @@ public ISteamInput
std::map<EInputActionOrigin, std::string> steaminput_glyphs{};
std::map<EControllerActionOrigin, std::string> steamcontroller_glyphs{};

std::thread sdl_thread{};
std::thread background_rumble_thread{};
Rumble_Thread_Data *rumble_thread_data{};

bool disabled{};
bool initialized{};
bool explicitly_call_run_frame{};

void set_handles(std::map<std::string, std::map<std::string, std::pair<std::set<std::string>, std::string>>> action_sets);
void set_handles(std::map<std::string, std::map<std::string, std::pair<std::set<std::string>, std::string>>> action_sets,
std::map<std::string, std::map<std::string, std::pair<std::set<std::string>, std::string>>> action_set_layers);

void RunCallbacks();

Expand Down
3,726 changes: 1,874 additions & 1,852 deletions dll/settings_parser.cpp

Large diffs are not rendered by default.

Loading