a8c775f23625952540b5349744722bcb9e37de45 RCL_3
authorEckhart Koeppen <eckhart.koppen@nokia.com>
Mon, 19 Apr 2010 10:15:19 +0300
branchRCL_3
changeset 10 b5b118452c7d
parent 9 740e5562c97f
child 11 68d3b337861b
a8c775f23625952540b5349744722bcb9e37de45
VERSION.SHA1
src/3rdparty/webkit/VERSION
src/3rdparty/webkit/WebCore/ChangeLog
src/3rdparty/webkit/WebCore/page/FrameView.cpp
src/3rdparty/webkit/WebCore/page/FrameView.h
src/3rdparty/webkit/WebCore/rendering/RenderWidget.cpp
--- a/VERSION.SHA1	Fri Apr 16 11:39:52 2010 +0300
+++ b/VERSION.SHA1	Mon Apr 19 10:15:19 2010 +0300
@@ -1,1 +1,1 @@
-8b5beb2a553102639e9eb38c8f8f0f6775e8545b
+a8c775f23625952540b5349744722bcb9e37de45
--- a/src/3rdparty/webkit/VERSION	Fri Apr 16 11:39:52 2010 +0300
+++ b/src/3rdparty/webkit/VERSION	Mon Apr 19 10:15:19 2010 +0300
@@ -8,8 +8,5 @@
 
 and has the sha1 checksum
 
-<<<<<<< HEAD
-        e9151b11e974f0aa47fd40c225f88f35ced91496
-=======
         14feb62c96ffe2c37e3e2fdac4e370fdbc76ef62
->>>>>>> 8f75ee7... Updated WebKit from /home/shausman/src/webkit/trunk to qtwebkit/qtwebkit-4.6 ( 14feb62c96ffe2c37e3e2fdac4e370fdbc76ef62 )
+
--- a/src/3rdparty/webkit/WebCore/ChangeLog	Fri Apr 16 11:39:52 2010 +0300
+++ b/src/3rdparty/webkit/WebCore/ChangeLog	Mon Apr 19 10:15:19 2010 +0300
@@ -1,5 +1,20 @@
-<<<<<<< HEAD
-=======
+2009-11-03  Dan Bernstein  <mitz@apple.com>
+
+        Reviewed by Dave Hyatt.
+
+        Allow a frame to go back to copy-on-scroll when it ceases being overlapped
+
+        The code was not testing slow-scrolling frames for overlappedness, thinking the answer
+        would not matter. That is not the case if the only reason for the slow-scrolling is
+        being overlapped.
+
+        * page/FrameView.cpp:
+        (WebCore::FrameView::useSlowRepaintsIfNotOverlapped): Added. Returns whether there is any
+        reason besides being overlapped that the frame would need to fully repaint on scroll.
+        * page/FrameView.h:
+        * rendering/RenderWidget.cpp:
+        (WebCore::RenderWidget::paint): Use useSlowRepaintsIfNotOverlapped().
+
 2010-04-09  David Leong  <david.leong@nokia.com>
 
         Reviewed by Simon Hausmann.
@@ -27,7 +42,6 @@
         * platform/text/StringHash.h:
         (WebCore::StringHash::equal):
 
->>>>>>> 8f75ee7... Updated WebKit from /home/shausman/src/webkit/trunk to qtwebkit/qtwebkit-4.6 ( 14feb62c96ffe2c37e3e2fdac4e370fdbc76ef62 )
 2010-03-25  yael aharon  <yael.aharon@nokia.com>
 
         Reviewed by Laszlo Gombos.
--- a/src/3rdparty/webkit/WebCore/page/FrameView.cpp	Fri Apr 16 11:39:52 2010 +0300
+++ b/src/3rdparty/webkit/WebCore/page/FrameView.cpp	Mon Apr 19 10:15:19 2010 +0300
@@ -739,6 +739,11 @@
     return m_useSlowRepaints || m_slowRepaintObjectCount > 0 || (platformWidget() && m_fixedObjectCount > 0) || m_isOverlapped || !m_contentIsOpaque;
 }
 
+bool FrameView::useSlowRepaintsIfNotOverlapped() const
+{
+    return m_useSlowRepaints || m_slowRepaintObjectCount > 0 || !m_contentIsOpaque;
+}
+
 void FrameView::setUseSlowRepaints()
 {
     m_useSlowRepaints = true;
--- a/src/3rdparty/webkit/WebCore/page/FrameView.h	Fri Apr 16 11:39:52 2010 +0300
+++ b/src/3rdparty/webkit/WebCore/page/FrameView.h	Mon Apr 19 10:15:19 2010 +0300
@@ -212,6 +212,7 @@
 
     friend class RenderWidget;
     bool useSlowRepaints() const;
+    bool useSlowRepaintsIfNotOverlapped() const;
 
     void applyOverflowToViewport(RenderObject*, ScrollbarMode& hMode, ScrollbarMode& vMode);
 
--- a/src/3rdparty/webkit/WebCore/rendering/RenderWidget.cpp	Fri Apr 16 11:39:52 2010 +0300
+++ b/src/3rdparty/webkit/WebCore/rendering/RenderWidget.cpp	Mon Apr 19 10:15:19 2010 +0300
@@ -233,7 +233,7 @@
         else
             m_widget->paint(paintInfo.context, paintInfo.rect);
 
-        if (m_widget->isFrameView() && paintInfo.overlapTestRequests && !static_cast<FrameView*>(m_widget.get())->useSlowRepaints()) {
+        if (m_widget->isFrameView() && paintInfo.overlapTestRequests && !static_cast<FrameView*>(m_widget.get())->useSlowRepaintsIfNotOverlapped()) {
             ASSERT(!paintInfo.overlapTestRequests->contains(this));
             paintInfo.overlapTestRequests->set(this, m_widget->frameRect());
         }