In NSOutlineView_Extensions mouseDown method, if user clicks on a row that is already selected, skip the call to deselectAll:. This fixes the problem with drag-and-drop for multiple items in the XML Outline View.

This commit is contained in:
dsward2
2020-04-25 00:48:39 -05:00
parent 2d69b46305
commit d25dff54f7
3 changed files with 12 additions and 3 deletions
@@ -306,7 +306,16 @@
}
else
{
[self deselectAll:self];
NSPoint globalLocation = theEvent.locationInWindow;
NSPoint localLocation = [self convertPoint:globalLocation fromView:nil];
NSInteger clickedRow = [self rowAtPoint:localLocation];
NSIndexSet * selectedRowIndexes = self.selectedRowIndexes;
if ([selectedRowIndexes containsIndex:clickedRow] == NO)
{
[self deselectAll:self];
}
}
[super mouseDown:theEvent];
+1 -1
View File
@@ -105,7 +105,7 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>3180</string>
<string>3187</string>
<key>LSApplicationCategoryType</key>
<string>public.app-category.graphics-design</string>
<key>LSMinimumSystemVersion</key>
@@ -2893,7 +2893,6 @@
}];
}
//==================================================================================
// outlineView:rowViewForItem:
//==================================================================================
@@ -2991,6 +2990,7 @@ static NSString * GenerateUniqueFileNameAtPath(NSString *path, NSString *basenam
}
}
//==================================================================================
// outlineView:writeItems:toPasteboard:
//==================================================================================