From c90770493c9160517100f3fb0c8a66f0988a33ae Mon Sep 17 00:00:00 2001 From: ulion Date: Wed, 7 Nov 2007 01:44:41 +0000 Subject: Handle mouse up event to get double click support from mp_fifo. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@24986 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libvo/vo_quartz.c | 29 +++++++++++++++++++++++------ 1 file changed, 23 insertions(+), 6 deletions(-) (limited to 'libvo') diff --git a/libvo/vo_quartz.c b/libvo/vo_quartz.c index 94d82522c4..4ce31404a6 100644 --- a/libvo/vo_quartz.c +++ b/libvo/vo_quartz.c @@ -308,6 +308,7 @@ static OSStatus MouseEventHandler(EventHandlerCallRef nextHandler, EventRef even break; case kEventMouseDown: + case kEventMouseUp: { EventMouseButton button; short part; @@ -317,7 +318,26 @@ static OSStatus MouseEventHandler(EventHandlerCallRef nextHandler, EventRef even GetEventParameter(event, kEventParamMouseButton, typeMouseButton, 0, sizeof(EventMouseButton), 0, &button); part = FindWindow(mousePos,&tmpWin); + if(kind == kEventMouseUp) + { + if (part != inContent) + break; + switch(button) + { + case kEventMouseButtonPrimary: + mplayer_put_key(MOUSE_BTN0); + break; + case kEventMouseButtonSecondary: + mplayer_put_key(MOUSE_BTN1); + break; + case kEventMouseButtonTertiary: + mplayer_put_key(MOUSE_BTN2); + break; + default:result = eventNotHandledErr;break; + } + break; + } if( (winMousePos.h > (bounds.right - 15)) && (winMousePos.v > (bounds.bottom)) ) { if(!vo_quartz_fs) @@ -335,13 +355,13 @@ static OSStatus MouseEventHandler(EventHandlerCallRef nextHandler, EventRef even switch(button) { case kEventMouseButtonPrimary: - mplayer_put_key(MOUSE_BTN0); + mplayer_put_key(MOUSE_BTN0 | MP_KEY_DOWN); break; case kEventMouseButtonSecondary: - mplayer_put_key(MOUSE_BTN1); + mplayer_put_key(MOUSE_BTN1 | MP_KEY_DOWN); break; case kEventMouseButtonTertiary: - mplayer_put_key(MOUSE_BTN2); + mplayer_put_key(MOUSE_BTN2 | MP_KEY_DOWN); break; default:result = eventNotHandledErr;break; @@ -350,9 +370,6 @@ static OSStatus MouseEventHandler(EventHandlerCallRef nextHandler, EventRef even } break; - case kEventMouseUp: - break; - case kEventMouseDragged: break; -- cgit v1.2.3