gdkevents: Fallback to the event device seat

There's places where we don't set a seat yet, plus the places
outside GTK+ where events are created, we should warn and fall
back to the master device seat with these.
This commit is contained in:
Carlos Garnacho 2015-12-16 19:00:39 +01:00
parent b0d72a36d8
commit 7a926cc7e0

View File

@ -2333,6 +2333,20 @@ gdk_event_get_seat (const GdkEvent *event)
return NULL;
priv = (const GdkEventPrivate *) event;
if (!priv->seat)
{
GdkDevice *device;
g_warning ("Event with type %d not holding a GdkSeat. "
"It is most likely synthesized outside Gdk/GTK+\n",
event->type);
device = gdk_event_get_device (event);
return device ? gdk_device_get_seat (device) : NULL;
}
return priv->seat;
}