Closed Bug 409215 Opened 15 years ago Closed 14 years ago

Closing tabs quickly in succession causes the close button to "get stuck" (Minefield 3.0pre3, browser.tabs.closeButtons = 1)

Categories

(Firefox :: Tabbed Browser, defect, P2)

defect

Tracking

()

VERIFIED FIXED
Firefox 3 beta5

People

(Reporter: spam_hole, Assigned: Gavin)

References

Details

(Keywords: regression)

Attachments

(1 file)

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9b3pre) Gecko/2007122005 Minefield/3.0b3pre
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9b3pre) Gecko/2007122005 Minefield/3.0b3pre

When I want to close a lot of tabs, but not all of them, I typically just hit the close buttons really quickly (FF automatically highlights the next tab, which then exposes the close button, so I basically click in the close button of the rightmost tab).

This has worked fine in a trunk build from Dec. 05, but as of the trunk build of the 16th, when I attempt to rapidly close two tabs by this method, the first one closes but the second does not respond to the button click (the "depressed" icon is shown when it is clicked, but it fails to close).

Ctrl+W still works rapidly in the same circumstance.

Reproducible: Always

Steps to Reproduce:
1. Have browser.tabs.closeButtons = 1
2. Open around 10 tabs in a new window (hold Ctrl+T is a good way to get this)
3. Repeatedly click (quickly) in the close button of the (currently) active tab: this will close the current tab and attempt to close the other tabs -- n.b. you should not move your mouse pointer, let the tabs and their close buttons come to your cursor
4. Note that the second tab refuses to close, unless you wait between clicks -- seems to be a double-click event which isn't working
Actual Results:  
Continually clicking the second tab's close button fails to close the tab.

I suspect this may be a misfired double-click or something similar.

Expected Results:  
The second tab and all subsequent tabs (until the close button is no longer at the very right) are closed.
Closing 10 tabs in succession needs 20 clicks indeed. This regressed somewhere between 1 and 16 sept 2006, and bug 352021 was fixed within this time span, so the fix of this bug might have caused this.
Blocks: 352021
Status: UNCONFIRMED → NEW
Ever confirmed: true
Keywords: regression
Duplicate of this bug: 412999
Flags: blocking-firefox3?
Flags: blocking-firefox3? → blocking-firefox3+
Priority: -- → P2
Duplicate of this bug: 417504
Main bug i care about is the "stuck" symptom, which goes away as soon as you click anywhere else.  The unable to close two tabs on doubleclick is less of a concern, and its probably more correct than not.
Assignee: nobody → gavin.sharp
Duplicate of this bug: 420536
Attached patch patchSplinter Review
Avoid ignoring more than one click. Fixes this bug without regressing bug 378344 or bug 352021. Closing tabs is still a little bit slower than it used to be, since we might end up ignoring half the clicks, but at least it doesn't get "stuck".
Attachment #307545 - Flags: review?(mano)
Status: NEW → ASSIGNED
OS: Windows XP → All
Hardware: PC → All
Whiteboard: [has patch][needs review mano]
Target Milestone: --- → Firefox 3 beta5
Version: unspecified → Trunk
(In reply to comment #4)
> Main bug i care about is the "stuck" symptom, which goes away as soon as you
> click anywhere else.

It goes away as soon as you wait a split second so that event detail is 1 again. I'm not sure why event.detail flips from 2 to 3 and back to 2 if you click often.
Because that's how the event code works.  Don't remember the spec, but dbaron explained it to me a couple of years ago, basically there's no quad-click, so they just cycle back and forth rather than continuing to just return 3.  Think its based on the native event models, actually...
The spec says "The attribute value is 1 when the user begins this action and increments by 1 for each click", so I would have expected 1, 2, 3, 1, 2, 3, 1... rather than 1, 2, 3, 2, 3, 2...
But I can confirm that this is native on Windows, so even though it doesn't strictly follow the spec, it's not a bug.
Comment on attachment 307545 [details] [diff] [review]
patch

r=mconnor

think this is probably the right compromise to avoid accidental double clicks closing two tabs..
Attachment #307545 - Flags: review?(mano) → review+
Whiteboard: [has patch][needs review mano] → [has patch][has reviews]
mozilla/browser/base/content/tabbrowser.xml 	1.266
Status: ASSIGNED → RESOLVED
Closed: 14 years ago
Keywords: checkin-needed
Resolution: --- → FIXED
Whiteboard: [has patch][has reviews]
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9) Gecko/2008052906 Firefox/3.0

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9pre) Gecko/2008060306 Minefield/3.0pre

Ok so double-click to close multiple tabs is purposeful, not a bug, right?

If so, this is working properly in RC2 and nightly. I used XP BTW.

(In reply to comment #12)
> Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9) Gecko/2008052906
> Firefox/3.0
> 
> Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9pre) Gecko/2008060306
> Minefield/3.0pre
> 
> Ok so double-click to close multiple tabs is purposeful

... only if there's a delay between the clicks; a real double click shouldn't close two tabs with browser.tabs.closeButtons = 1 (see bug 352021).
Duplicate of this bug: 410214
Duplicate of this bug: 446662
Verified fixed based on comment 12 and with Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.0.6) Gecko/2009011912 Firefox/3.0.6
Status: RESOLVED → VERIFIED
I recently confirmed bug 367777, morphing it about a visual issue with the double-click - the second [x] button appears to be clicked, even though the second tab isn't closed.
You need to log in before you can comment on or make changes to this bug.