Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Chrome extension page action appearing outside of address bar

Tags:

I wrote a Chrome Extension page action, with the following implementation:

In manifest.json:

  "permissions" : [     "declarativeContent"   ], 

In background.js:

chrome.runtime.onInstalled.addListener(function() {   // Replace all rules ...   chrome.declarativeContent.onPageChanged.removeRules(undefined, function() {     // With a new rule ...     chrome.declarativeContent.onPageChanged.addRules([       {         conditions: [           new chrome.declarativeContent.PageStateMatcher({             pageUrl: { urlMatches: 'www\.somewebsite\.com/(translate|revise)/' },           })         ],         // And shows the extension's page action.         actions: [ new chrome.declarativeContent.ShowPageAction() ]       }     ]);   }); }); 

I noticed that in most Chrome browsers, the page action icon appears correctly inside the address and only appears when the matching page is met:

Page action appearing as expected

However, in some browsers recently page actions started appearing as enabled/disabled browser actions, i.e. outside the address bar, which is a lot clumsier because the whole idea around page actions icons is that they appear if and only if the page is relevant to them. There is no point showing a disabled page action for most of the time. Actually, it happened to browsers where it used to work well days ago, like if a Chrome update had some side effects.

Page action appearing like a Browser action

I presume this is related to some Chrome setting that now shows all extensions there, but is there any way I can force the page action to appear consistently in the address bar and only appear when it can be really useful?

like image 711
Pep Avatar asked Mar 02 '16 18:03

Pep


1 Answers

It appears like this is the result of a new update to Chrome, with the developers probably reasoning that most users would not know that they had extensions installed otherwise.

Link to announcement: https://groups.google.com/a/chromium.org/forum/#!searchin/chromium-extensions/upcoming/chromium-extensions/7As9MKhav5E/dNiZDoSCCQAJ

It doesn't look like extension developers can do anything about this, but I really hope Google reverts this change.

like image 179
Mastergalen Avatar answered Sep 22 '22 13:09

Mastergalen