diff --git a/xpfe/appshell/src/nsXULWindow.cpp b/xpfe/appshell/src/nsXULWindow.cpp index 8ba379ff8e63..9b6ee327cd45 100644 --- a/xpfe/appshell/src/nsXULWindow.cpp +++ b/xpfe/appshell/src/nsXULWindow.cpp @@ -994,6 +994,16 @@ void nsXULWindow::OnChromeLoaded() mChromeLoaded = PR_TRUE; ApplyChromeFlags(); SyncAttributesToWidget(); + if (!mIgnoreXULSize) + LoadSizeFromXUL(); + if (mIntrinsicallySized) { + // (if LoadSizeFromXUL set the size, mIntrinsicallySized will be false) + nsCOMPtr cv; + mDocShell->GetContentViewer(getter_AddRefs(cv)); + nsCOMPtr markupViewer(do_QueryInterface(cv)); + if (markupViewer) + markupViewer->SizeToContent(); + } PRBool positionSet = !mIgnoreXULPosition; nsCOMPtr parentWindow(do_QueryReferent(mParentWindow)); @@ -1006,19 +1016,6 @@ void nsXULWindow::OnChromeLoaded() #endif if (positionSet) positionSet = LoadPositionFromXUL(); - - if (!mIgnoreXULSize) - LoadSizeFromXUL(); - - if (mIntrinsicallySized) { - // (if LoadSizeFromXUL set the size, mIntrinsicallySized will be false) - nsCOMPtr cv; - mDocShell->GetContentViewer(getter_AddRefs(cv)); - nsCOMPtr markupViewer(do_QueryInterface(cv)); - if (markupViewer) - markupViewer->SizeToContent(); - } - LoadMiscPersistentAttributesFromXUL(); if (mCenterAfterLoad && !positionSet) @@ -1171,7 +1168,7 @@ PRBool nsXULWindow::LoadSizeFromXUL() mIntrinsicallySized = PR_FALSE; if (specWidth != currWidth || specHeight != currHeight) - SetSize(specWidth, specHeight, PR_TRUE); + SetSize(specWidth, specHeight, PR_FALSE); } return gotSize;