Revision: 2836 http://skim-app.svn.sourceforge.net/skim-app/?rev=2836&view=rev Author: hofman Date: 2007-09-05 09:50:17 -0700 (Wed, 05 Sep 2007)
Log Message: ----------- Revert last commit, as it disables type-select in the PDFView. Modified Paths: -------------- trunk/SKOutlineView.m trunk/SKPDFView.m trunk/SKTableView.m trunk/SKTypeSelectHelper.h trunk/SKTypeSelectHelper.m Modified: trunk/SKOutlineView.m =================================================================== --- trunk/SKOutlineView.m 2007-09-05 16:11:40 UTC (rev 2835) +++ trunk/SKOutlineView.m 2007-09-05 16:50:17 UTC (rev 2836) @@ -91,9 +91,9 @@ unichar eventChar = [characters length] > 0 ? [characters characterAtIndex:0] : 0; unsigned modifierFlags = [theEvent modifierFlags] & NSDeviceIndependentModifierFlagsMask; - if ([typeSelectHelper isTypeSelectEvent:theEvent forView:self]) - [typeSelectHelper processKeyDownEvent:theEvent forView:self]; - else if ([typeSelectHelper isRepeatEvent:theEvent forView:self]) + if ([typeSelectHelper isTypeSelectEvent:theEvent]) + [typeSelectHelper processKeyDownEvent:theEvent]; + else if ([typeSelectHelper isRepeatEvent:theEvent]) [typeSelectHelper repeatSearch]; else if (eventChar == NSHomeFunctionKey && (modifierFlags & ~NSFunctionKeyMask) == 0) [self scrollToBeginningOfDocument:nil]; Modified: trunk/SKPDFView.m =================================================================== --- trunk/SKPDFView.m 2007-09-05 16:11:40 UTC (rev 2835) +++ trunk/SKPDFView.m 2007-09-05 16:50:17 UTC (rev 2836) @@ -952,9 +952,9 @@ [self setAnnotationMode:SKStrikeOutNote]; } else if ([self toolMode] == SKNoteToolMode && modifiers == 0 && eventChar == 'l') { [self setAnnotationMode:SKLineNote]; - } else if ([typeSelectHelper isTypeSelectEvent:theEvent forView:self]) { - [typeSelectHelper processKeyDownEvent:theEvent forView:self]; - } else if ([typeSelectHelper isRepeatEvent:theEvent forView:self]) { + } else if ([typeSelectHelper isTypeSelectEvent:theEvent]) { + [typeSelectHelper processKeyDownEvent:theEvent]; + } else if ([typeSelectHelper isRepeatEvent:theEvent]) { [typeSelectHelper repeatSearch]; } else { [super keyDown:theEvent]; Modified: trunk/SKTableView.m =================================================================== --- trunk/SKTableView.m 2007-09-05 16:11:40 UTC (rev 2835) +++ trunk/SKTableView.m 2007-09-05 16:50:17 UTC (rev 2836) @@ -69,9 +69,9 @@ unichar eventChar = [characters length] > 0 ? [characters characterAtIndex:0] : 0; unsigned modifierFlags = [theEvent modifierFlags] & NSDeviceIndependentModifierFlagsMask; - if ([typeSelectHelper isTypeSelectEvent:theEvent forView:self]) - [typeSelectHelper processKeyDownEvent:theEvent forView:self]; - else if ([typeSelectHelper isRepeatEvent:theEvent forView:self]) + if ([typeSelectHelper isTypeSelectEvent:theEvent]) + [typeSelectHelper processKeyDownEvent:theEvent]; + else if ([typeSelectHelper isRepeatEvent:theEvent]) [typeSelectHelper repeatSearch]; else if ((eventChar == NSDeleteCharacter || eventChar == NSDeleteFunctionKey) && modifierFlags == 0 && [self canDelete]) [self delete:self]; Modified: trunk/SKTypeSelectHelper.h =================================================================== --- trunk/SKTypeSelectHelper.h 2007-09-05 16:11:40 UTC (rev 2835) +++ trunk/SKTypeSelectHelper.h 2007-09-05 16:50:17 UTC (rev 2836) @@ -76,12 +76,12 @@ - (void)rebuildTypeSelectSearchCache; -- (void)processKeyDownEvent:(NSEvent *)keyEvent forView:(NSView *)view; +- (void)processKeyDownEvent:(NSEvent *)keyEvent; - (void)repeatSearch; - (void)stopSearch; -- (BOOL)isTypeSelectEvent:(NSEvent *)keyEvent forView:(NSView *)view; -- (BOOL)isRepeatEvent:(NSEvent *)keyEvent forView:(NSView *)view; +- (BOOL)isTypeSelectEvent:(NSEvent *)keyEvent; +- (BOOL)isRepeatEvent:(NSEvent *)keyEvent; @end Modified: trunk/SKTypeSelectHelper.m =================================================================== --- trunk/SKTypeSelectHelper.m 2007-09-05 16:11:40 UTC (rev 2835) +++ trunk/SKTypeSelectHelper.m 2007-09-05 16:50:17 UTC (rev 2836) @@ -139,28 +139,26 @@ searchCache = [[dataSource typeSelectHelperSelectionItems:self] retain]; } -- (void)processKeyDownEvent:(NSEvent *)keyEvent forView:(NSView *)view { - if ([self isTypeSelectEvent:keyEvent forView:view]) { - NSText *fieldEditor = [[view window] fieldEditor:YES forObject:self]; - - if (processing == NO) - [fieldEditor setString:@""]; - - // Append the new character to the search string - [fieldEditor interpretKeyEvents:[NSArray arrayWithObject:keyEvent]]; - [self setSearchString:[fieldEditor string]]; - - if ([dataSource respondsToSelector:@selector(typeSelectHelper:updateSearchString:)]) - [dataSource typeSelectHelper:self updateSearchString:searchString]; - - // Reset the timer if it hasn't expired yet - [self startTimerForSelector:@selector(typeSelectSearchTimeout:)]; - - if (matchesImmediately) - [self searchWithStickyMatch:processing]; - - processing = YES; - } +- (void)processKeyDownEvent:(NSEvent *)keyEvent { + NSText *fieldEditor = [[NSApp keyWindow] fieldEditor:YES forObject:self]; + + if (processing == NO) + [fieldEditor setString:@""]; + + // Append the new character to the search string + [fieldEditor interpretKeyEvents:[NSArray arrayWithObject:keyEvent]]; + [self setSearchString:[fieldEditor string]]; + + if ([dataSource respondsToSelector:@selector(typeSelectHelper:updateSearchString:)]) + [dataSource typeSelectHelper:self updateSearchString:searchString]; + + // Reset the timer if it hasn't expired yet + [self startTimerForSelector:@selector(typeSelectSearchTimeout:)]; + + if (matchesImmediately) + [self searchWithStickyMatch:processing]; + + processing = YES; } - (void)repeatSearch { @@ -179,13 +177,11 @@ [self typeSelectCleanTimeout:timer]; } -- (BOOL)isTypeSelectEvent:(NSEvent *)keyEvent forView:(NSView *)view { +- (BOOL)isTypeSelectEvent:(NSEvent *)keyEvent { if ([keyEvent type] != NSKeyDown) return NO; if ([keyEvent modifierFlags] & NSDeviceIndependentModifierFlagsMask & ~NSShiftKeyMask & ~NSAlternateKeyMask) return NO; - if ([[view window] firstResponder] != view) - return NO; NSString *characters = [keyEvent charactersIgnoringModifiers]; int i, count = [characters length]; @@ -204,11 +200,9 @@ return YES; } -- (BOOL)isRepeatEvent:(NSEvent *)keyEvent forView:(NSView *)view { +- (BOOL)isRepeatEvent:(NSEvent *)keyEvent { if ([keyEvent type] != NSKeyDown) return NO; - if ([[view window] firstResponder] != view) - return NO; NSString *characters = [keyEvent charactersIgnoringModifiers]; unichar character = [characters length] > 0 ? [characters characterAtIndex:0] : 0; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ Skim-app-commit mailing list Skim-app-commit@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/skim-app-commit