Commit Graph

1322 Commits

Author SHA1 Message Date
Kyoken
bad8dd7ba7 asus: warn on unknown key codes 2023-09-19 18:17:46 +03:00
Ryan Jensen
0b5a95f09e updating documentation: linux/input.h -> linux/input-event-codes.h 2023-07-08 10:26:07 +03:00
Kyoken
f5e2259da5 asus: fix single profile devices 2023-06-04 18:58:18 +03:00
Yaroslav Chvanov
b1cdf6a4c2 steelseries: ignore the check for HID vendor device
Although it does work for some mice and fixes there being several
configurable devices for a single mouse in libratbag, for some mice it
does *not* apply, making them unusable with libratbag.
2023-05-20 11:19:43 +03:00
Yaroslav Chvanov
a121c0227b steelseries: check for settings reading errors 2023-05-20 11:18:20 +03:00
Yaroslav Chvanov
4240e067a9 openinput: return early instead of making an error-prone zero-sized VLA
Fixes a clang-analyze warning.
2023-05-20 11:01:17 +03:00
Yaroslav Chvanov
cf202eeeca driver-hidpp20: zero initialize a struct
This fixes a clang-analyze warning about uninitialized value getting
stored later.
2023-05-20 10:56:55 +03:00
Yaroslav Chvanov
4d6f80de01 liblur: check return value instead of comparing the out_ptr
Fixes a clang-analyze warning for a dead assignment.
2023-05-20 00:15:55 +03:00
Yaroslav Chvanov
b717f946ef sinowealth-nubwo: idiomatically zero initialize a struct 2023-05-20 00:12:46 +03:00
Yaroslav Chvanov
cfab554ea8 sinowealth-nubwo: remove trailing whitespace 2023-05-20 00:12:34 +03:00
Yaroslav Chvanov
b7b9749901 sinowealth-nubwo: correctly use an attribute
This erroneously declared it with name `__packed__` instead of using it
as an attribute.
It doesn't seem like it changes struct's size, but it has no
static_assert on it so we can't be 100% sure.
2023-05-20 00:10:33 +03:00
Yaroslav Chvanov
bb67e9b54e sinowealth-nubwo: fix incorrect firmware version getting error check
If by any chance returned `size` was `0`, it would erroneously return 0,
which would do an uninitialized pointer dereference in
sinowealthnubwo_probe().
This fixes a convoluted warning by clang-analyze.
2023-05-19 23:55:21 +03:00
Yaroslav Chvanov
9383f63c04 steelseries: add missing newlines to logging 2023-05-19 23:18:32 +03:00
Yaroslav Chvanov
8c220cb1a8 steeseries: make an array static const 2023-05-19 22:57:12 +03:00
Yaroslav Chvanov
9b36ff7dd1 steelseries: make most of implicit conversions explicit
Did not fix brightness and LED color, they deserve being changed on
libratbag side.
2023-05-19 22:57:12 +03:00
Yaroslav Chvanov
ab4504d3ed steelseries: fix narrowing conversions 2023-05-19 22:57:12 +03:00
Yaroslav Chvanov
d4a35f341b steelseries: don't define variables on a single line 2023-05-19 22:57:12 +03:00
Yaroslav Chvanov
ea5ca29aa2 steelseries: don't use reserved underscore identifiers 2023-05-19 22:57:12 +03:00
Yaroslav Chvanov
6fcac8a360 steelseries: simplify loop breaking 2023-05-19 22:57:11 +03:00
Yaroslav Chvanov
6e2550ac51 steelseries: add commit error logging 2023-05-19 22:57:11 +03:00
Yaroslav Chvanov
bd65f7f461 steelseries: don't use else after return 2023-05-19 21:50:14 +03:00
Qjammer
7fb3c63e8d marsgaming: implement Mars Gaming MM4 protocol 2023-04-14 14:23:28 +03:00
Kyoken
70f2e96a66 asus: check mouse in probe, fix asus status code 2023-03-31 09:55:19 +03:00
Yaroslav Chvanov
d82821fd62 sinowealth: show a more detailed message for unknown mice
The string may be a bit too long, but I still think it's a good idea to
guide people in the right direction.
2023-03-19 03:07:43 +03:00
Yaroslav Chvanov
87f6e521e6 sinowealth: store firmware version in device files in the group name
It only makes sense, since it's what the section are identified by.
2023-03-19 02:42:47 +03:00
Yaroslav Chvanov
44279ddda3 shared-macro: make startswith() return a const char*
The supplied arguments are const, and as such the return type which is
derived from the arguments must also be const.
2023-03-19 02:39:30 +03:00
Yaroslav Chvanov
876c06237e sinowealth: change device files to match other drivers
..specifically the "ButtonCount" and "ProfileCount" keys.
2023-03-19 02:39:21 +03:00
halting
b137c61b9f Revert "g300: use the correct step size"
This reverts commit 20b573668e.
200-2500 DPI range and 50 DPI step don't works as expected on Linux.
2023-03-18 18:03:14 -03:00
Yaroslav Chvanov
cb196e16bb libratbag: don't allow disabling active profile 2023-03-09 18:33:02 +03:00
Yaroslav Chvanov
115ee47787 libratbag: don't allow setting disabled profile as active 2023-03-09 18:33:02 +03:00
Yaroslav Chvanov
072c1845b2 fixup! sinowealth: read profile count from the device file 2023-03-07 05:38:31 +03:00
Yaroslav Chvanov
d658dba612 sinowealth: check if ButtonCount field in device file is correct
Fixes such scenario:
Set ButtonCount to -1.
Start libratbag.
Watch sun burn.
2023-03-07 05:35:17 +03:00
Yaroslav Chvanov
17d869d5bf libratbag-data: set fallback value in the same place as the proper value 2023-03-07 05:35:17 +03:00
Yaroslav Chvanov
fd6e693e88 sinowealth: don't try to live through errors while committing 2023-03-07 05:35:17 +03:00
Yaroslav Chvanov
e712b4f1eb sinowealth: fix logging using wrong member 2023-03-07 05:35:17 +03:00
Yaroslav Chvanov
a1e2159a4f sinowealth: allow up to three profiles 2023-03-07 05:35:17 +03:00
Yaroslav Chvanov
b39f2794cb sinowealth: conditionally enable writing profile-switching bindings 2023-03-07 05:35:16 +03:00
Yaroslav Chvanov
a8320f7eb7 sinowealth: use early return 2023-03-07 05:35:16 +03:00
Yaroslav Chvanov
59d85e0bf8 sinowealth: change "profile-up" button binding to cycle
I can't explain this, I'm SURE it wasn't cycling before and was just
getting stuck on the highest profile. What?
2023-03-07 05:35:16 +03:00
Yaroslav Chvanov
26cc246a4c sinowealth: read profile count from the device file 2023-03-07 05:35:16 +03:00
Yaroslav Chvanov
dfd9be05ab sinowealth: add "cycle LED modes" binding to unknown 2023-03-07 03:38:22 +03:00
Yaroslav Chvanov
fd3ce088b0 sinowealth: make an error message less generic 2023-03-07 03:30:45 +03:00
Yaroslav Chvanov
8fdf0de849 sinowealth: rename MAX to the variable with maximum profile count
It can go UP TO this count, it's not necessarily this number.
2023-03-07 03:19:41 +03:00
Yaroslav Chvanov
d2ee857d05 sinowealth: add and use profile count in drv_data 2023-03-07 03:18:53 +03:00
Yaroslav Chvanov
40e1785bcc sinowealth: check for device compatibility as soon as possible 2023-03-07 03:13:23 +03:00
Yaroslav Chvanov
9a0972891a sinowealth: update the comment about profile count 2023-03-07 03:04:53 +03:00
Yaroslav Chvanov
224985e28c sinowealth: add command IDs for the third profile 2023-03-07 02:55:09 +03:00
Yaroslav Chvanov
52e21d767d libratbag: take constant pointers where possible 2023-03-07 00:12:09 +03:00
Yaroslav Chvanov
364948c32a libratbag: remove fall back for Logitech devices
This should be unreachable because we `Driver` field must be set in
device files, otherwise they are ignored. Our tests also catch this.

Anyway, it's always better to be explicit about this.
2023-03-06 23:44:06 +03:00
Yaroslav Chvanov
e9604305d1 libratbag-data: use the dpi_list_free helper 2023-03-06 23:42:31 +03:00