conceptualspace / yet-another-speed-dial

a modern speed dial for chrome, edge and firefox
Other
184 stars 33 forks source link

Enable Right Click on links #5

Closed SolAZDev closed 3 years ago

SolAZDev commented 5 years ago

Right Clicking on the links doesn't open the Firefox context menu. And thus disables a lot of it's features, , notably container tabs which is a feature used for security reasons.

conceptualspace commented 5 years ago

the trade-off from a UX perspective is balancing what features are relevant to the speed dials (ex. users being able to understand how to edit or remove a tile) vs features that are relevant for regular links but would be confusing in this context (ex. 'bookmarking link', 'search', etc).

i'm not oppossed to adding the 'open in container tab' option to our menu, but since containers themselves are provided by another extension, i'll need to look into how to detect and invoke it.

--

containers extension:

https://addons.mozilla.org/en-US/firefox/addon/multi-account-containers/

https://github.com/mozilla/multi-account-containers

default context menu on the default home page:

contextmenu

SolAZDev commented 5 years ago

I do not know if Mozilla has the source code for the container system, but I would assume that there might be a module/namespace/JS Equivalent that could be imported. Otherwise, is it possible to invoke the context menu from an option in the speed dial menu?

A workaround I ended up using is Shift+Right Click which brings the original context menu.

ElDani82 commented 5 years ago

Hi. I just wanted to leave a few words here because I am interested in this too.

Containers are built into Firefox, but the feature is disabled until an extension requests the relevant permission. In other words, Firefox itself maintains the containers and the user doesn't need to use a specific container extension, because any one is good enough to activate it.

Any extension with the contextualIdentities permission can get the current containers, add, remove or modify existing ones. (The most important) part of what the official containers extension actually does is automatically assign websites to a specific container by its host name.

I'm not sure of the future status of this, but currently the containers functionality will automatically be activated, with no way to disable it, as soon as an extension requests this permission. The only way to disable the feature (and to disable the context-menu entry "Open Link in New Container Tab", which is part of the built-in containers functionality, not the official extension) is to disable any extension with the permission.

Edit: I completely forgot what I was actually wanting to say here. If container functionality ever makes it to this extension, I would love to be able to pre-assign a specific container to any speed dial. It would probably be a bit hacky to implement this configuration with the browser bookmark sync, but since those bookmarks are separate in their own folder, I would deem it acceptable. On Firefox at least there's a bookmark description field, otherwise one could add a title prefix like [c:Work] to it. If any speed dials configured like this showed a border flavored by the container color it would be easily visible too.

I'm unsure if this is where you want your extension to go though, so the request may be out of scope.

conceptualspace commented 4 years ago

i like the idea of supporting containers, but since i don't use them myself it's a lower priority than a few other things, like supporting groups. would make a great pull request tho..

conceptualspace commented 3 years ago

had some time to come back to this -- there's a pretty straightforward implementation available, but with a significant caveat (as noted by @ElDani82): there is no way to check whether a user is actually using containers without also simultaneously enabling them. the problem is i don't want YASD to surprise users by automatically enabling firefox features they might not expect. ideally i could wait until containers became part of the firefox release channel, but i have no idea if or when that might happen. in the meantime, the workaround as suggested by @SolAZDev has been added to the FAQ -- so at least new tabs can be opened in the desired container.