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

andreas.kling at nokia.com andreas.kling at nokia.com
Wed Dec 22 15:32:46 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 9626de428cbced226a8eb017edbf240c1f93ba3c
Author: andreas.kling at nokia.com <andreas.kling at nokia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Mon Nov 8 02:54:17 2010 +0000

    2010-11-05  Helder Correia  <helder at sencha.com>
    
            Reviewed by Andreas Kling.
    
            [Qt] box-shadow does not blur (is solid) when using border-radius
            https://bugs.webkit.org/show_bug.cgi?id=46327
    
            Implement blurred box-shadow when styling with border-radius.
            This change is related to https://bugs.webkit.org/show_bug.cgi?id=44488
    
            * platform/graphics/qt/GraphicsContextQt.cpp:
            (WebCore::GraphicsContext::fillRoundedRect):
    2010-11-05  Helder Correia  <helder at sencha.com>
    
            Reviewed by Andreas Kling.
    
            [Qt] box-shadow does not blur (is solid) when using border-radius
            https://bugs.webkit.org/show_bug.cgi?id=46327
    
            Implement blurred box-shadow when styling with border-radius.
            This change is related to https://bugs.webkit.org/show_bug.cgi?id=44488
    
            * platform/qt/fast/box-shadow/basic-shadows-expected.checksum:
            * platform/qt/fast/box-shadow/basic-shadows-expected.png:
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@71488 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index bc474c5..9c9fead 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,16 @@
+2010-11-05  Helder Correia  <helder at sencha.com>
+
+        Reviewed by Andreas Kling.
+
+        [Qt] box-shadow does not blur (is solid) when using border-radius
+        https://bugs.webkit.org/show_bug.cgi?id=46327
+
+        Implement blurred box-shadow when styling with border-radius.
+        This change is related to https://bugs.webkit.org/show_bug.cgi?id=44488
+
+        * platform/qt/fast/box-shadow/basic-shadows-expected.checksum:
+        * platform/qt/fast/box-shadow/basic-shadows-expected.png:
+
 2010-11-07  Matthew Delaney  <mdelaney at apple.com>
 
         Reviewed by Andreas Kling.
diff --git a/LayoutTests/platform/qt/fast/box-shadow/basic-shadows-expected.checksum b/LayoutTests/platform/qt/fast/box-shadow/basic-shadows-expected.checksum
index c296e5a..e55a16c 100644
--- a/LayoutTests/platform/qt/fast/box-shadow/basic-shadows-expected.checksum
+++ b/LayoutTests/platform/qt/fast/box-shadow/basic-shadows-expected.checksum
@@ -1 +1 @@
-982e431b3ff5d88bf61cbcf647c40b6d
\ No newline at end of file
+63104688112bbb9e18d96c9e76017a4d  LayoutTests/platform/qt/fast/box-shadow/basic-shadows-expected.png
diff --git a/LayoutTests/platform/qt/fast/box-shadow/basic-shadows-expected.png b/LayoutTests/platform/qt/fast/box-shadow/basic-shadows-expected.png
index 91caa39..1e79f74 100644
Binary files a/LayoutTests/platform/qt/fast/box-shadow/basic-shadows-expected.png and b/LayoutTests/platform/qt/fast/box-shadow/basic-shadows-expected.png differ
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index d242f30..193d545 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,16 @@
+2010-11-05  Helder Correia  <helder at sencha.com>
+
+        Reviewed by Andreas Kling.
+
+        [Qt] box-shadow does not blur (is solid) when using border-radius
+        https://bugs.webkit.org/show_bug.cgi?id=46327
+
+        Implement blurred box-shadow when styling with border-radius.
+        This change is related to https://bugs.webkit.org/show_bug.cgi?id=44488
+
+        * platform/graphics/qt/GraphicsContextQt.cpp:
+        (WebCore::GraphicsContext::fillRoundedRect):
+
 2010-11-07  John Reck  <jreck at google.com>
 
         Reviewed by Steve Block.
diff --git a/WebCore/platform/graphics/qt/GraphicsContextQt.cpp b/WebCore/platform/graphics/qt/GraphicsContextQt.cpp
index 25b3e8d..4f68577 100644
--- a/WebCore/platform/graphics/qt/GraphicsContextQt.cpp
+++ b/WebCore/platform/graphics/qt/GraphicsContextQt.cpp
@@ -735,9 +735,21 @@ void GraphicsContext::fillRoundedRect(const IntRect& rect, const IntSize& topLef
     path.addRoundedRect(rect, topLeft, topRight, bottomLeft, bottomRight);
     QPainter* p = m_data->p();
     if (m_data->hasShadow()) {
-        p->translate(m_data->shadow.offset());
-        p->fillPath(path.platformPath(), QColor(m_data->shadow.m_color));
-        p->translate(-m_data->shadow.offset());
+        ContextShadow* shadow = contextShadow();
+
+        if (shadow->m_type != ContextShadow::BlurShadow) {
+            // We do not need any layer for simple shadow.
+            p->translate(m_data->shadow.offset());
+            p->fillPath(path.platformPath(), QColor(m_data->shadow.m_color));
+            p->translate(-m_data->shadow.offset());
+        } else {
+            QPainter* shadowPainter = shadow->beginShadowLayer(p, rect);
+            if (shadowPainter) {
+                shadowPainter->setCompositionMode(QPainter::CompositionMode_Source);
+                shadowPainter->fillPath(path.platformPath(), QColor(m_data->shadow.m_color));
+                shadow->endShadowLayer(p);
+            }
+        }
     }
     p->fillPath(path.platformPath(), QColor(color));
 }

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list