app_server: Fix transformed DrawString()...
...when the transformation moves the text into the view bounds. The rect returned from Painter::BoundingBox() is already transformed, as should be expected.
This commit is contained in:
@@ -1374,7 +1374,7 @@ DrawingEngine::DrawString(const char* string, int32 length,
|
|||||||
BRect b = fPainter->BoundingBox(string, length, pt, &penLocation, delta,
|
BRect b = fPainter->BoundingBox(string, length, pt, &penLocation, delta,
|
||||||
&cacheReference);
|
&cacheReference);
|
||||||
// stop here if we're supposed to render outside of the clipping
|
// stop here if we're supposed to render outside of the clipping
|
||||||
b = fPainter->TransformAndClipRect(b);
|
b = fPainter->ClipRect(b);
|
||||||
if (b.IsValid()) {
|
if (b.IsValid()) {
|
||||||
//printf("bounding box '%s': %lld µs\n", string, system_time() - now);
|
//printf("bounding box '%s': %lld µs\n", string, system_time() - now);
|
||||||
AutoFloatingOverlaysHider _(fGraphicsCard, b);
|
AutoFloatingOverlaysHider _(fGraphicsCard, b);
|
||||||
@@ -1405,7 +1405,7 @@ DrawingEngine::DrawString(const char* string, int32 length,
|
|||||||
BRect b = fPainter->BoundingBox(string, length, offsets, &penLocation,
|
BRect b = fPainter->BoundingBox(string, length, offsets, &penLocation,
|
||||||
&cacheReference);
|
&cacheReference);
|
||||||
// stop here if we're supposed to render outside of the clipping
|
// stop here if we're supposed to render outside of the clipping
|
||||||
b = fPainter->TransformAndClipRect(b);
|
b = fPainter->ClipRect(b);
|
||||||
if (b.IsValid()) {
|
if (b.IsValid()) {
|
||||||
//printf("bounding box '%s': %lld µs\n", string, system_time() - now);
|
//printf("bounding box '%s': %lld µs\n", string, system_time() - now);
|
||||||
AutoFloatingOverlaysHider _(fGraphicsCard, b);
|
AutoFloatingOverlaysHider _(fGraphicsCard, b);
|
||||||
|
|||||||
Reference in New Issue
Block a user