- /* VOUT part */
- if( p_vout && ( p_ev->b_moved || p_ev->b_clicked ) )
- {
- pci_t *pci = dvdnav_get_current_nav_pci( p_sys->dvdnav );
- vlc_value_t valx, valy;
-
- vlc_mutex_lock( &p_ev->lock );
- var_Get( p_vout, "mouse-x", &valx );
- var_Get( p_vout, "mouse-y", &valy );
-
- if( p_ev->b_moved )
- {
- dvdnav_mouse_select( p_sys->dvdnav, pci, valx.i_int,
- valy.i_int );
- }
- if( p_ev->b_clicked )
- {
- b_activated = VLC_TRUE;
- dvdnav_mouse_activate( p_sys->dvdnav, pci, valx.i_int,
- valy.i_int );
- ButtonUpdate( p_ev->p_demux, VLC_TRUE );
- }
-
- p_ev->b_moved = VLC_FALSE;
- p_ev->b_clicked = VLC_FALSE;
- vlc_mutex_unlock( &p_ev->lock );
- }
- if( p_vout && p_vout->b_die )
- {
- var_DelCallback( p_vout, "mouse-moved", EventMouse, p_ev );
- var_DelCallback( p_vout, "mouse-clicked", EventMouse, p_ev );
- vlc_object_release( p_vout );
- p_vout = NULL;
- }
- if( p_vout == NULL )
- {
- p_vout = vlc_object_find( p_sys->p_input, VLC_OBJECT_VOUT,
- FIND_CHILD );
- if( p_vout)
- {
- var_AddCallback( p_vout, "mouse-moved", EventMouse, p_ev );
- var_AddCallback( p_vout, "mouse-clicked", EventMouse, p_ev );
- }
- }