Fixes bug 18039, it doesn't call WipeContainingBlock for select frames

This needs a better fix, filed bug 18366
r=kmcclusk
This commit is contained in:
rods%netscape.com 1999-11-09 22:36:05 +00:00
Родитель e70792af1e
Коммит 07460b6c29
2 изменённых файлов: 24 добавлений и 6 удалений

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

@ -5400,9 +5400,18 @@ nsCSSFrameConstructor::ContentAppended(nsIPresContext* aPresContext,
if (NS_SUCCEEDED(result) && firstAppendedFrame) {
// Perform special check for diddling around with the frames in
// a special inline frame.
if (WipeContainingBlock(aPresContext, state, blockContent, adjustedParentFrame,
frameItems.childList)) {
return NS_OK;
// XXX Bug 18366
// Although select frame are inline we do not want to call
// WipeContainingBlock because it will throw away the entire selct frame and
// start over which is something we do not want to do
//
nsCOMPtr<nsIDOMHTMLSelectElement> selectContent(do_QueryInterface(blockContent));
if (selectContent) {
if (WipeContainingBlock(aPresContext, state, blockContent, adjustedParentFrame,
frameItems.childList)) {
return NS_OK;
}
}
// Append the flowed frames to the principal child list

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

@ -5400,9 +5400,18 @@ nsCSSFrameConstructor::ContentAppended(nsIPresContext* aPresContext,
if (NS_SUCCEEDED(result) && firstAppendedFrame) {
// Perform special check for diddling around with the frames in
// a special inline frame.
if (WipeContainingBlock(aPresContext, state, blockContent, adjustedParentFrame,
frameItems.childList)) {
return NS_OK;
// XXX Bug 18366
// Although select frame are inline we do not want to call
// WipeContainingBlock because it will throw away the entire selct frame and
// start over which is something we do not want to do
//
nsCOMPtr<nsIDOMHTMLSelectElement> selectContent(do_QueryInterface(blockContent));
if (selectContent) {
if (WipeContainingBlock(aPresContext, state, blockContent, adjustedParentFrame,
frameItems.childList)) {
return NS_OK;
}
}
// Append the flowed frames to the principal child list