qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] ps2: add support of auto-repeat


From: Amos Kong
Subject: Re: [Qemu-devel] [PATCH] ps2: add support of auto-repeat
Date: Tue, 21 May 2013 17:04:30 +0800
User-agent: Mutt/1.5.21 (2010-09-15)

On Tue, May 21, 2013 at 10:38:00AM +0200, Paolo Bonzini wrote:
> Il 21/05/2013 10:33, Amos Kong ha scritto:
> > On Thu, May 16, 2013 at 05:20:37PM +0200, Paolo Bonzini wrote:
> >> Il 16/05/2013 17:17, Peter Maydell ha scritto:
> >>> On 16 May 2013 16:09, Paolo Bonzini <address@hidden> wrote:
> >>>> ...  In XWindows, you get a KeyRelease for every KeyPress Event. In X,
> >>>> it looks something like this:
> >>>>
> >>>> PRPRPRPRPRPRPRPR
> >>>
> >>> Shouldn't we be abstracting this platform difference
> >>> out in the ui layer, rather than having to deal with it
> >>> in the ps2 device model? That is, we should define what
> >>> our key-repeat model is for the QEMU keyboard-event-handler
> >>> API, and then make sure all our UI frontends (gtk, sdl,
> >>> cocoa, etc) do what we require...
> >>
> >> Yes, I am asking Amos to check which of our frontends comply.
> >>
> >> It needs to be checked in the host, because Linux guests emulate
> >> autorepeat anyway.  Or you can test with FreeDOS.
> > 
> > Please correct me if something is wrong, thanks.
> > 
> > When we use VNC/SPICE/SDL, vm Window will captured the key events,
> > then qemu process the events and transfer to guest through emulated PS2
> > device.
> > 
> > When we hold the key in keyboard of host, real keyboard or host OS will
> > do auto-repeat. vm Window will transfer repeated events to guest.
> > In this case, it seems the auto-repeat of emulated PS2 device doesn't
> > needed.
> 
> If you can make emulated autorepeat work also with VNC/SDL/SPICE, it
> would be much better, because then the guest can choose to enable or
> disable the autorepeat as desired.
> 
> That's why I mentioned testing with FreeDOS, which does no emulation.
> You can find DOS programs to change the typematic rate.

Yes, if we don't process events from host, the rate set in guest
doesn't work for SDL/VNC/SPICE/..

I have fixed it by ignoring continual/repated(same keycode) press
events. It works now :)

I just tested by Linux guest (set rate by 'kbdrate -s ..'),
will test with FreeDOS.
 
                Amos.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]