Rebase against 7db5431699037d03f26c065a58c400991210c7f7.

This commit is contained in:
Alistair Leslie-Hughes
2023-03-15 15:06:52 +11:00
parent e3a3dcd0ce
commit 2ac5cdbf37
3 changed files with 29 additions and 29 deletions

View File

@@ -1,7 +1,7 @@
From 95f66fcd054ff2bae4e35e25a632b88a63aa4bb1 Mon Sep 17 00:00:00 2001
From 7701298b62301e551fd7514f79f19eabacc66cac Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
Date: Fri, 6 Jan 2023 08:09:11 +0100
Subject: [PATCH 5/9] winex11: Use the user configured keyboard layout if any.
Subject: [PATCH] winex11: Use the user configured keyboard layout if any.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=30984
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45605
@@ -12,10 +12,10 @@ Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45605
3 files changed, 33 insertions(+), 6 deletions(-)
diff --git a/dlls/winex11.drv/keyboard.c b/dlls/winex11.drv/keyboard.c
index 187979c4494..26548c9256e 100644
index 7406aabdf40..4fc502cfe5d 100644
--- a/dlls/winex11.drv/keyboard.c
+++ b/dlls/winex11.drv/keyboard.c
@@ -934,7 +934,6 @@ static const struct {
@@ -931,7 +931,6 @@ static const struct {
{0, NULL, NULL, NULL, NULL} /* sentinel */
};
@@ -23,7 +23,7 @@ index 187979c4494..26548c9256e 100644
/* maybe more of these scancodes should be extended? */
/* extended must be set for ALT_R, CTRL_R,
@@ -1089,6 +1088,26 @@ static const WORD xfree86_vendor_key_vkey[256] =
@@ -1086,6 +1085,26 @@ static const WORD xfree86_vendor_key_vkey[256] =
0, 0, 0, 0, 0, 0, 0, 0 /* 1008FFF8 */
};
@@ -50,7 +50,7 @@ index 187979c4494..26548c9256e 100644
WCHAR *x11drv_get_keyboard_layout_list( DWORD *length )
{
WCHAR *tmp, *layouts = calloc( 1, sizeof(WCHAR) );
@@ -1442,11 +1461,11 @@ BOOL X11DRV_KeyEvent( HWND hwnd, XEvent *xev )
@@ -1432,11 +1451,11 @@ BOOL X11DRV_KeyEvent( HWND hwnd, XEvent *xev )
* whichever matches most closely.
* kbd_section must be held.
*/
@@ -64,15 +64,15 @@ index 187979c4494..26548c9256e 100644
KeySym keysym = 0;
const char (*lkey)[MAIN_LEN][4];
unsigned max_seq = 0;
@@ -1546,6 +1565,7 @@ X11DRV_KEYBOARD_DetectLayout( Display *display )
@@ -1534,6 +1553,7 @@ X11DRV_KEYBOARD_DetectLayout( Display *display )
main_key_tab[kbd_layout].comment);
TRACE("detected layout is \"%s\"\n", main_key_tab[kbd_layout].comment);
+ return kbd_layout;
}
static HKL get_locale_kbd_layout(void)
@@ -1614,7 +1634,7 @@ void X11DRV_InitKeyboard( Display *display )
@@ -1569,7 +1589,7 @@ void X11DRV_InitKeyboard( Display *display )
{ 0x41, 0x5a }, /* VK_A - VK_Z */
{ 0, 0 }
};
@@ -81,7 +81,7 @@ index 187979c4494..26548c9256e 100644
pthread_mutex_lock( &kbd_mutex );
XDisplayKeycodes(display, &min_keycode, &max_keycode);
@@ -1648,8 +1668,9 @@ void X11DRV_InitKeyboard( Display *display )
@@ -1601,8 +1621,9 @@ void X11DRV_InitKeyboard( Display *display )
}
XFreeModifiermap(mmp);
@@ -94,10 +94,10 @@ index 187979c4494..26548c9256e 100644
syms = (keysyms_per_keycode > 4) ? 4 : keysyms_per_keycode;
diff --git a/dlls/winex11.drv/x11drv.h b/dlls/winex11.drv/x11drv.h
index 7d96ec648d1..c02a6c67111 100644
index 12be88a31c5..653d2fe80e3 100644
--- a/dlls/winex11.drv/x11drv.h
+++ b/dlls/winex11.drv/x11drv.h
@@ -443,6 +443,7 @@ extern BOOL use_system_cursors DECLSPEC_HIDDEN;
@@ -455,6 +455,7 @@ extern BOOL use_system_cursors DECLSPEC_HIDDEN;
extern BOOL show_systray DECLSPEC_HIDDEN;
extern BOOL grab_pointer DECLSPEC_HIDDEN;
extern BOOL grab_fullscreen DECLSPEC_HIDDEN;
@@ -105,7 +105,7 @@ index 7d96ec648d1..c02a6c67111 100644
extern BOOL usexcomposite DECLSPEC_HIDDEN;
extern BOOL managed_mode DECLSPEC_HIDDEN;
extern BOOL decorated_mode DECLSPEC_HIDDEN;
@@ -711,6 +712,7 @@ extern void init_recursive_mutex( pthread_mutex_t *mutex ) DECLSPEC_HIDDEN;
@@ -723,6 +724,7 @@ extern void init_recursive_mutex( pthread_mutex_t *mutex ) DECLSPEC_HIDDEN;
/* keyboard.c */
@@ -114,10 +114,10 @@ index 7d96ec648d1..c02a6c67111 100644
#define DEPTH_COUNT 3
diff --git a/dlls/winex11.drv/x11drv_main.c b/dlls/winex11.drv/x11drv_main.c
index 66dbc3c8270..dc2eb716d0b 100644
index 751bf2b4449..7056cf6643d 100644
--- a/dlls/winex11.drv/x11drv_main.c
+++ b/dlls/winex11.drv/x11drv_main.c
@@ -79,6 +79,7 @@ BOOL use_system_cursors = TRUE;
@@ -76,6 +76,7 @@ BOOL use_system_cursors = TRUE;
BOOL show_systray = TRUE;
BOOL grab_pointer = TRUE;
BOOL grab_fullscreen = FALSE;
@@ -125,7 +125,7 @@ index 66dbc3c8270..dc2eb716d0b 100644
BOOL managed_mode = TRUE;
BOOL decorated_mode = TRUE;
BOOL private_color_map = FALSE;
@@ -580,6 +581,9 @@ static void setup_options(void)
@@ -578,6 +579,9 @@ static void setup_options(void)
if (!get_config_key( hkey, appkey, "GrabFullscreen", buffer, sizeof(buffer) ))
grab_fullscreen = IS_OPTION_TRUE( buffer[0] );
@@ -136,5 +136,5 @@ index 66dbc3c8270..dc2eb716d0b 100644
if (p) set_reg_string_value( hkey, "KeyboardLayoutList", p, len * sizeof(WCHAR) );
free( p );
--
2.39.1
2.39.2