Bug 799333: Make reflow-on-zoom reset after a double-tap to zoom out. [r=blassey]

This commit is contained in:
Scott Johnson 2012-10-25 10:40:30 -05:00
Родитель 44939db1c5
Коммит 2fa08081b0
1 изменённых файлов: 12 добавлений и 0 удалений

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

@ -3584,6 +3584,13 @@ var BrowserEventHandler = {
this.updateReflozPref(); this.updateReflozPref();
}, },
resetMaxLineBoxWidth: function() {
let webNav = window.QueryInterface(Ci.nsIInterfaceRequestor).getInterface(Ci.nsIWebNavigation);
let docShell = webNav.QueryInterface(Ci.nsIDocShell);
let docViewer = docShell.contentViewer.QueryInterface(Ci.nsIMarkupDocumentViewer);
docViewer.changeMaxLineBoxWidth(0);
},
updateReflozPref: function() { updateReflozPref: function() {
this.mReflozPref = Services.prefs.getBoolPref("browser.zoom.reflowOnZoom"); this.mReflozPref = Services.prefs.getBoolPref("browser.zoom.reflowOnZoom");
}, },
@ -3747,6 +3754,7 @@ var BrowserEventHandler = {
}, },
_zoomOut: function() { _zoomOut: function() {
BrowserEventHandler.resetMaxLineBoxWidth();
sendMessageToJava({ gecko: { type: "Browser:ZoomToPageWidth"} }); sendMessageToJava({ gecko: { type: "Browser:ZoomToPageWidth"} });
}, },
@ -3839,6 +3847,10 @@ var BrowserEventHandler = {
} }
} }
if (rect.w > viewport.cssWidth || rect.h > viewport.cssHeight) {
BrowserEventHandler.resetMaxLineBoxWidth();
}
sendMessageToJava({ gecko: rect }); sendMessageToJava({ gecko: rect });
}, },