Lines Matching refs:region

96 				// reset the dirty region, since
100 // blocking on the global region lock to
177 // start from full region (as if the window was fully visible)
179 // clip to region still available on screen
188 WindowLayer::GetFullRegion(BRegion* region) const
191 region->Set(BRect(fFrame.left - 4, fFrame.top - 4,
194 region->Include(BRect(fFrame.left - 4, fFrame.top - 20,
200 WindowLayer::GetBorderRegion(BRegion* region)
218 *region = fBorderRegion;
223 WindowLayer::GetContentRegion(BRegion* region)
229 *region = fContentRegion;
271 // take along the dirty region which have not
304 // put the previous border region into the dirty region as well
392 WindowLayer::ProcessDirtyRegion(BRegion* region)
403 // when the dirty region was empty.
405 // the dirty region in MessageReceived(),
406 // it will make the region empty again,
411 // the region as it likes.
415 fDirtyRegion.Include(region);
424 // region lock, and result in ProcessDirtyRegion()
436 // is sufficient. If there was no dirty region before,
471 WindowLayer::CopyContents(BRegion* region, int32 xOffset, int32 yOffset)
477 BRegion newDirty(*region);
479 // clip the region to the visible contents at the
483 region->IntersectWith(&VisibleContentRegion());
484 if (region->CountRects() > 0) {
485 region->OffsetBy(xOffset, yOffset);
486 region->IntersectWith(&fVisibleContentRegion);
487 if (region->CountRects() > 0) {
488 // if the region still contains any rects
490 region->OffsetBy(-xOffset, -yOffset);
492 newDirty.Exclude(region);
495 fDrawingEngine->CopyRegion(region, xOffset, yOffset);
500 // with the region that we could copy
501 _ShiftPartOfRegion(&fDirtyRegion, region, xOffset, yOffset);
503 _ShiftPartOfRegion(&fCurrentUpdateSession.DirtyRegion(), region, xOffset, yOffset);
505 _ShiftPartOfRegion(&fPendingUpdateSession.DirtyRegion(), region, xOffset, yOffset);
509 // what is left visible from the original region
510 // at the destination after the region which could be
513 // if no region could be copied, but that's alright,
529 WindowLayer::_ShiftPartOfRegion(BRegion* region, BRegion* regionToShift,
534 common.IntersectWith(region);
536 // cut the common part from the region,
538 region->Exclude(&common);
540 region->Include(&common);
599 // enforce the dirty region of the update session
607 // TODO: this is a region that needs to be cached later in the server
609 // in an update (fInUpdate), than we can set this region and remember
649 // enforce the dirty region of the update session
701 // construct the region of the border that needs redrawing
704 // TODO: why is it not enough to only intersect with the dirty region?
705 // is it faster to intersect the dirty region with the visible when it
707 // intersect with our visible region
709 // intersect with the dirty region
831 // will have the dirty region from the update