зеркало из https://github.com/mozilla/gecko-dev.git
Bug 788829 - Call SetSizeConstraints even if a popup is not open. r=enndeakin
This commit is contained in:
Родитель
9f5f31c48f
Коммит
26c7847d0b
|
@ -445,20 +445,20 @@ nsMenuPopupFrame::LayoutPopup(nsBoxLayoutState& aState, nsIFrame* aParentMenu, b
|
|||
}
|
||||
|
||||
nsPresContext* pc = PresContext();
|
||||
nsIView* view = GetView();
|
||||
|
||||
if (sizeChanged) {
|
||||
// If the size of the popup changed, apply any size constraints.
|
||||
nsIWidget* widget = view->GetWidget();
|
||||
if (widget) {
|
||||
SetSizeConstraints(pc, widget, minSize, maxSize);
|
||||
}
|
||||
}
|
||||
|
||||
if (isOpen) {
|
||||
nsIView* view = GetView();
|
||||
nsIViewManager* viewManager = view->GetViewManager();
|
||||
nsRect rect = GetRect();
|
||||
rect.x = rect.y = 0;
|
||||
|
||||
if (sizeChanged) {
|
||||
// If the size of the popup changed, apply any size constraints.
|
||||
nsIWidget* widget = view->GetWidget();
|
||||
if (widget) {
|
||||
SetSizeConstraints(pc, widget, minSize, maxSize);
|
||||
}
|
||||
}
|
||||
|
||||
viewManager->ResizeView(view, rect);
|
||||
|
||||
viewManager->SetViewVisibility(view, nsViewVisibility_kShow);
|
||||
|
|
Загрузка…
Ссылка в новой задаче