diff --git a/ChangeLog b/ChangeLog index 6fda2c965..f88169ba2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2006-11-21 Matt Rice + + * Source/NSWindow.m (sendEvent:): Fix dragging for views which accept + dragging with subviews which accept dragging. + 2006-11-20 Matt Rice * Source/NSTextView_actions.m: Change cursor movement implementations diff --git a/Source/NSWindow.m b/Source/NSWindow.m index 4a208694d..8ef7b5235 100644 --- a/Source/NSWindow.m +++ b/Source/NSWindow.m @@ -3596,16 +3596,20 @@ resetCursorRectsForView(NSView *theView) { BOOL isEntry; + dragInfo = [GSServerForWindow(self) dragInfo]; v = [_wv hitTest: [theEvent locationInWindow]]; - while (v != nil && ((NSViewPtr)v)->_rFlags.has_draginfo == 0) + + while (v != nil) { + if (((NSViewPtr)v)->_rFlags.has_draginfo != 0 + && GSViewAcceptsDrag(v, dragInfo)) + break; v = [v superview]; } if (v == nil) { v = _wv; } - dragInfo = [GSServerForWindow(self) dragInfo]; if (_lastDragView == v) { isEntry = NO;