[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