Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-12-SP4:GA
spice-gtk
73cd553f-ignore-modifiers-messages-if-no-modifi...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 73cd553f-ignore-modifiers-messages-if-no-modifiers-changed.patch of Package spice-gtk
From 73cd553fb0fbd213b64d72f8b4289ed8a17fc6c0 Mon Sep 17 00:00:00 2001 From: Frediano Ziglio <fziglio@redhat.com> Date: Wed, 7 Sep 2016 11:56:36 +0100 Subject: [PATCH] Ignore modifiers messages if no modifiers changed MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This avoid keep sending modifiers changes if guest is not synchronising the changes. I consider this as an improving as this avoids client to try again and again to force synchronisation however this does not prevent every unwanted keystroke insertion which possibly can be a real problem on some configurations. For instance if guest do not handle caps lock as the client do if client uses another modifiers (as num lock) this can force inserting virtual caps keypress. Signed-off-by: Frediano Ziglio <fziglio@redhat.com> Acked-by: Marc-André Lureau <mlureau@redhat.com> --- src/channel-inputs.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/channel-inputs.c b/src/channel-inputs.c index 7572bff..f79bc38 100644 --- a/src/channel-inputs.c +++ b/src/channel-inputs.c @@ -242,8 +242,10 @@ static void inputs_handle_modifiers(SpiceChannel *channel, SpiceMsgIn *in) SpiceInputsChannelPrivate *c = SPICE_INPUTS_CHANNEL(channel)->priv; SpiceMsgInputsKeyModifiers *modifiers = spice_msg_in_parsed(in); - c->modifiers = modifiers->modifiers; - g_coroutine_signal_emit(channel, signals[SPICE_INPUTS_MODIFIERS], 0); + if (c->modifiers != modifiers->modifiers) { + c->modifiers = modifiers->modifiers; + g_coroutine_signal_emit(channel, signals[SPICE_INPUTS_MODIFIERS], 0); + } } /* coroutine context */ -- 2.11.0
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor