post unhandled events to bus, so that
application can utilise the same if needed
https://bugzilla.gnome.org/show_bug.cgi?id=752043
GstEvent *event = NULL;
gint x_offset, y_offset;
gdouble x, y;
+ gboolean handled = FALSE;
/* We are not converting the pointer coordinates as there's no hardware
scaling done here. The only possible scaling is done by videoscale and
}
event = gst_event_new_navigation (structure);
- if (event)
- gst_pad_push_event (GST_VIDEO_SINK_PAD (ximagesink), event);
+ if (event) {
+ gst_event_ref (event);
+ handled = gst_pad_push_event (GST_VIDEO_SINK_PAD (ximagesink), event);
+
+ if (!handled)
+ gst_element_post_message (GST_ELEMENT_CAST (ximagesink),
+ gst_navigation_message_new_event (GST_OBJECT_CAST (ximagesink),
+ event));
+
+ gst_event_unref (event);
+ }
}
static void