[PATCH 3/3] winemac: Periodically check for pasteboard changes using a timer.
Ken Thomases
ken at codeweavers.com
Wed Jan 11 11:06:22 CST 2017
Signed-off-by: Ken Thomases <ken at codeweavers.com>
---
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);
--
2.10.2
More information about the wine-patches
mailing list