diff --git a/Controllers/HYTEMousematController/HYTEMousematController_Linux/HYTEMousematControllerDetect_Linux.cpp b/Controllers/HYTEMousematController/HYTEMousematController_Linux/HYTEMousematControllerDetect_Linux.cpp index ccefd12e..42c2f85e 100644 --- a/Controllers/HYTEMousematController/HYTEMousematController_Linux/HYTEMousematControllerDetect_Linux.cpp +++ b/Controllers/HYTEMousematController/HYTEMousematController_Linux/HYTEMousematControllerDetect_Linux.cpp @@ -70,9 +70,8 @@ void DetectHYTEMousematControllers() libusb_detach_kernel_driver(dev, 0); libusb_claim_interface(dev, 0); - HYTEMousematController * controller = new HYTEMousematController(dev); + HYTEMousematController * controller = new HYTEMousematController(dev, device_list[device_idx].name); RGBController_HYTEMousemat * rgb_controller = new RGBController_HYTEMousemat(controller); - rgb_controller->name = device_list[device_idx].name; ResourceManager::get()->RegisterRGBController(rgb_controller); } diff --git a/Controllers/HYTEMousematController/HYTEMousematController_Linux/HYTEMousematController_Linux.cpp b/Controllers/HYTEMousematController/HYTEMousematController_Linux/HYTEMousematController_Linux.cpp index 05d625b3..6efdb56e 100644 --- a/Controllers/HYTEMousematController/HYTEMousematController_Linux/HYTEMousematController_Linux.cpp +++ b/Controllers/HYTEMousematController/HYTEMousematController_Linux/HYTEMousematController_Linux.cpp @@ -15,9 +15,10 @@ #include #include "HYTEMousematController_Linux.h" -HYTEMousematController::HYTEMousematController(libusb_device_handle* dev_handle) +HYTEMousematController::HYTEMousematController(libusb_device_handle* dev_handle, std::string dev_name) { - dev = dev_handle; + dev = dev_handle; + name = dev_name; /*-----------------------------------------------------*\ | Fill in location string with USB ID | @@ -42,6 +43,11 @@ std::string HYTEMousematController::GetLocation() return(location); } +std::string HYTEMousematController::GetName() +{ + return(name); +} + void HYTEMousematController::FirmwareAnimationControl(bool enabled) { unsigned char serial_buf[4]; diff --git a/Controllers/HYTEMousematController/HYTEMousematController_Linux/HYTEMousematController_Linux.h b/Controllers/HYTEMousematController/HYTEMousematController_Linux/HYTEMousematController_Linux.h index 4fef63ca..a69868a3 100644 --- a/Controllers/HYTEMousematController/HYTEMousematController_Linux/HYTEMousematController_Linux.h +++ b/Controllers/HYTEMousematController/HYTEMousematController_Linux/HYTEMousematController_Linux.h @@ -24,10 +24,11 @@ class HYTEMousematController { public: - HYTEMousematController(libusb_device_handle* dev_handle); + HYTEMousematController(libusb_device_handle* dev_handle, std::string dev_name); ~HYTEMousematController(); std::string GetLocation(); + std::string GetName(); void FirmwareAnimationControl(bool enabled); void StreamingCommand(RGBColor* colors); @@ -35,4 +36,5 @@ public: private: libusb_device_handle* dev; std::string location; + std::string name; }; diff --git a/Controllers/HYTEMousematController/HYTEMousematController_Windows_MacOS/HYTEMousematControllerDetect_Windows_MacOS.cpp b/Controllers/HYTEMousematController/HYTEMousematController_Windows_MacOS/HYTEMousematControllerDetect_Windows_MacOS.cpp index 1a9ce35e..49fd2e7f 100644 --- a/Controllers/HYTEMousematController/HYTEMousematController_Windows_MacOS/HYTEMousematControllerDetect_Windows_MacOS.cpp +++ b/Controllers/HYTEMousematController/HYTEMousematController_Windows_MacOS/HYTEMousematControllerDetect_Windows_MacOS.cpp @@ -54,9 +54,8 @@ void DetectHYTEMousematControllers() { if(*ports[i] != "") { - HYTEMousematController * controller = new HYTEMousematController((char *)ports[i]->c_str()); + HYTEMousematController * controller = new HYTEMousematController((char *)ports[i]->c_str(), hyte_mousemat_devices[device_id].name); RGBController_HYTEMousemat * rgb_controller = new RGBController_HYTEMousemat(controller); - rgb_controller->name = hyte_mousemat_devices[device_id].name; ResourceManager::get()->RegisterRGBController(rgb_controller); } diff --git a/Controllers/HYTEMousematController/HYTEMousematController_Windows_MacOS/HYTEMousematController_Windows_MacOS.cpp b/Controllers/HYTEMousematController/HYTEMousematController_Windows_MacOS/HYTEMousematController_Windows_MacOS.cpp index 74ed140a..23446b4e 100644 --- a/Controllers/HYTEMousematController/HYTEMousematController_Windows_MacOS/HYTEMousematController_Windows_MacOS.cpp +++ b/Controllers/HYTEMousematController/HYTEMousematController_Windows_MacOS/HYTEMousematController_Windows_MacOS.cpp @@ -12,9 +12,10 @@ #include "HYTEMousematController_Windows_MacOS.h" -HYTEMousematController::HYTEMousematController(char* port) +HYTEMousematController::HYTEMousematController(char* port, std::string dev_name) { - port_name = port; + name = dev_name; + port_name = port; /*-----------------------------------------------------*\ | Open the port | @@ -33,6 +34,11 @@ std::string HYTEMousematController::GetLocation() return(port_name); } +std::string HYTEMousematController::GetName() +{ + return(name); +} + void HYTEMousematController::FirmwareAnimationControl(bool enabled) { unsigned char serial_buf[4]; diff --git a/Controllers/HYTEMousematController/HYTEMousematController_Windows_MacOS/HYTEMousematController_Windows_MacOS.h b/Controllers/HYTEMousematController/HYTEMousematController_Windows_MacOS/HYTEMousematController_Windows_MacOS.h index 2488c694..3ac606e0 100644 --- a/Controllers/HYTEMousematController/HYTEMousematController_Windows_MacOS/HYTEMousematController_Windows_MacOS.h +++ b/Controllers/HYTEMousematController/HYTEMousematController_Windows_MacOS/HYTEMousematController_Windows_MacOS.h @@ -19,15 +19,17 @@ class HYTEMousematController { public: - HYTEMousematController(char* port); + HYTEMousematController(char* port, std::string dev_name); ~HYTEMousematController(); std::string GetLocation(); + std::string GetName(); void FirmwareAnimationControl(bool enabled); void StreamingCommand(RGBColor* colors); private: + std::string name; std::string port_name; serial_port * serialport = nullptr; }; diff --git a/Controllers/HYTEMousematController/RGBController_HYTEMousemat.cpp b/Controllers/HYTEMousematController/RGBController_HYTEMousemat.cpp index a8a96a7d..4503ad68 100644 --- a/Controllers/HYTEMousematController/RGBController_HYTEMousemat.cpp +++ b/Controllers/HYTEMousematController/RGBController_HYTEMousemat.cpp @@ -26,7 +26,7 @@ RGBController_HYTEMousemat::RGBController_HYTEMousemat(HYTEMousematController* c { controller = controller_ptr; - name = "HYTE Mousemat"; + name = controller->GetName(); vendor = "HYTE"; description = "HYTE Mousemat Device"; type = DEVICE_TYPE_MOUSEMAT;