[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

jamesr at google.com jamesr at google.com
Wed Dec 22 13:00:56 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit eb0b4cd724641bba052c61a85d76b6d026d5b863
Author: jamesr at google.com <jamesr at google.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Sat Sep 4 02:31:10 2010 +0000

    2010-09-03  James Robinson  <jamesr at chromium.org>
    
            Reviewed by Kenneth Russell.
    
            [chromium] Text sometimes fails to display in accelerated 2d canvases
            https://bugs.webkit.org/show_bug.cgi?id=45223
    
            Calls PlatformContextSkia::prepareForSoftwareDraw() before drawing glyphs
            using skia to ensure that the backing store state is consistent.
    
            * platform/graphics/chromium/FontChromiumWin.cpp:
            (WebCore::Font::drawGlyphs):
            * platform/graphics/chromium/FontLinux.cpp:
            (WebCore::Font::drawGlyphs):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@66787 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 3dfd6fe..de7c54b 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,18 @@
+2010-09-03  James Robinson  <jamesr at chromium.org>
+
+        Reviewed by Kenneth Russell.
+
+        [chromium] Text sometimes fails to display in accelerated 2d canvases
+        https://bugs.webkit.org/show_bug.cgi?id=45223
+
+        Calls PlatformContextSkia::prepareForSoftwareDraw() before drawing glyphs
+        using skia to ensure that the backing store state is consistent.
+
+        * platform/graphics/chromium/FontChromiumWin.cpp:
+        (WebCore::Font::drawGlyphs):
+        * platform/graphics/chromium/FontLinux.cpp:
+        (WebCore::Font::drawGlyphs):
+
 2010-09-03  Kenneth Russell  <kbr at google.com>
 
         Reviewed by Darin Fisher.
diff --git a/WebCore/platform/graphics/chromium/FontChromiumWin.cpp b/WebCore/platform/graphics/chromium/FontChromiumWin.cpp
index 78b7517..a0060f9 100644
--- a/WebCore/platform/graphics/chromium/FontChromiumWin.cpp
+++ b/WebCore/platform/graphics/chromium/FontChromiumWin.cpp
@@ -372,6 +372,8 @@ void Font::drawGlyphs(GraphicsContext* graphicsContext,
                       int numGlyphs,
                       const FloatPoint& point) const
 {
+    gc->platformContext()->prepareForSoftwareDraw();
+
     SkColor color = graphicsContext->platformContext()->effectiveFillColor();
     unsigned char alpha = SkColorGetA(color);
     // Skip 100% transparent text; no need to draw anything.
diff --git a/WebCore/platform/graphics/chromium/FontLinux.cpp b/WebCore/platform/graphics/chromium/FontLinux.cpp
index e1c86a2..2520c30 100644
--- a/WebCore/platform/graphics/chromium/FontLinux.cpp
+++ b/WebCore/platform/graphics/chromium/FontLinux.cpp
@@ -100,6 +100,8 @@ void Font::drawGlyphs(GraphicsContext* gc, const SimpleFontData* font,
         y += SkFloatToScalar(adv[i].height());
     }
 
+    gc->platformContext()->prepareForSoftwareDraw();
+
     SkCanvas* canvas = gc->platformContext()->canvas();
     int textMode = gc->platformContext()->getTextDrawingMode();
     bool haveMultipleLayers = isCanvasMultiLayered(canvas);

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list