зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1120211 - Don't force the innerwindow size to the outerwindow size if the viewport is overridden. r=dbaron
In Fennec, if the root window gets resized, background tabs get a delayed resize event queued up. When those background tabs get painted next, the delayed resize is flushed. However, the code that flushes the delayed resize does not check to see if the viewport is already overridden. This is in contrast to all the other code paths that propagate outerwindow size change to the innerwindow, and is incorrect because it effectively clobbers any meta-viewport tag with the outerwindow dimensions. This patch corrects this code path to also check if the viewport is overridden.
This commit is contained in:
Родитель
1ba6fc99e3
Коммит
7370fc443f
|
@ -226,7 +226,7 @@ nsViewManager::FlushDelayedResize(bool aDoReflow)
|
|||
if (aDoReflow) {
|
||||
DoSetWindowDimensions(mDelayedResize.width, mDelayedResize.height);
|
||||
mDelayedResize.SizeTo(NSCOORD_NONE, NSCOORD_NONE);
|
||||
} else if (mPresShell) {
|
||||
} else if (mPresShell && !mPresShell->GetIsViewportOverridden()) {
|
||||
nsPresContext* presContext = mPresShell->GetPresContext();
|
||||
if (presContext) {
|
||||
presContext->SetVisibleArea(nsRect(nsPoint(0, 0), mDelayedResize));
|
||||
|
|
Загрузка…
Ссылка в новой задаче