pjs/image/test/browser/head.js

38 строки
1.1 KiB
JavaScript

const RELATIVE_DIR = "image/test/browser/";
const TESTROOT = "http://example.com/browser/" + RELATIVE_DIR;
const TESTROOT2 = "http://example.org/browser/" + RELATIVE_DIR;
var chrome_root = getRootDirectory(gTestPath);
const CHROMEROOT = chrome_root;
function getImageLoading(doc, id) {
var htmlImg = doc.getElementById(id);
return htmlImg.QueryInterface(Ci.nsIImageLoadingContent);
}
// Tries to get the Moz debug image, imgIContainerDebug. Only works
// in a debug build. If we succeed, we call func().
function actOnMozImage(doc, id, func) {
var imgContainer = getImageLoading(doc, id).getRequest(Ci.nsIImageLoadingContent.CURRENT_REQUEST).image;
var mozImage;
try {
mozImage = imgContainer.QueryInterface(Ci.imgIContainerDebug);
}
catch (e) {
return false;
}
func(mozImage);
return true;
}
function awaitImageContainer(doc, id, func) {
getImageLoading(doc, id).addObserver({
QueryInterface: XPCOMUtils.generateQI([Ci.imgIDecoderObserver]),
onStartContainer: function(aRequest, aContainer) {
getImageLoading(doc, id).removeObserver(this);
func(aContainer);
},
});
}