| Summary: | Broken DND feedback indicator when dragging TableItems on Mac | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Eclipse Project] Platform | Reporter: | Albert <albert.pikus> | ||||
| Component: | SWT | Assignee: | Scott Kovatch <skovatch> | ||||
| Status: | RESOLVED FIXED | QA Contact: | Silenio Quarti <Silenio_Quarti> | ||||
| Severity: | critical | ||||||
| Priority: | P3 | CC: | skovatch | ||||
| Version: | 3.6 | ||||||
| Target Milestone: | 3.7 M6 | ||||||
| Hardware: | Macintosh | ||||||
| OS: | Mac OS X | ||||||
| Whiteboard: | |||||||
| Attachments: |
|
||||||
|
Description
Albert
Yes, this is a bug in the handling of drop feedback. Your code is calculating the upper and lower half value properly, but it looks like we're returning the wrong feedback value to Cocoa. I'll have a look. We compute the drop feedback based on the row under the mouse during the drag, but then we were setting the Cocoa feedback value based on the row passed into tableView:validateDrop:proposedRow:proposedOperation:. These two values aren't necessarily the same. Fixed > 20110131. (In reply to comment #2) > We compute the drop feedback based on the row under the mouse during the drag, > but then we were setting the Cocoa feedback value based on the row passed into > tableView:validateDrop:proposedRow:proposedOperation:. These two values aren't > necessarily the same. > > Fixed > 20110131. Thank you for your effort, you fixed this really fast. I don't have any experience in patching SWT builds, so I wonder if it's possible to patch 3.650 with this fix? I guess I would have to rebuild jnilibs in this case. Could applying this patch to 3.6 result in some other problems? Could you be please so kind and provide me some info on how to do this? (In reply to comment #2) > We compute the drop feedback based on the row under the mouse during the drag, > but then we were setting the Cocoa feedback value based on the row passed into > tableView:validateDrop:proposedRow:proposedOperation:. These two values aren't > necessarily the same. > > Fixed > 20110131. Thank you for your effort, you fixed this really fast. I don't have any experience in patching SWT builds, so I wonder if it's possible to patch 3.650 with this fix? I guess I would have to rebuild jnilibs in this case. Could applying this patch to 3.6 result in some other problems? Could you be please so kind and provide me some info on how to do this? (In reply to comment #4) > Thank you for your effort, you fixed this really fast. > I don't have any experience in patching SWT builds, so I wonder if it's > possible to patch 3.650 with this fix? I guess I would have to rebuild jnilibs > in this case. Could applying this patch to 3.6 result in some other problems? > Could you be please so kind and provide me some info on how to do this? Sure. For building, take a look at http://eclipse.org/swt/faq.php#howbuildplugin which will tell you how to build the SWT plugin. The short version: you want to check out org.eclipse.swt and org.eclipse.swt.cocoa.macosx and org.eclipse.swt.cocoa.macosx.x86_64 and export those last two plugins. Generally speaking, the SWT is backwards compatible, though there may be some feature in the rest of the platform depending on the behavior of a bug in the SWT. In this case, one file changed, so it's probably easier to build 3.6.x with the patch. Created attachment 188254 [details]
Patch against R3_6_maintenance branch
This will not be checked in to the 3.6 branch, but here's a patch with the fix.
I checked out SWT from CVS (version 3.650), applied the patch you provided and successfully built swt.jar. The problem is gone, DND feedback now behaves as it should. Thank you for your help! |