summaryrefslogtreecommitdiffstats
path: root/input/input.c
diff options
context:
space:
mode:
Diffstat (limited to 'input/input.c')
-rw-r--r--input/input.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/input/input.c b/input/input.c
index 8a14d862b3..32ee75b4cf 100644
--- a/input/input.c
+++ b/input/input.c
@@ -173,6 +173,7 @@ struct input_opts {
int ar_rate;
int use_alt_gr;
int use_appleremote;
+ int use_gamepad;
int use_media_keys;
int default_bindings;
int enable_mouse_movements;
@@ -199,6 +200,9 @@ const struct m_sub_options input_config = {
#if HAVE_COCOA
OPT_FLAG("input-appleremote", use_appleremote, 0),
#endif
+#if HAVE_SDL2_GAMEPAD
+ OPT_FLAG("input-gamepad", use_gamepad, 0),
+#endif
OPT_FLAG("window-dragging", allow_win_drag, 0),
OPT_REPLACED("input-x11-keyboard", "input-vo-keyboard"),
{0}
@@ -215,6 +219,9 @@ const struct m_sub_options input_config = {
#if HAVE_COCOA
.use_appleremote = 1,
#endif
+#if HAVE_SDL2_GAMEPAD
+ .use_gamepad = 1,
+#endif
.default_bindings = 1,
.vo_key_input = 1,
.allow_win_drag = 1,
@@ -1377,6 +1384,12 @@ void mp_input_load_config(struct input_ctx *ictx)
talloc_free(ifile);
#endif
+#if HAVE_SDL2_GAMEPAD
+ if (ictx->opts->use_gamepad) {
+ mp_input_sdl_gamepad_add(ictx);
+ }
+#endif
+
input_unlock(ictx);
}