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

_execute_action, _execute_browser_action and _execute_page_action commands #301

Closed
carlosjeurissen opened this issue Oct 18, 2022 · 6 comments
Labels
implemented: chrome Implemented in Chrome implemented: firefox Implemented in Firefox inconsistency Inconsistent behavior across browsers spec clarification Needs clarification when specified supportive: safari Supportive from Safari

Comments

@carlosjeurissen
Copy link
Contributor

carlosjeurissen commented Oct 18, 2022

As reported by @beaufortfrancois in https://crbug.com/1371857, there are some issues related to the command to open webExtensions action.

Background

In MV2, this classically was defined as _execute_browser_action and _execute_page_action for browserAction and pageAction respectively. In MV3, both were renamed to _execute_action.

In the current situation, when a user set a certain shortcut in MV2 for _execute_browser_action, then upgrades to MV3 and renames it to _execute_action, the shortcut is lost.

Solution

Internally, browsers should threat _execute_browser_action, _execute_page_action and _execute_action all as equivalent and only store one custom shortcut from the user for all of them. If multiple are found, either stored by the browser, or multiple definitions in the manifest.json commands key, the _execute_action would be preferred.

To assist in the process, browsers should warn about the presence of _execute_* if the equivalent action key is not present, which would fix: https://crbug.com/1353210

Tracking issue for Firefox: https://bugzilla.mozilla.org/show_bug.cgi?id=1797811

@carlosjeurissen carlosjeurissen added inconsistency Inconsistent behavior across browsers spec clarification Needs clarification when specified agenda Discuss in future meetings labels Oct 18, 2022
@beaufortfrancois
Copy link

Thank you @carlosjeurissen ;)

@xeenon xeenon added the supportive: safari Supportive from Safari label Oct 24, 2022
@dotproto dotproto added the follow-up: chrome Needs a response from a Chrome representative label Oct 27, 2022
@carlosjeurissen
Copy link
Contributor Author

carlosjeurissen commented Oct 27, 2022

During our 2022-10-27 meeting, Chrome was not supportive of keeping multiple names alive due to the amount of resources this would cost. Support from Firefox is unknown.

As for easing the migration from mv2 to mv3, this is not an issue in Safari, as they do currently not support commands. However, there was consensus between browsers this migration should be handled during the transition from mv2 to mv3.

This can be tracked for Chrome in https://crbug.com/1353210
Firefox will consider this when further implementing mv3. @Rob--W should we open a separate issue for this in Mozilla Bugzilla?

@carlosjeurissen carlosjeurissen removed the agenda Discuss in future meetings label Oct 27, 2022
@Rob--W Rob--W added the supportive: firefox Supportive from Firefox label Oct 27, 2022
@Rob--W
Copy link
Member

Rob--W commented Oct 27, 2022

This issue is tracked in Firefox at https://bugzilla.mozilla.org/show_bug.cgi?id=1797811

@Rob--W
Copy link
Member

Rob--W commented Feb 2, 2023

Chromium has fixed the migration issue in https://bugs.chromium.org/p/chromium/issues/detail?id=1371857 .

@Rob--W Rob--W added implemented: chrome Implemented in Chrome and removed follow-up: chrome Needs a response from a Chrome representative labels Feb 2, 2023
@zombie
Copy link
Collaborator

zombie commented Mar 20, 2024

It looks like we can close this, as I would consider this a bug, and since the only issue left is a bug in Firefox, that has a tracking issue,.

@Rob--W
Copy link
Member

Rob--W commented Jun 1, 2024

This has been fixed in Firefox 127.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
implemented: chrome Implemented in Chrome implemented: firefox Implemented in Firefox inconsistency Inconsistent behavior across browsers spec clarification Needs clarification when specified supportive: safari Supportive from Safari
Projects
None yet
Development

No branches or pull requests

6 participants