summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJon TURNEY <jon.turney@dronecode.org.uk>2012-11-05 20:13:13 +0000
committerJon TURNEY <jon.turney@dronecode.org.uk>2012-11-21 14:02:34 +0000
commitfb5f7090dde7796e7591ea04921e536189fc3113 (patch)
tree75f10e0aa140d34eeba1ff710dbe455c3b4f0cca
parent7337d436035e9833060eb7690bd6f319c8fdfe2c (diff)
Improve XCB_(KEY|BUTTON)_(PRESS|RELEASE) event reporting
Handle XCB_KEY_RELEASE as well as XCB_KEY_PRESS Reporting keycode as a character isn't that helpful, use a number instead Use correct datatype for each event Report XID in hex Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
-rw-r--r--src/libxcwm/event_loop.c24
1 files changed, 17 insertions, 7 deletions
diff --git a/src/libxcwm/event_loop.c b/src/libxcwm/event_loop.c
index 544983f..3c0d50b 100644
--- a/src/libxcwm/event_loop.c
+++ b/src/libxcwm/event_loop.c
@@ -477,9 +477,19 @@ run_event_loop(void *thread_arg_struct)
case XCB_KEY_PRESS:
{
printf("X Key press from xserver-");
- xcb_button_press_event_t *kp =
- (xcb_button_press_event_t *)evt;
- printf("Key pressed in window %u detail %c\n",
+ xcb_key_press_event_t *kp =
+ (xcb_key_press_event_t *)evt;
+ printf("Key pressed in window 0x%08x detail %d\n",
+ kp->event, kp->detail);
+ break;
+ }
+
+ case XCB_KEY_RELEASE:
+ {
+ printf("X Key release from xserver-");
+ xcb_key_release_event_t *kp =
+ (xcb_key_release_event_t *)evt;
+ printf("Key released in window 0x%08x detail %d\n",
kp->event, kp->detail);
break;
}
@@ -489,7 +499,7 @@ run_event_loop(void *thread_arg_struct)
printf("X Button press from xserver ");
xcb_button_press_event_t *bp =
(xcb_button_press_event_t *)evt;
- printf("in window %u, at coordinates (%d,%d)\n",
+ printf("in window 0x%08x, at coordinates (%d,%d)\n",
bp->event, bp->event_x, bp->event_y);
break;
}
@@ -497,9 +507,9 @@ run_event_loop(void *thread_arg_struct)
case XCB_BUTTON_RELEASE:
{
printf("X Button release from xserver ");
- xcb_button_press_event_t *bp =
- (xcb_button_press_event_t *)evt;
- printf("in window %u, at coordinates (%d,%d)\n",
+ xcb_button_release_event_t *bp =
+ (xcb_button_release_event_t *)evt;
+ printf("in window 0x%08x, at coordinates (%d,%d)\n",
bp->event, bp->event_x, bp->event_y);
break;
}