<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[172104] trunk/Source/WebKit2</title>
</head>
<body>
<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/172104">172104</a></dd>
<dt>Author</dt> <dd>timothy_horton@apple.com</dd>
<dt>Date</dt> <dd>2014-08-05 16:32:24 -0700 (Tue, 05 Aug 2014)</dd>
</dl>
<h3>Log Message</h3>
<pre>REGRESSION (<a href="http://trac.webkit.org/projects/webkit/changeset/164337">r164337</a>): Pages are sometimes cut off/oriented incorrectly after using WKThumbnailView
https://bugs.webkit.org/show_bug.cgi?id=135622
<rdar://problem/17202556>
Reviewed by Dan Bernstein.
In some cases (when the page changed scroll offset while thumbnailed),
when transitioning back to thumbnail scale = 1, we would get the math
wrong and end up with a non-identity sublayerTransform on the DrawingArea.
Luckily, none of this code is necessary anymore, as the only client
of WKThumbnailView only uses its snapshotting mode.
* Shared/ImageOptions.h:
Remove SnapshotOptionsRespectDrawingAreaTransform; DrawingArea no longer
has a rootLayerTransform().
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::setThumbnailScale): Deleted.
* UIProcess/WebPageProxy.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
(WebKit::WebPage::scaledSnapshotWithOptions):
(WebKit::WebPage::snapshotAtSize):
(WebKit::WebPage::setThumbnailScale): Deleted.
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:
Remove setThumbnailScale and SnapshotOptionsRespectDrawingAreaTransform.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::didCommitLoad):
Revert this to its state before <a href="http://trac.webkit.org/projects/webkit/changeset/164337">r164337</a>, as we no longer have "thumbnail scale".
* UIProcess/API/Cocoa/_WKThumbnailView.h:
* UIProcess/API/Cocoa/_WKThumbnailView.mm:
(-[_WKThumbnailView initWithFrame:fromWKView:]):
(-[_WKThumbnailView _viewWasUnparented]):
(-[_WKThumbnailView _viewWasParented]):
(-[_WKThumbnailView _requestSnapshotIfNeeded]):
(-[_WKThumbnailView setScale:]):
Clean up code assuming _shouldApplyThumbnailScale = NO, _usesSnapshot = YES.
(-[_WKThumbnailView setUsesSnapshot:]):
(-[_WKThumbnailView usesSnapshot]):
Always return YES from usesSnapshot; we only support snapshotting WKThumbnailViews.
Ignore setUsesSnapshot.
* UIProcess/API/mac/WKView.mm:
(-[WKView _setThumbnailView:]):
(-[WKView _updateThumbnailViewLayer]):
Stop checking usesSnapshot; it's always true.
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::setRootLayerTransform): Deleted.
* WebProcess/WebPage/DrawingArea.cpp:
(WebKit::DrawingArea::rootLayerTransform): Deleted.
* WebProcess/WebPage/DrawingArea.h:
(WebKit::DrawingArea::setRootLayerTransform): Deleted.
Remove rootLayerTransform() and setRootLayerTransform().</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebKit2ChangeLog">trunk/Source/WebKit2/ChangeLog</a></li>
<li><a href="#trunkSourceWebKit2SharedImageOptionsh">trunk/Source/WebKit2/Shared/ImageOptions.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessAPICocoa_WKThumbnailViewh">trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKThumbnailView.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessAPICocoa_WKThumbnailViewmm">trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKThumbnailView.mm</a></li>
<li><a href="#trunkSourceWebKit2UIProcessAPImacWKViewmm">trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm</a></li>
<li><a href="#trunkSourceWebKit2UIProcessWebPageProxycpp">trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp</a></li>
<li><a href="#trunkSourceWebKit2UIProcessWebPageProxyh">trunk/Source/WebKit2/UIProcess/WebPageProxy.h</a></li>
<li><a href="#trunkSourceWebKit2WebProcessWebPageDrawingAreacpp">trunk/Source/WebKit2/WebProcess/WebPage/DrawingArea.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebProcessWebPageDrawingAreah">trunk/Source/WebKit2/WebProcess/WebPage/DrawingArea.h</a></li>
<li><a href="#trunkSourceWebKit2WebProcessWebPageWebPagecpp">trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebProcessWebPageWebPageh">trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h</a></li>
<li><a href="#trunkSourceWebKit2WebProcessWebPageWebPagemessagesin">trunk/Source/WebKit2/WebProcess/WebPage/WebPage.messages.in</a></li>
<li><a href="#trunkSourceWebKit2WebProcessWebPagemacTiledCoreAnimationDrawingAreah">trunk/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h</a></li>
<li><a href="#trunkSourceWebKit2WebProcessWebPagemacTiledCoreAnimationDrawingAreamm">trunk/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebKit2ChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/ChangeLog (172103 => 172104)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/ChangeLog        2014-08-05 23:29:53 UTC (rev 172103)
+++ trunk/Source/WebKit2/ChangeLog        2014-08-05 23:32:24 UTC (rev 172104)
</span><span class="lines">@@ -1,3 +1,67 @@
</span><ins>+2014-08-05 Tim Horton <timothy_horton@apple.com>
+
+ REGRESSION (r164337): Pages are sometimes cut off/oriented incorrectly after using WKThumbnailView
+ https://bugs.webkit.org/show_bug.cgi?id=135622
+ <rdar://problem/17202556>
+
+ Reviewed by Dan Bernstein.
+
+ In some cases (when the page changed scroll offset while thumbnailed),
+ when transitioning back to thumbnail scale = 1, we would get the math
+ wrong and end up with a non-identity sublayerTransform on the DrawingArea.
+
+ Luckily, none of this code is necessary anymore, as the only client
+ of WKThumbnailView only uses its snapshotting mode.
+
+ * Shared/ImageOptions.h:
+ Remove SnapshotOptionsRespectDrawingAreaTransform; DrawingArea no longer
+ has a rootLayerTransform().
+
+ * UIProcess/WebPageProxy.cpp:
+ (WebKit::WebPageProxy::setThumbnailScale): Deleted.
+ * UIProcess/WebPageProxy.h:
+ * WebProcess/WebPage/WebPage.cpp:
+ (WebKit::WebPage::WebPage):
+ (WebKit::WebPage::scaledSnapshotWithOptions):
+ (WebKit::WebPage::snapshotAtSize):
+
+ (WebKit::WebPage::setThumbnailScale): Deleted.
+ * WebProcess/WebPage/WebPage.h:
+ * WebProcess/WebPage/WebPage.messages.in:
+ Remove setThumbnailScale and SnapshotOptionsRespectDrawingAreaTransform.
+
+ * WebProcess/WebPage/WebPage.cpp:
+ (WebKit::WebPage::didCommitLoad):
+ Revert this to its state before r164337, as we no longer have "thumbnail scale".
+
+ * UIProcess/API/Cocoa/_WKThumbnailView.h:
+ * UIProcess/API/Cocoa/_WKThumbnailView.mm:
+ (-[_WKThumbnailView initWithFrame:fromWKView:]):
+ (-[_WKThumbnailView _viewWasUnparented]):
+ (-[_WKThumbnailView _viewWasParented]):
+ (-[_WKThumbnailView _requestSnapshotIfNeeded]):
+ (-[_WKThumbnailView setScale:]):
+ Clean up code assuming _shouldApplyThumbnailScale = NO, _usesSnapshot = YES.
+
+ (-[_WKThumbnailView setUsesSnapshot:]):
+ (-[_WKThumbnailView usesSnapshot]):
+ Always return YES from usesSnapshot; we only support snapshotting WKThumbnailViews.
+ Ignore setUsesSnapshot.
+
+ * UIProcess/API/mac/WKView.mm:
+ (-[WKView _setThumbnailView:]):
+ (-[WKView _updateThumbnailViewLayer]):
+ Stop checking usesSnapshot; it's always true.
+
+ * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
+ * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
+ (WebKit::TiledCoreAnimationDrawingArea::setRootLayerTransform): Deleted.
+ * WebProcess/WebPage/DrawingArea.cpp:
+ (WebKit::DrawingArea::rootLayerTransform): Deleted.
+ * WebProcess/WebPage/DrawingArea.h:
+ (WebKit::DrawingArea::setRootLayerTransform): Deleted.
+ Remove rootLayerTransform() and setRootLayerTransform().
+
</ins><span class="cx"> 2014-08-05 Peyton Randolph <prandolph@apple.com>
</span><span class="cx">
</span><span class="cx"> Rename MAC_LONG_PRESS feature flag to LONG_MOUSE_PRESS.
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedImageOptionsh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/ImageOptions.h (172103 => 172104)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/ImageOptions.h        2014-08-05 23:29:53 UTC (rev 172103)
+++ trunk/Source/WebKit2/Shared/ImageOptions.h        2014-08-05 23:32:24 UTC (rev 172104)
</span><span class="lines">@@ -37,7 +37,6 @@
</span><span class="cx"> SnapshotOptionsExcludeSelectionHighlighting = 1 << 1,
</span><span class="cx"> SnapshotOptionsInViewCoordinates = 1 << 2,
</span><span class="cx"> SnapshotOptionsPaintSelectionRectangle = 1 << 3,
</span><del>- SnapshotOptionsRespectDrawingAreaTransform = 1 << 4,
</del><span class="cx"> SnapshotOptionsExcludeDeviceScaleFactor = 1 << 5,
</span><span class="cx"> };
</span><span class="cx"> typedef uint32_t SnapshotOptions;
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPICocoa_WKThumbnailViewh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKThumbnailView.h (172103 => 172104)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKThumbnailView.h        2014-08-05 23:29:53 UTC (rev 172103)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKThumbnailView.h        2014-08-05 23:32:24 UTC (rev 172104)
</span><span class="lines">@@ -39,6 +39,8 @@
</span><span class="cx"> - (instancetype)initWithFrame:(NSRect)frame fromWKView:(WKView *)wkView;
</span><span class="cx">
</span><span class="cx"> @property (nonatomic) CGFloat scale;
</span><ins>+
+// This should be removed when all clients go away; it is always YES now.
</ins><span class="cx"> @property (nonatomic) BOOL usesSnapshot;
</span><span class="cx">
</span><span class="cx"> @end
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPICocoa_WKThumbnailViewmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKThumbnailView.mm (172103 => 172104)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKThumbnailView.mm        2014-08-05 23:29:53 UTC (rev 172103)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKThumbnailView.mm        2014-08-05 23:32:24 UTC (rev 172104)
</span><span class="lines">@@ -52,8 +52,6 @@
</span><span class="cx"> BOOL _originalMayStartMediaWhenInWindow;
</span><span class="cx"> BOOL _originalSourceViewIsInWindow;
</span><span class="cx">
</span><del>- BOOL _shouldApplyThumbnailScale;
-
</del><span class="cx"> BOOL _snapshotWasDeferred;
</span><span class="cx"> double _lastSnapshotScale;
</span><span class="cx"> }
</span><span class="lines">@@ -76,16 +74,11 @@
</span><span class="cx"> _originalMayStartMediaWhenInWindow = _webPageProxy->mayStartMediaWhenInWindow();
</span><span class="cx"> _originalSourceViewIsInWindow = !![_wkView window];
</span><span class="cx">
</span><del>- _shouldApplyThumbnailScale = !_originalSourceViewIsInWindow;
-
</del><span class="cx"> return self;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> - (void)_viewWasUnparented
</span><span class="cx"> {
</span><del>- if (_shouldApplyThumbnailScale)
- _webPageProxy->setThumbnailScale(1);
-
</del><span class="cx"> [_wkView _setThumbnailView:nil];
</span><span class="cx">
</span><span class="cx"> self.layer.contents = nil;
</span><span class="lines">@@ -99,9 +92,6 @@
</span><span class="cx"> if ([_wkView _thumbnailView])
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- if (_shouldApplyThumbnailScale)
- _webPageProxy->setThumbnailScale(_scale);
-
</del><span class="cx"> if (!_originalSourceViewIsInWindow)
</span><span class="cx"> _webPageProxy->setMayStartMediaWhenInWindow(false);
</span><span class="cx">
</span><span class="lines">@@ -111,9 +101,6 @@
</span><span class="cx">
</span><span class="cx"> - (void)_requestSnapshotIfNeeded
</span><span class="cx"> {
</span><del>- if (!_usesSnapshot)
- return;
-
</del><span class="cx"> if (self.layer.contents && _lastSnapshotScale == _scale)
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="lines">@@ -126,7 +113,7 @@
</span><span class="cx">
</span><span class="cx"> RetainPtr<_WKThumbnailView> thumbnailView = self;
</span><span class="cx"> IntRect snapshotRect(IntPoint(), _webPageProxy->viewSize() - IntSize(0, _webPageProxy->topContentInset()));
</span><del>- SnapshotOptions options = SnapshotOptionsRespectDrawingAreaTransform | SnapshotOptionsInViewCoordinates;
</del><ins>+ SnapshotOptions options = SnapshotOptionsInViewCoordinates;
</ins><span class="cx"> IntSize bitmapSize = snapshotRect.size();
</span><span class="cx"> bitmapSize.scale(_scale * _webPageProxy->deviceScaleFactor());
</span><span class="cx"> _lastSnapshotScale = _scale;
</span><span class="lines">@@ -166,31 +153,19 @@
</span><span class="cx">
</span><span class="cx"> _scale = scale;
</span><span class="cx">
</span><del>- if (self.window && _shouldApplyThumbnailScale)
- _webPageProxy->setThumbnailScale(_scale);
</del><ins>+ [self _requestSnapshotIfNeeded];
</ins><span class="cx">
</span><del>- if (_usesSnapshot)
- [self _requestSnapshotIfNeeded];
-
</del><span class="cx"> self.layer.sublayerTransform = CATransform3DMakeScale(_scale, _scale, 1);
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+// This should be removed when all clients go away; it is always YES now.
</ins><span class="cx"> - (void)setUsesSnapshot:(BOOL)usesSnapshot
</span><span class="cx"> {
</span><del>- if (_usesSnapshot == usesSnapshot)
- return;
</del><ins>+}
</ins><span class="cx">
</span><del>- _usesSnapshot = usesSnapshot;
-
- if (!self.window)
- return;
-
- if (usesSnapshot)
- [self _requestSnapshotIfNeeded];
- else {
- _webPageProxy->setThumbnailScale(_scale);
- [_wkView _reparentLayerTreeInThumbnailView];
- }
</del><ins>+- (BOOL)usesSnapshot
+{
+ return YES;
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> - (void)_setThumbnailLayer:(CALayer *)layer
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPImacWKViewmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm (172103 => 172104)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm        2014-08-05 23:29:53 UTC (rev 172103)
+++ trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm        2014-08-05 23:32:24 UTC (rev 172104)
</span><span class="lines">@@ -3547,9 +3547,6 @@
</span><span class="cx"> [self _updateThumbnailViewLayer];
</span><span class="cx"> else
</span><span class="cx"> [self _setAcceleratedCompositingModeRootLayer:_data->_rootLayer.get()];
</span><del>-
- if (!thumbnailView.usesSnapshot)
- _data->_page->viewStateDidChange(ViewState::WindowIsActive | ViewState::IsInWindow | ViewState::IsVisible);
</del><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> - (_WKThumbnailView *)_thumbnailView
</span><span class="lines">@@ -3562,7 +3559,7 @@
</span><span class="cx"> _WKThumbnailView *thumbnailView = _data->_thumbnailView;
</span><span class="cx"> ASSERT(thumbnailView);
</span><span class="cx">
</span><del>- if (!thumbnailView.usesSnapshot || (thumbnailView._waitingForSnapshot && self.window))
</del><ins>+ if (thumbnailView._waitingForSnapshot && self.window)
</ins><span class="cx"> [self _reparentLayerTreeInThumbnailView];
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessWebPageProxycpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp (172103 => 172104)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp        2014-08-05 23:29:53 UTC (rev 172103)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp        2014-08-05 23:32:24 UTC (rev 172104)
</span><span class="lines">@@ -5052,14 +5052,6 @@
</span><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>-void WebPageProxy::setThumbnailScale(double scale)
-{
- if (!isValid())
- return;
-
- m_process->send(Messages::WebPage::SetThumbnailScale(scale), m_pageID);
-}
-
</del><span class="cx"> void WebPageProxy::addMIMETypeWithCustomContentProvider(const String& mimeType)
</span><span class="cx"> {
</span><span class="cx"> m_process->send(Messages::WebPage::AddMIMETypeWithCustomContentProvider(mimeType), m_pageID);
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessWebPageProxyh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.h (172103 => 172104)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/WebPageProxy.h        2014-08-05 23:29:53 UTC (rev 172103)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.h        2014-08-05 23:32:24 UTC (rev 172104)
</span><span class="lines">@@ -901,8 +901,6 @@
</span><span class="cx"> void unwrapCryptoKey(const Vector<uint8_t>&, bool& succeeded, Vector<uint8_t>&);
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>- void setThumbnailScale(double);
-
</del><span class="cx"> void takeSnapshot(WebCore::IntRect, WebCore::IntSize bitmapSize, SnapshotOptions, std::function<void (const ShareableBitmap::Handle&, CallbackBase::Error)>);
</span><span class="cx">
</span><span class="cx"> void navigationGestureDidBegin();
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessWebPageDrawingAreacpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/WebPage/DrawingArea.cpp (172103 => 172104)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/WebPage/DrawingArea.cpp        2014-08-05 23:29:53 UTC (rev 172103)
+++ trunk/Source/WebKit2/WebProcess/WebPage/DrawingArea.cpp        2014-08-05 23:32:24 UTC (rev 172104)
</span><span class="lines">@@ -87,11 +87,6 @@
</span><span class="cx"> function();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-TransformationMatrix DrawingArea::rootLayerTransform() const
-{
- return TransformationMatrix();
-}
-
</del><span class="cx"> #if USE(REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR)
</span><span class="cx"> PassRefPtr<WebCore::DisplayRefreshMonitor> DrawingArea::createDisplayRefreshMonitor(PlatformDisplayID)
</span><span class="cx"> {
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessWebPageDrawingAreah"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/WebPage/DrawingArea.h (172103 => 172104)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/WebPage/DrawingArea.h        2014-08-05 23:29:53 UTC (rev 172103)
+++ trunk/Source/WebKit2/WebProcess/WebPage/DrawingArea.h        2014-08-05 23:32:24 UTC (rev 172104)
</span><span class="lines">@@ -107,9 +107,6 @@
</span><span class="cx"> virtual PassRefPtr<WebCore::DisplayRefreshMonitor> createDisplayRefreshMonitor(PlatformDisplayID);
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>- virtual WebCore::TransformationMatrix rootLayerTransform() const;
- virtual void setRootLayerTransform(const WebCore::TransformationMatrix&) { }
-
</del><span class="cx"> #if USE(COORDINATED_GRAPHICS)
</span><span class="cx"> virtual void didReceiveCoordinatedLayerTreeHostMessage(IPC::Connection*, IPC::MessageDecoder&) = 0;
</span><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessWebPageWebPagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp (172103 => 172104)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp        2014-08-05 23:29:53 UTC (rev 172103)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp        2014-08-05 23:32:24 UTC (rev 172104)
</span><span class="lines">@@ -320,8 +320,6 @@
</span><span class="cx"> , m_viewState(parameters.viewState)
</span><span class="cx"> , m_processSuppressionDisabledByWebPreference("Process suppression is disabled.")
</span><span class="cx"> , m_pendingNavigationID(0)
</span><del>- , m_pageScaleWithoutThumbnailScale(1)
- , m_thumbnailScale(1)
</del><span class="cx"> #if ENABLE(WEBGL)
</span><span class="cx"> , m_systemWebGLPolicy(WebGLAllowCreation)
</span><span class="cx"> #endif
</span><span class="lines">@@ -1633,9 +1631,6 @@
</span><span class="cx"> PassRefPtr<WebImage> WebPage::scaledSnapshotWithOptions(const IntRect& rect, double additionalScaleFactor, SnapshotOptions options)
</span><span class="cx"> {
</span><span class="cx"> IntRect snapshotRect = rect;
</span><del>- if (options & SnapshotOptionsRespectDrawingAreaTransform)
- snapshotRect = m_drawingArea->rootLayerTransform().inverse().mapRect(snapshotRect);
-
</del><span class="cx"> IntSize bitmapSize = snapshotRect.size();
</span><span class="cx"> double scaleFactor = additionalScaleFactor;
</span><span class="cx"> if (!(options & SnapshotOptionsExcludeDeviceScaleFactor))
</span><span class="lines">@@ -1656,9 +1651,6 @@
</span><span class="cx"> return nullptr;
</span><span class="cx">
</span><span class="cx"> IntRect snapshotRect = rect;
</span><del>- if (options & SnapshotOptionsRespectDrawingAreaTransform)
- snapshotRect = m_drawingArea->rootLayerTransform().inverse().mapRect(snapshotRect);
-
</del><span class="cx"> float horizontalScaleFactor = static_cast<float>(bitmapSize.width()) / rect.width();
</span><span class="cx"> float verticalScaleFactor = static_cast<float>(bitmapSize.height()) / rect.height();
</span><span class="cx"> float scaleFactor = std::max(horizontalScaleFactor, verticalScaleFactor);
</span><span class="lines">@@ -4458,13 +4450,8 @@
</span><span class="cx"> if (frame->coreFrame()->loader().loadType() == FrameLoadType::Standard) {
</span><span class="cx"> Page* page = frame->coreFrame()->page();
</span><span class="cx">
</span><del>- if (page) {
- if (m_thumbnailScale != 1) {
- m_pageScaleWithoutThumbnailScale = 1;
- setThumbnailScale(m_thumbnailScale);
- } else if (page->pageScaleFactor() != 1)
- scalePage(1, IntPoint());
- }
</del><ins>+ if (page && page->pageScaleFactor() != 1)
+ scalePage(1, IntPoint());
</ins><span class="cx"> }
</span><span class="cx"> #if PLATFORM(IOS)
</span><span class="cx"> m_hasReceivedVisibleContentRectsAfterDidCommitLoad = false;
</span><span class="lines">@@ -4751,40 +4738,6 @@
</span><span class="cx"> return documentLoader.release();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void WebPage::setThumbnailScale(double thumbnailScale)
-{
- // FIXME (129014): If the page programmatically scales while thumbnailed, we will restore the wrong scroll position.
-
- ASSERT_ARG(thumbnailScale, thumbnailScale > 0);
-
- double currentPageScaleFactor = pageScaleFactor();
-
- if (thumbnailScale == m_thumbnailScale && currentPageScaleFactor == m_thumbnailScale * m_pageScaleWithoutThumbnailScale)
- return;
-
- if (m_thumbnailScale == 1) {
- m_pageScaleWithoutThumbnailScale = currentPageScaleFactor;
- m_scrollPositionIgnoringThumbnailScale = m_page->mainFrame().view()->scrollPosition();
- }
-
- m_thumbnailScale = thumbnailScale;
-
- // Scale the page, but leave the original page scale intact if there was any.
- scalePage(m_thumbnailScale * m_pageScaleWithoutThumbnailScale, IntPoint());
-
- // Scroll as far as we can towards the original scroll position in the scaled page.
- // This may get constrained; we'll transform the drawing area to expose the right part of the page.
- m_page->mainFrame().view()->setScrollPosition(IntPoint(m_scrollPositionIgnoringThumbnailScale.x() * m_thumbnailScale, m_scrollPositionIgnoringThumbnailScale.y() * m_thumbnailScale));
-
- double inverseScale = 1 / m_thumbnailScale;
- IntPoint newScrollPosition = m_page->mainFrame().view()->scrollPosition();
- TransformationMatrix transform;
- transform.translate((newScrollPosition.x() * inverseScale) - m_scrollPositionIgnoringThumbnailScale.x(), (newScrollPosition.y() * inverseScale) - m_scrollPositionIgnoringThumbnailScale.y());
- transform.scale(inverseScale);
-
- drawingArea()->setRootLayerTransform(transform);
-}
-
</del><span class="cx"> void WebPage::getBytecodeProfile(uint64_t callbackID)
</span><span class="cx"> {
</span><span class="cx"> ASSERT(JSDOMWindow::commonVM().m_perBytecodeProfiler);
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessWebPageWebPageh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h (172103 => 172104)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h        2014-08-05 23:29:53 UTC (rev 172103)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h        2014-08-05 23:32:24 UTC (rev 172104)
</span><span class="lines">@@ -391,8 +391,6 @@
</span><span class="cx"> void addPluginView(PluginView*);
</span><span class="cx"> void removePluginView(PluginView*);
</span><span class="cx">
</span><del>- void setThumbnailScale(double);
-
</del><span class="cx"> bool isVisible() const { return m_viewState & WebCore::ViewState::IsVisible; }
</span><span class="cx"> bool isVisibleOrOccluded() const { return m_viewState & WebCore::ViewState::IsVisibleOrOccluded; }
</span><span class="cx">
</span><span class="lines">@@ -1273,10 +1271,6 @@
</span><span class="cx">
</span><span class="cx"> uint64_t m_pendingNavigationID;
</span><span class="cx">
</span><del>- double m_pageScaleWithoutThumbnailScale;
- WebCore::IntPoint m_scrollPositionIgnoringThumbnailScale;
- double m_thumbnailScale;
-
</del><span class="cx"> #if ENABLE(WEBGL)
</span><span class="cx"> WebCore::WebGLLoadPolicy m_systemWebGLPolicy;
</span><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessWebPageWebPagemessagesin"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.messages.in (172103 => 172104)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.messages.in        2014-08-05 23:29:53 UTC (rev 172103)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.messages.in        2014-08-05 23:32:24 UTC (rev 172104)
</span><span class="lines">@@ -379,8 +379,6 @@
</span><span class="cx">
</span><span class="cx"> SetScrollPinningBehavior(uint32_t pinning)
</span><span class="cx">
</span><del>- SetThumbnailScale(double scale)
-
</del><span class="cx"> GetBytecodeProfile(uint64_t callbackID)
</span><span class="cx">
</span><span class="cx"> TakeSnapshot(WebCore::IntRect snapshotRect, WebCore::IntSize bitmapSize, uint32_t options, uint64_t callbackID)
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessWebPagemacTiledCoreAnimationDrawingAreah"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h (172103 => 172104)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h        2014-08-05 23:29:53 UTC (rev 172103)
+++ trunk/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h        2014-08-05 23:32:24 UTC (rev 172104)
</span><span class="lines">@@ -103,9 +103,6 @@
</span><span class="cx">
</span><span class="cx"> void applyTransientZoomToLayers(double scale, WebCore::FloatPoint origin);
</span><span class="cx">
</span><del>- virtual WebCore::TransformationMatrix rootLayerTransform() const override { return m_transform; }
- virtual void setRootLayerTransform(const WebCore::TransformationMatrix&) override;
-
</del><span class="cx"> void updateLayerHostingContext();
</span><span class="cx">
</span><span class="cx"> void setRootCompositingLayer(CALayer *);
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessWebPagemacTiledCoreAnimationDrawingAreamm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm (172103 => 172104)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm        2014-08-05 23:29:53 UTC (rev 172103)
+++ trunk/Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm        2014-08-05 23:32:24 UTC (rev 172104)
</span><span class="lines">@@ -691,12 +691,6 @@
</span><span class="cx"> flushLayers();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void TiledCoreAnimationDrawingArea::setRootLayerTransform(const TransformationMatrix& transform)
-{
- m_transform = transform;
- [m_rootLayer setSublayerTransform:transform];
-}
-
</del><span class="cx"> } // namespace WebKit
</span><span class="cx">
</span><span class="cx"> #endif // !PLATFORM(IOS)
</span></span></pre>
</div>
</div>
</body>
</html>