]> git.sesse.net Git - kdenlive/blobdiff - src/lib/external/media_ctrl/mediactrl.c
jogshuttle: minor code cleanup mediactrl
[kdenlive] / src / lib / external / media_ctrl / mediactrl.c
index 4ca6527b8f5dcd4289d4d2f7c204038e7c6dca56..7e05e80713a2f68d1eaae3d00814b27bf67aaafb 100644 (file)
@@ -60,15 +60,6 @@ static struct  media_ctrl_key mc_shuttle_pro_keys[] = {
 /*
        ShuttleXPress keys
 */
-static struct  media_ctrl_key _mc_shuttle_xpress_keys[] = {
-    { 0x104, "Button B4", MEDIA_CTRL_B4 },
-    { 0x105, "Button B2", MEDIA_CTRL_B2 },
-    { 0x106, "Button B1", MEDIA_CTRL_B1 },
-    { 0x107, "Button B3", MEDIA_CTRL_B3 },
-    { 0x108, "Button B5", MEDIA_CTRL_B5 },
-    { 0, NULL, 0 }
-};
-
 static struct  media_ctrl_key mc_shuttle_xpress_keys[] = {
     { 0x104, "Button B1", MEDIA_CTRL_B1},
     { 0x105, "Button B2", MEDIA_CTRL_B2 },
@@ -171,6 +162,17 @@ struct  media_ctrl_key *media_ctrl_get_key(struct media_ctrl *ctrl, int code, in
        return NULL;
 }
 
+int media_ctrl_get_keys_count(struct media_ctrl *ctrl)
+{
+    int i = 0;
+    struct media_ctrl_key *keys = ctrl->device->keys;
+
+    while ( keys[i].key != 0 ) {
+        i++;
+    }
+
+    return i;
+}
 
 void translate_contour_hid_event(struct media_ctrl *ctrl, struct input_event *ev, struct media_ctrl_event *me) 
 {
@@ -282,7 +284,7 @@ void translate_compliant(struct media_ctrl *ctrl, struct input_event *ev, struct
 
 struct media_ctrl_device supported_devices[] = {
        { 0x0b33, 0x0030, "Contour ShuttlePRO v2", mc_shuttle_pro_keys, translate_contour_hid_event },
-       { 0x0b33, 0x0020, "Contour ShuttleXPress", mc_shuttle_xpress_keys, translate_contour_hid_event },
+       { 0x0b33, 0x0020, "Contour Design ShuttleXpress", mc_shuttle_xpress_keys, translate_contour_hid_event },
        { 0x0b33, 0x0010, "Contour ShuttlePro", mc_shuttle_pro_keys, translate_contour_hid_event },
        { 0x0b33, 0x0011, "Contour ShuttlePro", mc_shuttle_pro_keys, translate_contour_hid_event }, /* Hercules OEM */
        { 0x05f3, 0x0240, "Contour ShuttlePro", mc_shuttle_pro_keys, translate_contour_hid_event },
@@ -430,6 +432,7 @@ void media_ctrl_open2(struct media_ctrl *mc, const char *devname)
     fd = open( devname, O_RDONLY );
     if ( fd < 0 ) {
         perror(devname);
+        mc->fd = -1;
     } else {
         mc->fd = fd;
         //mc->eventno = i;