changeset 24077:9ce03980ed0c

added double click support in vo_macosx. Patch by Ulion <ulion2002@gmail.com>
author nplourde
date Sat, 18 Aug 2007 22:46:29 +0000
parents 7ac48ed8c394
children f149d340ffe4
files libvo/vo_macosx.h libvo/vo_macosx.m
diffstat 2 files changed, 33 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/libvo/vo_macosx.h	Sat Aug 18 10:30:15 2007 +0000
+++ b/libvo/vo_macosx.h	Sat Aug 18 22:46:29 2007 +0000
@@ -73,8 +73,11 @@
 - (void) keyDown: (NSEvent *) theEvent;
 - (void) mouseMoved: (NSEvent *) theEvent;
 - (void) mouseDown: (NSEvent *) theEvent;
+- (void) mouseUp: (NSEvent *) theEvent;
 - (void) rightMouseDown: (NSEvent *) theEvent;
+- (void) rightMouseUp: (NSEvent *) theEvent;
 - (void) otherMouseDown: (NSEvent *) theEvent;
+- (void) otherMouseUp: (NSEvent *) theEvent;
 - (void) scrollWheel: (NSEvent *) theEvent;
 - (void) mouseEvent: (NSEvent *) theEvent;
 - (void) check_events;
--- a/libvo/vo_macosx.m	Sat Aug 18 10:30:15 2007 +0000
+++ b/libvo/vo_macosx.m	Sat Aug 18 22:46:29 2007 +0000
@@ -947,16 +947,31 @@
 	[self mouseEvent: theEvent];
 }
 
+- (void) mouseUp: (NSEvent *) theEvent
+{
+	[self mouseEvent: theEvent];
+}
+
 - (void) rightMouseDown: (NSEvent *) theEvent
 {
 	[self mouseEvent: theEvent];
 }
 
+- (void) rightMouseUp: (NSEvent *) theEvent
+{
+	[self mouseEvent: theEvent];
+}
+
 - (void) otherMouseDown: (NSEvent *) theEvent
 {
 	[self mouseEvent: theEvent];
 }
 
+- (void) otherMouseUp: (NSEvent *) theEvent
+{
+	[self mouseEvent: theEvent];
+}
+
 - (void) scrollWheel: (NSEvent *) theEvent
 {
 	if([theEvent deltaY] > 0)
@@ -967,11 +982,21 @@
 
 - (void) mouseEvent: (NSEvent *) theEvent
 {
-	switch( [theEvent buttonNumber] )
-	{ 
-		case 0: mplayer_put_key(MOUSE_BTN0);break;
-		case 1: mplayer_put_key(MOUSE_BTN1);break;
-		case 2: mplayer_put_key(MOUSE_BTN2);break;
+	if ( [theEvent buttonNumber] >= 0 && [theEvent buttonNumber] <= 9 )
+	{
+		switch([theEvent type])
+		{
+			case NSLeftMouseDown:
+			case NSRightMouseDown:
+			case NSOtherMouseDown:
+				mplayer_put_key((MOUSE_BTN0 + [theEvent buttonNumber]) | MP_KEY_DOWN);
+				break;
+			case NSLeftMouseUp:
+			case NSRightMouseUp:
+			case NSOtherMouseUp:
+				mplayer_put_key(MOUSE_BTN0 + [theEvent buttonNumber]);
+				break;
+		}
 	}
 }