summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Otte <otte@redhat.com>2010-04-20 12:14:21 +0200
committerBenjamin Otte <otte@redhat.com>2010-04-20 12:14:21 +0200
commit16232047ea0fbc396d2c1cb0bd3bc2ba0c226077 (patch)
treeadd4af7664963a35cdef280c050fbbe6496da235
parent64964ec5540b7b3d3b7685a56e0ffc39700dbad3 (diff)
cairoxsink: Properly manage resizing
In particular, remove resizing after negotiation code, that code was completely wrong.
-rw-r--r--ext/xlib/gstcairoxsink.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/ext/xlib/gstcairoxsink.c b/ext/xlib/gstcairoxsink.c
index 8d1daf8..655248b 100644
--- a/ext/xlib/gstcairoxsink.c
+++ b/ext/xlib/gstcairoxsink.c
@@ -137,6 +137,8 @@ gst_cairo_x_sink_create_window (GstCairoXSink * xsink, cairo_device_t * device)
gst_x_overlay_got_xwindow_id (GST_X_OVERLAY (xsink), window);
} else {
XWindowAttributes attr;
+ XSelectInput (display, xsink->window_id,
+ ExposureMask | StructureNotifyMask);
XGetWindowAttributes (display, xsink->window_id, &attr);
xsink->window_surface = cairo_xlib_surface_create (display,
xsink->window_id, attr.visual, attr.width, attr.height);
@@ -434,8 +436,6 @@ gst_cairo_x_sink_set_caps (GstBaseSink * bsink, GstCaps * caps)
cairo_surface_destroy (xsink->surface);
xsink->target = target;
xsink->surface = new_surface;
- } else {
- xsink->target->resize_window (xsink->surface, width, height);
}
if (xsink->window_id == 0) {