Unreviewed, rolling out r106109.
authorossy@webkit.org <ossy@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 29 Jan 2012 23:23:17 +0000 (23:23 +0000)
committerossy@webkit.org <ossy@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 29 Jan 2012 23:23:17 +0000 (23:23 +0000)
http://trac.webkit.org/changeset/106109
https://bugs.webkit.org/show_bug.cgi?id=77302

It made tests crash (Requested by Ossy_weekend on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-01-29

Source/WebCore:

* platform/graphics/qt/TextureMapperQt.cpp:
(WebCore::TextureMapperQt::setGraphicsContext):
* platform/graphics/qt/TextureMapperQt.h:
(WebCore::TextureMapperQt::initialize):

Source/WebKit2:

* UIProcess/API/qt/qquickwebpage.cpp:
* UIProcess/API/qt/qquickwebpage_p_p.h:
(QQuickWebPagePrivate):
* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::QQuickWebViewPrivate):
* UIProcess/API/qt/qquickwebview_p.h:
* UIProcess/API/qt/qquickwebview_p_p.h:
(QQuickWebViewPrivate):
* UIProcess/DrawingAreaProxy.h:
* UIProcess/DrawingAreaProxyImpl.cpp:
* UIProcess/DrawingAreaProxyImpl.h:
(DrawingAreaProxyImpl):
* UIProcess/LayerTreeHostProxy.h:
(LayerTreeHostProxy):
* UIProcess/qt/LayerTreeHostProxyQt.cpp:
(WebKit::LayerTreeHostProxy::paintToCurrentGLContext):
* UIProcess/qt/QtPageClient.cpp:
(QtPageClient::setViewNeedsDisplay):

Tools:

* WebKitTestRunner/qt/PlatformWebViewQt.cpp:
(WTR::WrapperWindow::WrapperWindow):
(WTR::PlatformWebView::PlatformWebView):

LayoutTests:

* platform/qt-wk2/Skipped:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@106199 268f45cc-cd09-0410-ab3c-d52691b4dbfc

19 files changed:
LayoutTests/ChangeLog
LayoutTests/platform/qt-wk2/Skipped
Source/WebCore/ChangeLog
Source/WebCore/platform/graphics/qt/TextureMapperQt.cpp
Source/WebCore/platform/graphics/qt/TextureMapperQt.h
Source/WebKit2/ChangeLog
Source/WebKit2/UIProcess/API/qt/qquickwebpage.cpp
Source/WebKit2/UIProcess/API/qt/qquickwebpage_p_p.h
Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp
Source/WebKit2/UIProcess/API/qt/qquickwebview_p.h
Source/WebKit2/UIProcess/API/qt/qquickwebview_p_p.h
Source/WebKit2/UIProcess/DrawingAreaProxy.h
Source/WebKit2/UIProcess/DrawingAreaProxyImpl.cpp
Source/WebKit2/UIProcess/DrawingAreaProxyImpl.h
Source/WebKit2/UIProcess/LayerTreeHostProxy.h
Source/WebKit2/UIProcess/qt/LayerTreeHostProxyQt.cpp
Source/WebKit2/UIProcess/qt/QtPageClient.cpp
Tools/ChangeLog
Tools/WebKitTestRunner/qt/PlatformWebViewQt.cpp

index f84340c..7f319ae 100644 (file)
@@ -1,3 +1,13 @@
+2012-01-29  Sheriff Bot  <webkit.review.bot@gmail.com>
+
+        Unreviewed, rolling out r106109.
+        http://trac.webkit.org/changeset/106109
+        https://bugs.webkit.org/show_bug.cgi?id=77302
+
+        It made tests crash (Requested by Ossy_weekend on #webkit).
+
+        * platform/qt-wk2/Skipped:
+
 2012-01-28  Gavin Barraclough  <barraclough@apple.com>
 
         Reserve 'let'
index 45756de..b785630 100644 (file)
@@ -439,6 +439,58 @@ tables/mozilla_expected_failures/marvin/backgr_border-table-row-group.html
 tables/mozilla_expected_failures/marvin/backgr_layers-show.html
 tables/mozilla_expected_failures/marvin/backgr_position-table-column.html
 
+# [Qt][WK2] REGRESSION(r105517): It made 49 tests timeout
+# https://bugs.webkit.org/show_bug.cgi?id=76708
+animations/3d/change-transform-in-end-event.html
+animations/3d/replace-filling-transform.html
+animations/3d/state-at-end-event-transform.html
+animations/3d/transform-perspective.html
+animations/additive-transform-animations.html
+animations/animation-direction-normal.html
+animations/animation-end-event-destroy-renderer.html
+animations/animation-hit-test-transform.html
+animations/animation-iteration-event-destroy-renderer.html
+animations/animation-matrix-negative-scale-unmatrix.html
+animations/animation-start-event-destroy-renderer.html
+animations/big-rotation.html
+animations/combo-transform-rotate+scale.html
+animations/combo-transform-translate+scale.html
+animations/dynamic-stylesheet-loading.html
+animations/fill-mode-transform.html
+animations/keyframe-timing-functions-transform.html
+animations/matrix-anim.html
+animations/missing-from-to-transforms.html
+animations/missing-keyframe-properties-repeating.html
+animations/missing-keyframe-properties-timing-function.html
+animations/missing-keyframe-properties.html
+animations/missing-values-first-keyframe.html
+animations/missing-values-last-keyframe.html
+animations/negative-delay.html
+animations/opacity-transform-animation.html
+animations/pause-crash.html
+animations/play-state-paused.html
+animations/play-state-suspend.html
+animations/simultaneous-start-transform.html
+animations/stop-animation-on-suspend.html
+animations/suspend-resume-animation.html
+animations/suspend-transform-animation.html
+animations/transition-and-animation-1.html
+animations/transition-and-animation-2.html
+fast/css/getComputedStyle/getComputedStyle-with-pseudo-element.html
+tables/mozilla/marvin/backgr_simple-table-cell.html
+transitions/3d/interrupted-transition.html
+transitions/cancel-transition.html
+transitions/extra-transition.html
+transitions/interrupt-transform-transition.html
+transitions/interrupted-accelerated-transition.html
+transitions/move-after-transition.html
+transitions/start-transform-transition.html
+transitions/transition-end-event-destroy-iframe.html
+transitions/transition-end-event-destroy-renderer.html
+transitions/transition-end-event-multiple-04.html
+transitions/transition-end-event-rendering.html
+transitions/transition-end-event-transform.html
+
 # [Qt][WK2] http/tests/history/replacestate-post-to-get-2.html fails with timeout
 # https://bugs.webkit.org/show_bug.cgi?id=76784
 http/tests/history/replacestate-post-to-get-2.html
index 85f2513..f26e65e 100644 (file)
@@ -1,3 +1,16 @@
+2012-01-29  Sheriff Bot  <webkit.review.bot@gmail.com>
+
+        Unreviewed, rolling out r106109.
+        http://trac.webkit.org/changeset/106109
+        https://bugs.webkit.org/show_bug.cgi?id=77302
+
+        It made tests crash (Requested by Ossy_weekend on #webkit).
+
+        * platform/graphics/qt/TextureMapperQt.cpp:
+        (WebCore::TextureMapperQt::setGraphicsContext):
+        * platform/graphics/qt/TextureMapperQt.h:
+        (WebCore::TextureMapperQt::initialize):
+
 2012-01-28  Alexander Færøy  <ahf@0x90.dk>
 
         [Qt] Remove references to CSSBorderImageValue.h in Target.pri
index 44641ce..98cc827 100644 (file)
@@ -141,7 +141,7 @@ TextureMapperQt::TextureMapperQt()
 void TextureMapperQt::setGraphicsContext(GraphicsContext* context)
 {
     m_context = context;
-    m_painter = context ? context->platformContext() : 0;
+    m_painter = context->platformContext();
     initialize(m_painter);
 }
 
index 08fee03..de57197 100644 (file)
@@ -70,8 +70,7 @@ public:
 
     static void initialize(QPainter* painter)
     {
-        if (painter)
-            painter->setRenderHints(QPainter::Antialiasing | QPainter::SmoothPixmapTransform, false);
+        painter->setRenderHints(QPainter::Antialiasing | QPainter::SmoothPixmapTransform, false);
     }
 
     static PassOwnPtr<TextureMapper> create() { return adoptPtr(new TextureMapperQt); }
index cb88ebf..e7a322d 100644 (file)
@@ -1,3 +1,30 @@
+2012-01-29  Sheriff Bot  <webkit.review.bot@gmail.com>
+
+        Unreviewed, rolling out r106109.
+        http://trac.webkit.org/changeset/106109
+        https://bugs.webkit.org/show_bug.cgi?id=77302
+
+        It made tests crash (Requested by Ossy_weekend on #webkit).
+
+        * UIProcess/API/qt/qquickwebpage.cpp:
+        * UIProcess/API/qt/qquickwebpage_p_p.h:
+        (QQuickWebPagePrivate):
+        * UIProcess/API/qt/qquickwebview.cpp:
+        (QQuickWebViewPrivate::QQuickWebViewPrivate):
+        * UIProcess/API/qt/qquickwebview_p.h:
+        * UIProcess/API/qt/qquickwebview_p_p.h:
+        (QQuickWebViewPrivate):
+        * UIProcess/DrawingAreaProxy.h:
+        * UIProcess/DrawingAreaProxyImpl.cpp:
+        * UIProcess/DrawingAreaProxyImpl.h:
+        (DrawingAreaProxyImpl):
+        * UIProcess/LayerTreeHostProxy.h:
+        (LayerTreeHostProxy):
+        * UIProcess/qt/LayerTreeHostProxyQt.cpp:
+        (WebKit::LayerTreeHostProxy::paintToCurrentGLContext):
+        * UIProcess/qt/QtPageClient.cpp:
+        (QtPageClient::setViewNeedsDisplay):
+
 2012-01-27  Fady Samuel  <fsamuel@chromium.org>
 
         Rename shouldLayoutFixedElementsRelativeToFrame and make it a setting
index 6976f87..a8c1718 100644 (file)
@@ -100,12 +100,6 @@ void QQuickWebPagePrivate::setDrawingAreaSize(const QSize& size)
     drawingArea->setSize(WebCore::IntSize(size), WebCore::IntSize());
 }
 
-void QQuickWebPagePrivate::paint(QPainter* painter)
-{
-    if (webPageProxy->drawingArea())
-        webPageProxy->drawingArea()->paintLayerTree(painter);
-}
-
 void QQuickWebPagePrivate::paintToCurrentGLContext()
 {
     if (!q->isVisible())
index 0c17aa5..99cb2c2 100644 (file)
@@ -43,7 +43,6 @@ public:
     void updateSize();
 
     void paintToCurrentGLContext();
-    void paint(QPainter*);
     void resetPaintNode();
 
     QScopedPointer<QtWebPageEventHandler> eventHandler;
index 25fc7d9..618841c 100644 (file)
@@ -67,7 +67,6 @@ QQuickWebViewPrivate::QQuickWebViewPrivate(QQuickWebView* viewport)
     , isTransitioningToNewPage(false)
     , pageIsSuspended(false)
     , m_navigatorQtObjectEnabled(false)
-    , m_renderToOffscreenBuffer(false)
 {
     viewport->setFlags(QQuickItem::ItemClipsChildrenToShape);
     QObject::connect(viewport, SIGNAL(visibleChanged()), viewport, SLOT(_q_onVisibleChanged()));
@@ -155,20 +154,6 @@ void QQuickWebViewPrivate::initializeTouch(QQuickWebView* viewport)
     updateTouchViewportSize();
 }
 
-void QQuickWebViewPrivate::setNeedsDisplay()
-{
-    Q_Q(QQuickWebView);
-    if (renderToOffscreenBuffer()) {
-        // TODO: we can maintain a real image here and use it for pixel tests. Right now this is used only for running the rendering code-path while running tests.
-        QImage dummyImage(1, 1, QImage::Format_ARGB32);
-        QPainter painter(&dummyImage);
-        q->page()->d->paint(&painter);
-        return;
-    }
-
-    q->page()->update();
-}
-
 void QQuickWebViewPrivate::loadDidCommit()
 {
     // Due to entering provisional load before committing, we
@@ -674,18 +659,6 @@ void QQuickWebViewExperimental::setUseTraditionalDesktopBehaviour(bool enable)
     d->setUseTraditionalDesktopBehaviour(enable);
 }
 
-void QQuickWebViewExperimental::setRenderToOffscreenBuffer(bool enable)
-{
-    Q_D(QQuickWebView);
-    d->setRenderToOffscreenBuffer(enable);
-}
-
-bool QQuickWebViewExperimental::renderToOffscreenBuffer() const
-{
-    Q_D(const QQuickWebView);
-    return d->renderToOffscreenBuffer();
-}
-
 void QQuickWebViewExperimental::postMessage(const QString& message)
 {
     Q_D(QQuickWebView);
index d5a4fa1..3c70179 100644 (file)
@@ -237,12 +237,11 @@ public:
     void setCertificateVerificationDialog(QDeclarativeComponent*);
     QDeclarativeComponent* itemSelector() const;
     void setItemSelector(QDeclarativeComponent*);
-    bool useTraditionalDesktopBehaviour() const;
-    void setUseTraditionalDesktopBehaviour(bool enable);
-
+    
     QWebViewportInfo* viewportInfo();
 
     QWebPreferences* preferences() const;
+    bool useTraditionalDesktopBehaviour() const;
     QWebNavigationHistory* navigationHistory() const;
     QQuickWebPage* page();
 
@@ -254,11 +253,8 @@ public:
     void invokeApplicationSchemeHandler(WTF::PassRefPtr<WebKit::QtRefCountedNetworkRequestData>);
     void sendApplicationSchemeReply(QQuickNetworkReply*);
 
-    // C++ only
-    bool renderToOffscreenBuffer() const;
-    void setRenderToOffscreenBuffer(bool enable);
-
 public Q_SLOTS:
+    void setUseTraditionalDesktopBehaviour(bool enable);
     void goBackTo(int index);
     void goForwardTo(int index);
     void postMessage(const QString&);
index 9f28170..dc82301 100644 (file)
@@ -77,8 +77,6 @@ public:
     void didChangeViewportProperties(const WebCore::ViewportArguments& args);
     void didChangeBackForwardList();
 
-    void setNeedsDisplay();
-
     void updateDesktopViewportSize();
     void updateTouchViewportSize();
     QtViewportInteractionEngine::Constraints computeViewportConstraints();
@@ -103,12 +101,10 @@ public:
     bool handleCertificateVerificationRequest(const QString& hostname);
 
     void setUseTraditionalDesktopBehaviour(bool enable);
-    void setRenderToOffscreenBuffer(bool enable) { m_renderToOffscreenBuffer = enable; }
     void setViewInAttachedProperties(QObject*);
     void setIcon(const QUrl&);
 
     bool navigatorQtObjectEnabled() const;
-    bool renderToOffscreenBuffer() const { return m_renderToOffscreenBuffer; }
     void setNavigatorQtObjectEnabled(bool);
 
     // PageClient.
@@ -170,7 +166,6 @@ private:
     bool isTransitioningToNewPage;
     bool pageIsSuspended;
     bool m_navigatorQtObjectEnabled;
-    bool m_renderToOffscreenBuffer;
     QUrl m_iconURL;
 };
 
index ac711f6..2f58322 100644 (file)
@@ -27,7 +27,6 @@
 #ifndef DrawingAreaProxy_h
 #define DrawingAreaProxy_h
 
-#include "BackingStore.h"
 #include "DrawingAreaInfo.h"
 #include <WebCore/IntRect.h>
 #include <WebCore/IntSize.h>
@@ -89,7 +88,6 @@ public:
     virtual WebCore::IntRect contentsRect() const;
     virtual bool isBackingStoreReady() const { return true; }
     virtual void paintToCurrentGLContext(const WebCore::TransformationMatrix&, float opacity) { }
-    virtual void paintLayerTree(BackingStore::PlatformGraphicsContext) { }
     LayerTreeHostProxy* layerTreeHostProxy() const { return m_layerTreeHostProxy.get(); }
 
 #if USE(TILED_BACKING_STORE)
index 0e3bdb6..eac3f00 100644 (file)
@@ -360,12 +360,6 @@ void DrawingAreaProxyImpl::setVisibleContentRectTrajectoryVector(const WebCore::
         m_layerTreeHostProxy->setVisibleContentRectTrajectoryVector(trajectoryVector);
 }
 
-void DrawingAreaProxyImpl::paintLayerTree(BackingStore::PlatformGraphicsContext context)
-{
-    if (m_layerTreeHostProxy)
-        m_layerTreeHostProxy->paintToGraphicsContext(context);
-}
-
 void DrawingAreaProxyImpl::paintToCurrentGLContext(const TransformationMatrix& matrix, float opacity)
 {
     if (m_layerTreeHostProxy)
index 22f97a5..c1651f4 100644 (file)
@@ -81,7 +81,6 @@ private:
     virtual void setVisibleContentsRectAndScale(const WebCore::IntRect& visibleContentsRect, float scale);
     virtual void setVisibleContentRectTrajectoryVector(const WebCore::FloatPoint&);
     virtual void paintToCurrentGLContext(const WebCore::TransformationMatrix&, float opacity);
-    virtual void paintLayerTree(BackingStore::PlatformGraphicsContext);
     void didReceiveLayerTreeHostProxyMessage(CoreIPC::Connection*, CoreIPC::MessageID, CoreIPC::ArgumentDecoder*);
 #endif
 #else
index f5afa96..163ba71 100644 (file)
@@ -53,7 +53,6 @@ public:
     void setRootCompositingLayer(WebLayerID);
     void didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageID, CoreIPC::ArgumentDecoder*);
     void paintToCurrentGLContext(const WebCore::TransformationMatrix&, float);
-    void paintToGraphicsContext(BackingStore::PlatformGraphicsContext);
     void purgeGLResources();
     void setVisibleContentsRectAndScale(const WebCore::IntRect&, float);
     void setVisibleContentRectTrajectoryVector(const WebCore::FloatPoint&);
index 1f6065e..45dc8ce 100644 (file)
@@ -27,7 +27,6 @@
 #include "MessageID.h"
 #include "ShareableBitmap.h"
 #include "TextureMapperGL.h"
-#include "TextureMapperQt.h"
 #include "UpdateInfo.h"
 #include "WebCoreArgumentCoders.h"
 #include "WebLayerTreeInfo.h"
@@ -172,7 +171,6 @@ void LayerTreeHostProxy::paintToCurrentGLContext(const TransformationMatrix& mat
 {
     if (!m_textureMapper)
         m_textureMapper = TextureMapperGL::create();
-    ASSERT(dynamic_cast<TextureMapperGL*>(m_textureMapper.get()));
 
     syncRemoteContent();
     GraphicsLayer* currentRootLayer = rootLayer();
@@ -206,28 +204,6 @@ void LayerTreeHostProxy::paintToCurrentGLContext(const TransformationMatrix& mat
     }
 }
 
-void LayerTreeHostProxy::paintToGraphicsContext(QPainter* painter)
-{
-    if (!m_textureMapper)
-        m_textureMapper = TextureMapperQt::create();
-    ASSERT(dynamic_cast<TextureMapperQt*>(m_textureMapper.get()));
-
-    syncRemoteContent();
-    TextureMapperNode* node = toTextureMapperNode(rootLayer());
-
-    if (!node)
-        return;
-
-    GraphicsContext graphicsContext(painter);
-    m_textureMapper->setGraphicsContext(&graphicsContext);
-    m_textureMapper->beginPainting();
-    m_textureMapper->bindSurface(0);
-    node->paint();
-    m_textureMapper->endPainting();
-    m_textureMapper->setGraphicsContext(0);
-}
-
-
 void LayerTreeHostProxy::didFireViewportUpdateTimer(Timer<LayerTreeHostProxy>*)
 {
     updateViewport();
index cdc863b..3824e5d 100644 (file)
@@ -62,7 +62,7 @@ PassOwnPtr<DrawingAreaProxy> QtPageClient::createDrawingAreaProxy()
 
 void QtPageClient::setViewNeedsDisplay(const WebCore::IntRect& rect)
 {
-    QQuickWebViewPrivate::get(m_webView)->setNeedsDisplay();
+    m_webView->page()->update();
 }
 
 void QtPageClient::pageDidRequestScroll(const IntPoint& pos)
index 959b14a..9a015aa 100644 (file)
@@ -1,3 +1,15 @@
+2012-01-29  Sheriff Bot  <webkit.review.bot@gmail.com>
+
+        Unreviewed, rolling out r106109.
+        http://trac.webkit.org/changeset/106109
+        https://bugs.webkit.org/show_bug.cgi?id=77302
+
+        It made tests crash (Requested by Ossy_weekend on #webkit).
+
+        * WebKitTestRunner/qt/PlatformWebViewQt.cpp:
+        (WTR::WrapperWindow::WrapperWindow):
+        (WTR::PlatformWebView::PlatformWebView):
+
 2012-01-28  Nico Weber  <thakis@chromium.org>
 
         [chromium] Add support for building standalone webkit/chromium checkouts with ninja.
index 4259913..13a33f8 100644 (file)
@@ -45,6 +45,7 @@ public:
         : QQuickView(QUrl("data:text/plain,import QtQuick 2.0\nItem { objectName: 'root' }"))
         , m_view(view)
     {
+        QQuickWebViewExperimental(view).setUseTraditionalDesktopBehaviour(true);
         connect(this, SIGNAL(statusChanged(QQuickView::Status)), SLOT(handleStatusChanged(QQuickView::Status)));
     }
 
@@ -74,9 +75,6 @@ PlatformWebView::PlatformWebView(WKContextRef contextRef, WKPageGroupRef pageGro
     , m_windowIsKey(true)
     , m_modalEventLoop(0)
 {
-    QQuickWebViewExperimental experimental(m_view);
-    experimental.setUseTraditionalDesktopBehaviour(true);
-    experimental.setRenderToOffscreenBuffer(true);
 }
 
 PlatformWebView::~PlatformWebView()