Module: wine Branch: master Commit: 5f5807cbfec59fe5aebf07badc0ab4732710b79b URL: http://source.winehq.org/git/wine.git/?a=commit;h=5f5807cbfec59fe5aebf07badc...
Author: Ken Thomases ken@codeweavers.com Date: Wed Jan 11 11:06:22 2017 -0600
winemac: Periodically check for pasteboard changes using a timer.
Signed-off-by: Ken Thomases ken@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/winemac.drv/clipboard.c | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/dlls/winemac.drv/clipboard.c b/dlls/winemac.drv/clipboard.c index 7d9ae0a..fc1589f 100644 --- a/dlls/winemac.drv/clipboard.c +++ b/dlls/winemac.drv/clipboard.c @@ -1664,6 +1664,7 @@ static void grab_win32_clipboard(BOOL changed) last_clipboard_update = GetTickCount64(); set_win32_clipboard_formats_from_mac_pasteboard(types); CloseClipboard(); + SetTimer(clipboard_hwnd, 1, CLIPBOARD_UPDATE_DELAY, NULL); }
@@ -1713,9 +1714,14 @@ static LRESULT CALLBACK clipboard_wndproc(HWND hwnd, UINT msg, WPARAM wp, LPARAM case WM_RENDERFORMAT: render_format(wp); break; + case WM_TIMER: + if (!is_clipboard_owner) break; + grab_win32_clipboard(FALSE); + break; case WM_DESTROYCLIPBOARD: TRACE("WM_DESTROYCLIPBOARD: lost ownership\n"); is_clipboard_owner = FALSE; + KillTimer(hwnd, 1); break; } return DefWindowProcW(hwnd, msg, wp, lp);