Xi: Introduce XIShouldNotify
XIShouldNotify just lets you know if you should send an event for a keymap change (or similar) concerning a given device to a given client; at the moment, this is only for devices which are sending events to that client. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
This commit is contained in:
		
							parent
							
								
									b5242789ed
								
							
						
					
					
						commit
						1d1a0f67ee
					
				| 
						 | 
					@ -95,6 +95,22 @@ static Bool MakeInputMasks(WindowPtr	/* pWin */
 | 
				
			||||||
/* Used to sture classes currently not in use by an MD */
 | 
					/* Used to sture classes currently not in use by an MD */
 | 
				
			||||||
extern DevPrivateKey UnusedClassesPrivateKey;
 | 
					extern DevPrivateKey UnusedClassesPrivateKey;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					 * Only let the given client know of core events which will affect its
 | 
				
			||||||
 | 
					 * interpretation of input events, if the client's ClientPointer (or the
 | 
				
			||||||
 | 
					 * paired keyboard) is the current device.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					int
 | 
				
			||||||
 | 
					XIShouldNotify(ClientPtr client, DeviceIntPtr dev)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    DeviceIntPtr current_ptr = PickPointer(client);
 | 
				
			||||||
 | 
					    DeviceIntPtr current_kbd = GetPairedDevice(current_ptr);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    if (dev == current_kbd || dev == current_ptr)
 | 
				
			||||||
 | 
					        return 1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    return 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void
 | 
					void
 | 
				
			||||||
RegisterOtherDevice(DeviceIntPtr device)
 | 
					RegisterOtherDevice(DeviceIntPtr device)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -255,4 +255,9 @@ extern _X_EXPORT int XIPropToFloat(
 | 
				
			||||||
        float **buf_return
 | 
					        float **buf_return
 | 
				
			||||||
);
 | 
					);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* For an event such as MappingNotify which affects client interpretation
 | 
				
			||||||
 | 
					 * of input events sent by device dev, should we notify the client, or
 | 
				
			||||||
 | 
					 * would it merely be irrelevant and confusing? */
 | 
				
			||||||
 | 
					extern _X_EXPORT int XIShouldNotify(ClientPtr client, DeviceIntPtr dev);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif /* EXEVENTS_H */
 | 
					#endif /* EXEVENTS_H */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue