Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

config option to only prevent detach for pinned tabs #4

Open
sjpotter opened this issue Dec 30, 2018 · 5 comments
Open

config option to only prevent detach for pinned tabs #4

sjpotter opened this issue Dec 30, 2018 · 5 comments

Comments

@sjpotter
Copy link

I don't want to detach pinned tabs (so find this exension valuable), I also don't want to accidentally detach regular tabs, but I do want the ability to detach these regular tabs from time to time. I'm not sure how to this could work with a reasonable UI though.

for pinned tabs only that seems to be a configuration checkbox: only prevent pinned tab detachment

for enabling easy recovery of non pinned tabs while still enabling them to be moved, perhaps if the same tab is detached twice in quick succession? One could also ask a Q with a pop up, but that seems more intrusive for preventing accidental detachment, the point would be to prevent accidental detachment, while providing a UI mechanism to allow purposeful detachment.

thoughts?

@hensm
Copy link
Owner

hensm commented Dec 30, 2018

Checkbox context menu item on tabs to enable detach?

@sjpotter
Copy link
Author

was thinking as global extension configuration option (in the extension screen).

i.e.

[ ] only prevent pinned tab detachment
[ ] don't revert tab to old position if detached twice within 15s

perhaps as a sub option of the 2nd one, "always prevent pinned tab detachment".

Just trying to think through the use cases that make this useful. Personally, I like firefox pinned tabs over chrome's, as firefox doesn't let you accidentally close them while chrome does, this addons (for me at least) adds another level of accident prevention.

@hensm
Copy link
Owner

hensm commented Dec 31, 2018

I think the 15s detach thing sounds a bit clunky, it'd be better as a context item on a per-tab basis. That avoids the need for the sub-option, since you have to explicit about detaching a tab. Other options sound fine on an options page.

Options page:

  • Only disable pinned tab detach

Tab context:

  • Enable detach for this tab

@sjpotter
Copy link
Author

I agree the 15s thing is clunky, was just trying to think of some way that would be transparent to the user.

a less clunky thing thing would be not a time limit, but based on browser interaction, i.e. 2 interactions in a row that are detach of the same tab, the 2nd detach should be allowed. but I have no idea if/how that can be done efficiently, a time window is easy as one can just record the time of the previous detach.

having to set a flag on the tab is also a bit clunky as have to do that, then detach the tab, perhaps one can override the "move tab" listing, but I have my doubts that is possible.

mostly thinking out loud.

@hensm
Copy link
Owner

hensm commented Dec 31, 2018

Well, two interactions means the tab will be reverted once which is really janky, especially when it causes a tab bar reflow. It'd probably also take longer and be more annoying than just setting a flag. It's not particularly intuitive, either.

There's also the issue of accidental detach, which this extension is supposed to prevent. Accidentally detaching twice would cause an actual detach.

I was hoping there'd be a way to detect ctrl/meta keys when detaching, but would probably need to do something hacky and fragile with content scripts. Depending on how focus works, might not be possible to get the keyboard events reliably, anyway.

Another option is a browser action. Click to toggle detach either globally or for the current tab. Other options in the context menu.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants