Peter Hutterer <[email protected]> writes: > On 30/11/2013 02:42 , Ben Gamari wrote: >> It seems that when keyboard input is in its paused state only the >> device events are delivered. The core keyboard events are only >> delivered after another mouse event has occurred. > > ok, what's happening here is that (most likely) the device is frozen. > Event delivery works that for each event, dev->public.processInputProc > is called. That is usually ProcessOtherEvents(), but if the device is > frozen from a sync grab, that func is EnqueueEvents(). You'll likely > fine that the core keyboard events are going there. Once unfrozen, the > events are replayed as you see below. > > most likely what's happening here is that the grab is stuck and xmonad > doesn't send the AllowEvents because it didn't get an event it expected. > the xscope output may help here to figure out what it is registering for. > This is what the xscope'd xmonad process produces around the time of a window switch. These are the only keyboard-synchronous grabs I've been able to find. Regardless, it looks to me like the UngrabButton request should really kill any grabs that were established.
Cheers,
- Ben
............REQUEST: ConfigureWindow
window: WIN 02200024
value-mask: x | y | width | height
value-list:
x: 960
y: 25
width: 03be
height: 041d
............REQUEST: ChangeWindowAttributes
window: WIN 02200024
value-mask: border-pixel
value-list:
border-pixel: 000033ff
............REQUEST: ChangeProperty
mode: Replace
window: WIN 01a00024
property: <WM_STATE>
type: <WM_STATE>
format: 20
data: 01 00 00 00 00 00 00 00
............REQUEST: MapWindow
window: WIN 01a00024
............REQUEST: ChangeProperty
mode: Replace
window: WIN 02200024
property: <WM_STATE>
type: <WM_STATE>
format: 20
data: 01 00 00 00 00 00 00 00
............REQUEST: MapWindow
window: WIN 02200024
............REQUEST: GrabButton
owner-events: False
grab-window: WIN 01a00024
event-mask: ButtonPress
pointer-mode: Asynchronous
keyboard-mode: Synchronous
confine-to: None
cursor: None
button: 1 (^A)
modifiers: AnyModifier
............REQUEST: GrabButton
owner-events: False
grab-window: WIN 01a00024
event-mask: ButtonPress
pointer-mode: Asynchronous
keyboard-mode: Synchronous
confine-to: None
cursor: None
button: 2 (^B)
modifiers: AnyModifier
............REQUEST: GrabButton
owner-events: False
grab-window: WIN 01a00024
event-mask: ButtonPress
pointer-mode: Asynchronous
keyboard-mode: Synchronous
confine-to: None
cursor: None
button: 3 (^C)
modifiers: AnyModifier
............REQUEST: GrabButton
owner-events: False
grab-window: WIN 02200024
event-mask: ButtonPress
pointer-mode: Asynchronous
keyboard-mode: Synchronous
confine-to: None
cursor: None
button: 1 (^A)
modifiers: AnyModifier
............REQUEST: GrabButton
owner-events: False
grab-window: WIN 02200024
event-mask: ButtonPress
pointer-mode: Asynchronous
keyboard-mode: Synchronous
confine-to: None
cursor: None
button: 2 (^B)
modifiers: AnyModifier
............REQUEST: GrabButton
owner-events: False
grab-window: WIN 02200024
event-mask: ButtonPress
pointer-mode: Asynchronous
keyboard-mode: Synchronous
confine-to: None
cursor: None
button: 3 (^C)
modifiers: AnyModifier
............REQUEST: UngrabButton
button: AnyButton
grab-window: WIN 02200024
modifiers: AnyModifier
pgpRcXafpDE1K.pgp
Description: PGP signature
_______________________________________________ [email protected]: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.x.org/mailman/listinfo/xorg Your subscription address: %(user_address)s
