From 5570650855cd69520e5835efcf69f67249c83688 Mon Sep 17 00:00:00 2001 From: Jan Schmidt Date: Tue, 6 Jan 2004 16:42:10 +0000 Subject: ext/dv/gstdvdec.c: Fix caps negotiation. Original commit message from CVS: * ext/dv/gstdvdec.c: (gst_dvdec_loop): Fix caps negotiation. * ext/dvdnav/dvdnavsrc.c: (dvdnavsrc_class_init), (dvdnavsrc_update_buttoninfo), (dvdnavsrc_get), (dvdnavsrc_get_event_mask), (dvdnav_handle_navigation_event), (dvdnavsrc_event): * ext/mpeg2dec/gstmpeg2dec.c: * gst-libs/gst/navigation/navigation.c: (gst_navigation_send_key_event), (gst_navigation_send_mouse_event): * gst-libs/gst/navigation/navigation.h: * gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_handle_src_event): * sys/ximage/ximagesink.c: (gst_ximagesink_handle_xevents): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_handle_xevents): Super-simple first version of mouse and keyboard events. Clicking on a DVD menu now works, although it may not take you where you expected. * gst/sine/gstsinesrc.c: (gst_sinesrc_src_fixate): * gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_src_fixate): These fixate functions were broken - they never actually fixated :) --- gst-libs/gst/navigation/navigation.c | 10 +++++++--- gst-libs/gst/navigation/navigation.h | 7 ++++--- 2 files changed, 11 insertions(+), 6 deletions(-) (limited to 'gst-libs/gst/navigation') diff --git a/gst-libs/gst/navigation/navigation.c b/gst-libs/gst/navigation/navigation.c index feb84dfa..e3333cba 100644 --- a/gst-libs/gst/navigation/navigation.c +++ b/gst-libs/gst/navigation/navigation.c @@ -71,19 +71,23 @@ gst_navigation_send_event (GstNavigation *navigation, GstStructure *structure) } void -gst_navigation_send_key_event (GstNavigation *navigation, const char *key) +gst_navigation_send_key_event (GstNavigation *navigation, const char *event, + const char *key) { gst_navigation_send_event (navigation, gst_structure_new ( "application/x-gst-navigation", + "event", G_TYPE_STRING, event, "key", G_TYPE_STRING, key, NULL)); } void -gst_navigation_send_mouse_event (GstNavigation *navigation, double x, - double y) +gst_navigation_send_mouse_event (GstNavigation *navigation, const char *event, + int button, double x, double y) { gst_navigation_send_event (navigation, gst_structure_new ( "application/x-gst-navigation", + "event", G_TYPE_STRING, event, + "button", G_TYPE_INT, button, "pointer_x", G_TYPE_DOUBLE, x, "pointer_y", G_TYPE_DOUBLE, y, NULL)); } diff --git a/gst-libs/gst/navigation/navigation.h b/gst-libs/gst/navigation/navigation.h index faa5b809..5ccaf748 100644 --- a/gst-libs/gst/navigation/navigation.h +++ b/gst-libs/gst/navigation/navigation.h @@ -52,9 +52,10 @@ GType gst_navigation_get_type (void); /* virtual class function wrappers */ void gst_navigation_send_event (GstNavigation *navigation, GstStructure *structure); -void gst_navigation_send_key_event (GstNavigation *navigation, const char *key); -void gst_navigation_send_mouse_event (GstNavigation *navigation, double x, - double y); +void gst_navigation_send_key_event (GstNavigation *navigation, + const char *event, const char *key); +void gst_navigation_send_mouse_event (GstNavigation *navigation, + const char *event, int button, double x, double y); G_END_DECLS -- cgit v1.2.1