Commit Graph

44 Commits

Author SHA1 Message Date
Michail Terezakis 3561b1f487 Add ThresholdGesture. 2020-08-16 19:57:31 +03:00
pixl cfcdca00a0 Add DeviceStatus device feature
Should fix bug #66.
2020-07-18 22:55:51 -04:00
pixl 1551c4ded0 Add hidpp20 WirelessDeviceStatus feature 2020-07-18 22:46:47 -04:00
pixl 0928b39e03 Add ChangeHostAction support 2020-07-15 17:43:24 -04:00
pixl d59daf86e2 Add ChangeHost hidpp20 feature 2020-07-15 15:18:28 -04:00
pixl 8f073d66c3 Remove unused dependencies 2020-07-12 16:21:26 -04:00
pixl b00b4645e4 Add ChangeDPI action 2020-07-12 16:16:25 -04:00
pixl 949a1ee283 Add CycleDPI action 2020-07-12 16:16:24 -04:00
pixl 21b7455919 Add NullAction support 2020-07-12 16:16:24 -04:00
pixl 4117d71c9d Add NoPress gesture mode 2020-07-12 16:16:24 -04:00
pixl 10bb10e5c5 Add Axis gesture 2020-07-12 16:16:24 -04:00
pixl ecfd03fd21 Add OnInterval/OnFewPixels gesture 2020-07-12 16:16:24 -04:00
pixl 0fbeb1e3c9 Add Gesture support
Only supports OnRelease right now. Also, some bugs were spotted while
writing this:

 - Sometimes deadlocks on startup (cause unknown)
 - Sometimes valid CIDs will be unknown (bug may have been fixed?)
2020-07-12 16:16:24 -04:00
pixl 1f3fa53721 Add workqueue system 2020-07-12 16:16:24 -04:00
pixl 02d361b541 Add ToggleHiresScroll action 2020-07-12 16:16:24 -04:00
pixl 77f4240ec7 Add ToggleSmartShift action 2020-07-12 16:16:24 -04:00
pixl 055d136b09 Add HiresScroll device feature 2020-07-12 16:16:24 -04:00
pixl d6f5c35983 Add HiresScroll hidpp20 feature 2020-07-12 16:16:24 -04:00
pixl 5bf5dc75b5 Implement RemapButton feature
Many changes were made here, too many to list here.
2020-07-12 16:16:22 -04:00
pixl 3129cda581 Add hidpp20 ReprogControls support 2020-07-12 16:15:48 -04:00
pixl 4e33ad7593 Add SmartShift Device feature 2020-07-12 16:15:48 -04:00
pixl 5abf777e00 Add SmartShift hidpp20 feature 2020-07-12 16:15:48 -04:00
pixl 07b8fc1af4 Add DPI feature 2020-07-12 16:15:48 -04:00
pixl f6b93b94af Split Configuration into several classes
Each feature should handle its own configuration.
2020-07-12 16:15:48 -04:00
pixl 5f76ccc4ac Implement AdjustableDPI feature 2020-07-12 16:15:48 -04:00
pixl 1106133f3c Move logger into util/log.h 2020-07-12 16:15:48 -04:00
pixl d84363019b Create a safe thread wrapper 2020-07-12 16:15:48 -04:00
pixl ef0a0fab8d Support Reset (0x0020) feature 2020-07-12 16:15:48 -04:00
pixl 7ae46c938d Implement FeatureSet feature 2020-07-12 16:15:48 -04:00
pixl e40da5f0c0 Implement receiver HID++ connect/disconnect events
Many changes were made here but that was the biggest one.

There's currently a bug where std::system_error: Broken pipe is thrown
after launching the daemon with a receiver connector.

A workaround for this bug is to simply shake the mouse while starting
the daemon. I will investigate this soon.
2020-07-12 16:14:24 -04:00
pixl c04408c2dd Implement logid::backend::dj::ReceiverMonitor 2020-07-12 16:14:24 -04:00
pixl 6bfa52e5c1 Remove libhidpp submodule 2020-07-12 16:14:24 -04:00
pixl f0c903d539 Rename DeviceMonitor to DeviceManager 2020-07-12 16:14:24 -04:00
pixl 7f1af81910 Rewrite logid::DeviceMonitor 2020-07-12 16:14:21 -04:00
pixl b41649b0de Implement dj::Receiver class
Again, many things were done here.
2020-07-12 16:13:54 -04:00
pixl ecc5062e0f Support getting version of HID++ 1.0 devices 2020-07-12 16:13:53 -04:00
pixl c21a923ab2 Print version number of device 1 on each raw dev.
Only works on HID++ >=2.0 so far. Also solves a race condition where
the wrong response can be sent to a request.
2020-07-12 16:13:53 -04:00
pixl 6b895b3015 Monitor all HID++ reports on wireless device 1
Again, many things were done in this commit such as implementing an
I/O queue, a mutex_queue, and implementing the hidpp::Report class.

I'm expecting commits to be like this until I can get a clean
codebase for the backend.
2020-07-12 16:13:53 -04:00
pixl ec4ae56bc4 Implement raw DeviceMonitor
Multiple things have been done in this commit; the base of the new
backend has effectively been created. This branch currently has many
vital parts commented out. Therefore, this branch is currently only
intended for debugging.
2020-07-12 16:13:40 -04:00
Ayman Bagabas 1e86dc49f6 Add libconfig to CMake pkg_check_modules 2019-10-02 21:13:06 -04:00
PixlOne ca04204a8c Use receiver events to listen for devices 2019-10-02 18:41:10 -04:00
PixlOne 00df833c54 Add libhidpp as submodule 2019-09-22 22:51:01 -04:00
PixlOne b55db6777e Add logid service & install target 2019-08-09 14:25:40 -04:00
PixlOne 9c092edcf3 Major refactoring, transferring from masterd 2019-07-17 01:53:51 -04:00