diff options
Diffstat (limited to 'libvo/w32_common.c')
-rw-r--r-- | libvo/w32_common.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/libvo/w32_common.c b/libvo/w32_common.c index 0c512f3d2d..a8a59d02c9 100644 --- a/libvo/w32_common.c +++ b/libvo/w32_common.c @@ -101,6 +101,7 @@ static LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM l event_flags |= VO_EVENT_EXPOSE; break; case WM_MOVE: + event_flags |= VO_EVENT_MOVE; p.x = 0; p.y = 0; ClientToScreen(vo_window, &p); @@ -219,11 +220,18 @@ int vo_w32_check_events(void) { if (WinID >= 0) { BOOL res; RECT r; + POINT p; res = GetClientRect(vo_window, &r); if (res && (r.right != vo_dwidth || r.bottom != vo_dheight)) { vo_dwidth = r.right; vo_dheight = r.bottom; event_flags |= VO_EVENT_RESIZE; } + p.x = 0; p.y = 0; + ClientToScreen(vo_window, &p); + if (p.x != vo_dx || p.y != vo_dy) { + vo_dx = p.x; vo_dy = p.y; + event_flags |= VO_EVENT_MOVE; + } res = GetClientRect(WinID, &r); if (res && (r.right != vo_dwidth || r.bottom != vo_dheight)) MoveWindow(vo_window, 0, 0, r.right, r.bottom, FALSE); |