diff --git a/MacPass/MPDocument+Autotype.m b/MacPass/MPDocument+Autotype.m index a6145b58..728d93ef 100644 --- a/MacPass/MPDocument+Autotype.m +++ b/MacPass/MPDocument+Autotype.m @@ -32,13 +32,13 @@ + (BOOL)isCandidateForMalformedAutotype:(id)item { NSString *keystrokeSequence = @""; - if([item isKindOfClass:[KPKEntry class]] && ![((KPKEntry *)item).autotype hasDefaultKeystrokeSequence]) { + if([item isKindOfClass:KPKEntry.class] && ![((KPKEntry *)item).autotype hasDefaultKeystrokeSequence]) { keystrokeSequence = ((KPKEntry *)item).autotype.defaultKeystrokeSequence; } - else if( [item isKindOfClass:[KPKGroup class]] && ![item hasDefaultAutotypeSequence]) { + else if( [item isKindOfClass:KPKGroup.class] && ![item hasDefaultAutotypeSequence]) { keystrokeSequence = ((KPKGroup *)item).defaultAutoTypeSequence; } - else if( [item isKindOfClass:[KPKWindowAssociation class]] && ![item hasDefaultKeystrokeSequence]){ + else if( [item isKindOfClass:KPKWindowAssociation.class] && ![item hasDefaultKeystrokeSequence]){ keystrokeSequence = ((KPKWindowAssociation *)item).keystrokeSequence; } /* if nothing is true, keystrokeSequence is nil an hence return is NO */ @@ -57,10 +57,10 @@ NSArray *autotypeEntries = usePreferredEntry ? [[NSArray alloc] initWithObjects:entry, nil] : [self.root autotypeableChildEntries]; NSMutableArray *contexts = [[NSMutableArray alloc] initWithCapacity:MAX(1,ceil(autotypeEntries.count / 4.0))]; - BOOL matchTitle = [[NSUserDefaults standardUserDefaults] boolForKey:kMPSettingsKeyAutotypeMatchTitle]; - BOOL matchURL = [[NSUserDefaults standardUserDefaults] boolForKey:kMPSettingsKeyAutotypeMatchURL]; - BOOL matchHost = [[NSUserDefaults standardUserDefaults] boolForKey:kMPSettingsKeyAutotypeMatchHost]; - BOOL matchTags = [[NSUserDefaults standardUserDefaults] boolForKey:kMPSettingsKeyAutotypeMatchTags]; + BOOL matchTitle = [NSUserDefaults.standardUserDefaults boolForKey:kMPSettingsKeyAutotypeMatchTitle]; + BOOL matchURL = [NSUserDefaults.standardUserDefaults boolForKey:kMPSettingsKeyAutotypeMatchURL]; + BOOL matchHost = [NSUserDefaults.standardUserDefaults boolForKey:kMPSettingsKeyAutotypeMatchHost]; + BOOL matchTags = [NSUserDefaults.standardUserDefaults boolForKey:kMPSettingsKeyAutotypeMatchTags]; MPAutotypeContext *context; for(KPKEntry *entry in autotypeEntries) { @@ -80,21 +80,22 @@ /* Test for entry title in window title */ if(matchTitle && !foundMatch) { /* TODO use kpk_finalValueForEntry */ - foundMatch = [windowTitle rangeOfString:entry.title options:NSCaseInsensitiveSearch].length != 0 || [entry.title rangeOfString:windowTitle options:NSCaseInsensitiveSearch].length != 0; + foundMatch = ([windowTitle localizedCaseInsensitiveContainsString:entry.title] + || [entry.title localizedCaseInsensitiveContainsString:windowTitle]); } /* test for URL */ if(matchURL && !foundMatch) { - foundMatch = [windowTitle rangeOfString:entry.url options:NSCaseInsensitiveSearch].length != 0; + foundMatch = [windowTitle localizedCaseInsensitiveContainsString:entry.url]; } /* test for host */ if(matchHost && !foundMatch) { NSURL *url = [NSURL URLWithString:entry.url]; - foundMatch = url.host != nil && [windowTitle rangeOfString:url.host options:NSCaseInsensitiveSearch].length != 0; + foundMatch = url.host != nil && [windowTitle localizedCaseInsensitiveContainsString:url.host]; } /* test for tags */ if(matchTags && !foundMatch) { for(NSString *tag in entry.tags) { - foundMatch = ([windowTitle rangeOfString:tag options:NSCaseInsensitiveSearch].length != 0); + foundMatch = [windowTitle localizedCaseInsensitiveContainsString:tag]; if(foundMatch) { break; }