Commit Graph

30 Commits

Author SHA1 Message Date
Peter Hutterer
b7438d2ed2 Couple of minor indentation/code style changes
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-08-17 17:19:13 +10:00
Peter Hutterer
6c6df9409f Add test-suite.log to gitignore
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-08-17 17:00:23 +10:00
Peter Hutterer
8ad6cdc144 Use uint8_t and uint16_t instead of the kernels __u8/__u16
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-08-17 16:58:48 +10:00
Benjamin Tissoires
8cab7fd7a6 Implement the buttons, sort of
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-16 21:18:11 -04:00
Benjamin Tissoires
7b17fbd1cc add implemention of ratbag_set_active_profile
It's a 2 callback combo in the driver.

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-15 12:16:40 -04:00
Benjamin Tissoires
b7ed03d688 add implementation of ratbag_has_capability
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-15 12:16:40 -04:00
Benjamin Tissoires
e49ef039d7 add implementation of ratbag_get_num_profiles and ratbag_get_num_buttons
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-15 12:16:35 -04:00
Benjamin Tissoires
33aecfc14f etekcity: sleep after updating the profile
The mouse really does not liked to be polled too much for its features,
so we need to wait till it is ready again.

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-15 12:14:22 -04:00
Benjamin Tissoires
c60e31c2d9 etekcity: remove some magical numbers
etekcity_set_config_profile() gets a changed from (> 5) to (> 4),
but this was a mistake in the first place.

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-15 12:14:22 -04:00
Benjamin Tissoires
30718c2495 Add profile implementation
Still not populated with buttons, but it's a good start.

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-15 12:14:22 -04:00
Benjamin Tissoires
f4c0d88a1b etekcity: read current button mapping
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-15 12:13:55 -04:00
Benjamin Tissoires
edce2cee19 Add ratbag_hidraw_output_report to send an output report
Still not fully implemented (should be just a write, but I have nothing
to test right now).

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-15 12:13:50 -04:00
Benjamin Tissoires
99f7936cc4 Add ratbag_hidraw_raw_request to get/set feature reports
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-15 12:13:44 -04:00
Benjamin Tissoires
8d5088b9c6 Add ratbag-hidraw to deal with low level hidraw communication
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-14 23:12:25 -04:00
Benjamin Tissoires
c6cf35a5fc Store the input_id in ratbag directly
This should be cleaned up eventually when we will be actually using
libevdev.

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-14 22:16:17 -04:00
Benjamin Tissoires
f626958758 fix memory leak when no driver is present
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-14 22:05:31 -04:00
Benjamin Tissoires
32392ab630 Add a ref to libratbag in ratbag
Or the underlying driver can not access libratbag

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-14 21:32:30 -04:00
Benjamin Tissoires
3733fee438 Add mandatory .probe() callback in ratbag_driver
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-14 17:39:29 -04:00
Benjamin Tissoires
b98477a7ec Retrieve through udev the hidraw node associated to the given input device
Most gaming mice use a specific HID protocol to configure the device.
Allow to retrieve the hidraw node associated to the mouse so we can talk
to it.

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-14 17:39:23 -04:00
Benjamin Tissoires
be3ec7317d Add tool ratbag-command to test the library
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-14 17:39:22 -04:00
Benjamin Tissoires
67fd06c6bf Add ratbag_get_name to retrieve the name of the device
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>

# Conflicts:
#	src/libratbag-private.h
#	src/libratbag.c
2015-08-14 17:39:16 -04:00
Benjamin Tissoires
f5474cf9ec Add first implementation of etekcity
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-14 17:39:14 -04:00
Benjamin Tissoires
ca4af6f359 Add driver mechanism so we can have several distinct backends
Inspired from the kernel mechanism.

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-14 17:39:11 -04:00
Benjamin Tissoires
3188b97f9c Add implementation of ratbag_new_from_fd and ratbag_unref
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-14 17:39:09 -04:00
Benjamin Tissoires
b7564682f4 Borrow libinput-util.c to handle lists, array and bitfields
Some valuable helpers from libinput.

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-14 17:39:06 -04:00
Benjamin Tissoires
0ed0e7a18d Add logging mechanism
Copied from libinput

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-14 17:38:59 -04:00
Benjamin Tissoires
5c206ff205 Add a context for libratbag
This is useful to have some udev helpers, or the list of drivers.

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2015-08-14 17:38:35 -04:00
Peter Hutterer
4e232834b3 Add the outline of an actual API
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-08-13 16:22:26 +10:00
Peter Hutterer
87e18f3170 Add the generic API handles that any library needs these days
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-08-13 13:37:28 +10:00
Peter Hutterer
3fefe97451 Scaffolding for a libratbag, a mouse configuration library
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2015-08-13 11:55:07 +10:00