Skip to contentSkip to conversation

add option to disable key repeat in device model for vmx guest

PATCH Superseded Ling, Xiaofeng 1 participant 1 message Dec 1, 2005

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 add option to disable key repeat in device model for vmx guest

Add an option for device model to disable key repeat. On slow network, when creating a vmx guest remotely, the key repeat feature may make it hard to even type the user name and password to login in to guest OS.

# HG changeset patch
# User Xiaofeng Ling <[email protected]> # Node ID 1425abd21f8b893ec5d2f1f600f6a0631cc72a08 # Parent 0f2af20b4f5526c03c1fe9634db7eb098f32b964 Add an option for device model to disable key repeat. On slow network, when creating a vmx guest remotely, the key repeat feature may make it hard to even type the user name and password to login in to guest OS.

tools/ioemu/sdl.c +2 -1
diff -r 0f2af20b4f55 -r 1425abd21f8b tools/ioemu/sdl.c
@@ -592,7 +592,8 @@
 
     sdl_resize(ds, 640, 400);
     sdl_update_caption();
-    SDL_EnableKeyRepeat(250, 50);
+    if(repeat_key)
+        SDL_EnableKeyRepeat(250, 50);
     SDL_EnableUNICODE(1);
     gui_grab = 0;
 
tools/ioemu/vl.c +7 -0
diff -r 0f2af20b4f55 -r 1425abd21f8b tools/ioemu/vl.c
@@ -144,6 +144,7 @@
 int graphic_height = 600;
 int graphic_depth = 15;
 int full_screen = 0;
+int repeat_key = 1;
 TextConsole *vga_console;
 CharDriverState *serial_hds[MAX_SERIAL_PORTS];
 int xc_handle;
@@ -2248,6 +2249,7 @@
            "-std-vga        simulate a standard VGA card with VESA Bochs Extensions\n"
            "                (default is CL-GD5446 PCI VGA)\n"
            "-vgaacc [0|1]   1 to accelerate CL-GD5446 speed, default is 1\n"
+           "-no-repeatkey   disable key repeat feature for SDL keyboard simulation"
 #endif
            "-loadvm file    start right away with a saved state (loadvm in monitor)\n"
            "\n"
@@ -2339,6 +2341,7 @@
     QEMU_OPTION_loadvm,
     QEMU_OPTION_full_screen,
     QEMU_OPTION_vgaacc,
+    QEMU_OPTION_repeatkey,
 };
 
 typedef struct QEMUOption {
@@ -2417,6 +2420,7 @@
     { "nic-ne2000", 0, QEMU_OPTION_nic_ne2000 },
     { "cirrusvga", 0, QEMU_OPTION_cirrusvga },
     { "vgaacc", HAS_ARG, QEMU_OPTION_vgaacc },
+    { "no-repeatkey", 0, QEMU_OPTION_repeatkey },
     { NULL },
 };
 
@@ -2968,6 +2972,9 @@
                         exit(1);
                     }
                 }
+                break;
+            case QEMU_OPTION_repeatkey:
+                repeat_key = 0;
                 break;
             case QEMU_OPTION_std_vga:
                 cirrus_vga_enabled = 0;
tools/ioemu/vl.h +1 -0
diff -r 0f2af20b4f55 -r 1425abd21f8b tools/ioemu/vl.h
@@ -612,6 +612,7 @@
 
 void kbd_init(void);
 extern const char* keyboard_layout;
+extern int repeat_key;
 
 /* mc146818rtc.c */
 

_______________________________________________
Xen-devel mailing list
[email protected]
http://lists.xensource.com/xen-devel