[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [Question]Ctrl_R or Alt_R Key Can Not Be Released throu
From: |
Xulei (Stone) |
Subject: |
Re: [Qemu-devel] [Question]Ctrl_R or Alt_R Key Can Not Be Released through noVNC connection |
Date: |
Wed, 30 Mar 2016 01:44:10 +0000 |
> -----Original Message-----
> From: Daniel P. Berrange [mailto:address@hidden
> Sent: Tuesday, March 29, 2016 6:37 PM
> To: Xulei (Stone)
> Cc: address@hidden; address@hidden; Gonglei (Arei); Wulizhen
> (Pss)
> Subject: Re: [Qemu-devel] [Question]Ctrl_R or Alt_R Key Can Not Be Released
> through noVNC connection
>
> On Tue, Mar 29, 2016 at 10:20:46AM +0000, Xulei (Stone) wrote:
> > Is there anyone can give me some information? I would be very grateful.
> >
> > I have met several times that the right ctrl key or right alt key is in a
> > pressed
> status and
> > never released until I inject a sendkey qmp command.
> > I use noVNC, a web-based vnc, as my vnc client. What confused me is that,
> noVNC client
> > seems automatically convert the right ctrl/alt to the left ctrl/alt which
> > means
> noVNC will
> > not be possible to send right ctrl/alt key to Qemu vnc sever. What's more, I
> have never
> > pressed any ctrl or alt key. This may happen even as soon as I use vnc to
> connect my VM
> > which is now in the login interface. So I'm not sure it is a Qemu bug or
> > noVNC
> bug.
>
> The VNC protocol doesn't handle modifier keys explicitly, so clients have to
> do extra hacks to deal with it. The problem typically arises when the VNC
> client sends a Ctrl-press event, then the user switches focus to another
> application before releasing the Ctrl key. The VNC client thus never sends
> a Ctrl-release event and so the server thinks the Ctrl key is forever pressed.
> Clients have to hack around this by tracking the state of all modifier keys
> and explicitly sending fake release events when loosing keyboard focus. So
> in summary I would expect the problem to be in the noVNC client
Appreciate your reply, Daniel.
The problem you mentioned has already drew my attention. But it is not the
reason for my problem:
1. The problems I met all focus on Right Ctrl or Right Alt, rather than other
common modifier keys. Seems very strange...
2. noVNC client already has a function to reset all pressed key when the client
loses focus. Unfortunately, this function will not reset right-ctrl or
right-alt key,
because noVNC client does not support these modifier keys, it doesn't think he
has ever pressed the keys.
3. I'm very sure, I have never pressed any modifier keys when this problem
happens. So the big question is where is the Ctrl_R- press event or Alt_R-press
event from?
> Regards,
> Daniel
> --
> |: http://berrange.com -o-
> http://www.flickr.com/photos/dberrange/ :|
> |: http://libvirt.org -o-
> http://virt-manager.org :|
> |: http://autobuild.org -o-
> http://search.cpan.org/~danberr/ :|
> |: http://entangle-photo.org -o-
> http://live.gnome.org/gtk-vnc :|