2011-02-02 Evan Martin <evan@chromium.org>
authorevan@chromium.org <evan@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 3 Feb 2011 17:49:44 +0000 (17:49 +0000)
committerevan@chromium.org <evan@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 3 Feb 2011 17:49:44 +0000 (17:49 +0000)
commitb84c4f0c8803e3e93dde9cbfd2a38130ab1b6866
tree944cacc7a8b9172cb5e3701a201f4c34e743380f
parent8e0f88b74bb5704c6b006d47ecb17f9a9e18740a
2011-02-02  Evan Martin  <evan@chromium.org>

        Reviewed by Tony Chang.

        [chromium] complex joining characters positioned in wrong place
        https://bugs.webkit.org/show_bug.cgi?id=53637

        Add a test that includes some characters that exhibited the problem.
        Unfortunately it's purely a rendering issue, so it is a pixel test.

        * platform/chromium-linux/fast/text/international/complex-joining-using-gpos-expected.checksum: Added.
        * platform/chromium-linux/fast/text/international/complex-joining-using-gpos-expected.png: Added.
        * platform/chromium-linux/fast/text/international/complex-joining-using-gpos-expected.txt: Added.
        * platform/chromium-linux/fast/text/international/complex-joining-using-gpos.html: Added.
2011-02-02  Evan Martin  <evan@chromium.org>

        Reviewed by Tony Chang.

        [chromium] complex joining characters positioned in wrong place
        https://bugs.webkit.org/show_bug.cgi?id=53637

        Provide the correct font metrics to Harfbuzz related to the font design space.
        There are used in some fonts for GPOS positioning.

        Test: platform/chromium-linux/fast/text/international/complex-joining-using-gpos.html

        * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
        (WebCore::ComplexTextController::setupFontForScriptRun):
        (WebCore::ComplexTextController::allocHarfbuzzFont):
        * platform/graphics/chromium/FontPlatformDataLinux.cpp:
        (WebCore::FontPlatformData::FontPlatformData):
        (WebCore::FontPlatformData::emSizeInFontUnits):
        (WebCore::FontPlatformData::operator=):
        * platform/graphics/chromium/FontPlatformDataLinux.h:
        (WebCore::FontPlatformData::FontPlatformData):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@77504 268f45cc-cd09-0410-ab3c-d52691b4dbfc
LayoutTests/ChangeLog
LayoutTests/platform/chromium-linux/fast/text/international/complex-joining-using-gpos-expected.checksum [new file with mode: 0644]
LayoutTests/platform/chromium-linux/fast/text/international/complex-joining-using-gpos-expected.png [new file with mode: 0644]
LayoutTests/platform/chromium-linux/fast/text/international/complex-joining-using-gpos-expected.txt [new file with mode: 0644]
LayoutTests/platform/chromium-linux/fast/text/international/complex-joining-using-gpos.html [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/platform/graphics/chromium/ComplexTextControllerLinux.cpp
Source/WebCore/platform/graphics/chromium/FontPlatformDataLinux.cpp
Source/WebCore/platform/graphics/chromium/FontPlatformDataLinux.h