diff --git a/ChangeLog b/ChangeLog index 999e8eaed..b2d1da305 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2008-02-21 Emmanuele Bassi + + * clutter/x11/clutter-event-x11.c (event_translate): Ignore + PropertyNotify events if they don't match our window. + + * clutter/x11/clutter-stage-x11.c: + (clutter_stage_x11_request_coords): Chain up to the parent's + request coords. + 2008-02-21 Emmanuele Bassi * clutter/x11/clutter-event-x11.c (event_translate): Ignore diff --git a/clutter/x11/clutter-event-x11.c b/clutter/x11/clutter-event-x11.c index 5f142f538..ff7c1c53d 100644 --- a/clutter/x11/clutter-event-x11.c +++ b/clutter/x11/clutter-event-x11.c @@ -403,7 +403,9 @@ event_translate (ClutterBackend *backend, break; case PropertyNotify: - if (xevent->xproperty.atom == backend_x11->atom_NET_WM_STATE) + if (xevent->xproperty.atom == backend_x11->atom_NET_WM_STATE && + xevent->xproperty.window == stage_xwindow && + !stage_x11->is_foreign_xwin) { Atom type; gint format; @@ -455,6 +457,8 @@ event_translate (ClutterBackend *backend, else res = FALSE; } + else + res = FALSE; break; case MapNotify: diff --git a/clutter/x11/clutter-stage-x11.c b/clutter/x11/clutter-stage-x11.c index f5c97e919..aed72b13d 100644 --- a/clutter/x11/clutter-stage-x11.c +++ b/clutter/x11/clutter-stage-x11.c @@ -206,6 +206,9 @@ clutter_stage_x11_request_coords (ClutterActor *self, stage_x11->xwin, CLUTTER_UNITS_TO_INT (box->x1), CLUTTER_UNITS_TO_INT (box->y1)); + + CLUTTER_ACTOR_CLASS (clutter_stage_x11_parent_class)->request_coords (self, + box); } static void