From 1ff0b28a9347d0cff6f2766744f2a54dd5ebdbd7 Mon Sep 17 00:00:00 2001 From: Stefano Ceccherini Date: Thu, 24 Aug 2006 14:09:15 +0000 Subject: [PATCH] Uncommented invalidation of the area occupied by the views when they are added/removed from the tree. This fixes a couple of problems, I can't say the bug # because bugzilla is down ATM. Why was this code commented out? Stephan ? git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18607 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/servers/app/ViewLayer.cpp | 44 +++++++++++++++++------------------ 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/src/servers/app/ViewLayer.cpp b/src/servers/app/ViewLayer.cpp index 5a147ea96c..898000d985 100644 --- a/src/servers/app/ViewLayer.cpp +++ b/src/servers/app/ViewLayer.cpp @@ -231,17 +231,17 @@ ViewLayer::AddChild(ViewLayer* layer) if (fWindow) { layer->AttachedToWindow(fWindow); -// if (layer->IsVisible()) { -// // trigger redraw -// BRect clippedFrame = layer->Frame(); -// ConvertToVisibleInTopView(&clippedFrame); -// BRegion* dirty = fWindow->GetRegion(); -// if (dirty) { -// dirty->Set(clippedFrame); -// fWindow->MarkContentDirtyAsync(*dirty); -// fWindow->RecycleRegion(dirty); -// } -// } + if (layer->IsVisible()) { + // trigger redraw + BRect clippedFrame = layer->Frame(); + ConvertToVisibleInTopView(&clippedFrame); + BRegion* dirty = fWindow->GetRegion(); + if (dirty) { + dirty->Set(clippedFrame); + fWindow->MarkContentDirtyAsync(*dirty); + fWindow->RecycleRegion(dirty); + } + } } } @@ -286,17 +286,17 @@ ViewLayer::RemoveChild(ViewLayer* layer) if (fWindow) { layer->DetachedFromWindow(); -// if (fVisible && layer->IsVisible()) { -// // trigger redraw -// BRect clippedFrame = layer->Frame(); -// ConvertToVisibleInTopView(&clippedFrame); -// BRegion* dirty = fWindow->GetRegion(); -// if (dirty) { -// dirty->Set(clippedFrame); -// fWindow->MarkContentDirtyAsync(*dirty); -// fWindow->RecycleRegion(dirty); -// } -// } + if (fVisible && layer->IsVisible()) { + // trigger redraw + BRect clippedFrame = layer->Frame(); + ConvertToVisibleInTopView(&clippedFrame); + BRegion* dirty = fWindow->GetRegion(); + if (dirty) { + dirty->Set(clippedFrame); + fWindow->MarkContentDirtyAsync(*dirty); + fWindow->RecycleRegion(dirty); + } + } } return true;