зеркало из https://github.com/mozilla/pjs.git
Backed out changeset be48a89b9561. Asked for by Mossop and dietrich.
This commit is contained in:
Родитель
86eb34b66d
Коммит
3cfad823cb
|
@ -250,7 +250,7 @@ function InstallTriggerManager() {
|
||||||
|
|
||||||
InstallTriggerManager.prototype = {
|
InstallTriggerManager.prototype = {
|
||||||
handleEvent: function handleEvent(aEvent) {
|
handleEvent: function handleEvent(aEvent) {
|
||||||
var window = aEvent.target.defaultView;
|
var window = aEvent.originalTarget.defaultView.content;
|
||||||
|
|
||||||
// Need to make sure we are called on what we care about -
|
// Need to make sure we are called on what we care about -
|
||||||
// content windows. DOMWindowCreated is called on *all* HTMLDocuments,
|
// content windows. DOMWindowCreated is called on *all* HTMLDocuments,
|
||||||
|
|
|
@ -46,7 +46,6 @@ include $(topsrcdir)/config/rules.mk
|
||||||
_BROWSER_FILES = head.js \
|
_BROWSER_FILES = head.js \
|
||||||
browser_unsigned_url.js \
|
browser_unsigned_url.js \
|
||||||
browser_unsigned_trigger.js \
|
browser_unsigned_trigger.js \
|
||||||
browser_unsigned_trigger_iframe.js \
|
|
||||||
browser_whitelist.js \
|
browser_whitelist.js \
|
||||||
browser_whitelist2.js \
|
browser_whitelist2.js \
|
||||||
browser_whitelist3.js \
|
browser_whitelist3.js \
|
||||||
|
@ -101,7 +100,6 @@ _BROWSER_FILES = head.js \
|
||||||
multipackage.xpi \
|
multipackage.xpi \
|
||||||
enabled.html \
|
enabled.html \
|
||||||
installtrigger.html \
|
installtrigger.html \
|
||||||
installtrigger_frame.html \
|
|
||||||
startsoftwareupdate.html \
|
startsoftwareupdate.html \
|
||||||
installchrome.html \
|
installchrome.html \
|
||||||
triggerredirect.html \
|
triggerredirect.html \
|
||||||
|
|
|
@ -1,50 +0,0 @@
|
||||||
// ----------------------------------------------------------------------------
|
|
||||||
// Test for bug 589598 - Ensure that installing through InstallTrigger
|
|
||||||
// works in an iframe in web content.
|
|
||||||
|
|
||||||
function test() {
|
|
||||||
Harness.installConfirmCallback = confirm_install;
|
|
||||||
Harness.installEndedCallback = install_ended;
|
|
||||||
Harness.installsCompletedCallback = finish_test;
|
|
||||||
Harness.setup();
|
|
||||||
|
|
||||||
var pm = Services.perms;
|
|
||||||
pm.add(makeURI("http://example.com/"), "install", pm.ALLOW_ACTION);
|
|
||||||
|
|
||||||
var triggers = encodeURIComponent(JSON.stringify({
|
|
||||||
"Unsigned XPI": {
|
|
||||||
URL: TESTROOT + "unsigned.xpi",
|
|
||||||
IconURL: TESTROOT + "icon.png",
|
|
||||||
toString: function() { return this.URL; }
|
|
||||||
}
|
|
||||||
}));
|
|
||||||
gBrowser.selectedTab = gBrowser.addTab();
|
|
||||||
gBrowser.loadURI(TESTROOT + "installtrigger_frame.html?" + triggers);
|
|
||||||
}
|
|
||||||
|
|
||||||
function confirm_install(window) {
|
|
||||||
items = window.document.getElementById("itemList").childNodes;
|
|
||||||
is(items.length, 1, "Should only be 1 item listed in the confirmation dialog");
|
|
||||||
is(items[0].name, "XPI Test", "Should have seen the name");
|
|
||||||
is(items[0].url, TESTROOT + "unsigned.xpi", "Should have listed the correct url for the item");
|
|
||||||
is(items[0].icon, TESTROOT + "icon.png", "Should have listed the correct icon for the item");
|
|
||||||
is(items[0].signed, "false", "Should have listed the item as unsigned");
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
function install_ended(install, addon) {
|
|
||||||
install.cancel();
|
|
||||||
}
|
|
||||||
|
|
||||||
function finish_test(count) {
|
|
||||||
is(count, 1, "1 Add-on should have been successfully installed");
|
|
||||||
|
|
||||||
Services.perms.remove("example.com", "install");
|
|
||||||
|
|
||||||
var doc = gBrowser.contentWindow.frames[0].document; // Document of iframe
|
|
||||||
is(doc.getElementById("return").textContent, "true", "installTrigger in iframe should have claimed success");
|
|
||||||
is(doc.getElementById("status").textContent, "0", "Callback in iframe should have seen a success");
|
|
||||||
|
|
||||||
gBrowser.removeCurrentTab();
|
|
||||||
Harness.finish();
|
|
||||||
}
|
|
|
@ -1,29 +0,0 @@
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
||||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
||||||
|
|
||||||
<html>
|
|
||||||
|
|
||||||
<!-- This page will accept some json as the uri query and pass it to
|
|
||||||
an inner iframe, which will run InstallTrigger.install -->
|
|
||||||
|
|
||||||
<head>
|
|
||||||
<title>InstallTrigger frame tests</title>
|
|
||||||
<script type="text/javascript">
|
|
||||||
function prepChild() {
|
|
||||||
// Pass our parameters over to the child
|
|
||||||
var child = window.frames[0];
|
|
||||||
var params = document.location.search.substr(1);
|
|
||||||
child.location = "installtrigger.html?" + params;
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</head>
|
|
||||||
<body onload="prepChild()">
|
|
||||||
|
|
||||||
<iframe src="about:blank">
|
|
||||||
</iframe>
|
|
||||||
|
|
||||||
<p>InstallTrigger tests</p>
|
|
||||||
<p id="return"></p>
|
|
||||||
<p id="status"></p>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
Загрузка…
Ссылка в новой задаче