> > I noticed Linux GNOME desktop hangs up when Windows virt-viewer connects to > the desktop and type some specific keys on JP keyboard. > > Server: GNOME desktop and IBus in RHEL 7 > Client virt-viewer in Windows 7 with JP 106 keyboard > > When I see the key events with 'xev' command in GNOME desktop, I observed the > unlimited too many key events of Zenkaku_Hankaku key and it caused the > desktop freeze. > The attached three patches resolves the desktop issues. > Can you please send the patches as separate e-mails (like git format-patch style) so we can discuss them online? Frediano > 1. spice-gtk-1311820-01-zkhk.patch > Zenkaku_Hankaku key has the different virtual-key codes between WM_KEYDOWN > and WM_KEYUP and MapVirtualKey() cannot get the scancode from virtual-key > code of WM_KEYDOWN (VK_OEM_ENLW) and spice-gtk didn't send the key press > events and caused the desktop freeze with unlimited key release events. > > The fix is to get the scancode from virtual-key code of WM_KEYUP > (VK_OEM_AUTO) and Zenkaku_Hankaku key works fine. > > Alt + Zenkaku_Hankaku key also has the different virtual-key code and > MapVirtualKey() cannot get the > scancode from the virtual-key and spice-gtk didn't send the key press events > and Alt+Zenkaku_Hankaku could not be used. > > The fix is to get the scancode from virtual-key code of Zenkaku_Hankaku key > (VK_OEM_AUTO). > > VK_CAPITAL, VK_OEM_BACKTAB are also applied the similar fixes. > > 2. spice-gtk-1311820-02-freeze.patch > After spice-gtk-1311820-01-zkhk.patch is applied, WM_KEYDOWN of > Alt+Zenkaku_Hankaku (VK_KANJI) can be sent with spice-gtk but > Alt+Zenkaku_Hankaku did > not send the WM_KEYUP event in Windows and it caused Linux desktop freeze > with unlimited key press events. > > The fix is to send the key release event in spice-gtk. > > VK_OEM_ATTN, VK_OEM_COPY, VK_OEM_BACKTAB are applied the similar fixes. > > 3. spice-gtk-1311820-03-hangul.patch > This is an additional fix. Korean keyboard assigns Hangul key on the position > of Right Alt and Left Alt and Hangul keys have the different scancodes > but MapVirtualKey() returned the same scancode and could not use Hangul key > on Linux desktop. > > The fix is to send the right scancode of VK_HANGUL. > > Thanks, > Fujiwara > _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel