зеркало из https://github.com/mozilla/gecko-dev.git
18163 "Use of fixed positioning in style sheet corrupts display". Don't create empty widgets for fixed positioned elements in order to avoid problems in the View Manager (GetDrawingSurface) where we end up copying uninitialized bitmaps to the screen. The main reason for fixing the bug here instead of within the View Manager is that we'll get rid of widgets altogether over time.
This commit is contained in:
Родитель
10e15dd783
Коммит
ce15b0c85d
|
@ -468,7 +468,10 @@ nsHTMLContainerFrame::CreateViewForFrame(nsIPresContext* aPresContext,
|
|||
aStyleContext->GetStyleData(eStyleStruct_Position);
|
||||
|
||||
if (NS_STYLE_POSITION_FIXED == position->mPosition) {
|
||||
view->CreateWidget(kCChildCID);
|
||||
nsRect rect;
|
||||
view->GetBounds(rect);
|
||||
if (! rect.IsEmpty())
|
||||
view->CreateWidget(kCChildCID);
|
||||
}
|
||||
|
||||
viewManager->SetViewOpacity(view, color->mOpacity);
|
||||
|
|
|
@ -468,7 +468,10 @@ nsHTMLContainerFrame::CreateViewForFrame(nsIPresContext* aPresContext,
|
|||
aStyleContext->GetStyleData(eStyleStruct_Position);
|
||||
|
||||
if (NS_STYLE_POSITION_FIXED == position->mPosition) {
|
||||
view->CreateWidget(kCChildCID);
|
||||
nsRect rect;
|
||||
view->GetBounds(rect);
|
||||
if (! rect.IsEmpty())
|
||||
view->CreateWidget(kCChildCID);
|
||||
}
|
||||
|
||||
viewManager->SetViewOpacity(view, color->mOpacity);
|
||||
|
|
Загрузка…
Ссылка в новой задаче