Bug 286955. Force the entire subtree of widgets to redraw when we scroll a view that doesn't have an associated scrolling widget. r+sr=bzbarsky,a=shaver

This commit is contained in:
roc+%cs.cmu.edu 2005-06-02 08:53:26 +00:00
Родитель 890fc6f372
Коммит d2fab20214
1 изменённых файлов: 8 добавлений и 1 удалений

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

@ -349,7 +349,14 @@ static void AdjustChildWidgets(nsView *aView,
widget->Move(NSTwipsToIntPixels(widgetOrigin.x, aScale),
NSTwipsToIntPixels(widgetOrigin.y, aScale));
if (aInvalidate) {
widget->Invalidate(PR_FALSE);
// Force the widget and everything in it to repaint. We can't
// just use Invalidate because the widget might have child
// widgets and they wouldn't get updated. We can't call
// UpdateView(aView) because the area to be repainted might be
// outside aView's clipped bounds. This isn't the greatest way
// to achieve this, perhaps, but it works.
widget->Show(PR_FALSE);
widget->Show(PR_TRUE);
}
}
} else {