From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:52993) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ws5s7-00073H-4q for qemu-devel@nongnu.org; Wed, 04 Jun 2014 03:44:37 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Ws5rw-0002D8-N4 for qemu-devel@nongnu.org; Wed, 04 Jun 2014 03:44:31 -0400 Received: from mx1.redhat.com ([209.132.183.28]:29987) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ws5rw-0002Ax-DR for qemu-devel@nongnu.org; Wed, 04 Jun 2014 03:44:20 -0400 From: Gerd Hoffmann Date: Wed, 4 Jun 2014 09:44:07 +0200 Message-Id: <1401867851-30064-4-git-send-email-kraxel@redhat.com> In-Reply-To: <1401867851-30064-1-git-send-email-kraxel@redhat.com> References: <1401867851-30064-1-git-send-email-kraxel@redhat.com> Subject: [Qemu-devel] [PULL 3/7] input/curses: add kbd delay between keydown and keyup events List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Gerd Hoffmann , Anthony Liguori Signed-off-by: Gerd Hoffmann --- ui/curses.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/ui/curses.c b/ui/curses.c index de85f76..8edb038 100644 --- a/ui/curses.c +++ b/ui/curses.c @@ -277,31 +277,41 @@ static void curses_refresh(DisplayChangeListener *dcl) * events, we need to emit both for each key received */ if (keycode & SHIFT) { qemu_input_event_send_key_number(NULL, SHIFT_CODE, true); + qemu_input_event_send_key_delay(0); } if (keycode & CNTRL) { qemu_input_event_send_key_number(NULL, CNTRL_CODE, true); + qemu_input_event_send_key_delay(0); } if (keycode & ALT) { qemu_input_event_send_key_number(NULL, ALT_CODE, true); + qemu_input_event_send_key_delay(0); } if (keycode & ALTGR) { qemu_input_event_send_key_number(NULL, GREY | ALT_CODE, true); + qemu_input_event_send_key_delay(0); } qemu_input_event_send_key_number(NULL, keycode & KEY_MASK, true); + qemu_input_event_send_key_delay(0); qemu_input_event_send_key_number(NULL, keycode & KEY_MASK, false); + qemu_input_event_send_key_delay(0); if (keycode & ALTGR) { qemu_input_event_send_key_number(NULL, GREY | ALT_CODE, false); + qemu_input_event_send_key_delay(0); } if (keycode & ALT) { qemu_input_event_send_key_number(NULL, ALT_CODE, false); + qemu_input_event_send_key_delay(0); } if (keycode & CNTRL) { qemu_input_event_send_key_number(NULL, CNTRL_CODE, false); + qemu_input_event_send_key_delay(0); } if (keycode & SHIFT) { qemu_input_event_send_key_number(NULL, SHIFT_CODE, false); + qemu_input_event_send_key_delay(0); } } else { keysym = curses2qemu[chr]; -- 1.8.3.1