]> git.sesse.net Git - vlc/commitdiff
bluray: use navigation keys (DEMUX_NAV_...)
authorPetri Hintukainen <phintuka@users.sourceforge.net>
Thu, 8 Aug 2013 06:30:55 +0000 (09:30 +0300)
committerRafaël Carré <funman@videolan.org>
Fri, 16 Aug 2013 10:43:12 +0000 (12:43 +0200)
Signed-off-by: Rafaël Carré <funman@videolan.org>
modules/access/bluray.c

index c1f25b3dbb4e5d62b4b9e17d2c198242502657d6..be2d39cd0764cf4707b0608cfbb17530c63d0216 100644 (file)
@@ -654,6 +654,15 @@ static int onMouseEvent(vlc_object_t *p_vout, const char *psz_var, vlc_value_t o
     return VLC_SUCCESS;
 }
 
+static int sendKeyEvent(demux_sys_t *p_sys, unsigned int key)
+{
+    mtime_t now = mdate();
+    if (bd_user_input(p_sys->bluray, now, key) < 0) {
+        return VLC_EGENERIC;
+    }
+    return VLC_SUCCESS;
+}
+
 /*****************************************************************************
  * libbluray overlay handling:
  *****************************************************************************/
@@ -1124,6 +1133,17 @@ static int blurayControl(demux_t *p_demux, int query, va_list args)
             return VLC_SUCCESS;
         }
 
+        case DEMUX_NAV_ACTIVATE:
+            return sendKeyEvent(p_sys, BD_VK_ENTER);
+        case DEMUX_NAV_UP:
+            return sendKeyEvent(p_sys, BD_VK_UP);
+        case DEMUX_NAV_DOWN:
+            return sendKeyEvent(p_sys, BD_VK_DOWN);
+        case DEMUX_NAV_LEFT:
+            return sendKeyEvent(p_sys, BD_VK_LEFT);
+        case DEMUX_NAV_RIGHT:
+            return sendKeyEvent(p_sys, BD_VK_RIGHT);
+
         case DEMUX_CAN_RECORD:
         case DEMUX_GET_FPS:
         case DEMUX_SET_GROUP: