winex11: Periodically check for selection changes using a timer.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
1137e3502d
commit
d4f8366fa6
|
@ -1852,6 +1852,7 @@ static BOOL request_selection_contents( Display *display, BOOL changed )
|
||||||
last_size = size;
|
last_size = size;
|
||||||
last_clipboard_update = GetTickCount64();
|
last_clipboard_update = GetTickCount64();
|
||||||
CloseClipboard();
|
CloseClipboard();
|
||||||
|
SetTimer( clipboard_hwnd, 1, SELECTION_UPDATE_DELAY, NULL );
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1888,9 +1889,14 @@ static LRESULT CALLBACK clipboard_wndproc( HWND hwnd, UINT msg, WPARAM wp, LPARA
|
||||||
case WM_RENDERFORMAT:
|
case WM_RENDERFORMAT:
|
||||||
if (render_format( wp )) rendered_formats++;
|
if (render_format( wp )) rendered_formats++;
|
||||||
break;
|
break;
|
||||||
|
case WM_TIMER:
|
||||||
|
if (!is_clipboard_owner) break;
|
||||||
|
request_selection_contents( thread_display(), FALSE );
|
||||||
|
break;
|
||||||
case WM_DESTROYCLIPBOARD:
|
case WM_DESTROYCLIPBOARD:
|
||||||
TRACE( "WM_DESTROYCLIPBOARD: lost ownership\n" );
|
TRACE( "WM_DESTROYCLIPBOARD: lost ownership\n" );
|
||||||
is_clipboard_owner = FALSE;
|
is_clipboard_owner = FALSE;
|
||||||
|
KillTimer( hwnd, 1 );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
return DefWindowProcW( hwnd, msg, wp, lp );
|
return DefWindowProcW( hwnd, msg, wp, lp );
|
||||||
|
|
Loading…
Reference in New Issue