[BeOS] nsWidget::Update() is flacky in BeOS, Bug 342613, p=sergei_d, r=thesuckiestemail. BeOS-only

This commit is contained in:
sergei_d%fi.tartu.ee 2006-06-26 13:39:05 +00:00
Родитель 373098cd3a
Коммит b82f81345f
1 изменённых файлов: 6 добавлений и 6 удалений

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

@ -1571,17 +1571,17 @@ NS_IMETHODIMP nsWindow::InvalidateRegion(const nsIRegion *aRegion, PRBool aIsSyn
NS_IMETHODIMP nsWindow::Update() NS_IMETHODIMP nsWindow::Update()
{ {
nsresult rv = NS_ERROR_FAILURE; nsresult rv = NS_ERROR_FAILURE;
//Switching scrolling trigger off
mIsScrolling = PR_FALSE;
// Getting whole paint cache filled in native and non-native Invalidate() calls.
// Sending it all to view manager via OnPaint()
BRegion reg; BRegion reg;
reg.MakeEmpty(); reg.MakeEmpty();
if(mView && mView->LockLooper()) if(mView && mView->LockLooper())
{ {
//Flushing native pending updates*/ //Flushing native pending updates
if (mView->Window()) if (mIsScrolling && mView->Window())
mView->Window()->UpdateIfNeeded(); mView->Window()->UpdateIfNeeded();
else
mView->Invalidate();
//Switching scrolling trigger off
mIsScrolling = PR_FALSE;
bool nonempty = mView->GetPaintRegion(&reg); bool nonempty = mView->GetPaintRegion(&reg);
mView->UnlockLooper(); mView->UnlockLooper();
if (nonempty) if (nonempty)