Skip to content

calibr/chrome-broadcaster

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

Broadcast messages for Chrome Extensions

Why?

Sometimes you need to receive messages sent by chrome.runtime.sendMessage in the sender's frame, so you have something like this in your extesion page's js file:

chrome.runtime.onMessage(function(message) {
  ...
});

...

chrome.runtime.sendMessage(...);

But Chrome behaviour for this among versions and even inside a single version is inconsistent:

  • up to 57 onMessage listener within one frame will be triggered only if there are at least two extension's frames(chrome.extension.getViews().length > 1)
  • in versions from 57 onMessage is not triggered within one frame in any case. It is the expected behaviour.

For further reading see:

Usage

Just include broadcaster.js in your addon and replace:

  • chrome.runtime.sendMessage by Broadcaster.sendMessage
  • chrome.runtime.onMessage by Broadcaster.onMessage

Sending message:

// simple
Broadcaster.sendMessage({"message": 1});

// with callback
Broadcaster.sendMessage({"message": 1}, function(response) {
});

Receiving message:

Broadcaster.onMessage.addListener(function(message, sender, sendResponse) {

});

About

Broadcast messages in chrome extensions

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published