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
+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'
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
+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
void TextureMapperQt::setGraphicsContext(GraphicsContext* context)
{
m_context = context;
- m_painter = context ? context->platformContext() : 0;
+ m_painter = context->platformContext();
initialize(m_painter);
}
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); }
+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
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())
void updateSize();
void paintToCurrentGLContext();
- void paint(QPainter*);
void resetPaintNode();
QScopedPointer<QtWebPageEventHandler> eventHandler;
, isTransitioningToNewPage(false)
, pageIsSuspended(false)
, m_navigatorQtObjectEnabled(false)
- , m_renderToOffscreenBuffer(false)
{
viewport->setFlags(QQuickItem::ItemClipsChildrenToShape);
QObject::connect(viewport, SIGNAL(visibleChanged()), viewport, SLOT(_q_onVisibleChanged()));
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
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);
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();
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&);
void didChangeViewportProperties(const WebCore::ViewportArguments& args);
void didChangeBackForwardList();
- void setNeedsDisplay();
-
void updateDesktopViewportSize();
void updateTouchViewportSize();
QtViewportInteractionEngine::Constraints computeViewportConstraints();
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.
bool isTransitioningToNewPage;
bool pageIsSuspended;
bool m_navigatorQtObjectEnabled;
- bool m_renderToOffscreenBuffer;
QUrl m_iconURL;
};
#ifndef DrawingAreaProxy_h
#define DrawingAreaProxy_h
-#include "BackingStore.h"
#include "DrawingAreaInfo.h"
#include <WebCore/IntRect.h>
#include <WebCore/IntSize.h>
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)
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)
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
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&);
#include "MessageID.h"
#include "ShareableBitmap.h"
#include "TextureMapperGL.h"
-#include "TextureMapperQt.h"
#include "UpdateInfo.h"
#include "WebCoreArgumentCoders.h"
#include "WebLayerTreeInfo.h"
{
if (!m_textureMapper)
m_textureMapper = TextureMapperGL::create();
- ASSERT(dynamic_cast<TextureMapperGL*>(m_textureMapper.get()));
syncRemoteContent();
GraphicsLayer* currentRootLayer = rootLayer();
}
}
-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();
void QtPageClient::setViewNeedsDisplay(const WebCore::IntRect& rect)
{
- QQuickWebViewPrivate::get(m_webView)->setNeedsDisplay();
+ m_webView->page()->update();
}
void QtPageClient::pageDidRequestScroll(const IntPoint& pos)
+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.
: 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)));
}
, m_windowIsKey(true)
, m_modalEventLoop(0)
{
- QQuickWebViewExperimental experimental(m_view);
- experimental.setUseTraditionalDesktopBehaviour(true);
- experimental.setRenderToOffscreenBuffer(true);
}
PlatformWebView::~PlatformWebView()