Opened 13 years ago

Closed 12 years ago

Last modified 12 years ago

#7603 closed enhancement (fixed)

Prevent closing inactive tabs

Reported by: eroon Owned by: evands
Milestone: Adium 1.3 Component: Adium Core
Version: Severity: regression
Keywords: Cc:
Patch Status:


The newest update that Adium installed no longer has the molly-guard setting like it previously did. Now when I want to switch to a tab I am not currently on and I click the red button on the tab name it closes that tab without even opening it. Previous versions had the molly-guard feature which made you click on the tab so you could look at it before closing it. I think this should be changed.

In case you don't know: A molly-guard is the plastic cover on buttons that do dangerous things, in order that you can't accidentally hit the button and do the dangerous thing unintentionally.

Change History (16)

comment:1 Changed 13 years ago by Jordan

Milestone: Needs dev review
Patch Status: Initially IncludedNone
Severity: normalregression
Summary: molly-guardPrevent closing inactive tabs
Type: defectenhancement

I hadn't noticed this requirement to switch to the tab before closing it in older versions. Should this be done again? I rarely close an inactive tab accidentally...

comment:2 in reply to:  1 Changed 13 years ago by BDan Fairchild

Replying to jas8522:

I hadn't noticed this requirement to switch to the tab before closing it in older versions. Should this be done again? I rarely close an inactive tab accidentally...

Either bring back the requirement, or add a preference to turn off the close tab buttons entirely; I've been accidentally closing tabs left and right since the update. In the meantime, I'm just going to have to go back to an earlier version.

comment:3 Changed 13 years ago by Jordan

I think I agree with not allowing the close of the tab unless it is active - this is how Colloquy does it, although Safari does not.... anyone else?

comment:4 Changed 13 years ago by David Smith

Colloquy uses Adium's old tab code.

comment:5 Changed 13 years ago by Peter Hosey

Close boxes normally do allow click-through (that is, they're enabled even when not the frontmost window/tab), but I can see a case for conditionally disallowing click-through when logging is turned off. In that situation, closing a tab (or chat window, for that matter) results in data loss, because the messages in the chat will get thrown away; without a transcript, they'll be lost to the ether.

The other way, of course, would be a sheet that asks whether you're sure you want to close that tab or chat window.

comment:6 Changed 13 years ago by Jordan

boredzo: excellent point about the recent history (with logging enabled) making it practically redundant to have this 'molly-guard'. That suggestion seems good to me, although I've never used Adium without logging enabled surely plenty of users do.

comment:7 Changed 13 years ago by BDan Fairchild

The recent history doesn't make it entirely redundant -- I find it really convenient to have the entire current conversation available to scroll back through rather than having to look in the log for all but the last n messages, and the formatting always gets screwed up in the recent history. As for other close boxes allowing click-through, that's true, but in most other cases you have a much greater area to click in to just activate the object -- in Adium, the close button may well be a third of the size of the tab. I don't see why making it a preference would hurt anything -- then people who like to close inactive tabs could do that, and people like me, who are a bit clumsy with the mouse when we're trying to switch tabs and never even use the close buttons at all, could turn it off.

comment:8 Changed 13 years ago by visnu pitiyanuvath

the other important point about how safari has no molly guard is that in safari the close circles/buttons for each tab are always showing, so when a user means to switch to that tab with the mouse, he will see that there is a close button beneath the mouse and can avoid it. in adium, the close button doesn't come up until you hover over the red/green status indicator on the tab and if you mean to just select the tab, by the time you click, the tab is closed w/o you seeing that the indicator switched to a close tab button.

also, just because i can go and see the last message in the history, that doesn't mean mistakenly closing my tab becomes less annoying. it takes me another couple of seconds to find the contact i just mistakenly closed and double click again to see the message.

as you can tell, i'm another user that often mistakenly closes his tabs with the new behavior and would like to see some type of guard against it -- possibly even disallowing closing of inactive tabs would work. or of course, an option.

comment:9 Changed 13 years ago by nathan___

I agree. I just closed an inactive tab because the behavior was different.

Also, in the previous implementation you could hold Command and over-ride the molly guard. The button image would react accordingly (ie it would not change to a close button normally, only when Command was held or the tab was currently active.

This is a good idea for the same reason click-through is a bad idea. Making parts of the interface dangerous is a Bad Thing (I was in a chat room, so getting back isn't as easy as clicking in your buddy list). It trains users to be careful, which slows them down. Click-through (accepting clicks on a non-focused window) is bad for the same reason. See here.

Essentially by allowing click through you sacrifice speed in the common case (switching tabs with the mouse) for speed in an un-common case (closing an inactive tab with a single click). And the interface is more dangerous. Doesn't seem like a good trade-off to me.

Adium's tab implementation is, imho, one of its greatest strengths. It's the only one I'd ever seen that got it all right. This behavior was one of those little things that converted me. Please change it back?

comment:10 Changed 13 years ago by nathan___

This link is even more relevant to why click-through is a Bad Thing. Although this discusses foreground / background windows, I think the same arguments apply in this case.

comment:11 Changed 13 years ago by Jordan

Milestone: Needs dev reviewAdium X 1.3

I do agree with this. After much use, I have slowly got used to making sure to click on the spot that is not a hidden close button, however it took some time and most people are not expecting it. Plus I also must agree with the argument that many people don't even realize the close button is hidden, and it is not 'expected' functionality - primarily because I had no idea the close button was there until months after I started using Adium.

If this is not too much effort to implement, it could be done with a hidden preference... though I think most people would prefer to have it on by default.

comment:12 Changed 13 years ago by Eric Skiff

I wanted to be sure that I add my vote to that bug as a major issue with Adium - each time it happens, I have to go back and ask the person to paste their message. Because I don't use message logging, the incoming message that I was trying to switch to is completely gone.

It's really not just that the user mistakenly clicks on the X - the X doesn't even appear until you mouse over it, which sometimes means it's never visible before you click on it accidentally.

To illustrate the problem, try this quick test. In a multi-tabbed adium chat window, the names appear on the bottom tabs with little icons indicating status next to them. Start with your mouse cursor in the chat window, then move it straight down on top of one of the status icons. You never even see it change to an X before you click on it. You just wanted to switch to the tab, the visible UI gave you no hint that it would close, but instead it has gone away, and you've lost whatever they said.

comment:13 Changed 12 years ago by Evan Schoenberg

Owner: changed from nobody to Evan Schoenberg
Status: newassigned

Were the close button visible, this would not be up for discussion; tabs systemwide (c.f. Safari) allow clickthrough to close. However, it's true that we mask the close button with a status icon.

I don't think this should be a hidden preference. I think we should just do it.

comment:14 Changed 12 years ago by Evan Schoenberg

Resolution: fixed
Status: assignedclosed

(In [23255]) Disable background tab closing, as we mask the close button with the status icon. I think a patch to allow overriding this with some function key (which would be implemented at the PSMTabBarControl level) such as command would be perfectly reasonable. Fixes #7603

comment:15 Changed 12 years ago by Félix Cloutier

I rarely hit the Close button by accident. However, I do use it for tabs that are inactive on a regular basis, and that 'molly guard' makes me double-click to do that. It's quite annoying, actually. Maybe there should be an optio somewhere?

comment:16 Changed 12 years ago by Jordan

Options for such simple things are completely unnecessary, particularly when it's a simple to 'fix' as a double click.

Note: See TracTickets for help on using tickets.