Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package gnome-connections for openSUSE:Factory checked in at 2022-04-27 21:41:39 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gnome-connections (Old) and /work/SRC/openSUSE:Factory/.gnome-connections.new.1538 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gnome-connections" Wed Apr 27 21:41:39 2022 rev:8 rq:973131 version:42.1.2 Changes: -------- --- /work/SRC/openSUSE:Factory/gnome-connections/gnome-connections.changes 2022-04-11 23:50:46.194025643 +0200 +++ /work/SRC/openSUSE:Factory/.gnome-connections.new.1538/gnome-connections.changes 2022-04-27 21:41:47.917046728 +0200 @@ -1,0 +2,6 @@ +Wed Apr 13 20:43:39 UTC 2022 - Emily Gonyer <emilyyr...@gmail.com> + +- Changes from 42.1.1: + + Fix handling of non-char keyboard input. + +------------------------------------------------------------------- Old: ---- gnome-connections-42.1.1.tar.xz New: ---- gnome-connections-42.1.2.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gnome-connections.spec ++++++ --- /var/tmp/diff_new_pack.rLfN01/_old 2022-04-27 21:41:51.773051270 +0200 +++ /var/tmp/diff_new_pack.rLfN01/_new 2022-04-27 21:41:51.777051274 +0200 @@ -17,7 +17,7 @@ Name: gnome-connections -Version: 42.1.1 +Version: 42.1.2 Release: 0 Summary: A remote desktop client for GNOME License: GPL-3.0-or-later ++++++ gnome-connections-42.1.1.tar.xz -> gnome-connections-42.1.2.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-connections-42.1.1/NEWS new/gnome-connections-42.1.2/NEWS --- old/gnome-connections-42.1.1/NEWS 2022-04-07 14:05:12.000000000 +0200 +++ new/gnome-connections-42.1.2/NEWS 2022-04-13 10:37:18.000000000 +0200 @@ -1,3 +1,10 @@ +42.1.2 - 12 Apr, 2022 +===================== + +Changes since 42.1.1 + + - Fix handling of non-char keyboard input + 42.1.1 - 07 Apr, 2022 ===================== diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-connections-42.1.1/meson.build new/gnome-connections-42.1.2/meson.build --- old/gnome-connections-42.1.1/meson.build 2022-04-07 14:05:12.000000000 +0200 +++ new/gnome-connections-42.1.2/meson.build 2022-04-13 10:37:18.000000000 +0200 @@ -1,5 +1,5 @@ project('gnome-connections', ['c', 'vala'], - version: '42.1.1', + version: '42.1.2', meson_version: '>= 0.50.0', default_options: [ 'warning_level=2', ], diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-connections-42.1.1/subprojects/gtk-frdp/src/frdp-display.c new/gnome-connections-42.1.2/subprojects/gtk-frdp/src/frdp-display.c --- old/gnome-connections-42.1.1/subprojects/gtk-frdp/src/frdp-display.c 2022-04-07 12:43:38.000000000 +0200 +++ new/gnome-connections-42.1.2/subprojects/gtk-frdp/src/frdp-display.c 2022-04-11 09:38:31.000000000 +0200 @@ -61,22 +61,11 @@ { FrdpDisplay *self = FRDP_DISPLAY (widget); FrdpDisplayPrivate *priv = frdp_display_get_instance_private (self); - guint16 keycode = key->hardware_keycode; if (!frdp_display_is_initialized (self)) return TRUE; - switch (key->type) { - case GDK_KEY_PRESS: - frdp_session_send_key (priv->session, FRDP_KEY_EVENT_PRESS, keycode); - break; - case GDK_KEY_RELEASE: - frdp_session_send_key (priv->session, FRDP_KEY_EVENT_RELEASE, keycode); - break; - default: - g_warn_if_reached (); - break; - } + frdp_session_send_key (priv->session, key); return TRUE; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-connections-42.1.1/subprojects/gtk-frdp/src/frdp-session.c new/gnome-connections-42.1.2/subprojects/gtk-frdp/src/frdp-session.c --- old/gnome-connections-42.1.1/subprojects/gtk-frdp/src/frdp-session.c 2022-04-07 12:43:38.000000000 +0200 +++ new/gnome-connections-42.1.2/subprojects/gtk-frdp/src/frdp-session.c 2022-04-11 09:38:31.000000000 +0200 @@ -17,6 +17,8 @@ */ #include <errno.h> +#include <freerdp/input.h> +#include <freerdp/locale/keyboard.h> #include <freerdp/freerdp.h> #include <freerdp/gdi/gdi.h> #include <gdk/gdk.h> @@ -511,6 +513,8 @@ settings->DynamicResolutionUpdate = TRUE; settings->SupportDisplayControl = TRUE; settings->RedirectClipboard = FALSE; + + settings->KeyboardLayout = freerdp_keyboard_init (0); } static void @@ -875,43 +879,27 @@ frdp_session_update_mouse_pointer (self); } -static unsigned char keycode_scancodes[] = { - 0, 0, 0, 0, 0, 0, 0, 28, - 29, 53, 55, 56, 0, 71, 72, 73, - 75, 77, 79, 80, 81, 82, 83, 0, - 0, 0, 0, 0, 0, 0, 69, 0, - 0, 0, 0, 0, 91, 92, 93, -}; - -static guint16 -frdp_session_get_scancode_by_keycode (guint16 keycode) -{ - if (keycode < 8) - return 0; - else if (keycode < 97) - return keycode - 8; - else if (keycode < 97 + sizeof (keycode_scancodes)) - return keycode_scancodes[keycode - 97]; - else - return 0; -} - void frdp_session_send_key (FrdpSession *self, - FrdpKeyEvent event, - guint16 keycode) + GdkEventKey *key) { rdpInput *input = self->priv->freerdp_session->input; - guint16 flags = 0; - guint16 scancode = - frdp_session_get_scancode_by_keycode (keycode); + DWORD scancode = 0; + guint8 keycode; + guint16 flags; + gboolean extended = FALSE; + + scancode = + freerdp_keyboard_get_rdp_scancode_from_x11_keycode (key->hardware_keycode); + + keycode = scancode & 0xFF; + extended = scancode & 0x100; - if (event == FRDP_KEY_EVENT_PRESS) - flags |= KBD_FLAGS_DOWN; - else - flags |= KBD_FLAGS_RELEASE; + flags = extended ? KBD_FLAGS_EXTENDED : 0; + flags |= key->type == GDK_KEY_PRESS ? KBD_FLAGS_DOWN : KBD_FLAGS_RELEASE; - input->KeyboardEvent (input, flags, scancode); + if (keycode) + input->KeyboardEvent (input, flags, keycode); } GdkPixbuf * diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-connections-42.1.1/subprojects/gtk-frdp/src/frdp-session.h new/gnome-connections-42.1.2/subprojects/gtk-frdp/src/frdp-session.h --- old/gnome-connections-42.1.1/subprojects/gtk-frdp/src/frdp-session.h 2022-04-07 12:43:38.000000000 +0200 +++ new/gnome-connections-42.1.2/subprojects/gtk-frdp/src/frdp-session.h 2022-04-11 09:38:31.000000000 +0200 @@ -84,8 +84,7 @@ gboolean enter); void frdp_session_send_key (FrdpSession *self, - FrdpKeyEvent event, - guint16 keycode); + GdkEventKey *key); GdkPixbuf *frdp_session_get_pixbuf (FrdpSession *self); /*FreeRDP fatal error codes*/