false
document.getAnonymousElementByAttribute(this, "anonid", "thumbnail");
document.getAnonymousElementByAttribute(this, "anonid", "reload");
document.getAnonymousElementByAttribute(this, "anonid", "close-container");
document.getAnonymousElementByAttribute(this, "anonid", "title");
this.parentNode.parentNode;
0)
width = Math.min(width, browser.contentDocumentWidth);
if (browser.contentDocumentHeight > 0)
height = Math.min(height, browser.contentDocumentHeight);
let newHeight = width * ratio;
if (height >= newHeight) {
height = newHeight;
} else {
// the browser aspect ratio does not match the tabs aspect ratio
width = height / ratio;
}
// Recreate the canvas as it may be tainted and not useable for remote pages
if (thumbnail.hasAttribute("restored")) {
thumbnail.removeAttribute("restored");
thumbnail = this.thumbnail.cloneNode(false);
this.thumbnail.parentNode.replaceChild(thumbnail, this.thumbnail);
this.thumbnail = thumbnail;
}
let self = this;
let renderer = rendererFactory(browser, thumbnail);
renderer.drawContent(function(ctx, callback) {
ctx.save();
ctx.clearRect(0, 0, tabWidth, tabHeight);
ctx.scale(tabWidth / width, tabHeight / height);
callback(browser, 0, 0, width, height, "white");
ctx.restore();
// We don't have an event for the async drawContent anymore, so hack it
setTimeout(function() {
// Save the thumbnail to the session in case we need to use it in a restore
let data = thumbnail.toDataURL("image/png");
let ss = Cc["@mozilla.org/browser/sessionstore;1"].getService(Ci.nsISessionStore);
ss.setTabValue(self, "thumbnail", data);
}, 800);
});
]]>
document.getAnonymousElementByAttribute(this, "anonid", "tabs-children");
document.getAnonymousElementByAttribute(this, "anonid", "tabs-scrollbox");
document.getAnonymousElementByAttribute(this, "anonid", "tabs-undo");
null
0) : (dx < 0);
if (!this._grabSidebar && hiddingPan) {
this._grabSidebar = dx && Util.isTablet() && !Util.isPortrait();
if (this._grabSidebar)
TabletSidebar.grab();
}
if (this._grabSidebar)
TabletSidebar.slideBy(dx);
return dragger.dragMove(dx, dy, scroller);
}
};
]]>
this.boxObject.QueryInterface(Ci.nsIScrollBoxObject);
null
0
1) { // > 1 to ignore column resizing while the main window is loading
let width = columnsCount * (COLUMN_MARGIN + firstBox.width);
this.children.style.width = width + "px";
// Clamp the sidebar width so it won't overflow the window. Only clamp
// the scrollbox. The children need to be the full width.
if (width > window.innerWidth - firstBox.width)
width = window.innerWidth - firstBox.width;
this._scrollbox.style.width = width + "px";
this._columnsCount = columnsCount;
}
]]>