diff --git a/src/main/java/dev/isxander/controlify/controller/gamepad/GamepadController.java b/src/main/java/dev/isxander/controlify/controller/gamepad/GamepadController.java index e5a1d06..a15ccce 100644 --- a/src/main/java/dev/isxander/controlify/controller/gamepad/GamepadController.java +++ b/src/main/java/dev/isxander/controlify/controller/gamepad/GamepadController.java @@ -9,7 +9,6 @@ import dev.isxander.controlify.driver.*; import dev.isxander.controlify.rumble.RumbleManager; import dev.isxander.controlify.rumble.RumbleSource; import org.lwjgl.glfw.GLFW; -import org.lwjgl.glfw.GLFWGamepadState; import java.util.Set; @@ -33,6 +32,7 @@ public class GamepadController extends AbstractController hid) { BasicGamepadInputDriver basicGamepadInputDriver = new GLFWGamepadDriver(jid); GyroDriver gyroDriver = GyroDriver.UNSUPPORTED; diff --git a/src/main/java/dev/isxander/controlify/driver/GyroDriver.java b/src/main/java/dev/isxander/controlify/driver/GyroDriver.java index 2e8cb05..0821c58 100644 --- a/src/main/java/dev/isxander/controlify/driver/GyroDriver.java +++ b/src/main/java/dev/isxander/controlify/driver/GyroDriver.java @@ -7,6 +7,8 @@ public interface GyroDriver extends Driver { boolean isGyroSupported(); + String getGyroDetails(); + GyroDriver UNSUPPORTED = new GyroDriver() { @Override public void update() { @@ -21,5 +23,10 @@ public interface GyroDriver extends Driver { public boolean isGyroSupported() { return false; } + + @Override + public String getGyroDetails() { + return "Unsupported"; + } }; } diff --git a/src/main/java/dev/isxander/controlify/driver/RumbleDriver.java b/src/main/java/dev/isxander/controlify/driver/RumbleDriver.java index dd13d17..0adaf0b 100644 --- a/src/main/java/dev/isxander/controlify/driver/RumbleDriver.java +++ b/src/main/java/dev/isxander/controlify/driver/RumbleDriver.java @@ -5,6 +5,8 @@ public interface RumbleDriver extends Driver { boolean isRumbleSupported(); + String getRumbleDetails(); + RumbleDriver UNSUPPORTED = new RumbleDriver() { @Override public void update() { @@ -19,5 +21,10 @@ public interface RumbleDriver extends Driver { public boolean isRumbleSupported() { return false; } + + @Override + public String getRumbleDetails() { + return "Unsupported"; + } }; } diff --git a/src/main/java/dev/isxander/controlify/driver/SDL2GamepadDriver.java b/src/main/java/dev/isxander/controlify/driver/SDL2GamepadDriver.java index 591cc38..11312ed 100644 --- a/src/main/java/dev/isxander/controlify/driver/SDL2GamepadDriver.java +++ b/src/main/java/dev/isxander/controlify/driver/SDL2GamepadDriver.java @@ -56,4 +56,14 @@ public class SDL2GamepadDriver implements GyroDriver, RumbleDriver { public void close() { SDL.SDL_GameControllerClose(ptrGamepad); } + + @Override + public String getGyroDetails() { + return "SDL2 supported=%s".formatted(isGyroSupported); + } + + @Override + public String getRumbleDetails() { + return "SDL2 supported=%s".formatted(isRumbleSupported); + } } diff --git a/src/main/java/dev/isxander/controlify/driver/SteamDeckDriver.java b/src/main/java/dev/isxander/controlify/driver/SteamDeckDriver.java index 21bdc91..51a22e6 100644 --- a/src/main/java/dev/isxander/controlify/driver/SteamDeckDriver.java +++ b/src/main/java/dev/isxander/controlify/driver/SteamDeckDriver.java @@ -128,6 +128,16 @@ public class SteamDeckDriver implements GyroDriver, BasicGamepadInputDriver { hidDevice.close(); } + @Override + public String getBasicGamepadDetails() { + return "SteamDeck HIDAPI"; + } + + @Override + public String getGyroDetails() { + return "SteamDeck HIDAPI"; + } + // https://github.com/kmicki/SteamDeckGyroDSU/blob/574745406011cc2433fc6f179446ecc836180aa4/inc/sdgyrodsu/sdhidframe.h private record Frame( int header,