summaryrefslogtreecommitdiffstats
path: root/libvo
diff options
context:
space:
mode:
authorreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2008-02-10 10:01:25 +0000
committerreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2008-02-10 10:01:25 +0000
commitc5decb0718eabcefadc5eec09e6da963a74bf03c (patch)
treecd6f6286087dc77a348671cea47b1ab792fb19af /libvo
parentcfa8d1df96a642a80ed9a3243f1846400e5c7680 (diff)
downloadmpv-c5decb0718eabcefadc5eec09e6da963a74bf03c.tar.bz2
mpv-c5decb0718eabcefadc5eec09e6da963a74bf03c.tar.xz
Forward mouse messages to -wid Window.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25972 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libvo')
-rw-r--r--libvo/w32_common.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/libvo/w32_common.c b/libvo/w32_common.c
index dfcbe7f0dd..045f779037 100644
--- a/libvo/w32_common.c
+++ b/libvo/w32_common.c
@@ -43,6 +43,7 @@ static BOOL (WINAPI* myEnumDisplayMonitors)(HDC, LPCRECT, MONITORENUMPROC, LPARA
static LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) {
RECT r;
POINT p;
+ if (WinID < 0 || message == WM_PAINT || message == WM_SIZE) {
switch (message) {
case WM_PAINT:
event_flags |= VO_EVENT_EXPOSE;
@@ -143,6 +144,19 @@ static LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM l
break;
}
}
+ } else switch (message) {
+ case WM_MOUSEMOVE:
+ case WM_LBUTTONDOWN:
+ case WM_LBUTTONUP:
+ case WM_LBUTTONDBLCLK:
+ case WM_MBUTTONDOWN:
+ case WM_MBUTTONUP:
+ case WM_MBUTTONDBLCLK:
+ case WM_RBUTTONDOWN:
+ case WM_RBUTTONUP:
+ case WM_RBUTTONDBLCLK:
+ SendMessage(WinID, message, wParam, lParam);
+ }
return DefWindowProc(hWnd, message, wParam, lParam);
}
@@ -361,7 +375,7 @@ int vo_w32_init(void) {
mplayerIcon = LoadIcon(0, IDI_APPLICATION);
{
- WNDCLASSEX wcex = { sizeof wcex, CS_OWNDC, WndProc, 0, 0, hInstance, mplayerIcon, LoadCursor(0, IDC_ARROW), (HBRUSH)GetStockObject(BLACK_BRUSH), 0, classname, mplayerIcon };
+ WNDCLASSEX wcex = { sizeof wcex, CS_OWNDC | CS_DBLCLKS, WndProc, 0, 0, hInstance, mplayerIcon, LoadCursor(0, IDC_ARROW), (HBRUSH)GetStockObject(BLACK_BRUSH), 0, classname, mplayerIcon };
if (!RegisterClassEx(&wcex)) {
mp_msg(MSGT_VO, MSGL_ERR, "vo: win32: unable to register window class!\n");