mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-12 04:45:45 +00:00
Make XUL boxes check maxheight/maxwidth attrs as well as minwidth. r/sr=hewitt,jst
This commit is contained in:
parent
b51cf5caf3
commit
d6d909e72a
@ -1240,8 +1240,7 @@ nsIBox::AddCSSMinSize(nsBoxLayoutState& aState, nsIBox* aBox, nsSize& aSize)
|
|||||||
value.Trim("%");
|
value.Trim("%");
|
||||||
|
|
||||||
nscoord val = NSIntPixelsToTwips(value.ToInteger(&error), p2t);
|
nscoord val = NSIntPixelsToTwips(value.ToInteger(&error), p2t);
|
||||||
if (val > aSize.width)
|
aSize.width = val;
|
||||||
aSize.width = val;
|
|
||||||
widthSet = PR_TRUE;
|
widthSet = PR_TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1253,8 +1252,7 @@ nsIBox::AddCSSMinSize(nsBoxLayoutState& aState, nsIBox* aBox, nsSize& aSize)
|
|||||||
value.Trim("%");
|
value.Trim("%");
|
||||||
|
|
||||||
nscoord val = NSIntPixelsToTwips(value.ToInteger(&error), p2t);
|
nscoord val = NSIntPixelsToTwips(value.ToInteger(&error), p2t);
|
||||||
if (val > aSize.height)
|
aSize.height = val;
|
||||||
aSize.height = val;
|
|
||||||
|
|
||||||
heightSet = PR_TRUE;
|
heightSet = PR_TRUE;
|
||||||
}
|
}
|
||||||
@ -1291,8 +1289,42 @@ nsIBox::AddCSSMaxSize(nsBoxLayoutState& aState, nsIBox* aBox, nsSize& aSize)
|
|||||||
heightSet = PR_TRUE;
|
heightSet = PR_TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
nsCOMPtr<nsIContent> content;
|
||||||
|
frame->GetContent(getter_AddRefs(content));
|
||||||
|
|
||||||
return NS_OK;
|
if (content) {
|
||||||
|
nsIPresContext* presContext = aState.GetPresContext();
|
||||||
|
|
||||||
|
nsAutoString value;
|
||||||
|
PRInt32 error;
|
||||||
|
|
||||||
|
if (NS_CONTENT_ATTR_HAS_VALUE == content->GetAttr(kNameSpaceID_None, nsXULAtoms::maxwidth, value))
|
||||||
|
{
|
||||||
|
float p2t;
|
||||||
|
presContext->GetScaledPixelsToTwips(&p2t);
|
||||||
|
|
||||||
|
value.Trim("%");
|
||||||
|
|
||||||
|
nscoord val = NSIntPixelsToTwips(value.ToInteger(&error), p2t);
|
||||||
|
aSize.width = val;
|
||||||
|
widthSet = PR_TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (NS_CONTENT_ATTR_HAS_VALUE == content->GetAttr(kNameSpaceID_None, nsXULAtoms::maxheight, value))
|
||||||
|
{
|
||||||
|
float p2t;
|
||||||
|
presContext->GetScaledPixelsToTwips(&p2t);
|
||||||
|
|
||||||
|
value.Trim("%");
|
||||||
|
|
||||||
|
nscoord val = NSIntPixelsToTwips(value.ToInteger(&error), p2t);
|
||||||
|
aSize.height = val;
|
||||||
|
|
||||||
|
heightSet = PR_TRUE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return (widthSet || heightSet);
|
||||||
}
|
}
|
||||||
|
|
||||||
PRBool
|
PRBool
|
||||||
|
Loading…
Reference in New Issue
Block a user