mirror of
https://github.com/MacPass/MacPass.git
synced 2025-12-14 14:02:28 +00:00
Fixed exit Search issues
Exiting search now clears matching entries when no group was preselected (use case is opening a DB and then search without selecting a group) Deleting a group now correctly deselects the group. Previously the inspector still showed the group, but the outline view did not show any selection.
This commit is contained in:
@@ -328,8 +328,10 @@ NSString *const _MPTAbleSecurCellView = @"PasswordCell";
|
|||||||
- (void)_didChangeCurrentItem:(NSNotification *)notification {
|
- (void)_didChangeCurrentItem:(NSNotification *)notification {
|
||||||
MPDocument *document = [notification object];
|
MPDocument *document = [notification object];
|
||||||
|
|
||||||
if(!document.selectedGroup) {
|
if(!document.selectedGroup && !document.hasSearch) {
|
||||||
/* TODO: handle deleted item */
|
/* no group selection out of search is wrong */
|
||||||
|
[self.entryArrayController unbind:NSContentArrayBinding];
|
||||||
|
[self.entryArrayController setContent:nil];
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
@@ -384,6 +386,10 @@ NSString *const _MPTAbleSecurCellView = @"PasswordCell";
|
|||||||
[[self.entryTable tableColumnWithIdentifier:MPEntryTableParentColumnIdentifier] setHidden:YES];
|
[[self.entryTable tableColumnWithIdentifier:MPEntryTableParentColumnIdentifier] setHidden:YES];
|
||||||
MPDocument *document = [[self windowController] document];
|
MPDocument *document = [[self windowController] document];
|
||||||
document.selectedItem = document.selectedGroup;
|
document.selectedItem = document.selectedGroup;
|
||||||
|
if( nil == document.selectedItem && nil == document.selectedGroup ) {
|
||||||
|
[self.entryArrayController unbind:NSContentArrayBinding];
|
||||||
|
[self.entryArrayController setContent:nil];
|
||||||
|
}
|
||||||
[self _updateContextBar];
|
[self _updateContextBar];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -247,7 +247,6 @@ NSString *const _MPOutlinveViewHeaderViewIdentifier = @"HeaderCell";
|
|||||||
id representedObject = [item representedObject];
|
id representedObject = [item representedObject];
|
||||||
if([representedObject isKindOfClass:[KPKGroup class]]) {
|
if([representedObject isKindOfClass:[KPKGroup class]]) {
|
||||||
KPKGroup *group = (KPKGroup *)representedObject;
|
KPKGroup *group = (KPKGroup *)representedObject;
|
||||||
NSLog(@"IndexPath for %@: %@ vs. %@", group.name, [item indexPath], [group indexPath]);
|
|
||||||
group.isExpanded = YES;
|
group.isExpanded = YES;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -261,6 +260,13 @@ NSString *const _MPOutlinveViewHeaderViewIdentifier = @"HeaderCell";
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
- (void)outlineView:(NSOutlineView *)outlineView didRemoveRowView:(NSTableRowView *)rowView forRow:(NSInteger)row {
|
||||||
|
/* Deletion of an item */
|
||||||
|
if(row == -1) {
|
||||||
|
[self outlineViewSelectionDidChange:nil];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#pragma mark Validation
|
#pragma mark Validation
|
||||||
- (BOOL)validateMenuItem:(NSMenuItem *)menuItem {
|
- (BOOL)validateMenuItem:(NSMenuItem *)menuItem {
|
||||||
MPDocument *document = [[self windowController] document];
|
MPDocument *document = [[self windowController] document];
|
||||||
|
|||||||
Reference in New Issue
Block a user