Naturally-LTR characters in an RTL override context display LTR

RESOLVED FIXED

Status

()

defect
RESOLVED FIXED
13 years ago
12 years ago

People

(Reporter: roc, Assigned: roc)

Tracking

({rtl})

Trunk
x86
Linux
Points:
---
Dependency tree / graph
Bug Flags:
in-testsuite ?

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

Posted patch fixSplinter Review
See http://dbaron.org/css/test/bidi2. We currently fail this test with the new gfxPangoTextRun because nsBidiPresUtils is reordering the text. It no longer needs to because gfxPangoTextRun (and eventually the other new text runs) promises to render RTL no matter what the characters are; no layout-level reordering is ever needed.

The attached patch fixes the issue. I'm adding a new hint so we can alter layout-level behaviour when the new text runs are available. This is of course an interim fix until we're using new text runs everywhere, then this code can be removed/simplified.
Attachment #252508 - Flags: superreview?(dbaron)
Attachment #252508 - Flags: review?(smontagu)
The patch also switches nsLayoutUtils::GetStringWidth to use the runtime hint instead of an #ifdef. This will be more maintainable...
Attachment #252508 - Flags: review?(smontagu) → review+
Comment on attachment 252508 [details] [diff] [review]
fix

sr=dbaron.  Could you add an "XXX TEMPORARY" or something of that sort to the comment in nsIRenderingContext.h ?

A diff -b would have been nice.  I recommend doing that to double-check things before you check in.
Attachment #252508 - Flags: superreview?(dbaron) → superreview+
Checked in
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
Flags: in-testsuite?
Mass-assigning the new rtl keyword to RTL-related (see bug 349193).
Keywords: rtl
You need to log in before you can comment on or make changes to this bug.