Fix DND keyboard control with XI2
We are using XI2 to grab the key events, but we did not do the necessary extra work to make GDK deliver root window events to us. https://bugzilla.gnome.org/show_bug.cgi?id=681006
This commit is contained in:
		
							
								
								
									
										12
									
								
								gtk/gtkdnd.c
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								gtk/gtkdnd.c
									
									
									
									
									
								
							| @ -411,6 +411,18 @@ root_key_filter (GdkXEvent *xevent, | ||||
|   if ((ev->type == KeyPress || ev->type == KeyRelease) && | ||||
|       ev->xkey.root == ev->xkey.window) | ||||
|     ev->xkey.window = (Window)data; | ||||
|   else if (ev->type == GenericEvent) | ||||
|     { | ||||
|       XGenericEventCookie *cookie; | ||||
|       XIDeviceEvent *dev; | ||||
|  | ||||
|       cookie = &ev->xcookie; | ||||
|       dev = (XIDeviceEvent *) cookie->data; | ||||
|  | ||||
|       if (dev->evtype == XI_KeyPress || | ||||
|           dev->evtype == XI_KeyRelease) | ||||
|         dev->event = (Window)data; | ||||
|     } | ||||
|  | ||||
|   return GDK_FILTER_CONTINUE; | ||||
| } | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 Matthias Clasen
					Matthias Clasen