bugzilla.mozilla.org has resumed normal operation. Attachments prior to 2014 will be unavailable for a few days. This is tracked in Bug 1475801.
Please report any other irregularities here.

Fix a couple of ATSUI issues

RESOLVED FIXED

Status

()

Core
Graphics
RESOLVED FIXED
12 years ago
12 years ago

People

(Reporter: roc, Assigned: roc)

Tracking

Trunk
All
Mac OS X
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment, 1 obsolete attachment)

Created attachment 259888 [details] [diff] [review]
fix

1) SetupClusterBoundaries is totally broken. It needs to set kUCTextBreakLeadingEdgeMask for the calls to UCFindTextBreak and it needs to not just ignore the first break found. (This only affects new textframe.)

2) See
http://weblogs.mozillazine.org/roc/archives/2007/02/superlaser_targ.html#comments
The issues I saw with trailing whitespace are apparently "as intended". Instead of messing around with the output as I did, a slightly simpler workaround is to append a non-whitespace character, say ".", to the text when we wrap it in LRO/RLO + PDF. Then there is no trailing whitespace. It's easy to ignore that character's glyph in PostLayoutCallback.

While making this change I also changed the string length passed into InitTextRun and MakeTextRunInternal to include any wrapping characters. This is better than before, when I left it as the length of the original string, even though aString pointed to the wrapped string not the original string.

I reran font selection and other tests and things look good.
Attachment #259888 - Flags: review?(vladimir)
Created attachment 259890 [details] [diff] [review]
real patch

The last patch omitted the .h changes.
Attachment #259888 - Attachment is obsolete: true
Attachment #259890 - Flags: review?(vladimir)
Attachment #259888 - Flags: review?(vladimir)
checked in.
Status: NEW → RESOLVED
Last Resolved: 12 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.