From d583141f908c038b55ea8af1a767bfd139f57ab7 Mon Sep 17 00:00:00 2001 From: Gennadiy Potapov Date: Sun, 3 Apr 2016 15:59:19 +0800 Subject: [PATCH] mouse scroll to choose clippings and double click to paste --- AppController.h | 1 + AppController.m | 17 +++++++++++++++-- UI/BezelWindow.m | 9 +++++++++ 3 files changed, 25 insertions(+), 2 deletions(-) diff --git a/AppController.h b/AppController.h index 1b1dad1..26d7eed 100755 --- a/AppController.h +++ b/AppController.h @@ -98,6 +98,7 @@ -(void) showBezel; -(void) hideBezel; -(void) processBezelKeyDown:(NSEvent *)theEvent; +-(void) processBezelMouseEvents:(NSEvent *)theEvent; -(void) metaKeysReleased; // Menu related diff --git a/AppController.m b/AppController.m index 096b78b..4ecdfa7 100755 --- a/AppController.m +++ b/AppController.m @@ -1008,7 +1008,19 @@ DLog(@"CODE %ld", (long)[mainRecorder keyCombo].code); break; } - } + } +} + +-(void) processBezelMouseEvents:(NSEvent *)theEvent { + if (theEvent.type == NSScrollWheel) { + if (theEvent.deltaY > 0.0f) { + [self stackUp]; + } else if (theEvent.deltaY < 0.0f) { + [self stackDown]; + } + } else if (theEvent.type == NSLeftMouseUp && theEvent.clickCount == 2) { + [self pasteFromStack]; + } } - (void)applicationDidFinishLaunching:(NSNotification *)notification @@ -1048,7 +1060,8 @@ [bezel setCollectionBehavior:NSWindowCollectionBehaviorCanJoinAllSpaces]; // if ([[NSUserDefaults standardUserDefaults] boolForKey:@"popUpAnimation"]) // [bezel makeKeyAndOrderFrontWithPopEffect]; - else [bezel makeKeyAndOrderFront:self]; +// else + [bezel makeKeyAndOrderFront:self]; isBezelDisplayed = YES; } diff --git a/UI/BezelWindow.m b/UI/BezelWindow.m index 8f96420..aa05f50 100755 --- a/UI/BezelWindow.m +++ b/UI/BezelWindow.m @@ -332,6 +332,15 @@ static const float lineHeight = 16; } } + - (void)mouseUp:(NSEvent *)theEvent +{ + if ( [self delegate] ) + { + [delegate performSelector:@selector(processBezelMouseEvents:) withObject:theEvent]; + } +} + + - (void)keyDown:(NSEvent *)theEvent { if ( [self delegate] )