summaryrefslogtreecommitdiff
path: root/dev-libs/libg15/files/g15tools.patch
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs/libg15/files/g15tools.patch')
-rw-r--r--dev-libs/libg15/files/g15tools.patch100
1 files changed, 0 insertions, 100 deletions
diff --git a/dev-libs/libg15/files/g15tools.patch b/dev-libs/libg15/files/g15tools.patch
deleted file mode 100644
index 7eb6e915e596..000000000000
--- a/dev-libs/libg15/files/g15tools.patch
+++ /dev/null
@@ -1,100 +0,0 @@
-Patch from upstream bug tracker:
-https://sourceforge.net/tracker/?func=detail&aid=3336448&group_id=167869&atid=844658
-
-As only part of G510 support was merged to upstream. Does NOT apply & compile
-on top of 1.2.7-r1.
-
-diff -aNru trunk/libg15/libg15.c mod/libg15/libg15.c
---- trunk/libg15/libg15.c 2011-03-31 23:33:44.000000000 +0000
-+++ mod/libg15/libg15.c 2011-06-26 07:08:21.000000000 +0000
-@@ -1029,6 +1029,76 @@
- }
- }
-
-+// Logitech G510 Media Keys implementation. Unknown if this will work for other
-+// models. Using the backlight key as a modifier. The assumption is you would
-+// normally not be holding down the backlight key while pressing G-keys.
-+static void processKeyEvent2Byte(unsigned int *pressed_keys, unsigned char *buffer)
-+{
-+ // Key modifier
-+ *pressed_keys |= G15_KEY_LIGHT;
-+
-+ // XF86AudioPlay
-+ if (*pressed_keys & G15_KEY_G1)
-+ *pressed_keys -= G15_KEY_G1;
-+
-+ // XF86AudioStop
-+ if (*pressed_keys & G15_KEY_G2)
-+ *pressed_keys -= G15_KEY_G2;
-+
-+ // XF86AudioPrev
-+ if (*pressed_keys & G15_KEY_G3)
-+ *pressed_keys -= G15_KEY_G3;
-+
-+ // XF86AudioNext
-+ if (*pressed_keys & G15_KEY_G4)
-+ *pressed_keys -= G15_KEY_G4;
-+
-+ // XF86AudioMute
-+ if (*pressed_keys & G15_KEY_G5)
-+ *pressed_keys -= G15_KEY_G5;
-+
-+ // XF86AudioRaiseVolume
-+ if (*pressed_keys & G15_KEY_G6)
-+ *pressed_keys -= G15_KEY_G6;
-+
-+ // XF86AudioLowerVolume
-+ if (*pressed_keys & G15_KEY_G7)
-+ *pressed_keys -= G15_KEY_G7;
-+
-+ g15_log(stderr,G15_LOG_WARN,"Keyboard: %x, %x\n", buffer[0], buffer[1]);
-+
-+ if (buffer[0] == 0x02)
-+ {
-+ // XF86AudioPlay
-+ if (buffer[1] & 0x08)
-+ *pressed_keys |= G15_KEY_G1;
-+
-+ // XF86AudioStop
-+ if (buffer[1] & 0x04)
-+ *pressed_keys |= G15_KEY_G2;
-+
-+ // XF86AudioPrev
-+ if (buffer[1] & 0x02)
-+ *pressed_keys |= G15_KEY_G3;
-+
-+ // XF86AudioNext
-+ if (buffer[1] & 0x01)
-+ *pressed_keys |= G15_KEY_G4;
-+
-+ // XF86AudioMute
-+ if (buffer[1] & 0x16)
-+ *pressed_keys |= G15_KEY_G5;
-+
-+ // XF86AudioRaiseVolume
-+ if (buffer[1] & 0x32)
-+ *pressed_keys |= G15_KEY_G6;
-+
-+ // XF86AudioLowerVolume
-+ if (buffer[1] & 0x64)
-+ *pressed_keys |= G15_KEY_G7;
-+ }
-+}
-+
- int getPressedKeys(unsigned int *pressed_keys, unsigned int timeout)
- {
- unsigned char buffer[G15_KEY_READ_LENGTH];
-@@ -1063,6 +1133,13 @@
- case 9:
- processKeyEvent9Byte(pressed_keys, buffer);
- return G15_NO_ERROR;
-+ case 2:
-+ if (g15DeviceCapabilities() & G15_DEVICE_G510)
-+ {
-+ processKeyEvent2Byte(pressed_keys, buffer);
-+ return G15_NO_ERROR;
-+ }
-+ // Deliberate fallthrough
- default:
- return handle_usb_errors("Keyboard Read", ret); /* allow the app to deal with errors */
- }