X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=modules%2Faccess%2Fbluray.c;h=be2d39cd0764cf4707b0608cfbb17530c63d0216;hb=256184cb3c39f55042981c850a715a676d9c3e82;hp=c1f25b3dbb4e5d62b4b9e17d2c198242502657d6;hpb=580355951d6b42006c6e3e0cd4dc704e7d1d192e;p=vlc diff --git a/modules/access/bluray.c b/modules/access/bluray.c index c1f25b3dbb..be2d39cd07 100644 --- a/modules/access/bluray.c +++ b/modules/access/bluray.c @@ -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: