* fixed usage of hardware accelerated inverting, of course we shouldn't do it again in software after we have done it in hardware...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21921 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -860,14 +860,17 @@ DrawingEngine::FillRegion(BRegion& r)
|
|||||||
fSuspendSyncLevel == 0
|
fSuspendSyncLevel == 0
|
||||||
|| cursorTouched);
|
|| cursorTouched);
|
||||||
doInSoftware = false;
|
doInSoftware = false;
|
||||||
} else if (fAvailableHWAccleration & HW_ACC_INVERT_REGION
|
|
||||||
&& fPainter->Pattern() == B_SOLID_HIGH
|
|
||||||
&& fPainter->DrawingMode() == B_OP_INVERT) {
|
|
||||||
r.IntersectWith(fPainter->ClippingRegion());
|
|
||||||
fGraphicsCard->InvertRegion(r);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (doInSoftware && fAvailableHWAccleration & HW_ACC_INVERT_REGION
|
||||||
|
&& fPainter->Pattern() == B_SOLID_HIGH
|
||||||
|
&& fPainter->DrawingMode() == B_OP_INVERT) {
|
||||||
|
r.IntersectWith(fPainter->ClippingRegion());
|
||||||
|
fGraphicsCard->InvertRegion(r);
|
||||||
|
doInSoftware = false;
|
||||||
|
}
|
||||||
|
|
||||||
if (doInSoftware) {
|
if (doInSoftware) {
|
||||||
|
|
||||||
BRect touched = fPainter->FillRect(r.RectAt(0));
|
BRect touched = fPainter->FillRect(r.RectAt(0));
|
||||||
|
|||||||
Reference in New Issue
Block a user