FROM : Kevin Perry
DATE : Sat Jul 22 22:57:13 2006
OK, I was really confused, because I found that if I replaced my own
view with an NSTextView it worked fine... what was the difference???
I'm still not exactly sure, but I found that if I call -[NSWindow
nextEventMatchingMask:...] when I display the panel, my view gets
draggingEntered: on mouse up. I'm guessing that's because
nextEventMatchingMask:... runs the run loop, which causes the
dragging IPC message to be received again.
Complicated... This should not be a problem for people creating their
own NSView subclasses (especially since it seems the standard Cocoa
views work correctly... why make it hard for us?)... Anyone think I
should file a bug?
[kevin perry]
> Hi,
>
> In my program, I have a feature where initiating a drag and drop
> and holding the dragged data over a certain part of the screen
> brings up a panel (think spring-loaded folders in the Finder). I
> want a view on this panel to be the drag destination. However,
> because the panel ends up sliding under the mouse cursor, if I
> don't move the mouse before letting it go and finishing the drag,
> then the panel can never receive draggingEntered: and whatever was
> under the panel ends up receiving the drag and drop... Is there a
> way to make that panel receive the drag and drop in this case? (it
> works in the Finder...)
>
> Thanks!
>
> [kevin perry]
DATE : Sat Jul 22 22:57:13 2006
OK, I was really confused, because I found that if I replaced my own
view with an NSTextView it worked fine... what was the difference???
I'm still not exactly sure, but I found that if I call -[NSWindow
nextEventMatchingMask:...] when I display the panel, my view gets
draggingEntered: on mouse up. I'm guessing that's because
nextEventMatchingMask:... runs the run loop, which causes the
dragging IPC message to be received again.
Complicated... This should not be a problem for people creating their
own NSView subclasses (especially since it seems the standard Cocoa
views work correctly... why make it hard for us?)... Anyone think I
should file a bug?
[kevin perry]
> Hi,
>
> In my program, I have a feature where initiating a drag and drop
> and holding the dragged data over a certain part of the screen
> brings up a panel (think spring-loaded folders in the Finder). I
> want a view on this panel to be the drag destination. However,
> because the panel ends up sliding under the mouse cursor, if I
> don't move the mouse before letting it go and finishing the drag,
> then the panel can never receive draggingEntered: and whatever was
> under the panel ends up receiving the drag and drop... Is there a
> way to make that panel receive the drag and drop in this case? (it
> works in the Finder...)
>
> Thanks!
>
> [kevin perry]
| Related mails | Author | Date |
|---|---|---|
| Kevin Perry | Jul 15, 11:16 | |
| Uli Kusterer | Jul 15, 11:33 | |
| Kieren Eaton | Jul 15, 11:59 | |
| Kevin Perry | Jul 15, 18:54 | |
| Kieren Eaton | Jul 16, 03:44 | |
| Matteo Manferdini | Jul 17, 14:38 | |
| Kevin Perry | Jul 17, 17:02 | |
| Kevin Perry | Jul 22, 22:57 |






Cocoa mail archive

