[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
hyatt
hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 08:17:23 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 6f3afc3a187fab0a7449073f3e8b6ac301abccf2
Author: hyatt <hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed Dec 10 00:29:03 2003 +0000
Fix for mojibake bg painting problem on bofa.com. The bug # is 3487144. Transparent colors were not
being handled properly when specified on the body.
Reviewed by darin
* khtml/rendering/render_box.cpp:
(RenderBox::paintRootBoxDecorations):
(RenderBox::paintBackgroundExtended):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@5735 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index a6f61dc..b1b42d5 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,14 @@
+2003-12-09 David Hyatt <hyatt at apple.com>
+
+ Fix for mojibake bg painting problem on bofa.com. The bug # is 3487144. Transparent colors were not
+ being handled properly when specified on the body.
+
+ Reviewed by darin
+
+ * khtml/rendering/render_box.cpp:
+ (RenderBox::paintRootBoxDecorations):
+ (RenderBox::paintBackgroundExtended):
+
2003-12-09 Darin Adler <darin at apple.com>
Reviewed by Dave.
diff --git a/WebCore/khtml/rendering/render_box.cpp b/WebCore/khtml/rendering/render_box.cpp
index 2bbb8ae..1332b5c 100644
--- a/WebCore/khtml/rendering/render_box.cpp
+++ b/WebCore/khtml/rendering/render_box.cpp
@@ -218,7 +218,7 @@ void RenderBox::paintRootBoxDecorations(QPainter *p,int, int _y,
// Only fill with a base color (e.g., white) if we're the root document, since iframes/frames with
// no background in the child document should show the parent's background.
- if (!c.isValid() && canvas()->view()) {
+ if ((!c.isValid() || qAlpha(c.rgb()) == 0) && canvas()->view()) {
DOM::NodeImpl* elt = element()->getDocument()->ownerElement();
if (canBeTransparent && elt && elt->id() != ID_FRAME) // Frames are never transparent.
canvas()->view()->useSlowRepaints(); // The parent must show behind the child.
@@ -300,8 +300,14 @@ void RenderBox::paintBackgroundExtended(QPainter *p, const QColor &c, CachedImag
int _tx, int _ty, int w, int h,
int bleft, int bright)
{
- if (c.isValid() && qAlpha(c.rgb()) > 0)
+ if (c.isValid() && qAlpha(c.rgb()) > 0) {
+ // If we have an alpha and we are painting the root element, go ahead and blend with our default
+ // background color (typically white).
+ if (qAlpha(c.rgb()) < 0xFF && isRoot())
+ p->fillRect(_tx, clipy, w, cliph, canvas()->view()->palette().active().color(QColorGroup::Base));
p->fillRect(_tx, clipy, w, cliph, c);
+ }
+
// no progressive loading of the background image
if(bg && bg->pixmap_size() == bg->valid_rect().size() && !bg->isTransparent() && !bg->isErrorImage()) {
//kdDebug( 6040 ) << "painting bgimage at " << _tx << "/" << _ty << endl;
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list