[GTK3] Disable rumble for the WUP-028 for now
This commit is contained in:
parent
b6c949fa82
commit
008db16fb5
12
gtk3/main.c
12
gtk3/main.c
@ -124,6 +124,7 @@ typedef struct GuiData {
|
|||||||
struct Controller_t {
|
struct Controller_t {
|
||||||
SDL_GameController *controller;
|
SDL_GameController *controller;
|
||||||
SDL_Haptic *haptic;
|
SDL_Haptic *haptic;
|
||||||
|
bool ignore_rumble;
|
||||||
} *controllers;
|
} *controllers;
|
||||||
unsigned controller_count;
|
unsigned controller_count;
|
||||||
struct Controller_t *last_used_controller; // Used for rumble
|
struct Controller_t *last_used_controller; // Used for rumble
|
||||||
@ -508,6 +509,13 @@ static gboolean init_controllers(void) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Blacklist the WUP-028 for now
|
||||||
|
if (SDL_JoystickGetVendor(joystick) == 0x057e
|
||||||
|
&& SDL_JoystickGetProduct(joystick) == 0x0337
|
||||||
|
&& SDL_JoystickGetProductVersion(joystick) == 0x0100) {
|
||||||
|
s->ignore_rumble = true;
|
||||||
|
}
|
||||||
|
|
||||||
char guid_str[33];
|
char guid_str[33];
|
||||||
SDL_JoystickGUID guid = SDL_JoystickGetGUID(joystick);
|
SDL_JoystickGUID guid = SDL_JoystickGetGUID(joystick);
|
||||||
SDL_JoystickGetGUIDString(guid, guid_str, sizeof(guid_str));
|
SDL_JoystickGetGUIDString(guid, guid_str, sizeof(guid_str));
|
||||||
@ -592,10 +600,12 @@ static void gb_audio_callback(GB_gameboy_t *gb, GB_sample_t *sample) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void rumble_callback(GB_gameboy_t *gb, double amp) {
|
static void rumble_callback(GB_gameboy_t *gb, double amp) {
|
||||||
if (!gui_data.controllers || gui_data.controller_count == 0 || !gui_data.last_used_controller) return;
|
if (!gui_data.controllers || gui_data.controller_count == 0 || !gui_data.last_used_controller) return;
|
||||||
|
|
||||||
struct Controller_t *s = gui_data.last_used_controller;
|
struct Controller_t *s = gui_data.last_used_controller;
|
||||||
|
|
||||||
|
if (s->ignore_rumble) return;
|
||||||
|
|
||||||
if (s->haptic) {
|
if (s->haptic) {
|
||||||
if (amp > 0.0) {
|
if (amp > 0.0) {
|
||||||
SDL_HapticRumblePlay(s->haptic, amp, 100.0);
|
SDL_HapticRumblePlay(s->haptic, amp, 100.0);
|
||||||
|
@ -972,6 +972,7 @@ Maximilian Mader https://github.com/max-m</property>
|
|||||||
<child>
|
<child>
|
||||||
<object class="GtkComboBoxText">
|
<object class="GtkComboBoxText">
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
|
<property name="sensitive">False</property>
|
||||||
<property name="can_focus">False</property>
|
<property name="can_focus">False</property>
|
||||||
<property name="margin_left">5</property>
|
<property name="margin_left">5</property>
|
||||||
<property name="margin_right">5</property>
|
<property name="margin_right">5</property>
|
||||||
@ -1013,6 +1014,7 @@ Maximilian Mader https://github.com/max-m</property>
|
|||||||
<child>
|
<child>
|
||||||
<object class="GtkSpinner">
|
<object class="GtkSpinner">
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
|
<property name="sensitive">False</property>
|
||||||
<property name="can_focus">False</property>
|
<property name="can_focus">False</property>
|
||||||
<property name="margin_top">90</property>
|
<property name="margin_top">90</property>
|
||||||
<property name="margin_bottom">90</property>
|
<property name="margin_bottom">90</property>
|
||||||
@ -1127,6 +1129,7 @@ Maximilian Mader https://github.com/max-m</property>
|
|||||||
<object class="GtkButton">
|
<object class="GtkButton">
|
||||||
<property name="label" translatable="yes">Configure Joypad</property>
|
<property name="label" translatable="yes">Configure Joypad</property>
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
|
<property name="sensitive">False</property>
|
||||||
<property name="can_focus">True</property>
|
<property name="can_focus">True</property>
|
||||||
<property name="receives_default">True</property>
|
<property name="receives_default">True</property>
|
||||||
<signal name="activate" handler="do_configure_joypad" swapped="no"/>
|
<signal name="activate" handler="do_configure_joypad" swapped="no"/>
|
||||||
|
Loading…
Reference in New Issue
Block a user