Skip to content

Commit

Permalink
Merge remote-tracking branch 'janekptacijarabaci/synchronizationBetwe…
Browse files Browse the repository at this point in the history
…enPopups'

Fixes #2276
  • Loading branch information
arantius committed Sep 24, 2015
2 parents 72020a9 + 28d72d8 commit 8a7d0c1
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 10 deletions.
11 changes: 7 additions & 4 deletions content/browser.js
Original file line number Diff line number Diff line change
Expand Up @@ -283,19 +283,22 @@ function GM_showPopup(aEvent) {

var mm = getBrowser().mCurrentBrowser.frameLoader.messageManager;

// See #2276
var aEventTarget = aEvent.target;

var callback = null;
callback = function(message) {
mm.removeMessageListener("greasemonkey:frame-urls", callback);

var urls = message.data.urls;
asyncShowPopup(aEvent, urls);
asyncShowPopup(aEventTarget, urls);
};

mm.addMessageListener("greasemonkey:frame-urls", callback);
mm.sendAsyncMessage("greasemonkey:frame-urls", {});
}

function asyncShowPopup(aEvent, urls) {
function asyncShowPopup(aEventTarget, urls) {
function uniq(a) {
var seen = {}, list = [], item;
for (var i = 0; i < a.length; i++) {
Expand Down Expand Up @@ -327,7 +330,7 @@ function asyncShowPopup(aEvent, urls) {
return mi;
}

var popup = aEvent.target;
var popup = aEventTarget;
var scriptsFramedEl = popup.getElementsByClassName("scripts-framed-point")[0];
var scriptsTopEl = popup.getElementsByClassName("scripts-top-point")[0];
var scriptsSepEl = popup.getElementsByClassName("scripts-sep")[0];
Expand Down Expand Up @@ -374,7 +377,7 @@ function asyncShowPopup(aEvent, urls) {
function(script) { point = appendScriptAfter(script, point); });

// Propagate to commands sub-menu.
GM_MenuCommander.onPopupShowing(aEvent);
GM_MenuCommander.onPopupShowing(aEventTarget);
}

/**
Expand Down
12 changes: 6 additions & 6 deletions content/menucommander.js
Original file line number Diff line number Diff line change
Expand Up @@ -43,12 +43,14 @@ GM_MenuCommander.createMenuItem = function(command) {
GM_MenuCommander.messageMenuCommandResponse = function(aMessage) {
if (aMessage.data.cookie != GM_MenuCommander.cookieShowing) return;

GM_MenuCommander.popup.parentNode.disabled = false;
for (i in aMessage.data.commands) {
var command = aMessage.data.commands[i];
var menuItem = GM_MenuCommander.createMenuItem(command);
GM_MenuCommander.popup.appendChild(menuItem);
}
if (GM_MenuCommander.popup.firstChild) {
GM_MenuCommander.popup.parentNode.disabled = false;
}
};


Expand All @@ -58,11 +60,9 @@ GM_MenuCommander.onPopupHiding = function() {
};


GM_MenuCommander.onPopupShowing = function(aEvent) {
if (!GM_MenuCommander.popup) {
GM_MenuCommander.popup = aEvent.target.querySelector(
'menupopup.greasemonkey-user-script-commands-popup');
}
GM_MenuCommander.onPopupShowing = function(aEventTarget) {
GM_MenuCommander.popup = aEventTarget.querySelector(
'menupopup.greasemonkey-user-script-commands-popup');

GM_MenuCommander.messageCookie++;
GM_MenuCommander.cookieShowing = GM_MenuCommander.messageCookie;
Expand Down

0 comments on commit 8a7d0c1

Please sign in to comment.