* implement FillRect() with B_OP_INVERT using hardware acceleration like
FillRegion() is already doing (untested) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22059 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -821,6 +821,16 @@ DrawingEngine::FillRect(BRect r)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (doInSoftware && fAvailableHWAccleration & HW_ACC_INVERT_REGION
|
||||||
|
&& fPainter->Pattern() == B_SOLID_HIGH
|
||||||
|
&& fPainter->DrawingMode() == B_OP_INVERT) {
|
||||||
|
BRegion region(r);
|
||||||
|
region.IntersectWith(fPainter->ClippingRegion());
|
||||||
|
fGraphicsCard->InvertRegion(region);
|
||||||
|
doInSoftware = false;
|
||||||
|
}
|
||||||
|
|
||||||
if (doInSoftware) {
|
if (doInSoftware) {
|
||||||
fPainter->FillRect(r);
|
fPainter->FillRect(r);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user