diff options
author | Allan Sandfeld Jensen <allan.jensen@digia.com> | 2013-05-24 17:34:38 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-05-29 19:31:27 +0200 |
commit | ac00a345b23686aa458539dde0cb3711bed84de3 (patch) | |
tree | 76f643aa001b7f0dfe4966563887fef0df4191fc /Source/JavaScriptCore/API/JavaScript.h | |
parent | 309c7aa0cec41f41355944a977628bf665c6ed01 (diff) | |
download | qtwebkit-ac00a345b23686aa458539dde0cb3711bed84de3.tar.gz |
Font’s fast code path doesn’t handle partial runs correctly when kerning or ligatures are enabled
https://bugs.webkit.org/show_bug.cgi?id=100050
Not reviewed for WebKit.
Always let WidthIterator iterate over an entire TextRun to avoid problems
with pixel rounding or shaping on partial runs.
This fix is necessary for Qt because the complex font-path can not disable
shaping, leading to the complex path painting slighly different from the
fast path, which messes up selection painting.
No change in functionality, no new tests.
* platform/graphics/Font.cpp:
(WebCore::Font::drawText):
(WebCore::Font::drawEmphasisMarks):
(WebCore::Font::selectionRectForText):
(WebCore::Font::offsetForPosition):
* platform/graphics/FontFastPath.cpp:
(WebCore::Font::getGlyphsAndAdvancesForSimpleText):
(WebCore::Font::selectionRectForSimpleText):
(WebCore::Font::offsetForPositionForSimpleText):
* platform/graphics/GlyphBuffer.h:
(WebCore::GlyphBuffer::add):
(GlyphBuffer):
* platform/graphics/WidthIterator.cpp:
(WebCore::WidthIterator::advanceInternal):
* platform/graphics/WidthIterator.h:
(WidthIterator): Removed now unused advanceOneCharacter method.
Change-Id: I3647de93774bf2502ee37c7eb6d623790a691b42
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
Diffstat (limited to 'Source/JavaScriptCore/API/JavaScript.h')
0 files changed, 0 insertions, 0 deletions