[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 07:45:04 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit ad7516af27a4846609da316ba4fcec83417b12b4
Author: hyatt <hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed Jun 11 22:57:41 2003 +0000
Fix for 3288875, :after/:before content not getting destroyed
after printing on alistapart.com. Make the update method for
pseudos smart enough to destroy generated content when it is
no longer needed.
Reviewed by darin
* khtml/rendering/render_block.cpp:
(RenderBlock::setStyle);
* khtml/rendering/render_container.cpp:
(RenderContainer::updatePseudoChild):
* khtml/rendering/render_container.h:
* khtml/rendering/render_inline.cpp:
(RenderInline::setStyle):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@4525 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog-2003-10-25 b/WebCore/ChangeLog-2003-10-25
index edb1b0f..bbe1067 100644
--- a/WebCore/ChangeLog-2003-10-25
+++ b/WebCore/ChangeLog-2003-10-25
@@ -1,5 +1,22 @@
2003-06-11 David Hyatt <hyatt at apple.com>
+ Fix for 3288875, :after/:before content not getting destroyed
+ after printing on alistapart.com. Make the update method for
+ pseudos smart enough to destroy generated content when it is
+ no longer needed.
+
+ Reviewed by darin
+
+ * khtml/rendering/render_block.cpp:
+ (RenderBlock::setStyle);
+ * khtml/rendering/render_container.cpp:
+ (RenderContainer::updatePseudoChild):
+ * khtml/rendering/render_container.h:
+ * khtml/rendering/render_inline.cpp:
+ (RenderInline::setStyle):
+
+2003-06-11 David Hyatt <hyatt at apple.com>
+
Fix for 3288035, the wrong value was being filled in for
textfields. Fixed a bug in QString's assignment operator
that made empty strings become null strings upon assignment.
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index edb1b0f..bbe1067 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,5 +1,22 @@
2003-06-11 David Hyatt <hyatt at apple.com>
+ Fix for 3288875, :after/:before content not getting destroyed
+ after printing on alistapart.com. Make the update method for
+ pseudos smart enough to destroy generated content when it is
+ no longer needed.
+
+ Reviewed by darin
+
+ * khtml/rendering/render_block.cpp:
+ (RenderBlock::setStyle);
+ * khtml/rendering/render_container.cpp:
+ (RenderContainer::updatePseudoChild):
+ * khtml/rendering/render_container.h:
+ * khtml/rendering/render_inline.cpp:
+ (RenderInline::setStyle):
+
+2003-06-11 David Hyatt <hyatt at apple.com>
+
Fix for 3288035, the wrong value was being filled in for
textfields. Fixed a bug in QString's assignment operator
that made empty strings become null strings upon assignment.
diff --git a/WebCore/khtml/rendering/render_block.cpp b/WebCore/khtml/rendering/render_block.cpp
index 1e67edb..697f3cb 100644
--- a/WebCore/khtml/rendering/render_block.cpp
+++ b/WebCore/khtml/rendering/render_block.cpp
@@ -90,8 +90,8 @@ void RenderBlock::setStyle(RenderStyle* _style)
}
// Update pseudos for :before and :after now.
- insertPseudoChild(RenderStyle::BEFORE, firstChild());
- insertPseudoChild(RenderStyle::AFTER, lastChild());
+ updatePseudoChild(RenderStyle::BEFORE, firstChild());
+ updatePseudoChild(RenderStyle::AFTER, lastChild());
}
void RenderBlock::addChildToFlow(RenderObject* newChild, RenderObject* beforeChild)
diff --git a/WebCore/khtml/rendering/render_container.cpp b/WebCore/khtml/rendering/render_container.cpp
index 3aa5012..97dda9e 100644
--- a/WebCore/khtml/rendering/render_container.cpp
+++ b/WebCore/khtml/rendering/render_container.cpp
@@ -201,18 +201,21 @@ void RenderContainer::removeChild(RenderObject *oldChild)
setNeedsLayout(true);
}
-void RenderContainer::insertPseudoChild(RenderStyle::PseudoId type, RenderObject* child)
+void RenderContainer::updatePseudoChild(RenderStyle::PseudoId type, RenderObject* child)
{
- // FIXME: This method should really be renamed to "updatePseudoChild" and be capable of
- // detecting that before/after children need to be deleted as well.
-
- if (child && child->style()->styleType() == type)
- return; // Generated content is already added. No need to add more.
-
RenderStyle* pseudo = style()->getPseudoStyle(type);
- if (!pseudo || pseudo->display() == NONE)
+ if (!pseudo || pseudo->display() == NONE) {
+ if (child && child->style()->styleType() == type)
+ // The child needs to be removed.
+ removeChild(child);
return; // If we have no pseudo-style or if the pseudo's display type is NONE, then we
// have no generated content.
+ }
+
+ // FIXME: need to detect when :before/:after content has changed, in addition
+ // to detecting addition/removal.
+ if (child && child->style()->styleType() == type)
+ return; // Generated content is already added. No need to add more.
RenderObject* insertBefore = (type == RenderStyle::BEFORE) ? child : 0;
diff --git a/WebCore/khtml/rendering/render_container.h b/WebCore/khtml/rendering/render_container.h
index f587302..e4bd1a9 100644
--- a/WebCore/khtml/rendering/render_container.h
+++ b/WebCore/khtml/rendering/render_container.h
@@ -62,7 +62,7 @@ private:
protected:
- void insertPseudoChild(RenderStyle::PseudoId type, RenderObject* child);
+ void updatePseudoChild(RenderStyle::PseudoId type, RenderObject* child);
RenderObject *m_first;
RenderObject *m_last;
diff --git a/WebCore/khtml/rendering/render_inline.cpp b/WebCore/khtml/rendering/render_inline.cpp
index 1dbdb3f..33770aa 100644
--- a/WebCore/khtml/rendering/render_inline.cpp
+++ b/WebCore/khtml/rendering/render_inline.cpp
@@ -60,8 +60,8 @@ void RenderInline::setStyle(RenderStyle* _style)
}
// Update pseudos for :before and :after now.
- insertPseudoChild(RenderStyle::BEFORE, firstChild());
- insertPseudoChild(RenderStyle::AFTER, lastChild());
+ updatePseudoChild(RenderStyle::BEFORE, firstChild());
+ updatePseudoChild(RenderStyle::AFTER, lastChild());
}
void RenderInline::addChildToFlow(RenderObject* newChild, RenderObject* beforeChild)
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list