Bug 627293 - backout for Ts regression [r=me]

This commit is contained in:
Mark Finkle 2011-01-24 23:20:26 -05:00
Родитель a783a86c85
Коммит e8be5a3e14
2 изменённых файлов: 20 добавлений и 26 удалений

Просмотреть файл

@ -142,9 +142,6 @@
// Recalculate whether the visible area is actually in bounds // Recalculate whether the visible area is actually in bounds
let view = self.getRootView(); let view = self.getRootView();
view.scrollBy(0, 0); view.scrollBy(0, 0);
// XXX Actually this fire a SetCacheViewport event as well as the
// scrolledAreaChanged handler in content/chrome/browser.js
view._updateCacheViewport(); view._updateCacheViewport();
break; break;
} }

Просмотреть файл

@ -2544,8 +2544,7 @@ Tab.prototype = {
} }
} }
if (browser.contentWindowWidth != viewportW || browser.contentWindowHeight != viewportH) browser.setWindowSize(viewportW, viewportH);
browser.setWindowSize(viewportW, viewportH);
}, },
restoreViewportPosition: function restoreViewportPosition(aOldWidth, aNewWidth) { restoreViewportPosition: function restoreViewportPosition(aOldWidth, aNewWidth) {
@ -2858,31 +2857,29 @@ var ViewableAreaObserver = {
let newWidth = this.width; let newWidth = this.width;
let newHeight = this.height; let newHeight = this.height;
if (newHeight == oldHeight && newWidth == oldWidth) if (newHeight != oldHeight || newWidth != oldWidth) {
return; Browser.styles["viewable-height"].height = newHeight + "px";
Browser.styles["viewable-height"].maxHeight = newHeight + "px";
Browser.styles["viewable-height"].height = newHeight + "px"; Browser.styles["viewable-width"].width = newWidth + "px";
Browser.styles["viewable-height"].maxHeight = newHeight + "px"; Browser.styles["viewable-width"].maxWidth = newWidth + "px";
Browser.styles["viewable-width"].width = newWidth + "px"; for (let i = Browser.tabs.length - 1; i >= 0; i--) {
Browser.styles["viewable-width"].maxWidth = newWidth + "px"; let tab = Browser.tabs[i];
tab.updateViewportSize();
for (let i = Browser.tabs.length - 1; i >= 0; i--) { // If the viewport width is still the same, the page layout has not
let tab = Browser.tabs[i]; // changed, so we can keep keep the same content on-screen.
tab.updateViewportSize(); if (tab.browser.contentWindowWidth == oldWidth)
tab.updateDefaultZoomLevel(); tab.restoreViewportPosition(oldWidth, newWidth);
}
// If the viewport width is still the same, the page layout has not // setTimeout(callback, 0) to ensure the resize event handler dispatch is finished
// changed, so we can keep keep the same content on-screen. setTimeout(function() {
if (tab.browser.contentWindowWidth == oldWidth) let event = document.createEvent("Events");
tab.restoreViewportPosition(oldWidth, newWidth); event.initEvent("SizeChanged", true, false);
Elements.browsers.dispatchEvent(event);
}, 0);
} }
// setTimeout(callback, 0) to ensure the resize event handler dispatch is finished
setTimeout(function() {
let event = document.createEvent("Events");
event.initEvent("SizeChanged", true, false);
Elements.browsers.dispatchEvent(event);
}, 0);
} }
}; };