[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:21:49 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 7291ef12a53de6993a010be0a2392ae43710089b
Author: hyatt <hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Sun Jan 11 19:06:35 2004 +0000
Fix for frame repainting bugs (3510669, 3515442). This is a narrower fix than the previous attempt.
Reviewed by darin
* khtml/rendering/render_frames.cpp:
(RenderPart::updateWidgetPositions):
* khtml/rendering/render_frames.h:
* khtml/rendering/render_replaced.cpp:
(RenderWidget::updateWidgetPositions):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@5887 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index d683945..efb6c95 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,15 @@
+2004-01-11 David Hyatt <hyatt at apple.com>
+
+ Fix for frame repainting bugs (3510669, 3515442). This is a narrower fix than the previous attempt.
+
+ Reviewed by darin
+
+ * khtml/rendering/render_frames.cpp:
+ (RenderPart::updateWidgetPositions):
+ * khtml/rendering/render_frames.h:
+ * khtml/rendering/render_replaced.cpp:
+ (RenderWidget::updateWidgetPositions):
+
2004-01-10 Darin Adler <darin at apple.com>
Reviewed by John.
diff --git a/WebCore/khtml/rendering/render_frames.cpp b/WebCore/khtml/rendering/render_frames.cpp
index 973e0c9..3935dc0 100644
--- a/WebCore/khtml/rendering/render_frames.cpp
+++ b/WebCore/khtml/rendering/render_frames.cpp
@@ -37,6 +37,7 @@
#include "misc/htmltags.h"
#include "khtmlview.h"
#include "khtml_part.h"
+#include "render_arena.h"
#include <kapplication.h>
#include <kcursor.h>
@@ -972,4 +973,34 @@ void RenderPartObject::slotViewCleared()
}
}
+#if APPLE_CHANGES
+// FIXME: This should not be necessary. Remove this once WebKit knows to properly schedule
+// layouts using WebCore when objects resize.
+void RenderPart::updateWidgetPositions()
+{
+ if (!m_widget)
+ return;
+
+ int x, y, width, height;
+ absolutePosition(x,y);
+ x += borderLeft() + paddingLeft();
+ y += borderTop() + paddingTop();
+ width = m_width - borderLeft() - borderRight() - paddingLeft() - paddingRight();
+ height = m_height - borderTop() - borderBottom() - paddingTop() - paddingBottom();
+ QRect newBounds(x,y,width,height);
+ if (newBounds != m_widget->frameGeometry()) {
+ // The widget changed positions. Update the frame geometry.
+ RenderArena *arena = ref();
+ element()->ref();
+ m_widget->setFrameGeometry(newBounds);
+ element()->deref();
+ deref(arena);
+
+ QScrollView *view = static_cast<QScrollView *>(m_widget);
+ if (view && view->inherits("KHTMLView"))
+ static_cast<KHTMLView*>(view)->scheduleRelayout();
+ }
+}
+#endif
+
#include "render_frames.moc"
diff --git a/WebCore/khtml/rendering/render_frames.h b/WebCore/khtml/rendering/render_frames.h
index 4e0067b..4e15eb4 100644
--- a/WebCore/khtml/rendering/render_frames.h
+++ b/WebCore/khtml/rendering/render_frames.h
@@ -99,6 +99,12 @@ public:
virtual void setWidget( QWidget *widget );
+#if APPLE_CHANGES
+ // FIXME: This should not be necessary. Remove this once WebKit knows to properly schedule
+ // layouts using WebCore when objects resize.
+ void updateWidgetPositions();
+#endif
+
/**
* Called by KHTMLPart to notify the frame object that loading the
* part was not successfuly. (called either asyncroniously after a
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list