gtk: add gd_grab trace event
Input grab code is tricky, add some debug & trouble shooting aid. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
parent
74444bc198
commit
1c856da57b
@ -1048,6 +1048,7 @@ ppm_save(const char *filename, void *display_surface) "%s surface=%p"
|
||||
gd_switch(const char *tab, int width, int height) "tab=%s, width=%d, height=%d"
|
||||
gd_update(const char *tab, int x, int y, int w, int h) "tab=%s, x=%d, y=%d, w=%d, h=%d"
|
||||
gd_key_event(const char *tab, int gdk_keycode, int qemu_keycode, const char *action) "tab=%s, translated GDK keycode %d to QEMU keycode %d (%s)"
|
||||
gd_grab(const char *tab, const char *device, bool on) "tab=%s, %s %d"
|
||||
|
||||
# ui/input.c
|
||||
input_event_key_number(int conidx, int number, bool down) "con %d, key number 0x%x, down %d"
|
||||
|
4
ui/gtk.c
4
ui/gtk.c
@ -1058,6 +1058,7 @@ static void gd_grab_keyboard(VirtualConsole *vc)
|
||||
FALSE,
|
||||
GDK_CURRENT_TIME);
|
||||
#endif
|
||||
trace_gd_grab(vc->label, "kbd", true);
|
||||
}
|
||||
|
||||
static void gd_ungrab_keyboard(VirtualConsole *vc)
|
||||
@ -1080,6 +1081,7 @@ static void gd_ungrab_keyboard(VirtualConsole *vc)
|
||||
#else
|
||||
gdk_keyboard_ungrab(GDK_CURRENT_TIME);
|
||||
#endif
|
||||
trace_gd_grab(vc->label, "kbd", false);
|
||||
}
|
||||
|
||||
static void gd_grab_pointer(VirtualConsole *vc)
|
||||
@ -1125,6 +1127,7 @@ static void gd_grab_pointer(VirtualConsole *vc)
|
||||
gdk_display_get_pointer(display, NULL,
|
||||
&vc->s->grab_x_root, &vc->s->grab_y_root, NULL);
|
||||
#endif
|
||||
trace_gd_grab(vc->label, "ptr", true);
|
||||
}
|
||||
|
||||
static void gd_ungrab_pointer(VirtualConsole *vc)
|
||||
@ -1153,6 +1156,7 @@ static void gd_ungrab_pointer(VirtualConsole *vc)
|
||||
gtk_widget_get_screen(vc->gfx.drawing_area),
|
||||
vc->s->grab_x_root, vc->s->grab_y_root);
|
||||
#endif
|
||||
trace_gd_grab(vc->label, "ptr", false);
|
||||
}
|
||||
|
||||
static void gd_menu_grab_input(GtkMenuItem *item, void *opaque)
|
||||
|
Loading…
Reference in New Issue
Block a user