Closed Bug 367930 Opened 18 years ago Closed 18 years ago

Naturally-LTR characters in an RTL override context display LTR

Categories

(Core :: Layout, defect)

x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: roc, Assigned: roc)

References

Details

(Keywords: rtl)

Attachments

(1 file)

Attached 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: 18 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.

Attachment

General

Created:
Updated:
Size: