Last Comment Bug 410569 - Tab duplication (opt+drag) doesn't work on Mac or Linux
: Tab duplication (opt+drag) doesn't work on Mac or Linux
Status: RESOLVED FIXED
: pp, regression, user-doc-complete
Product: Firefox
Classification: Client Software
Component: Tabbed Browser (show other bugs)
: Trunk
: x86 Mac OS X
: -- normal with 3 votes (vote)
: ---
Assigned To: Neil Deakin
:
: Dão Gottwald [:dao]
Mentors:
: 438989 (view as bug list)
Depends on:
Blocks: 298571 408163 455176
  Show dependency treegraph
 
Reported: 2008-01-02 16:38 PST by Jesse Ruderman
Modified: 2009-05-13 21:50 PDT (History)
18 users (show)
mbeltzner: blocking‑firefox3-
mbeltzner: wanted‑firefox3+
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
use option/alt instead of cmd/meta for drag-copying under OS X (2.45 KB, patch)
2008-01-03 17:42 PST, Simon Bünzli
no flags Details | Diff | Splinter Review
check drop effect (1.99 KB, patch)
2008-09-15 10:04 PDT, Neil Deakin
asaf: review+
Details | Diff | Splinter Review

Description Jesse Ruderman 2008-01-02 16:38:48 PST
Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.4; en-US; rv:1.9b3pre) Gecko/2008010204 Minefield/3.0b3pre

The tab duplication feature (added recently in bug 298571) doesn't work on Mac.  The tab is moved instead of being copied, and no special cursor appears.  This happens regardless of whether Cmd is depressed before or during the drag.

Originally reported in bug 298571 comment 41 and bug 298571 comment 43.
Comment 1 Simon Bünzli 2008-01-03 07:19:06 PST
(In reply to comment #0)
> no special cursor appears.

Sounds like drag&drop-copying is fundamentally broken on OS X (or has never been generally implemented) - or that as a non-OS X user I've missed a basic detail. On Windows, hitting Ctrl has always made the cursor change - bug 298571 just added the expected functionality.

Josh: How's d&d supposed to work on OS X WRT copying instead of moving?
Comment 2 Jesse Ruderman 2008-01-03 17:03:32 PST
The "copy" modifier for drags on Mac should be Option (Alt), not Cmd.

The copy cursor is covered by bug 302403 and bug 358095.
Comment 3 Simon Bünzli 2008-01-03 17:42:58 PST
Created attachment 295314 [details] [diff] [review]
use option/alt instead of cmd/meta for drag-copying under OS X

Does this patch fix your issue, then?
Comment 4 Jesse Ruderman 2008-01-03 18:03:05 PST
No, that patch doesn't make it work.  Maybe we need that patch plus cocoa widget changes?
Comment 5 Simon Bünzli 2008-01-03 18:12:16 PST
If none of the modifier keys works for you, then it seems that indeed they're simply not set for the dragdrop event at all. Sounds like a widget bug to me...
Comment 6 Mike Beltzner [:beltzner, not reading bugmail] 2008-02-08 10:52:40 PST
This does not block the final release of Firefox 3.
Comment 7 Teune van Steeg 2008-03-11 17:17:12 PDT
My extension Duplicate Tab has had this feature for some time now, and it works in Firefox 2. But recently when trying to update my extension for Firefox 3, I noticed it doesn't work anymore on Mac: the modifier keys on the event (e.g. event.metaKey) are always set to false, no matter what modifier key is being pressed during drag.

So this actually is a regression from Firefox 2.

This is on Mac 10.4.8 in VMWare (x86).
Comment 8 Dieter Komendera 2008-05-25 09:37:25 PDT
I can confirm that the drag-copying doesn't work on Mac:
Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9pre) Gecko/2008052304 Minefield/3.0pre

If I can give you more information, let me know.
Comment 9 Jesse Ruderman 2008-06-16 17:56:11 PDT
*** Bug 438989 has been marked as a duplicate of this bug. ***
Comment 10 Ted Pavlic 2008-06-16 18:43:21 PDT
(In reply to comment #7)
> My extension Duplicate Tab has had this feature for some time now, and it works
> in Firefox 2. But recently when trying to update my extension for Firefox 3, I
> noticed it doesn't work anymore on Mac: the modifier keys on the event (e.g.
> event.metaKey) are always set to false, no matter what modifier key is being
> pressed during drag.
> 
> So this actually is a regression from Firefox 2.

Vimperator (FF3 plugin that makes FF act like a Vim-based browser) users have also noticed this. Vimperator is unable to map Cmd-key combinations (nor map things to them). I suspect Vimperator's problem is probably the same as Duplicate Tab's problem. That is, the Cmd key is broken in FF3.

Comment 11 Neil Deakin 2008-09-15 10:04:47 PDT
Created attachment 338672 [details] [diff] [review]
check drop effect

This bug is because the tabbrowser code is manually checking the keyboard state instead of properly checking the drag action.
Comment 12 Bill Gianopoulos [:WG9s] 2008-09-15 15:15:02 PDT
*** Bug 455176 has been marked as a duplicate of this bug. ***
Comment 13 Mano (::mano, needinfo? for any questions; not reading general bugmail) 2008-09-18 07:53:55 PDT
Comment on attachment 338672 [details] [diff] [review]
check drop effect

r=mano
Comment 14 Scott Field 2008-09-26 22:37:45 PDT
Option-Drag is not copying for me - just moves the tab.
Mozilla/5.0 (Macintosh; U; PPC Mac OS X 10.4; en-US; rv:1.9.1b1pre) Gecko/20080925021213 Minefield/3.1b1pre - Build ID: 20080925021213
Comment 15 tabmix.onemen 2008-10-06 07:44:49 PDT
Ctrl + Drag Link not opening new tab.....

_setEffectAllowedForDataTransfer set dropEffect to "link" here.....
for (var i=0; i < this._supportedLinkDropTypes.length; i++) {
  if (types.contains(this._supportedLinkDropTypes[i])) {
    // Here we need to to do this manually
    return dt.effectAllowed = dt.dropEffect = "link";
  }
}

then in _onDrop this will never true
if (document.getBindingParent(aEvent.originalTarget).localName != "tab" || dropEffect == "copy") {
  // We're adding a new tab.
  newIndex = this.getNewIndex(aEvent);
  newTab = this.loadOneTab(getShortcutOrURI(url), null, null, null, bgLoad, false);
  this.moveTabTo(newTab, newIndex);
}
Comment 16 Chris Ilias [:cilias] 2009-05-13 21:50:38 PDT
user-doc-complete
<https://support.mozilla.com/kb/Tabbed+browsing?bl=n>

Note You need to log in before you can comment on or make changes to this bug.