Skip to content

Commit 2c870af

Browse files
committed
performance: prevent mutation observers from firing on pages other than AMO
1 parent 0feba15 commit 2c870af

File tree

2 files changed

+15
-6
lines changed

2 files changed

+15
-6
lines changed

source/content/frame-script.js

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ var amoBr = {
8383
},
8484

8585
registerEvents: function() {
86-
// start observing link changes after document is created before page scripts
86+
// start observing link changes after document is created
8787
this.documentInitObserver = {
8888
observe: function(aSubject, aTopic, aData) {
8989
if ("document-element-inserted" == aTopic) {
@@ -170,10 +170,13 @@ var amoBr = {
170170
//amoBr.grabbedLinks = [];
171171

172172
var observer = new content.MutationObserver(function(mutations) {
173+
if (content.document.location.host != 'addons.mozilla.org'
174+
|| content.document.location.protocol != 'https:') {
175+
// quit if not AMO
176+
return;
177+
}
173178

174-
for (var m=0; m<mutations.length; m++) {
175-
var mutation = mutations[m];
176-
179+
mutations.forEach(function(mutation) {
177180
var target = mutation.target;
178181

179182
if (target.nodeName == 'A'
@@ -182,7 +185,7 @@ var amoBr = {
182185
target.setAttribute('data-realurl', mutation.oldValue);
183186
//amoBr.grabbedLinks.push(mutation.oldValue);
184187
}
185-
}
188+
});
186189
});
187190

188191
var target = content.document;
@@ -195,6 +198,12 @@ var amoBr = {
195198
// wrapper.innerHTML = this.grabbedLinks.join('<br>\n');
196199
// content.document.body.insertBefore(wrapper, content.document.body.firstChild);
197200
//},
201+
//
202+
//appendDebug: function(txt) {
203+
// var wrapper = content.document.createElement('div');
204+
// wrapper.textContent = txt;
205+
// content.document.body.insertBefore(wrapper, content.document.body.firstChild);
206+
//},
198207

199208
addStyleSheet: function() {
200209
var link = content.document.createElement('link');

source/install.rdf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
xmlns:em="http://www.mozilla.org/2004/em-rdf#">
44
<rdf:Description rdf:about="urn:mozilla:install-manifest">
55
<em:id>[email protected]</em:id>
6-
<em:version>0.9.14</em:version>
6+
<em:version>0.9.15</em:version>
77
<em:type>2</em:type>
88
<em:bootstrap>true</em:bootstrap>
99

0 commit comments

Comments
 (0)