[PATCH] winex11.drv: Call request_selection_contents() after the XFixes extension is initialized.

Zhiyi Zhang zzhang at codeweavers.com
Thu Mar 18 07:42:47 CDT 2021


request_selection_contents() checks whether the XFixes extension is available and will start a timer
to check for clipboard content updates at an interval. Running request_selection_contents() before
the XFixes extension is initialized will always start a timer and sends unnecessary clipboard
content change notifications, causing Office right-click menus to disappear.

Signed-off-by: Zhiyi Zhang <zzhang at codeweavers.com>
---
 dlls/winex11.drv/clipboard.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/dlls/winex11.drv/clipboard.c b/dlls/winex11.drv/clipboard.c
index 8a0617cfede..3d8347d46fb 100644
--- a/dlls/winex11.drv/clipboard.c
+++ b/dlls/winex11.drv/clipboard.c
@@ -2064,9 +2064,9 @@ static DWORD WINAPI clipboard_thread( void *arg )
     clipboard_thread_id = GetCurrentThreadId();
     AddClipboardFormatListener( clipboard_hwnd );
     register_builtin_formats();
-    request_selection_contents( clipboard_display, TRUE );
 
     xfixes_init();
+    request_selection_contents( clipboard_display, TRUE );
 
     TRACE( "clipboard thread %04x running\n", GetCurrentThreadId() );
     while (GetMessageW( &msg, 0, 0, 0 )) DispatchMessageW( &msg );
-- 
2.27.0



More information about the wine-devel mailing list