summaryrefslogtreecommitdiff
path: root/Tools/DumpRenderTree/qt/DumpRenderTreeQt.cpp
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@digia.com>2012-10-17 16:21:14 +0200
committerSimon Hausmann <simon.hausmann@digia.com>2012-10-17 16:21:14 +0200
commit8995b83bcbfbb68245f779b64e5517627c6cc6ea (patch)
tree17985605dab9263cc2444bd4d45f189e142cca7c /Tools/DumpRenderTree/qt/DumpRenderTreeQt.cpp
parentb9c9652036d5e9f1e29c574f40bc73a35c81ace6 (diff)
downloadqtwebkit-8995b83bcbfbb68245f779b64e5517627c6cc6ea.tar.gz
Imported WebKit commit cf4f8fc6f19b0629f51860cb2d4b25e139d07e00 (http://svn.webkit.org/repository/webkit/trunk@131592)
New snapshot that includes the build fixes for Mac OS X 10.6 and earlier as well as the previously cherry-picked changes
Diffstat (limited to 'Tools/DumpRenderTree/qt/DumpRenderTreeQt.cpp')
-rwxr-xr-xTools/DumpRenderTree/qt/DumpRenderTreeQt.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/Tools/DumpRenderTree/qt/DumpRenderTreeQt.cpp b/Tools/DumpRenderTree/qt/DumpRenderTreeQt.cpp
index 46120a7b0..0d28cbcc1 100755
--- a/Tools/DumpRenderTree/qt/DumpRenderTreeQt.cpp
+++ b/Tools/DumpRenderTree/qt/DumpRenderTreeQt.cpp
@@ -471,6 +471,8 @@ DumpRenderTree::DumpRenderTree()
DumpRenderTreeSupportQt::setDumpRenderTreeModeEnabled(true);
DumpRenderTreeSupportQt::setInteractiveFormValidationEnabled(webPage(), true);
+ DumpRenderTreeSupportQt::enableMockScrollbars();
+
QFocusEvent event(QEvent::FocusIn, Qt::ActiveWindowFocusReason);
QApplication::sendEvent(m_mainView, &event);
}
@@ -947,6 +949,23 @@ void DumpRenderTree::dump()
} else
image = DumpRenderTreeSupportQt::paintPagesWithBoundaries(mainFrame);
+ if (DumpRenderTreeSupportQt::trackRepaintRects(m_page->mainFrame())) {
+ QVector<QRect> repaintRects;
+ DumpRenderTreeSupportQt::getTrackedRepaintRects(m_page->mainFrame(), repaintRects);
+ QImage mask(image.size(), image.format());
+ mask.fill(QColor(0, 0, 0, 0.66 * 255));
+
+ QPainter maskPainter(&mask);
+ maskPainter.setCompositionMode(QPainter::CompositionMode_Source);
+ for (int i = 0; i < repaintRects.size(); ++i)
+ maskPainter.fillRect(repaintRects[i], Qt::transparent);
+
+ QPainter painter(&image);
+ painter.drawImage(image.rect(), mask);
+
+ DumpRenderTreeSupportQt::setTrackRepaintRects(m_page->mainFrame(), false);
+ }
+
QCryptographicHash hash(QCryptographicHash::Md5);
for (int row = 0; row < image.height(); ++row)
hash.addData(reinterpret_cast<const char*>(image.scanLine(row)), image.width() * 4);