As discussed about two weeks ago in netscape.public.mozilla.os2 Firefoxes tab drag and drop feature is broken on the branch (OS/2 only, but working on the trunk) in such a way that one can always only drag any tab to the far right but nowhere else. The same is true for SeaMonkey after applying the respective patch from bug 105885, so it is an issue in the backend. I tried a bit of debugging using JS dump() in tabbrowser.xml and it turns out that aEvent.clientX is undefined in <method name="getNewIndex">, so the comparison here http://lxr.mozilla.org/mozilla1.8/source/toolkit/content/widgets/tabbrowser.xml#1598 is always wrong and always only the number of tabs is returned. It's late so I give up for now but it seems that during drag events this clientX is not computed (is this the one from nsDOMMouseEvent::GetClientX?).
What about this fix that only went in the trunk? http://bonsai.mozilla.org/cvsview2.cgi?diff_mode=context&whitespace_mode=show&file=nsWindow.cpp&branch=&root=/cvsroot&subdir=mozilla/widget/src/os2&command=DIFF_FRAMESET&rev1=1.194&rev2=1.195
That is the patch from bug 286555 (which is marked fixed1.8) and I can see it in my branch code. I will keep looking.
Now, after several hours of compiling trunk Firefoxes between the branching and 2005-09-14 when the problem was fixed I am pretty sure that the patch from bug 307086 is the key. I think when I applied it last week I tried to combine it with one of the other patches I listed earlier and then it failed. Branch patch coming soon.
Created attachment 205688 [details] [diff] [review] Tab d&d fix, part of patch from bug 307086 OK, it is again late at night but I think this time I got it right and this does indeed fix the problem...
What exactly is different about this new path?
Sorry, should have said that right away. It leaves out Rich's whitespace cleanup (and hence does not require the change from event.point to event.refPoint that was done on the trunk).
Review reminder for mkaply... :-)
Comment on attachment 205688 [details] [diff] [review] Tab d&d fix, part of patch from bug 307086 r=mkaply I'll try to remember to put this in the 1.8 builds
Fix checked in to branches