mirror of
https://github.com/CalcProgrammer1/OpenRGB.git
synced 2026-04-04 22:24:12 -04:00
Improving targeted detection for the Das 4Q Keyboard to resolve #2633
+ Changing to IPU detector to accurately detect keyboard first time * Avoiding errors by adding new detector callback function
This commit is contained in:
@@ -66,5 +66,28 @@ void DetectDasKeyboardControllers(hid_device_info *info_in, const std::string &n
|
|||||||
}
|
}
|
||||||
} /* DetectDasKeyboardControllers() */
|
} /* DetectDasKeyboardControllers() */
|
||||||
|
|
||||||
REGISTER_HID_DETECTOR_I("Das Keyboard Q4 RGB", DetectDasKeyboardControllers, DAS_KEYBOARD_VID, DAS_KEYBOARD_Q4_PID, 0);
|
void DetectDas4QKeyboard(hid_device_info *info, const std::string &name)
|
||||||
REGISTER_HID_DETECTOR_I("Das Keyboard Q5 RGB", DetectDasKeyboardControllers, DAS_KEYBOARD_VID, DAS_KEYBOARD_Q5_PID, 0);
|
{
|
||||||
|
hid_device *dev = hid_open_path(info->path);
|
||||||
|
|
||||||
|
if(dev)
|
||||||
|
{
|
||||||
|
DasKeyboardController *controller = new DasKeyboardController(dev, info->path);
|
||||||
|
|
||||||
|
if(controller->GetLayoutString() == "NONE")
|
||||||
|
{
|
||||||
|
delete controller;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
RGBController_DasKeyboard *rgb_controller = new RGBController_DasKeyboard(controller);
|
||||||
|
rgb_controller->SetupZones();
|
||||||
|
rgb_controller->name = name;
|
||||||
|
|
||||||
|
ResourceManager::get()->RegisterRGBController(rgb_controller);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} /* DetectDas4QKeyboard() */
|
||||||
|
|
||||||
|
REGISTER_HID_DETECTOR_IPU("Das Keyboard Q4 RGB", DetectDas4QKeyboard, DAS_KEYBOARD_VID, DAS_KEYBOARD_Q4_PID, 1, 0x01, 0x80);
|
||||||
|
REGISTER_HID_DETECTOR_I ("Das Keyboard Q5 RGB", DetectDasKeyboardControllers, DAS_KEYBOARD_VID, DAS_KEYBOARD_Q5_PID, 1);
|
||||||
|
|||||||
Reference in New Issue
Block a user