Closed
Bug 675860
Opened 13 years ago
Closed 12 years ago
New tab dragging behavior does not play nice with spaces (warps to random places on the desktop)
Categories
(Firefox :: Tabbed Browser, defect)
Tracking
()
RESOLVED
INVALID
Tracking | Status | |
---|---|---|
firefox8 | + | --- |
People
(Reporter: bzbarsky, Unassigned)
References
(Depends on 1 open bug)
Details
Attachments
(1 file)
1.26 KB,
patch
|
Details | Diff | Splinter Review |
BUILD: Current trunk nightly STEPS TO REPRODUCE: 1) Get a Mac 2) Set up multiple spaces. You need at least 2; call them "Space 1" and "Space 2". 3) Start Firefox. 4) Make sure you have two Firefox windows open which are NOT maximized. One should be on Space 2 and contain a single tab. The other should be on Space 1 and contain two tabs. 5) Switch to Space 1. 6) Mouse down on one of the tabs in the single Firefox window you see. Do not mouse up. 7) Slowly drag your mouse out of the window without hitting the edge of the screen. EXPECTED RESULTS: When the mouse leaves the Firefox window you can drop the tab at the mouse location and get a new window on Space 1. ACTUAL RESULTS: When the mouse leaves the Firefox window you are suddenly switched to Space 2. ADDITIONAL INFORMATION: I am guessing that we're trying to find some other Firefox window than the one we just left and raise it? Or something like that? In this case that's really not doing the right thing.... This is seriously interfering with my ability to do tab drag and drop; in particular dragging a tab out of a window, or to a different window is completely broken for me because halfway through the drag I suddenly get warped to some other space, where my drag target is not. Requesting tracking for Fx8 for this reason.
Comment 1•13 years ago
|
||
Hmm, I remember asking about this. I thought it wasn't supposed to happen because the window coordinates for different spaces never overlapped?
(In reply to comment #0) > ADDITIONAL INFORMATION: I am guessing that we're trying to find some other > Firefox window than the one we just left and raise it? Or something like > that? In this case that's really not doing the right thing.... Yeah, it's probably tracking window positions and sizes, not considering each space to have different locations. If I move the window in Space 2 waaay over to the side of the screen so that there's exposed desktop space between the window in Space 1 and the window in Space 2, it detaches correctly. The moment I move it the tab over the space that the window in Space 2 occupies, it switches Spaces on me.
Reporter | ||
Comment 3•13 years ago
|
||
> because the window coordinates for different spaces never overlapped?
As far as I can tell, they overlap. Certainly when I switch a window to a different space its screenX and screenY do not change. Nor do they change if it ends up on a non-active space....
At least this explains which space I get switched to. Sadly, I believe every screen pixel has _some_ Firefox window under it on one of my spaces. :(
Comment 4•13 years ago
|
||
CC'ing Mehdi, since I remember him fiddling with Spaces stuff once.
Comment 5•13 years ago
|
||
Over in bug 372650 people discussed adding support to track the current virtual desktop. On Mac, I was able to have Firefox recognize the current workspace number which seems like it might help in this scenario. If a regression can't be tracked down, I wouldn't mind helping to add support for workspace info.
Reporter | ||
Comment 6•13 years ago
|
||
> On Mac, I was able to have Firefox recognize the current workspace number
Is that code available anywhere?
Comment 7•13 years ago
|
||
(In reply to comment #6) > Is that code available anywhere? Not easily, I have to go through backups/repos looking for it.
Reporter | ||
Comment 8•13 years ago
|
||
:( Bug 372650 is what keeps me from updating my browser. :(
Reporter | ||
Comment 9•13 years ago
|
||
This has been making it more or less impossible for me to actually drag tabs to tear them off from windows; I've been alternating between trying to use old builds and trying to just not drag tabs... :( Frank, Marco, Justin, any chance of this getting fixed before we start shipping it to users?
Severity: normal → major
Comment 10•13 years ago
|
||
This depends upon either bug 450953 (retrieving the space on which a window is displayed) or bug 674925 (using the drag & drop API for tab animations). It is more likely that we will fix bug 674925. (In reply to Boris Zbarsky (:bz) from comment #9) > Frank, Marco, Justin, any chance of this getting fixed before we start > shipping it to users? The risk of landing a patch for either bug is too high to push to Aurora or Beta, so I would say unfortunately no.
Comment 11•13 years ago
|
||
(In reply to Boris Zbarsky (:bz) from comment #9) > This has been making it more or less impossible for me to actually drag tabs > to tear them off from windows; I've been alternating between trying to use > old builds and trying to just not drag tabs... :( You don't have to drag a tab outside of a window to tear it off. You can drag the tab downwards until the preview panel appears and then simply drop it. To move the window around afterwards, drag the titlebar. While it requires two steps instead of one, it's an easy workaround until we can get this bug fixed.
Reporter | ||
Comment 12•13 years ago
|
||
> You don't have to drag a tab outside of a window to tear it off. But I do if I want to actually place it on the desktop, or if I want to drag it to another window. If I try to do the latter without really carefully positioning my windows first, then as soon as I leave the first window I suddenly end up on some totally different desktop. Seriously, the behavior is completely broken. Have you actually tried it? I'm having a hard time believing we're actually going to ship something like this to users. It's _way_ worse than what we used to have before the changes in bug 455694, making multi-window drag/drop of tabs almost completely unusable. Can we disable the window-raising thing on Mac or something? What would that break, and would it at least paper over this issue?
Reporter | ||
Comment 13•13 years ago
|
||
In case you have _not_ tried how this feels, I urgently suggest you do try it, by the way. It's by far the worst UI breakage I've encountered in Firefox in years.
Reporter | ||
Comment 14•13 years ago
|
||
One more note. The "easy workaround" above goes completely against years of muscle memory. So it's very much not "easy"....
Comment 15•13 years ago
|
||
Just talked with Frank, and we actually should be able to fix this. Hopefully both simply and quickly... (aurora too) Frank, per discussion, can you start to whip up a patch to the front end code to do this, assuming the presence of some new platform API to deal with Spaces? Let's call it nsIDOMWindowUtils.isOnScreen for the moment? I've been poking through OSX dev docs, and it _looks_ like this shouldn't be too hard. That said I'm a Cocoa noob, so we'll see. ;-) I'll file the dependent bug now to get the platform support.
Assignee: nobody → fryn
Reporter | ||
Comment 16•13 years ago
|
||
Thank you! Happy to test any patches you need testing for!
Comment 17•13 years ago
|
||
Filed 683423 specifically for OS X, I suppose we'll need a Linux flavor of it too? Frank was going to check.
Reporter | ||
Comment 18•13 years ago
|
||
On Linux, it's much more common to represent virtual desktops in terms of a single large desktop with nonoverlapping coordinate spaces on each desktop, so the problem may not even exist there typically.
Updated•13 years ago
|
Comment 19•13 years ago
|
||
(In reply to Justin Dolske [:Dolske] from comment #17) > Filed 683423 specifically for OS X, I suppose we'll need a Linux flavor of > it too? Frank was going to check. (In reply to Boris Zbarsky (:bz) from comment #18) > On Linux, it's much more common to represent virtual desktops in terms of a > single large desktop with nonoverlapping coordinate spaces on each desktop, > so the problem may not even exist there typically. Just tested it, and I confirm bz's statement. Linux (at least Ubuntu) is the only tier 1 OS for which we handle dropping of tabs onto other (work)spaces correctly.
Updated•13 years ago
|
Status: NEW → ASSIGNED
Comment 20•13 years ago
|
||
Dolske, here's a patch! Of course, we can't land it until we land a patch for bug 683423.
Attachment #557697 -
Flags: feedback?(dolske)
Updated•13 years ago
|
Attachment #557697 -
Flags: feedback?(dolske)
Updated•12 years ago
|
Assignee: fryn → nobody
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Keywords: regression
Resolution: --- → INVALID
Reporter | ||
Comment 21•12 years ago
|
||
Why is this invalid, if I might ask?
Comment 22•12 years ago
|
||
We backed out the patches in bug 455694.
You need to log in
before you can comment on or make changes to this bug.
Description
•