Bug 593440 - Remove remaining child widgets on windows. r=roc, a=joe.

This commit is contained in:
Jim Mathies 2010-09-08 10:52:58 -05:00
Родитель 83ac71c8bd
Коммит 152db55c62
2 изменённых файлов: 7 добавлений и 2 удалений

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

@ -2279,7 +2279,9 @@ DocumentViewerImpl::MakeWindow(const nsSize& aSize, nsIView* aContainerView)
nsWindowType winType;
containerItem->GetItemType(&docType);
mParentWidget->GetWindowType(winType);
if (winType == eWindowType_toplevel &&
if ((winType == eWindowType_toplevel ||
winType == eWindowType_dialog ||
winType == eWindowType_invisible) &&
docType == nsIDocShellTreeItem::typeChrome) {
// If the old view is already attached to our parent, detach
DetachFromTopLevelWidget();

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

@ -292,7 +292,10 @@ NS_IMETHODIMP
nsBaseWidget::AttachViewToTopLevel(EVENT_CALLBACK aViewEventFunction,
nsIDeviceContext *aContext)
{
NS_ASSERTION((mWindowType == eWindowType_toplevel), "Can't attach to child?");
NS_ASSERTION((mWindowType == eWindowType_toplevel ||
mWindowType == eWindowType_dialog ||
mWindowType == eWindowType_invisible),
"Can't attach to child?");
mViewCallback = aViewEventFunction;