fixed issue with broken sort descriptors afer KeePassKit API change

This commit is contained in:
michael starke
2016-02-15 14:13:55 +01:00
parent d29e870e6e
commit 9344b974a5

View File

@@ -160,6 +160,10 @@ NSString *const kMPDeprecatedSettingsKeyShowMenuItem = @"Sh
/*
MacPass < 0.4 did use compare: for the entry table view,
this was changed in 0.4 to localizedCaseInsensitiveCompare:
MacPass < 0.5.2 did use parent.name for group names,
this was changed in 0.6. to parent.title
*/
NSData *descriptorData = [[NSUserDefaults standardUserDefaults] dataForKey:kMPSettingsKeyEntryTableSortDescriptors];
if(!descriptorData) {
@@ -168,7 +172,9 @@ NSString *const kMPDeprecatedSettingsKeyShowMenuItem = @"Sh
NSArray *sortDescriptors = [NSUnarchiver unarchiveObjectWithData:descriptorData];
for(NSSortDescriptor *descriptor in sortDescriptors) {
if([descriptor selector] == @selector(compare:) || [[descriptor key] isEqualToString:[MPEntryViewController timeInfoModificationTimeKeyPath]] ) {
if(descriptor.selector == @selector(compare:)
|| [descriptor.key isEqualToString:[MPEntryViewController timeInfoModificationTimeKeyPath]]
|| [descriptor.key isEqualToString:@"parent.name"] ) {
[[NSUserDefaults standardUserDefaults] removeObjectForKey:kMPSettingsKeyEntryTableSortDescriptors];
break;
}