* Source/NSWindow.m: Only invoke -prepareForDragOperation: if the

most recent -draggingEntered: or -draggingUpdated: call returned
something other than NSDragOperationNone.
* Source/NSOutlineView.m (-draggingUpdated:): Save the drag operation
value returned from the data source in a static variable.
Previously it was fetched once and then discarded, so all drags were
being mistakenly permitted.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@34910 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
ericwa 2012-03-09 08:03:45 +00:00
parent 107d5060b5
commit 0095d55636
3 changed files with 32 additions and 14 deletions

View file

@ -4210,7 +4210,8 @@ resetCursorRectsForView(NSView *theView)
case GSAppKitDraggingDrop:
NSDebugLLog(@"NSDragging", @"GSAppKitDraggingDrop");
dragInfo = [GSServerForWindow(self) dragInfo];
if (_lastDragView && _f.accepts_drag)
if (_lastDragView && _f.accepts_drag
&& _lastDragOperationMask != NSDragOperationNone)
{
action = YES;
GSPerformDragSelector(_lastDragView,