menhera-org/TabArray

Supergroups and subgroups

metastable-void opened this issue · 17 comments

Discussed in #167

Originally posted by metastable-void April 1, 2023
As in #163, we should be able to have a supergroup including multiple containers.

As in #165, we should consider subgroups inside a container to sort tabs in a single container.

Both features would together work better.

  • Group related containers into a supergroup
  • Allow tagging of tabs to group tabs in a container

We would call supergroups "Groups", and call subgroups "Tags".

We could allow use of tags across containers, and allow search by tags.

Subgroups would be super convenient in private windows.

Groups (supergroups) could be implemented as follows:

export type Supergroup = {
  id: string; // tabarray-supergroup-N
  cookieStoreIds: string[];
  name: string;
};

As for Tags, we should assign the same tag as the opener tab for a tab opened by another tab.

We could store a Tag for a tab using browser.sessions.setTabValue()/browser.sessions.getTabValue().

Since this is a big feature addition, some time seems to be needed.

Screenshot 2023-04-07 at 19 23 09

Implementing Groups (supergroups) of containers.

Thanks very much for working hard, this new feature is very promising!

If you need a tester, I can test this beta/nightly build and try to report bugs if possible.

This is the unsigned build of the current version of the supergroup feature. Tests welcome. Please unzip before testing.

container-tab-groups-31ffb255acf2d62a1e94f87e7ad0a3ecf4203fb3.prod.xpi.zip

Implemented the model for Tags. (d103eaf)

export type TagType = {
  tagId: number;
  name: string;
};

export type TagStorageType = {
  [tagId: number]: TagType;
};

People tend to have thousands of tabs, so we need to be careful about memory usage 😭

When the total rewrite of the add-on is finished memory usage should be smaller, but for now...

Tag (subgroup) feature is here! Testing welcome. container-tab-groups-7f6f7df976ec5b852f4d179f02c5d3b289a00796.prod.xpi.zip

Thank you for your hard work, the tagging feature looks really great.

Subgroup feature works as expected, but I guess it's a bit hard for me to use, but I was able to create new group and subgroups for that group, which is wonderful! I'm looking forward to see the stable version!

This is the features and improvements for the next 11.6.0 release.

#183