]> git.sesse.net Git - kdenlive/blobdiff - src/lib/external/media_ctrl/mediactrl.c
jogshuttle: keys count function added to mediactrl
[kdenlive] / src / lib / external / media_ctrl / mediactrl.c
index 4ca6527b8f5dcd4289d4d2f7c204038e7c6dca56..104b5acf0cf5364ef4995f92f9b50d4fbe93db36 100644 (file)
@@ -171,6 +171,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 +293,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 +441,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;