Revision: 7604
http://skim-app.svn.sourceforge.net/skim-app/?rev=7604&view=rev
Author: hofman
Date: 2011-12-26 12:25:50 +0000 (Mon, 26 Dec 2011)
Log Message:
-----------
simplify checking events for type select
Modified Paths:
--------------
trunk/SKTypeSelectHelper.m
Modified: trunk/SKTypeSelectHelper.m
===================================================================
--- trunk/SKTypeSelectHelper.m 2011-12-26 11:11:31 UTC (rev 7603)
+++ trunk/SKTypeSelectHelper.m 2011-12-26 12:25:50 UTC (rev 7604)
@@ -39,6 +39,7 @@
#import "SKTypeSelectHelper.h"
#import "SKRuntime.h"
#import "NSString_SKExtensions.h"
+#import "NSEvent_SKExtensions.h"
#define SKWindowDidChangeFirstResponderNotification
@"SKWindowDidChangeFirstResponderNotification"
@@ -122,7 +123,9 @@
}
- (BOOL)processKeyDownEvent:(NSEvent *)keyEvent {
- if ([self isSearchEvent:keyEvent]) {
+ if ([keyEvent type] != NSKeyDown) {
+ return NO;
+ } else if ([self isSearchEvent:keyEvent]) {
[self searchWithEvent:keyEvent];
return YES;
} else if ([self isRepeatEvent:keyEvent]) {
@@ -183,10 +186,8 @@
}
- (BOOL)isSearchEvent:(NSEvent *)keyEvent {
- if ([keyEvent type] != NSKeyDown)
+ if ([keyEvent deviceIndependentModifierFlags] & ~NSShiftKeyMask &
~NSAlternateKeyMask & ~NSAlphaShiftKeyMask & ~NSNumericPadKeyMask)
return NO;
- if ([keyEvent modifierFlags] & NSDeviceIndependentModifierFlagsMask &
~NSShiftKeyMask & ~NSAlternateKeyMask & ~NSAlphaShiftKeyMask &
~NSNumericPadKeyMask)
- return NO;
static NSCharacterSet *nonAlphanumericCharacterSet = nil;
if (nonAlphanumericCharacterSet == nil)
@@ -198,27 +199,11 @@
}
- (BOOL)isRepeatEvent:(NSEvent *)keyEvent {
- if ([keyEvent type] != NSKeyDown)
- return NO;
-
- NSString *characters = [keyEvent charactersIgnoringModifiers];
- unichar character = [characters length] > 0 ? [characters
characterAtIndex:0] : 0;
- NSUInteger modifierFlags = [keyEvent modifierFlags] &
NSDeviceIndependentModifierFlagsMask;
-
- return modifierFlags == 0 && character == REPEAT_CHARACTER;
+ return [keyEvent deviceIndependentModifierFlags] == 0 && [keyEvent
firstCharacter] == REPEAT_CHARACTER;
}
- (BOOL)isCancelEvent:(NSEvent *)keyEvent {
- if ([keyEvent type] != NSKeyDown)
- return NO;
- if ([self isProcessing] == NO)
- return NO;
-
- NSString *characters = [keyEvent charactersIgnoringModifiers];
- unichar character = [characters length] > 0 ? [characters
characterAtIndex:0] : 0;
- NSUInteger modifierFlags = [keyEvent modifierFlags] &
NSDeviceIndependentModifierFlagsMask;
-
- return modifierFlags == 0 && character == CANCEL_CHARACTER;
+ return [self isProcessing] == NO && [keyEvent
deviceIndependentModifierFlags] == 0 && [keyEvent firstCharacter] ==
CANCEL_CHARACTER;
}
// See
http://www.mactech.com/articles/mactech/Vol.18/18.10/1810TableTechniques/index.html
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Write once. Port to many.
Get the SDK and tools to simplify cross-platform app development. Create
new or port existing apps to sell to consumers worldwide. Explore the
Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join
http://p.sf.net/sfu/intel-appdev
_______________________________________________
Skim-app-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/skim-app-commit