Coder Social home page Coder Social logo

Comments (21)

smichel17 avatar smichel17 commented on August 26, 2024 5

Analysis

"Wow, I have too many tabs open. I don't even know what to do with them."

This hits the nail on the head. The fundamental value of tab groups is their ability to get some tabs out of your way without losing them. There are other ways to do this, but their interfaces are worse:

  • Bookmark + close lets you save a tab for later, but old bookmarks become clutter to deal with.
    • Conclusion: we usually want to store tabs only temporarily, until we come back to them.
  • Snooze Tabs & Pocket** allow saving tabs temporarily, but are so much work that I never used them.
    • Conclusion: we usually want to hide and restore groups of associated tabs at the same time.
  • Profiles allow saving/restoring groups, but are too much work to administer (specifically creation).
    • Conclusion: groups should be quick to create and should share most settings.
  • Browser windows are quick to create and share most settings. However, there's too many groups to open a window for each without cluttering the desktop/taskbar, and there's no way to close/hide a window so it can be restored later.
    • Conclusion: it's important that groups can be hidden and [still] persist across sessions.

This brings us to containers, groups of tabs that share preferences and persist across sessions. Sharing so much with tab groups, they feel like an organizational tool. However, they were designed as a privacy tool, like profiles for a single user. This causes conflict: there are tabs that I'd like to be hidden and shown together, but isolated from a privacy perspective (for example, search engines and any other site).

At the same time, a lot of the time containers and groups do overlap. If I have a bunch of open tabs on a single site, I'd often like to be able to hide them together. And there's nothing wrong with creating multiple containers for the same site for organizational purposes (ex: I have multiple github containers for different projects).

Action

Ideally, instead of trying to add an additional level of organization/abstraction, I'd like conex to integrate into one that already exists: browser windows. I think they are already a great interface for groups: They are visual, support drag & drop, and have great performance and OS integration (for example, they allow allow viewing two groups on different workspaces, alongside different applications); In many ways, they're more convenient than panorama was. Moreover, they interact with containers in a way that makes sense -- it's even possible to move a tab between them without any privacy risk. Added bonus: you don't need to find a new unique shortcut to create new groups.

Browser windows are missing a few key features, in order of importance:

  • Hiding windows and persisting them across sessions.
  • Naming windows so you can easily switch between them and know which to restore.
  • An easy way to move tabs between windows in bulk (ie, initial creation).
    • The official containers addon helps with this, with "move tabs to a new window", but not...
  • An easy way to collapse two windows back into one.
  • A context menu and/or keyboard shortcut for moving tabs between windows, if they're on different workspaces.

In my ideal world, instead of trying to shoehorn containers into being both a privacy and organizational tool, conex works to make browser windows be actually useful and integrate better with containers. I'm not sure exactly what that looks like and I've spent far too long on this post already, so I'll leave it here for now.

from conex.

smichel17 avatar smichel17 commented on August 26, 2024 2

I like it on a desktop, but on a laptop, I'd prefer something more like the Tab Groups addon; my vertical space is previous precious!

edit: fix autocowreck

from conex.

kesselborn avatar kesselborn commented on August 26, 2024 1

Creating a toolbar as the TabGroups Manager did is currently not possible with WebExtensions (see bug above).

Regarding Panorama: my addon is not very cleverly named, as I do not plan to create a Panorama-View for changing tabs -- it rather opens a popup where tab groups are visible and you'll have the possibility to search for tabs + history (and later bookmarks). See https://www.youtube.com/watch?v=Y5HVCDHGg0s for a video of how it looks like (it's a little bit older already).

So: changing groups is a click or keyboard-shortcut away. I am as well looking into having the same popup view as a sidebar, which would make it permanently visible on the side (vs. top, horizontal view).

Re:

If you ask browser users, "Why do you want tab groups as a feature?" they typically say, "Because I want a quick and easy way to organize my open tabs into logical named groups so I can work more efficiently.” They don't say, "Because I want to jump back and forth between an abstracted Panorama view."

Although I agree that the "panorama-view" is not useful (which is why I currently don't plan to implement it), I think its very brave to assume that the answer of "browser users" when asked about TabGroups matches your preference. If you look at Safari's "Show all Tabs" implementation, I would love to have something like that if it could be done so nicely and so fast in Firefox ... that + keyboard support + tab groups of course.

In general I think it would have been better style to not slash panorama and Mozilla's motives behind it so much as it paved the way for something like tab groups in the first place. I would not be surprised if other people preferred panorama's implementation to something lile TabGroup Manager.

Sorry: had to say this :) ... apart from that: thank you very much for the input.

from conex.

kesselborn avatar kesselborn commented on August 26, 2024 1

Thanks for the detailed input.
I don’t really want to argue against your points because I mostly agree with you.

Taking the pragmatic point of view here, I see mainly two problems that make this solution not feasible at the moment:

  1. the points you listed above would all need to be implemented before conex could become usable and that is a lot of pre-conditions

  2. you need a OS with a decent window management. Though this is the case with Linux, it certainly is not with macos — I tried to go down this road before and it’s not feasible. As I am tailoring conex to my needs ;) relying on good Window management won’t work as macos is my daily driver.

On a neutral point: it would make conex usage different on different OSes which can be seen as a con but perhaps as well as a pro (using the native OS functionality)

from conex.

smichel17 avatar smichel17 commented on August 26, 2024 1

I will sleep on this for a few days and then make some mockups suggesting an interface for switching between tab groups. When I do, should I post them here, in #9, or in a new issue?

from conex.

kesselborn avatar kesselborn commented on August 26, 2024 1

@smichel17 to a different issue please and thanks

from conex.

smichel17 avatar smichel17 commented on August 26, 2024 1

Yes

from conex.

suhr avatar suhr commented on August 26, 2024 1

@kesselborn To see the whole tab group at once, visually (as pictures), and be able to drag&drop these pictures to other tab groups.

Just curious if drag/drop support in the current conex popup would be sufficient.

Unfortunately, no. I'm a visual thinker, so I rely on seeing a lot. Panorama allows you to see, that's why it's so great.

from conex.

kesselborn avatar kesselborn commented on August 26, 2024

https://bugzilla.mozilla.org/show_bug.cgi?id=1215064

from conex.

boldcompany avatar boldcompany commented on August 26, 2024

Thank you very much for opening this discussion!

Well, I talk to quite a few browser users in my line of work. Most people, when dealing with lots of tabs, "just want a way to organize them." And the reason that Panorama ultimately failed wasn't that people don't want tab organization; it failed because the feature was hidden and obtuse to use. You had to remember that something completely hidden was there, and then drag around tab representations into group blobs. Not so good.

I think the biggest reason why Tab Groups need to (at least optionally) be permanently visible in the main browser window is (a) so that it's super-quick-and-easy to use; (b) you can see at all times which group context you're in; (c) you can immediately see all other available groups for switching contexts and for moving tabs into a different group; (d) users will remember the feature and the tabs in other groups not currently visible. If Tab Groups were immediately apparent in the interface and users could quickly switch tabs between them without jumping into a hidden menu, then of course the feature useage would go up tremendously.

My basic point is: People frequently say something like, "Wow, I have too many tabs open. I don't even know what to do with them." And Panorama was too difficult and abstract for people to use. But people are familiar with folders, etc. If Tab Groups is implemented well (like TabGroups Manager did), they would see Tab Groups like folders for their tabs and use them.

I like your ideas a lot and look forward to seeing what you implement!!

from conex.

kesselborn avatar kesselborn commented on August 26, 2024

@boldcompany cool, thanks for clarifying.

from conex.

smichel17 avatar smichel17 commented on August 26, 2024

you need a OS with a decent window management

Dealing with too many windows of the same application is a pain on any OS/DE I've used, though perhaps a rolling environment like i3 would do better.

I didn't get into the specifics of what "better window/container integration" means because I'm not entirely sure. I'm still not, but the little thinking I've done overnight suggests that it's not actually that different from what tab groups did, except you can think of a hidden group as a window that's not being drawn at the moment, and drop panorama in favor of allowing a tab group to be popped out into its own window, at which point you can drag and drop tabs between windows/groups that way.

Do webextensions provide an api for opening and closing windows?

from conex.

kesselborn avatar kesselborn commented on August 26, 2024

from conex.

boldcompany avatar boldcompany commented on August 26, 2024

Really interesting reading all the thoughts here.

I just want to chime in and say that an interface that allows for one level of hierarchy (basically "folders" for tabs) still remains my favorite UI implementation of tab groups. The best and most functional example I've used is https://addons.mozilla.org/en-US/firefox/addon/tabgroups-manager-revived.

I understand that a tab group bar like that is not likely in the short-term given the current state of Mozilla bugs, but I still believe it's the quickest and easiest way to manage tabs in the long term. It just works.

from conex.

boldcompany avatar boldcompany commented on August 26, 2024

Yes, all of our tab vertical and horizontal spaces are "previous" (to FF57+). j/k :)

You're right about the different environments. I'm a big proponent of the tabgroup bar being an option. For those on mobile and smaller-format devices, something like Tab Groups (Panorama) could remain. But I would like to have the option for a persistent, drag-and-drop tab groups interface for desktop.

from conex.

grahamperrin avatar grahamperrin commented on August 26, 2024

@smichel17 please, are you https://discourse.mozilla.org/u/smichel17/?

from conex.

suhr avatar suhr commented on August 26, 2024

my addon is not very cleverly named, as I do not plan to create a Panorama-View for changing tabs

That's unfortunate, I find panorama view very useful for grouping tabs. It's probably annoying for switching between tab groups though.

from conex.

smichel17 avatar smichel17 commented on August 26, 2024

Panorama view is a lot more effort to implement, so I suspect you won't see it from this extension. However, I wouldn't be surprised if someone else made an extension that is only a panorama or other visual way of moving tabs between containers.

from conex.

kesselborn avatar kesselborn commented on August 26, 2024

yeah: it's basically my lack of good frontend foo. It probably is not even so much work if you are a html/css/js native.
Still: @suhr what was the most useful aspect of this view? Being able to drag/drop tabs to another group? Or seeing more that one tab group at a time? Just curious if drag/drop support in the current conex popup would be sufficient. Thanks for your input

from conex.

PrototypeNM1 avatar PrototypeNM1 commented on August 26, 2024

Presuming the Toolbar WE lands I'd like to point out that having tab groups below the URL bar as opposed to above the tabs has some nice UX features. For these reasons I preferred Tab Groups Button's toolbar.

  1. You want tabs at the top because switching tabs is a more common action than switching tab groups and Fitt's Law.
  2. The URL bar works as a necessary buffer between tabs and tab groups. An excessive buffer is otherwise necessary between the tabs and tab groups to prevent miss-clicks due to the minimal vertical separation. Such miss-clicks are significantly more disruptive and disorienting than most other browser interactions due to the page and tab bar changing unexpectedly.

from conex.

kesselborn avatar kesselborn commented on August 26, 2024

Note to self:

from conex.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.