aboutsummaryrefslogtreecommitdiff
path: root/backends/platform/sdl/sdl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'backends/platform/sdl/sdl.cpp')
-rw-r--r--backends/platform/sdl/sdl.cpp20
1 files changed, 6 insertions, 14 deletions
diff --git a/backends/platform/sdl/sdl.cpp b/backends/platform/sdl/sdl.cpp
index f6ab180897..3082a69ebf 100644
--- a/backends/platform/sdl/sdl.cpp
+++ b/backends/platform/sdl/sdl.cpp
@@ -90,6 +90,8 @@ OSystem_SDL::OSystem_SDL()
_eventSource(0),
_window(0) {
+ ConfMan.registerDefault("kbdmouse_speed", 3);
+ ConfMan.registerDefault("joystick_deadzone", 3);
}
OSystem_SDL::~OSystem_SDL() {
@@ -180,10 +182,10 @@ bool OSystem_SDL::hasFeature(Feature f) {
#if SDL_VERSION_ATLEAST(2, 0, 0)
if (f == kFeatureClipboardSupport) return true;
#endif
-#ifdef JOY_ANALOG
- if (f == kFeatureJoystickDeadzone) return true;
-#endif
- if (f == kFeatureKbdMouseSpeed) return true;
+ if (f == kFeatureJoystickDeadzone || f == kFeatureKbdMouseSpeed) {
+ bool joystickSupportEnabled = ConfMan.getInt("joystick_num") >= 0;
+ return joystickSupportEnabled;
+ }
return ModularBackend::hasFeature(f);
}
@@ -289,16 +291,6 @@ void OSystem_SDL::initBackend() {
_inited = true;
- if (!ConfMan.hasKey("kbdmouse_speed")) {
- ConfMan.registerDefault("kbdmouse_speed", 3);
- ConfMan.setInt("kbdmouse_speed", 3);
- }
-#ifdef JOY_ANALOG
- if (!ConfMan.hasKey("joystick_deadzone")) {
- ConfMan.registerDefault("joystick_deadzone", 3);
- ConfMan.setInt("joystick_deadzone", 3);
- }
-#endif
ModularBackend::initBackend();
// We have to initialize the graphics manager before the event manager