<!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>[191824] 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/191824">191824</a></dd>
<dt>Author</dt> <dd>timothy_horton@apple.com</dd>
<dt>Date</dt> <dd>2015-10-30 15:48:32 -0700 (Fri, 30 Oct 2015)</dd>
</dl>

<h3>Log Message</h3>
<pre>WKView being inside WKWebView leads to weird API issues
https://bugs.webkit.org/show_bug.cgi?id=150174

Reviewed by Anders Carlsson.

* UIProcess/API/mac/WKView.mm:
(-[WKView initWithFrame:processGroup:browsingContextGroup:relatedToView:]):
(-[WKView prepareContentInRect:]):
(-[WKView initWithFrame:processPool:configuration:webView:]):
(-[WKView pageRef]):
(-[WKView _web_immediateActionAnimationControllerForHitTestResultInternal:withType:userData:]):
(-[WKView dealloc]): Deleted.
* UIProcess/Cocoa/WebViewImpl.h:
(WebKit::WebViewImpl::page):
* UIProcess/Cocoa/WebViewImpl.mm:
(-[WKWindowVisibilityObserver initWithView:impl:]):
(-[WKWindowVisibilityObserver dealloc]):
(-[WKWindowVisibilityObserver _activeSpaceDidChange:]):
(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::~WebViewImpl):
(WebKit::WebViewImpl::setDrawsBackground):
(WebKit::WebViewImpl::drawsBackground):
(WebKit::WebViewImpl::setDrawsTransparentBackground):
(WebKit::WebViewImpl::drawsTransparentBackground):
(WebKit::WebViewImpl::isOpaque):
(WebKit::WebViewImpl::acceptsFirstMouse):
(WebKit::WebViewImpl::becomeFirstResponder):
(WebKit::WebViewImpl::resignFirstResponder):
(WebKit::WebViewImpl::viewWillStartLiveResize):
(WebKit::WebViewImpl::viewDidEndLiveResize):
(WebKit::WebViewImpl::updateWindowAndViewFrames):
(WebKit::WebViewImpl::setFixedLayoutSize):
(WebKit::WebViewImpl::fixedLayoutSize):
(WebKit::WebViewImpl::isUsingUISideCompositing):
(WebKit::WebViewImpl::setDrawingAreaSize):
(WebKit::WebViewImpl::forceAsyncDrawingAreaSizeUpdate):
(WebKit::WebViewImpl::waitForAsyncDrawingAreaSizeUpdate):
(WebKit::WebViewImpl::updateLayer):
(WebKit::WebViewImpl::drawRect):
(WebKit::WebViewImpl::dispatchSetTopContentInset):
(WebKit::WebViewImpl::prepareContentInRect):
(WebKit::WebViewImpl::updateViewExposedRect):
(WebKit::WebViewImpl::setMinimumSizeForAutoLayout):
(WebKit::WebViewImpl::minimumSizeForAutoLayout):
(WebKit::WebViewImpl::setShouldExpandToViewHeightForAutoLayout):
(WebKit::WebViewImpl::shouldExpandToViewHeightForAutoLayout):
(WebKit::WebViewImpl::setIntrinsicContentSize):
(WebKit::WebViewImpl::setViewScale):
(WebKit::WebViewImpl::viewScale):
(WebKit::WebViewImpl::supportsArbitraryLayoutModes):
(WebKit::WebViewImpl::setOverrideDeviceScaleFactor):
(WebKit::WebViewImpl::windowDidOrderOffScreen):
(WebKit::WebViewImpl::windowDidOrderOnScreen):
(WebKit::WebViewImpl::windowDidBecomeKey):
(WebKit::WebViewImpl::windowDidResignKey):
(WebKit::WebViewImpl::windowDidMiniaturize):
(WebKit::WebViewImpl::windowDidDeminiaturize):
(WebKit::WebViewImpl::windowDidChangeBackingProperties):
(WebKit::WebViewImpl::windowDidChangeScreen):
(WebKit::WebViewImpl::windowDidChangeLayerHosting):
(WebKit::WebViewImpl::windowDidChangeOcclusionState):
(WebKit::WebViewImpl::shouldDelayWindowOrderingForEvent):
(WebKit::WebViewImpl::windowResizeMouseLocationIsInVisibleScrollerThumb):
(WebKit::WebViewImpl::viewDidMoveToWindow):
(WebKit::WebViewImpl::viewDidChangeBackingProperties):
(WebKit::WebViewImpl::viewDidHide):
(WebKit::WebViewImpl::viewDidUnhide):
(WebKit::WebViewImpl::activeSpaceDidChange):
(WebKit::WebViewImpl::postFakeMouseMovedEventForFlagsChangedEvent):
(WebKit::WebViewImpl::setUnderlayColor):
(WebKit::WebViewImpl::underlayColor):
(WebKit::WebViewImpl::pageExtendedBackgroundColor):
(WebKit::WebViewImpl::setOverlayScrollbarStyle):
(WebKit::WebViewImpl::overlayScrollbarStyle):
(WebKit::WebViewImpl::endDeferringViewInWindowChanges):
(WebKit::WebViewImpl::endDeferringViewInWindowChangesSync):
(WebKit::WebViewImpl::prepareForMoveToWindow):
(WebKit::WebViewImpl::updateSecureInputState):
(WebKit::WebViewImpl::setPluginComplexTextInputState):
(WebKit::WebViewImpl::handlePluginComplexTextInputKeyDown):
(WebKit::WebViewImpl::handleAcceptedAlternativeText):
(WebKit::WebViewImpl::pressureChangeWithEvent):
(WebKit::WebViewImpl::isEditable):
(WebKit::WebViewImpl::executeEditCommandForSelector):
(WebKit::WebViewImpl::writeSelectionToPasteboard):
(WebKit::WebViewImpl::readSelectionFromPasteboard):
(WebKit::WebViewImpl::validRequestorForSendAndReturnTypes):
(WebKit::WebViewImpl::centerSelectionInVisibleArea):
(WebKit::WebViewImpl::updateFontPanelIfNeeded):
(WebKit::WebViewImpl::changeFontFromFontPanel):
(WebKit::WebViewImpl::validateUserInterfaceItem):
(WebKit::WebViewImpl::startSpeaking):
(WebKit::WebViewImpl::showGuessPanel):
(WebKit::WebViewImpl::checkSpelling):
(WebKit::WebViewImpl::changeSpelling):
(WebKit::WebViewImpl::toggleContinuousSpellChecking):
(WebKit::WebViewImpl::setGrammarCheckingEnabled):
(WebKit::WebViewImpl::toggleGrammarChecking):
(WebKit::WebViewImpl::toggleAutomaticSpellingCorrection):
(WebKit::WebViewImpl::toggleSmartInsertDelete):
(WebKit::WebViewImpl::setAutomaticQuoteSubstitutionEnabled):
(WebKit::WebViewImpl::toggleAutomaticQuoteSubstitution):
(WebKit::WebViewImpl::setAutomaticDashSubstitutionEnabled):
(WebKit::WebViewImpl::toggleAutomaticDashSubstitution):
(WebKit::WebViewImpl::setAutomaticLinkDetectionEnabled):
(WebKit::WebViewImpl::toggleAutomaticLinkDetection):
(WebKit::WebViewImpl::setAutomaticTextReplacementEnabled):
(WebKit::WebViewImpl::toggleAutomaticTextReplacement):
(WebKit::WebViewImpl::uppercaseWord):
(WebKit::WebViewImpl::lowercaseWord):
(WebKit::WebViewImpl::capitalizeWord):
(WebKit::WebViewImpl::preferencesDidChange):
(WebKit::WebViewImpl::dismissContentRelativeChildWindowsFromViewOnly):
(WebKit::WebViewImpl::quickLookWithEvent):
(WebKit::WebViewImpl::immediateActionAnimationControllerForHitTestResult):
(WebKit::WebViewImpl::didChangeContentSize):
(WebKit::WebViewImpl::setIgnoresNonWheelEvents):
(WebKit::WebViewImpl::updateRemoteAccessibilityRegistration):
(WebKit::WebViewImpl::accessibilityRegisterUIProcessTokens):
(WebKit::WebViewImpl::stringForToolTip):
(WebKit::WebViewImpl::setInspectorAttachmentView):
(WebKit::WebViewImpl::remoteObjectRegistry):
(WebKit::WebViewImpl::browsingContextController):
(WebKit::WebViewImpl::draggedImage):
(WebKit::WebViewImpl::draggingEntered):
(WebKit::WebViewImpl::draggingUpdated):
(WebKit::WebViewImpl::draggingExited):
(WebKit::WebViewImpl::performDragOperation):
(WebKit::WebViewImpl::takeViewSnapshot):
(WebKit::WebViewImpl::saveBackForwardSnapshotForCurrentItem):
(WebKit::WebViewImpl::saveBackForwardSnapshotForItem):
(WebKit::WebViewImpl::setAllowsBackForwardNavigationGestures):
(WebKit::WebViewImpl::setMagnification):
(WebKit::WebViewImpl::magnification):
(WebKit::WebViewImpl::scrollWheel):
(WebKit::WebViewImpl::swipeWithEvent):
(WebKit::WebViewImpl::magnifyWithEvent):
(WebKit::WebViewImpl::rotateWithEvent):
(WebKit::WebViewImpl::doCommandBySelector):
(WebKit::WebViewImpl::insertText):
(WebKit::WebViewImpl::selectedRangeWithCompletionHandler):
(WebKit::WebViewImpl::markedRangeWithCompletionHandler):
(WebKit::WebViewImpl::hasMarkedTextWithCompletionHandler):
(WebKit::WebViewImpl::attributedSubstringForProposedRange):
(WebKit::WebViewImpl::firstRectForCharacterRange):
(WebKit::WebViewImpl::characterIndexForPoint):
(WebKit::WebViewImpl::inputContext):
(WebKit::WebViewImpl::unmarkText):
(WebKit::WebViewImpl::setMarkedText):
(WebKit::WebViewImpl::performKeyEquivalent):
(WebKit::WebViewImpl::keyUp):
(WebKit::WebViewImpl::keyDown):
(WebKit::WebViewImpl::flagsChanged):
(WebKit::WebViewImpl::executeSavedKeypressCommands):
(WebKit::WebViewImpl::selectedRange):
(WebKit::WebViewImpl::hasMarkedText):
(WebKit::WebViewImpl::markedRange):
(WebKit::WebViewImpl::setContentPreparationRect): Deleted.
(WebKit::WebViewImpl::immediateActionAnimationControllerForHitTestResultFromViewOnly): Deleted.
(WebKit::WebViewImpl::destroyRemoteObjectRegistry): Deleted.
* UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::scrollPinningBehavior):
(WebKit::WebPageProxy::overlayScrollbarStyle):
* UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::createWebPage):
* UIProcess/WebProcessPool.h:
* UIProcess/mac/PageClientImpl.h:
* UIProcess/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::PageClientImpl):
(WebKit::PageClientImpl::createDrawingAreaProxy):
(WebKit::PageClientImpl::viewSize):
(WebKit::PageClientImpl::activeView):
(WebKit::PageClientImpl::activeWindow):
(WebKit::PageClientImpl::isViewFocused):
(WebKit::PageClientImpl::makeFirstResponder):
(WebKit::PageClientImpl::isViewVisible):
(WebKit::PageClientImpl::colorSpace):
(WebKit::PageClientImpl::processDidExit):
(WebKit::PageClientImpl::pageClosed):
(WebKit::PageClientImpl::didRelaunchProcess):
(WebKit::PageClientImpl::preferencesDidChange):
(WebKit::PageClientImpl::toolTipChanged):
(WebKit::PageClientImpl::didCommitLoadForMainFrame):
(WebKit::PageClientImpl::didChangeContentSize):
(WebKit::PageClientImpl::setCursor):
(WebKit::PageClientImpl::registerEditCommand):
(WebKit::PageClientImpl::registerInsertionUndoGrouping):
(WebKit::PageClientImpl::clearAllEditCommands):
(WebKit::PageClientImpl::canUndoRedo):
(WebKit::PageClientImpl::executeUndoRedo):
(WebKit::PageClientImpl::setDragImage):
(WebKit::PageClientImpl::setPromisedDataForImage):
(WebKit::PageClientImpl::setPromisedDataForAttachment):
(WebKit::PageClientImpl::updateSecureInputState):
(WebKit::PageClientImpl::resetSecureInputState):
(WebKit::PageClientImpl::notifyInputContextAboutDiscardedComposition):
(WebKit::PageClientImpl::convertToDeviceSpace):
(WebKit::PageClientImpl::convertToUserSpace):
(WebKit::PageClientImpl::screenToRootView):
(WebKit::PageClientImpl::rootViewToScreen):
(WebKit::PageClientImpl::doneWithKeyEvent):
(WebKit::PageClientImpl::createPopupMenuProxy):
(WebKit::PageClientImpl::createContextMenuProxy):
(WebKit::PageClientImpl::createColorPicker):
(WebKit::PageClientImpl::setTextIndicator):
(WebKit::PageClientImpl::clearTextIndicator):
(WebKit::PageClientImpl::setTextIndicatorAnimationProgress):
(WebKit::PageClientImpl::accessibilityWebProcessTokenReceived):
(WebKit::PageClientImpl::enterAcceleratedCompositingMode):
(WebKit::PageClientImpl::exitAcceleratedCompositingMode):
(WebKit::PageClientImpl::updateAcceleratedCompositingMode):
(WebKit::PageClientImpl::setAcceleratedCompositingRootLayer):
(WebKit::PageClientImpl::acceleratedCompositingRootLayer):
(WebKit::PageClientImpl::takeViewSnapshot):
(WebKit::PageClientImpl::selectionDidChange):
(WebKit::PageClientImpl::wheelEventWasNotHandledByWebCore):
(WebKit::PageClientImpl::gestureEventWasNotHandledByWebCore):
(WebKit::PageClientImpl::pluginFocusOrWindowFocusChanged):
(WebKit::PageClientImpl::setPluginComplexTextInputState):
(WebKit::PageClientImpl::didPerformDictionaryLookup):
(WebKit::PageClientImpl::dismissContentRelativeChildWindows):
(WebKit::PageClientImpl::showCorrectionPanel):
(WebKit::PageClientImpl::recordAutocorrectionResponse):
(WebKit::PageClientImpl::recommendedScrollbarStyleDidChange):
(WebKit::PageClientImpl::intrinsicContentSizeDidChange):
(WebKit::PageClientImpl::executeSavedCommandBySelector):
(WebKit::PageClientImpl::showDictationAlternativeUI):
(WebKit::PageClientImpl::closeFullScreenManager):
(WebKit::PageClientImpl::isFullScreen):
(WebKit::PageClientImpl::enterFullScreen):
(WebKit::PageClientImpl::exitFullScreen):
(WebKit::PageClientImpl::beganEnterFullScreen):
(WebKit::PageClientImpl::beganExitFullScreen):
(WebKit::PageClientImpl::didFirstVisuallyNonEmptyLayoutForMainFrame):
(WebKit::PageClientImpl::didFinishLoadForMainFrame):
(WebKit::PageClientImpl::didFailLoadForMainFrame):
(WebKit::PageClientImpl::didSameDocumentNavigationForMainFrame):
(WebKit::PageClientImpl::removeNavigationGestureSnapshot):
(WebKit::PageClientImpl::boundsOfLayerInLayerBackedWindowCoordinates):
(WebKit::PageClientImpl::didPerformImmediateActionHitTest):
(WebKit::PageClientImpl::immediateActionAnimationControllerForHitTestResult):
(WebKit::PageClientImpl::showPlatformContextMenu):
(WebKit::PageClientImpl::refView):
(WebKit::PageClientImpl::derefView):
(WebKit::PageClientImpl::startWindowDrag):
(WebKit::PageClientImpl::platformWindow):
(WebKit::PageClientImpl::inspectorAttachmentView):
(WebKit::PageClientImpl::remoteObjectRegistry):
* UIProcess/mac/WebColorPickerMac.h:
* UIProcess/mac/WebColorPickerMac.mm:
(WebKit::WebColorPickerMac::create):
(WebKit::WebColorPickerMac::WebColorPickerMac):
(-[WKColorPopoverMac initWithFrame:inView:]):
* UIProcess/mac/WebContextMenuProxyMac.h:
* UIProcess/mac/WebContextMenuProxyMac.mm:
(WebKit::WebContextMenuProxyMac::WebContextMenuProxyMac):
* UIProcess/mac/WebPopupMenuProxyMac.h:
(WebKit::WebPopupMenuProxyMac::create):
* UIProcess/mac/WebPopupMenuProxyMac.mm:
(WebKit::WebPopupMenuProxyMac::WebPopupMenuProxyMac):
Move ownership of WebPageProxy and PageClientImpl to WebViewImpl.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebKit2ChangeLog">trunk/Source/WebKit2/ChangeLog</a></li>
<li><a href="#trunkSourceWebKit2UIProcessAPImacWKViewmm">trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm</a></li>
<li><a href="#trunkSourceWebKit2UIProcessCocoaWebViewImplh">trunk/Source/WebKit2/UIProcess/Cocoa/WebViewImpl.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessCocoaWebViewImplmm">trunk/Source/WebKit2/UIProcess/Cocoa/WebViewImpl.mm</a></li>
<li><a href="#trunkSourceWebKit2UIProcessWebPageProxyh">trunk/Source/WebKit2/UIProcess/WebPageProxy.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessWebProcessPoolcpp">trunk/Source/WebKit2/UIProcess/WebProcessPool.cpp</a></li>
<li><a href="#trunkSourceWebKit2UIProcessWebProcessPoolh">trunk/Source/WebKit2/UIProcess/WebProcessPool.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessmacPageClientImplh">trunk/Source/WebKit2/UIProcess/mac/PageClientImpl.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessmacPageClientImplmm">trunk/Source/WebKit2/UIProcess/mac/PageClientImpl.mm</a></li>
<li><a href="#trunkSourceWebKit2UIProcessmacWebColorPickerMach">trunk/Source/WebKit2/UIProcess/mac/WebColorPickerMac.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessmacWebColorPickerMacmm">trunk/Source/WebKit2/UIProcess/mac/WebColorPickerMac.mm</a></li>
<li><a href="#trunkSourceWebKit2UIProcessmacWebContextMenuProxyMach">trunk/Source/WebKit2/UIProcess/mac/WebContextMenuProxyMac.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessmacWebContextMenuProxyMacmm">trunk/Source/WebKit2/UIProcess/mac/WebContextMenuProxyMac.mm</a></li>
<li><a href="#trunkSourceWebKit2UIProcessmacWebPopupMenuProxyMach">trunk/Source/WebKit2/UIProcess/mac/WebPopupMenuProxyMac.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessmacWebPopupMenuProxyMacmm">trunk/Source/WebKit2/UIProcess/mac/WebPopupMenuProxyMac.mm</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebKit2ChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/ChangeLog (191823 => 191824)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/ChangeLog        2015-10-30 22:35:22 UTC (rev 191823)
+++ trunk/Source/WebKit2/ChangeLog        2015-10-30 22:48:32 UTC (rev 191824)
</span><span class="lines">@@ -1,3 +1,267 @@
</span><ins>+2015-10-30  Tim Horton  &lt;timothy_horton@apple.com&gt;
+
+        WKView being inside WKWebView leads to weird API issues
+        https://bugs.webkit.org/show_bug.cgi?id=150174
+
+        Reviewed by Anders Carlsson.
+
+        * UIProcess/API/mac/WKView.mm:
+        (-[WKView initWithFrame:processGroup:browsingContextGroup:relatedToView:]):
+        (-[WKView prepareContentInRect:]):
+        (-[WKView initWithFrame:processPool:configuration:webView:]):
+        (-[WKView pageRef]):
+        (-[WKView _web_immediateActionAnimationControllerForHitTestResultInternal:withType:userData:]):
+        (-[WKView dealloc]): Deleted.
+        * UIProcess/Cocoa/WebViewImpl.h:
+        (WebKit::WebViewImpl::page):
+        * UIProcess/Cocoa/WebViewImpl.mm:
+        (-[WKWindowVisibilityObserver initWithView:impl:]):
+        (-[WKWindowVisibilityObserver dealloc]):
+        (-[WKWindowVisibilityObserver _activeSpaceDidChange:]):
+        (WebKit::WebViewImpl::WebViewImpl):
+        (WebKit::WebViewImpl::~WebViewImpl):
+        (WebKit::WebViewImpl::setDrawsBackground):
+        (WebKit::WebViewImpl::drawsBackground):
+        (WebKit::WebViewImpl::setDrawsTransparentBackground):
+        (WebKit::WebViewImpl::drawsTransparentBackground):
+        (WebKit::WebViewImpl::isOpaque):
+        (WebKit::WebViewImpl::acceptsFirstMouse):
+        (WebKit::WebViewImpl::becomeFirstResponder):
+        (WebKit::WebViewImpl::resignFirstResponder):
+        (WebKit::WebViewImpl::viewWillStartLiveResize):
+        (WebKit::WebViewImpl::viewDidEndLiveResize):
+        (WebKit::WebViewImpl::updateWindowAndViewFrames):
+        (WebKit::WebViewImpl::setFixedLayoutSize):
+        (WebKit::WebViewImpl::fixedLayoutSize):
+        (WebKit::WebViewImpl::isUsingUISideCompositing):
+        (WebKit::WebViewImpl::setDrawingAreaSize):
+        (WebKit::WebViewImpl::forceAsyncDrawingAreaSizeUpdate):
+        (WebKit::WebViewImpl::waitForAsyncDrawingAreaSizeUpdate):
+        (WebKit::WebViewImpl::updateLayer):
+        (WebKit::WebViewImpl::drawRect):
+        (WebKit::WebViewImpl::dispatchSetTopContentInset):
+        (WebKit::WebViewImpl::prepareContentInRect):
+        (WebKit::WebViewImpl::updateViewExposedRect):
+        (WebKit::WebViewImpl::setMinimumSizeForAutoLayout):
+        (WebKit::WebViewImpl::minimumSizeForAutoLayout):
+        (WebKit::WebViewImpl::setShouldExpandToViewHeightForAutoLayout):
+        (WebKit::WebViewImpl::shouldExpandToViewHeightForAutoLayout):
+        (WebKit::WebViewImpl::setIntrinsicContentSize):
+        (WebKit::WebViewImpl::setViewScale):
+        (WebKit::WebViewImpl::viewScale):
+        (WebKit::WebViewImpl::supportsArbitraryLayoutModes):
+        (WebKit::WebViewImpl::setOverrideDeviceScaleFactor):
+        (WebKit::WebViewImpl::windowDidOrderOffScreen):
+        (WebKit::WebViewImpl::windowDidOrderOnScreen):
+        (WebKit::WebViewImpl::windowDidBecomeKey):
+        (WebKit::WebViewImpl::windowDidResignKey):
+        (WebKit::WebViewImpl::windowDidMiniaturize):
+        (WebKit::WebViewImpl::windowDidDeminiaturize):
+        (WebKit::WebViewImpl::windowDidChangeBackingProperties):
+        (WebKit::WebViewImpl::windowDidChangeScreen):
+        (WebKit::WebViewImpl::windowDidChangeLayerHosting):
+        (WebKit::WebViewImpl::windowDidChangeOcclusionState):
+        (WebKit::WebViewImpl::shouldDelayWindowOrderingForEvent):
+        (WebKit::WebViewImpl::windowResizeMouseLocationIsInVisibleScrollerThumb):
+        (WebKit::WebViewImpl::viewDidMoveToWindow):
+        (WebKit::WebViewImpl::viewDidChangeBackingProperties):
+        (WebKit::WebViewImpl::viewDidHide):
+        (WebKit::WebViewImpl::viewDidUnhide):
+        (WebKit::WebViewImpl::activeSpaceDidChange):
+        (WebKit::WebViewImpl::postFakeMouseMovedEventForFlagsChangedEvent):
+        (WebKit::WebViewImpl::setUnderlayColor):
+        (WebKit::WebViewImpl::underlayColor):
+        (WebKit::WebViewImpl::pageExtendedBackgroundColor):
+        (WebKit::WebViewImpl::setOverlayScrollbarStyle):
+        (WebKit::WebViewImpl::overlayScrollbarStyle):
+        (WebKit::WebViewImpl::endDeferringViewInWindowChanges):
+        (WebKit::WebViewImpl::endDeferringViewInWindowChangesSync):
+        (WebKit::WebViewImpl::prepareForMoveToWindow):
+        (WebKit::WebViewImpl::updateSecureInputState):
+        (WebKit::WebViewImpl::setPluginComplexTextInputState):
+        (WebKit::WebViewImpl::handlePluginComplexTextInputKeyDown):
+        (WebKit::WebViewImpl::handleAcceptedAlternativeText):
+        (WebKit::WebViewImpl::pressureChangeWithEvent):
+        (WebKit::WebViewImpl::isEditable):
+        (WebKit::WebViewImpl::executeEditCommandForSelector):
+        (WebKit::WebViewImpl::writeSelectionToPasteboard):
+        (WebKit::WebViewImpl::readSelectionFromPasteboard):
+        (WebKit::WebViewImpl::validRequestorForSendAndReturnTypes):
+        (WebKit::WebViewImpl::centerSelectionInVisibleArea):
+        (WebKit::WebViewImpl::updateFontPanelIfNeeded):
+        (WebKit::WebViewImpl::changeFontFromFontPanel):
+        (WebKit::WebViewImpl::validateUserInterfaceItem):
+        (WebKit::WebViewImpl::startSpeaking):
+        (WebKit::WebViewImpl::showGuessPanel):
+        (WebKit::WebViewImpl::checkSpelling):
+        (WebKit::WebViewImpl::changeSpelling):
+        (WebKit::WebViewImpl::toggleContinuousSpellChecking):
+        (WebKit::WebViewImpl::setGrammarCheckingEnabled):
+        (WebKit::WebViewImpl::toggleGrammarChecking):
+        (WebKit::WebViewImpl::toggleAutomaticSpellingCorrection):
+        (WebKit::WebViewImpl::toggleSmartInsertDelete):
+        (WebKit::WebViewImpl::setAutomaticQuoteSubstitutionEnabled):
+        (WebKit::WebViewImpl::toggleAutomaticQuoteSubstitution):
+        (WebKit::WebViewImpl::setAutomaticDashSubstitutionEnabled):
+        (WebKit::WebViewImpl::toggleAutomaticDashSubstitution):
+        (WebKit::WebViewImpl::setAutomaticLinkDetectionEnabled):
+        (WebKit::WebViewImpl::toggleAutomaticLinkDetection):
+        (WebKit::WebViewImpl::setAutomaticTextReplacementEnabled):
+        (WebKit::WebViewImpl::toggleAutomaticTextReplacement):
+        (WebKit::WebViewImpl::uppercaseWord):
+        (WebKit::WebViewImpl::lowercaseWord):
+        (WebKit::WebViewImpl::capitalizeWord):
+        (WebKit::WebViewImpl::preferencesDidChange):
+        (WebKit::WebViewImpl::dismissContentRelativeChildWindowsFromViewOnly):
+        (WebKit::WebViewImpl::quickLookWithEvent):
+        (WebKit::WebViewImpl::immediateActionAnimationControllerForHitTestResult):
+        (WebKit::WebViewImpl::didChangeContentSize):
+        (WebKit::WebViewImpl::setIgnoresNonWheelEvents):
+        (WebKit::WebViewImpl::updateRemoteAccessibilityRegistration):
+        (WebKit::WebViewImpl::accessibilityRegisterUIProcessTokens):
+        (WebKit::WebViewImpl::stringForToolTip):
+        (WebKit::WebViewImpl::setInspectorAttachmentView):
+        (WebKit::WebViewImpl::remoteObjectRegistry):
+        (WebKit::WebViewImpl::browsingContextController):
+        (WebKit::WebViewImpl::draggedImage):
+        (WebKit::WebViewImpl::draggingEntered):
+        (WebKit::WebViewImpl::draggingUpdated):
+        (WebKit::WebViewImpl::draggingExited):
+        (WebKit::WebViewImpl::performDragOperation):
+        (WebKit::WebViewImpl::takeViewSnapshot):
+        (WebKit::WebViewImpl::saveBackForwardSnapshotForCurrentItem):
+        (WebKit::WebViewImpl::saveBackForwardSnapshotForItem):
+        (WebKit::WebViewImpl::setAllowsBackForwardNavigationGestures):
+        (WebKit::WebViewImpl::setMagnification):
+        (WebKit::WebViewImpl::magnification):
+        (WebKit::WebViewImpl::scrollWheel):
+        (WebKit::WebViewImpl::swipeWithEvent):
+        (WebKit::WebViewImpl::magnifyWithEvent):
+        (WebKit::WebViewImpl::rotateWithEvent):
+        (WebKit::WebViewImpl::doCommandBySelector):
+        (WebKit::WebViewImpl::insertText):
+        (WebKit::WebViewImpl::selectedRangeWithCompletionHandler):
+        (WebKit::WebViewImpl::markedRangeWithCompletionHandler):
+        (WebKit::WebViewImpl::hasMarkedTextWithCompletionHandler):
+        (WebKit::WebViewImpl::attributedSubstringForProposedRange):
+        (WebKit::WebViewImpl::firstRectForCharacterRange):
+        (WebKit::WebViewImpl::characterIndexForPoint):
+        (WebKit::WebViewImpl::inputContext):
+        (WebKit::WebViewImpl::unmarkText):
+        (WebKit::WebViewImpl::setMarkedText):
+        (WebKit::WebViewImpl::performKeyEquivalent):
+        (WebKit::WebViewImpl::keyUp):
+        (WebKit::WebViewImpl::keyDown):
+        (WebKit::WebViewImpl::flagsChanged):
+        (WebKit::WebViewImpl::executeSavedKeypressCommands):
+        (WebKit::WebViewImpl::selectedRange):
+        (WebKit::WebViewImpl::hasMarkedText):
+        (WebKit::WebViewImpl::markedRange):
+        (WebKit::WebViewImpl::setContentPreparationRect): Deleted.
+        (WebKit::WebViewImpl::immediateActionAnimationControllerForHitTestResultFromViewOnly): Deleted.
+        (WebKit::WebViewImpl::destroyRemoteObjectRegistry): Deleted.
+        * UIProcess/WebPageProxy.h:
+        (WebKit::WebPageProxy::scrollPinningBehavior):
+        (WebKit::WebPageProxy::overlayScrollbarStyle):
+        * UIProcess/WebProcessPool.cpp:
+        (WebKit::WebProcessPool::createWebPage):
+        * UIProcess/WebProcessPool.h:
+        * UIProcess/mac/PageClientImpl.h:
+        * UIProcess/mac/PageClientImpl.mm:
+        (WebKit::PageClientImpl::PageClientImpl):
+        (WebKit::PageClientImpl::createDrawingAreaProxy):
+        (WebKit::PageClientImpl::viewSize):
+        (WebKit::PageClientImpl::activeView):
+        (WebKit::PageClientImpl::activeWindow):
+        (WebKit::PageClientImpl::isViewFocused):
+        (WebKit::PageClientImpl::makeFirstResponder):
+        (WebKit::PageClientImpl::isViewVisible):
+        (WebKit::PageClientImpl::colorSpace):
+        (WebKit::PageClientImpl::processDidExit):
+        (WebKit::PageClientImpl::pageClosed):
+        (WebKit::PageClientImpl::didRelaunchProcess):
+        (WebKit::PageClientImpl::preferencesDidChange):
+        (WebKit::PageClientImpl::toolTipChanged):
+        (WebKit::PageClientImpl::didCommitLoadForMainFrame):
+        (WebKit::PageClientImpl::didChangeContentSize):
+        (WebKit::PageClientImpl::setCursor):
+        (WebKit::PageClientImpl::registerEditCommand):
+        (WebKit::PageClientImpl::registerInsertionUndoGrouping):
+        (WebKit::PageClientImpl::clearAllEditCommands):
+        (WebKit::PageClientImpl::canUndoRedo):
+        (WebKit::PageClientImpl::executeUndoRedo):
+        (WebKit::PageClientImpl::setDragImage):
+        (WebKit::PageClientImpl::setPromisedDataForImage):
+        (WebKit::PageClientImpl::setPromisedDataForAttachment):
+        (WebKit::PageClientImpl::updateSecureInputState):
+        (WebKit::PageClientImpl::resetSecureInputState):
+        (WebKit::PageClientImpl::notifyInputContextAboutDiscardedComposition):
+        (WebKit::PageClientImpl::convertToDeviceSpace):
+        (WebKit::PageClientImpl::convertToUserSpace):
+        (WebKit::PageClientImpl::screenToRootView):
+        (WebKit::PageClientImpl::rootViewToScreen):
+        (WebKit::PageClientImpl::doneWithKeyEvent):
+        (WebKit::PageClientImpl::createPopupMenuProxy):
+        (WebKit::PageClientImpl::createContextMenuProxy):
+        (WebKit::PageClientImpl::createColorPicker):
+        (WebKit::PageClientImpl::setTextIndicator):
+        (WebKit::PageClientImpl::clearTextIndicator):
+        (WebKit::PageClientImpl::setTextIndicatorAnimationProgress):
+        (WebKit::PageClientImpl::accessibilityWebProcessTokenReceived):
+        (WebKit::PageClientImpl::enterAcceleratedCompositingMode):
+        (WebKit::PageClientImpl::exitAcceleratedCompositingMode):
+        (WebKit::PageClientImpl::updateAcceleratedCompositingMode):
+        (WebKit::PageClientImpl::setAcceleratedCompositingRootLayer):
+        (WebKit::PageClientImpl::acceleratedCompositingRootLayer):
+        (WebKit::PageClientImpl::takeViewSnapshot):
+        (WebKit::PageClientImpl::selectionDidChange):
+        (WebKit::PageClientImpl::wheelEventWasNotHandledByWebCore):
+        (WebKit::PageClientImpl::gestureEventWasNotHandledByWebCore):
+        (WebKit::PageClientImpl::pluginFocusOrWindowFocusChanged):
+        (WebKit::PageClientImpl::setPluginComplexTextInputState):
+        (WebKit::PageClientImpl::didPerformDictionaryLookup):
+        (WebKit::PageClientImpl::dismissContentRelativeChildWindows):
+        (WebKit::PageClientImpl::showCorrectionPanel):
+        (WebKit::PageClientImpl::recordAutocorrectionResponse):
+        (WebKit::PageClientImpl::recommendedScrollbarStyleDidChange):
+        (WebKit::PageClientImpl::intrinsicContentSizeDidChange):
+        (WebKit::PageClientImpl::executeSavedCommandBySelector):
+        (WebKit::PageClientImpl::showDictationAlternativeUI):
+        (WebKit::PageClientImpl::closeFullScreenManager):
+        (WebKit::PageClientImpl::isFullScreen):
+        (WebKit::PageClientImpl::enterFullScreen):
+        (WebKit::PageClientImpl::exitFullScreen):
+        (WebKit::PageClientImpl::beganEnterFullScreen):
+        (WebKit::PageClientImpl::beganExitFullScreen):
+        (WebKit::PageClientImpl::didFirstVisuallyNonEmptyLayoutForMainFrame):
+        (WebKit::PageClientImpl::didFinishLoadForMainFrame):
+        (WebKit::PageClientImpl::didFailLoadForMainFrame):
+        (WebKit::PageClientImpl::didSameDocumentNavigationForMainFrame):
+        (WebKit::PageClientImpl::removeNavigationGestureSnapshot):
+        (WebKit::PageClientImpl::boundsOfLayerInLayerBackedWindowCoordinates):
+        (WebKit::PageClientImpl::didPerformImmediateActionHitTest):
+        (WebKit::PageClientImpl::immediateActionAnimationControllerForHitTestResult):
+        (WebKit::PageClientImpl::showPlatformContextMenu):
+        (WebKit::PageClientImpl::refView):
+        (WebKit::PageClientImpl::derefView):
+        (WebKit::PageClientImpl::startWindowDrag):
+        (WebKit::PageClientImpl::platformWindow):
+        (WebKit::PageClientImpl::inspectorAttachmentView):
+        (WebKit::PageClientImpl::remoteObjectRegistry):
+        * UIProcess/mac/WebColorPickerMac.h:
+        * UIProcess/mac/WebColorPickerMac.mm:
+        (WebKit::WebColorPickerMac::create):
+        (WebKit::WebColorPickerMac::WebColorPickerMac):
+        (-[WKColorPopoverMac initWithFrame:inView:]):
+        * UIProcess/mac/WebContextMenuProxyMac.h:
+        * UIProcess/mac/WebContextMenuProxyMac.mm:
+        (WebKit::WebContextMenuProxyMac::WebContextMenuProxyMac):
+        * UIProcess/mac/WebPopupMenuProxyMac.h:
+        (WebKit::WebPopupMenuProxyMac::create):
+        * UIProcess/mac/WebPopupMenuProxyMac.mm:
+        (WebKit::WebPopupMenuProxyMac::WebPopupMenuProxyMac):
+        Move ownership of WebPageProxy and PageClientImpl to WebViewImpl.
+
</ins><span class="cx"> 2015-10-30  Alex Christensen  &lt;achristensen@webkit.org&gt;
</span><span class="cx"> 
</span><span class="cx">         Fix Mac CMake build after rr191810.
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPImacWKViewmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm (191823 => 191824)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm        2015-10-30 22:35:22 UTC (rev 191823)
+++ trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm        2015-10-30 22:48:32 UTC (rev 191824)
</span><span class="lines">@@ -24,105 +24,25 @@
</span><span class="cx">  */
</span><span class="cx"> 
</span><span class="cx"> #import &quot;config.h&quot;
</span><del>-#import &quot;WKView.h&quot;
</del><ins>+#import &quot;WKViewInternal.h&quot;
</ins><span class="cx"> 
</span><span class="cx"> #if PLATFORM(MAC)
</span><span class="cx"> 
</span><del>-#if USE(DICTATION_ALTERNATIVES)
-#import &lt;AppKit/NSTextAlternatives.h&gt;
-#import &lt;AppKit/NSAttributedString.h&gt;
-#endif
-
-#import &quot;APILegacyContextHistoryClient.h&quot;
</del><ins>+#import &quot;APIHitTestResult.h&quot;
</ins><span class="cx"> #import &quot;APIPageConfiguration.h&quot;
</span><del>-#import &quot;AppKitSPI.h&quot;
-#import &quot;AttributedString.h&quot;
-#import &quot;DataReference.h&quot;
-#import &quot;EditingRange.h&quot;
-#import &quot;EditorState.h&quot;
-#import &quot;LayerTreeContext.h&quot;
-#import &quot;Logging.h&quot;
-#import &quot;NativeWebKeyboardEvent.h&quot;
-#import &quot;NativeWebMouseEvent.h&quot;
-#import &quot;NativeWebWheelEvent.h&quot;
-#import &quot;PageClientImpl.h&quot;
-#import &quot;PasteboardTypes.h&quot;
-#import &quot;StringUtilities.h&quot;
-#import &quot;TextChecker.h&quot;
-#import &quot;TextCheckerState.h&quot;
-#import &quot;WKAPICast.h&quot;
-#import &quot;WKFullScreenWindowController.h&quot;
-#import &quot;WKLayoutMode.h&quot;
-#import &quot;WKProcessPoolInternal.h&quot;
-#import &quot;WKStringCF.h&quot;
-#import &quot;WKTextInputWindowController.h&quot;
-#import &quot;WKViewInternal.h&quot;
-#import &quot;WKViewPrivate.h&quot;
-#import &quot;WKWebView.h&quot;
-#import &quot;WebBackForwardList.h&quot;
-#import &quot;WebEventFactory.h&quot;
-#import &quot;WebHitTestResultData.h&quot;
</del><ins>+#import &quot;WKBrowsingContextGroupPrivate.h&quot;
+#import &quot;WKProcessGroupPrivate.h&quot;
+#import &quot;WebBackForwardListItem.h&quot;
</ins><span class="cx"> #import &quot;WebKit2Initialize.h&quot;
</span><del>-#import &quot;WebPage.h&quot;
</del><span class="cx"> #import &quot;WebPageGroup.h&quot;
</span><del>-#import &quot;WebPageProxy.h&quot;
-#import &quot;WebPreferences.h&quot;
</del><span class="cx"> #import &quot;WebProcessPool.h&quot;
</span><del>-#import &quot;WebProcessProxy.h&quot;
-#import &quot;WebSystemInterface.h&quot;
</del><span class="cx"> #import &quot;WebViewImpl.h&quot;
</span><del>-#import &lt;QuartzCore/QuartzCore.h&gt;
-#import &lt;WebCore/AXObjectCache.h&gt;
-#import &lt;WebCore/ColorMac.h&gt;
-#import &lt;WebCore/CoreGraphicsSPI.h&gt;
-#import &lt;WebCore/DataDetectorsSPI.h&gt;
-#import &lt;WebCore/DragController.h&gt;
-#import &lt;WebCore/DragData.h&gt;
-#import &lt;WebCore/FloatRect.h&gt;
-#import &lt;WebCore/Image.h&gt;
-#import &lt;WebCore/IntRect.h&gt;
-#import &lt;WebCore/FileSystem.h&gt;
-#import &lt;WebCore/KeyboardEvent.h&gt;
-#import &lt;WebCore/LocalizedStrings.h&gt;
-#import &lt;WebCore/NSMenuSPI.h&gt;
-#import &lt;WebCore/PlatformEventFactoryMac.h&gt;
-#import &lt;WebCore/PlatformScreen.h&gt;
-#import &lt;WebCore/Region.h&gt;
-#import &lt;WebCore/RuntimeApplicationChecks.h&gt;
-#import &lt;WebCore/SharedBuffer.h&gt;
-#import &lt;WebCore/TextAlternativeWithRange.h&gt;
-#import &lt;WebCore/TextIndicator.h&gt;
-#import &lt;WebCore/TextIndicatorWindow.h&gt;
-#import &lt;WebCore/TextUndoInsertionMarkupMac.h&gt;
-#import &lt;WebCore/WebCoreCALayerExtras.h&gt;
-#import &lt;WebCore/WebCoreFullScreenPlaceholderView.h&gt;
-#import &lt;WebCore/WebCoreFullScreenWindow.h&gt;
-#import &lt;WebCore/WebCoreNSStringExtras.h&gt;
-#import &lt;WebKitSystemInterface.h&gt;
-#import &lt;sys/stat.h&gt;
-#import &lt;wtf/RefPtr.h&gt;
-#import &lt;wtf/RetainPtr.h&gt;
-#import &lt;wtf/RunLoop.h&gt;
</del><span class="cx"> 
</span><del>-/* API internals. */
-#import &quot;WKBrowsingContextGroupPrivate.h&quot;
-#import &quot;WKProcessGroupPrivate.h&quot;
-
</del><span class="cx"> using namespace WebKit;
</span><span class="cx"> using namespace WebCore;
</span><span class="cx"> 
</span><del>-#if USE(ASYNC_NSTEXTINPUTCLIENT)
-@interface NSTextInputContext (WKNSTextInputContextDetails)
-- (void)handleEvent:(NSEvent *)event completionHandler:(void(^)(BOOL handled))completionHandler;
-- (void)handleEventByInputMethod:(NSEvent *)event completionHandler:(void(^)(BOOL handled))completionHandler;
-- (BOOL)handleEventByKeyboardLayout:(NSEvent *)event;
-@end
-#endif
-
</del><span class="cx"> @interface WKViewData : NSObject {
</span><span class="cx"> @public
</span><del>-    std::unique_ptr&lt;PageClientImpl&gt; _pageClient;
-    RefPtr&lt;WebPageProxy&gt; _page;
</del><span class="cx">     std::unique_ptr&lt;WebViewImpl&gt; _impl;
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -145,29 +65,18 @@
</span><span class="cx"> 
</span><span class="cx"> - (id)initWithFrame:(NSRect)frame processGroup:(WKProcessGroup *)processGroup browsingContextGroup:(WKBrowsingContextGroup *)browsingContextGroup relatedToView:(WKView *)relatedView
</span><span class="cx"> {
</span><del>-    return [self initWithFrame:frame contextRef:processGroup._contextRef pageGroupRef:browsingContextGroup._pageGroupRef relatedToPage:relatedView ? toAPI(relatedView-&gt;_data-&gt;_page.get()) : nil];
</del><ins>+    return [self initWithFrame:frame contextRef:processGroup._contextRef pageGroupRef:browsingContextGroup._pageGroupRef relatedToPage:relatedView ? relatedView.pageRef : nil];
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> #endif // WK_API_ENABLED
</span><span class="cx"> 
</span><span class="cx"> - (void)dealloc
</span><span class="cx"> {
</span><del>-#if WK_API_ENABLED
-    _data-&gt;_impl-&gt;destroyRemoteObjectRegistry();
-#endif
-
-    _data-&gt;_page-&gt;close();
-
</del><span class="cx">     _data-&gt;_impl = nullptr;
</span><span class="cx"> 
</span><span class="cx">     [_data release];
</span><span class="cx">     _data = nil;
</span><span class="cx"> 
</span><del>-    NSNotificationCenter* workspaceNotificationCenter = [[NSWorkspace sharedWorkspace] notificationCenter];
-    [workspaceNotificationCenter removeObserver:self name:NSWorkspaceActiveSpaceDidChangeNotification object:nil];
-
-    WebProcessPool::statistics().wkViewCount--;
-
</del><span class="cx">     [super dealloc];
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -235,8 +144,7 @@
</span><span class="cx"> 
</span><span class="cx"> - (void)prepareContentInRect:(NSRect)rect
</span><span class="cx"> {
</span><del>-    _data-&gt;_impl-&gt;setContentPreparationRect(NSRectToCGRect(rect));
-    _data-&gt;_impl-&gt;updateViewExposedRect();
</del><ins>+    _data-&gt;_impl-&gt;prepareContentInRect(NSRectToCGRect(rect));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> - (void)setFrameSize:(NSSize)size
</span><span class="lines">@@ -1007,34 +915,11 @@
</span><span class="cx">     if (!self)
</span><span class="cx">         return nil;
</span><span class="cx"> 
</span><del>-    [NSApp registerServicesMenuSendTypes:PasteboardTypes::forSelection() returnTypes:PasteboardTypes::forEditing()];
-
</del><span class="cx">     InitializeWebKit2();
</span><span class="cx"> 
</span><span class="cx">     _data = [[WKViewData alloc] init];
</span><ins>+    _data-&gt;_impl = std::make_unique&lt;WebViewImpl&gt;(self, webView, processPool, WTF::move(configuration));
</ins><span class="cx"> 
</span><del>-    _data-&gt;_pageClient = std::make_unique&lt;PageClientImpl&gt;(self, webView);
-    _data-&gt;_page = processPool.createWebPage(*_data-&gt;_pageClient, WTF::move(configuration));
-
-    _data-&gt;_impl = std::make_unique&lt;WebViewImpl&gt;(self, *_data-&gt;_page, *_data-&gt;_pageClient);
-    static_cast&lt;PageClientImpl&amp;&gt;(*_data-&gt;_pageClient).setImpl(*_data-&gt;_impl);
-
-    _data-&gt;_page-&gt;setAddsVisitedLinks(processPool.historyClient().addsVisitedLinks());
-
-    _data-&gt;_page-&gt;initializeWebPage();
-
-    _data-&gt;_impl-&gt;registerDraggedTypes();
-
-    self.wantsLayer = YES;
-
-    // Explicitly set the layer contents placement so AppKit will make sure that our layer has masksToBounds set to YES.
-    self.layerContentsPlacement = NSViewLayerContentsPlacementTopLeft;
-
-    WebProcessPool::statistics().wkViewCount++;
-
-    NSNotificationCenter* workspaceNotificationCenter = [[NSWorkspace sharedWorkspace] notificationCenter];
-    [workspaceNotificationCenter addObserver:self selector:@selector(_activeSpaceDidChange:) name:NSWorkspaceActiveSpaceDidChangeNotification object:nil];
-
</del><span class="cx">     return self;
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -1101,7 +986,7 @@
</span><span class="cx"> 
</span><span class="cx"> - (WKPageRef)pageRef
</span><span class="cx"> {
</span><del>-    return toAPI(_data-&gt;_page.get());
</del><ins>+    return toAPI(&amp;_data-&gt;_impl-&gt;page());
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> - (BOOL)canChangeFrameLayout:(WKFrameRef)frameRef
</span><span class="lines">@@ -1474,6 +1359,11 @@
</span><span class="cx">     _data-&gt;_impl-&gt;setDidMoveSwipeSnapshotCallback(callback);
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+- (id)_web_immediateActionAnimationControllerForHitTestResultInternal:(API::HitTestResult*)hitTestResult withType:(uint32_t)type userData:(API::Object*)userData
+{
+    return [self _immediateActionAnimationControllerForHitTestResult:toAPI(hitTestResult) withType:type userData:toAPI(userData)];
+}
+
</ins><span class="cx"> - (id)_immediateActionAnimationControllerForHitTestResult:(WKHitTestResultRef)hitTestResult withType:(uint32_t)type userData:(WKTypeRef)userData
</span><span class="cx"> {
</span><span class="cx">     return nil;
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessCocoaWebViewImplh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/Cocoa/WebViewImpl.h (191823 => 191824)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/Cocoa/WebViewImpl.h        2015-10-30 22:35:22 UTC (rev 191823)
+++ trunk/Source/WebKit2/UIProcess/Cocoa/WebViewImpl.h        2015-10-30 22:48:32 UTC (rev 191824)
</span><span class="lines">@@ -46,6 +46,7 @@
</span><span class="cx"> OBJC_CLASS WKFullScreenWindowController;
</span><span class="cx"> OBJC_CLASS WKImmediateActionController;
</span><span class="cx"> OBJC_CLASS WKViewLayoutStrategy;
</span><ins>+OBJC_CLASS WKWebView;
</ins><span class="cx"> OBJC_CLASS WKWindowVisibilityObserver;
</span><span class="cx"> OBJC_CLASS _WKThumbnailView;
</span><span class="cx"> 
</span><span class="lines">@@ -67,13 +68,15 @@
</span><span class="cx"> // They're not actually optional.
</span><span class="cx"> @optional
</span><span class="cx"> 
</span><del>-- (id)_immediateActionAnimationControllerForHitTestResult:(WKHitTestResultRef)hitTestResult withType:(uint32_t)type userData:(WKTypeRef)userData;
</del><ins>+- (id)_web_immediateActionAnimationControllerForHitTestResultInternal:(API::HitTestResult*)hitTestResult withType:(uint32_t)type userData:(API::Object*)userData;
+
</ins><span class="cx"> - (void)_prepareForImmediateActionAnimation;
</span><span class="cx"> - (void)_cancelImmediateActionAnimation;
</span><span class="cx"> - (void)_completeImmediateActionAnimation;
</span><span class="cx"> - (void)_dismissContentRelativeChildWindows;
</span><span class="cx"> - (void)_dismissContentRelativeChildWindowsWithAnimation:(BOOL)animate;
</span><span class="cx"> - (void)_gestureEventWasNotHandledByWebCore:(NSEvent *)event;
</span><ins>+- (void)_didChangeContentSize:(NSSize)newSize;
</ins><span class="cx"> 
</span><span class="cx"> @end
</span><span class="cx"> 
</span><span class="lines">@@ -83,6 +86,7 @@
</span><span class="cx"> 
</span><span class="cx"> namespace WebKit {
</span><span class="cx"> 
</span><ins>+class PageClientImpl;
</ins><span class="cx"> class DrawingAreaProxy;
</span><span class="cx"> class ViewGestureController;
</span><span class="cx"> class WebEditCommandProxy;
</span><span class="lines">@@ -106,12 +110,14 @@
</span><span class="cx">     WTF_MAKE_FAST_ALLOCATED;
</span><span class="cx">     WTF_MAKE_NONCOPYABLE(WebViewImpl);
</span><span class="cx"> public:
</span><del>-    WebViewImpl(NSView &lt;WebViewImplDelegate&gt; *, WebPageProxy&amp;, PageClient&amp;);
</del><ins>+    WebViewImpl(NSView &lt;WebViewImplDelegate&gt; *, WKWebView *outerWebView, WebProcessPool&amp;, Ref&lt;API::PageConfiguration&gt;&amp;&amp;);
</ins><span class="cx"> 
</span><span class="cx">     ~WebViewImpl();
</span><span class="cx"> 
</span><span class="cx">     NSWindow *window();
</span><span class="cx"> 
</span><ins>+    WebPageProxy&amp; page() { return m_page.get(); }
+
</ins><span class="cx">     void processDidExit();
</span><span class="cx">     void pageClosed();
</span><span class="cx">     void didRelaunchProcess();
</span><span class="lines">@@ -160,7 +166,7 @@
</span><span class="cx">     void setTopContentInset(CGFloat);
</span><span class="cx">     CGFloat topContentInset() const { return m_topContentInset; }
</span><span class="cx"> 
</span><del>-    void setContentPreparationRect(CGRect);
</del><ins>+    void prepareContentInRect(CGRect);
</ins><span class="cx">     void updateViewExposedRect();
</span><span class="cx">     void setClipsToVisibleRect(bool);
</span><span class="cx">     bool clipsToVisibleRect() const { return m_clipsToVisibleRect; }
</span><span class="lines">@@ -318,12 +324,12 @@
</span><span class="cx">     void prepareForDictionaryLookup();
</span><span class="cx">     void setAllowsLinkPreview(bool);
</span><span class="cx">     bool allowsLinkPreview() const { return m_allowsLinkPreview; }
</span><del>-    void* immediateActionAnimationControllerForHitTestResult(WKHitTestResultRef, uint32_t type, WKTypeRef userData);
-    void* immediateActionAnimationControllerForHitTestResultFromViewOnly(WKHitTestResultRef, uint32_t type, WKTypeRef userData);
</del><ins>+    void* immediateActionAnimationControllerForHitTestResult(API::HitTestResult*, uint32_t type, API::Object* userData);
</ins><span class="cx">     void didPerformImmediateActionHitTest(const WebHitTestResultData&amp;, bool contentPreventsDefault, API::Object* userData);
</span><span class="cx">     void prepareForImmediateActionAnimation();
</span><span class="cx">     void cancelImmediateActionAnimation();
</span><span class="cx">     void completeImmediateActionAnimation();
</span><ins>+    void didChangeContentSize(CGSize);
</ins><span class="cx"> 
</span><span class="cx">     void setIgnoresNonWheelEvents(bool);
</span><span class="cx">     bool ignoresNonWheelEvents() const { return m_ignoresNonWheelEvents; }
</span><span class="lines">@@ -363,7 +369,6 @@
</span><span class="cx">     NSView *inspectorAttachmentView();
</span><span class="cx"> 
</span><span class="cx">     _WKRemoteObjectRegistry *remoteObjectRegistry();
</span><del>-    void destroyRemoteObjectRegistry(); // FIXME: Temporary. Can fold in after we move ownership of WebPageProxy here.
</del><span class="cx"> 
</span><span class="cx">     WKBrowsingContextController *browsingContextController();
</span><span class="cx"> #endif // WK_API_ENABLED
</span><span class="lines">@@ -504,8 +509,8 @@
</span><span class="cx">     void mouseDraggedInternal(NSEvent *);
</span><span class="cx"> 
</span><span class="cx">     NSView &lt;WebViewImplDelegate&gt; *m_view;
</span><del>-    WebPageProxy&amp; m_page;
-    PageClient&amp; m_pageClient;
</del><ins>+    std::unique_ptr&lt;PageClient&gt; m_pageClient;
+    Ref&lt;WebPageProxy&gt; m_page;
</ins><span class="cx"> 
</span><span class="cx">     WeakPtrFactory&lt;WebViewImpl&gt; m_weakPtrFactory;
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessCocoaWebViewImplmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/Cocoa/WebViewImpl.mm (191823 => 191824)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/Cocoa/WebViewImpl.mm        2015-10-30 22:35:22 UTC (rev 191823)
+++ trunk/Source/WebKit2/UIProcess/Cocoa/WebViewImpl.mm        2015-10-30 22:48:32 UTC (rev 191824)
</span><span class="lines">@@ -28,6 +28,7 @@
</span><span class="cx"> 
</span><span class="cx"> #if PLATFORM(MAC)
</span><span class="cx"> 
</span><ins>+#import &quot;APILegacyContextHistoryClient.h&quot;
</ins><span class="cx"> #import &quot;AppKitSPI.h&quot;
</span><span class="cx"> #import &quot;ColorSpaceData.h&quot;
</span><span class="cx"> #import &quot;GenericCallback.h&quot;
</span><span class="lines">@@ -37,6 +38,7 @@
</span><span class="cx"> #import &quot;NativeWebMouseEvent.h&quot;
</span><span class="cx"> #import &quot;NativeWebWheelEvent.h&quot;
</span><span class="cx"> #import &quot;PageClient.h&quot;
</span><ins>+#import &quot;PageClientImpl.h&quot;
</ins><span class="cx"> #import &quot;PasteboardTypes.h&quot;
</span><span class="cx"> #import &quot;RemoteLayerTreeDrawingAreaProxy.h&quot;
</span><span class="cx"> #import &quot;RemoteObjectRegistry.h&quot;
</span><span class="lines">@@ -121,6 +123,9 @@
</span><span class="cx">     _view = view;
</span><span class="cx">     _impl = &amp;impl;
</span><span class="cx"> 
</span><ins>+    NSNotificationCenter* workspaceNotificationCenter = [[NSWorkspace sharedWorkspace] notificationCenter];
+    [workspaceNotificationCenter addObserver:self selector:@selector(_activeSpaceDidChange:) name:NSWorkspaceActiveSpaceDidChangeNotification object:nil];
+
</ins><span class="cx">     return self;
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -129,6 +134,9 @@
</span><span class="cx">     if (canLoadLUNotificationPopoverWillClose())
</span><span class="cx">         [[NSNotificationCenter defaultCenter] removeObserver:self name:getLUNotificationPopoverWillClose() object:nil];
</span><span class="cx"> 
</span><ins>+    NSNotificationCenter *workspaceNotificationCenter = [[NSWorkspace sharedWorkspace] notificationCenter];
+    [workspaceNotificationCenter removeObserver:self name:NSWorkspaceActiveSpaceDidChangeNotification object:nil];
+
</ins><span class="cx">     [super dealloc];
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -287,6 +295,11 @@
</span><span class="cx">     _impl-&gt;clearTextIndicatorWithAnimation(WebCore::TextIndicatorWindowDismissalAnimation::None);
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+- (void)_activeSpaceDidChange:(NSNotification *)notification
+{
+    _impl-&gt;activeSpaceDidChange();
+}
+
</ins><span class="cx"> @end
</span><span class="cx"> 
</span><span class="cx"> @interface WKEditCommandObjC : NSObject {
</span><span class="lines">@@ -427,21 +440,25 @@
</span><span class="cx">     return options;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-WebViewImpl::WebViewImpl(NSView &lt;WebViewImplDelegate&gt; *view, WebPageProxy&amp; page, PageClient&amp; pageClient)
</del><ins>+WebViewImpl::WebViewImpl(NSView &lt;WebViewImplDelegate&gt; *view, WKWebView *outerWebView, WebProcessPool&amp; processPool, Ref&lt;API::PageConfiguration&gt;&amp;&amp; configuration)
</ins><span class="cx">     : m_view(view)
</span><del>-    , m_page(page)
-    , m_pageClient(pageClient)
</del><ins>+    , m_pageClient(std::make_unique&lt;PageClientImpl&gt;(view, outerWebView))
+    , m_page(processPool.createWebPage(*m_pageClient, WTF::move(configuration)))
</ins><span class="cx">     , m_weakPtrFactory(this)
</span><del>-    , m_needsViewFrameInWindowCoordinates(m_page.preferences().pluginsEnabled())
</del><ins>+    , m_needsViewFrameInWindowCoordinates(m_page-&gt;preferences().pluginsEnabled())
</ins><span class="cx">     , m_intrinsicContentSize(CGSizeMake(NSViewNoInstrinsicMetric, NSViewNoInstrinsicMetric))
</span><span class="cx">     , m_layoutStrategy([WKViewLayoutStrategy layoutStrategyWithPage:m_page view:m_view viewImpl:*this mode:kWKLayoutModeViewSize])
</span><span class="cx">     , m_undoTarget(adoptNS([[WKEditorUndoTargetObjC alloc] init]))
</span><span class="cx">     , m_windowVisibilityObserver(adoptNS([[WKWindowVisibilityObserver alloc] initWithView:view impl:*this]))
</span><span class="cx">     , m_primaryTrackingArea(adoptNS([[NSTrackingArea alloc] initWithRect:m_view.frame options:trackingAreaOptions() owner:m_view userInfo:nil]))
</span><span class="cx"> {
</span><ins>+    static_cast&lt;PageClientImpl&amp;&gt;(*m_pageClient).setImpl(*this);
+
+    [NSApp registerServicesMenuSendTypes:PasteboardTypes::forSelection() returnTypes:PasteboardTypes::forEditing()];
+
</ins><span class="cx">     [m_view addTrackingArea:m_primaryTrackingArea.get()];
</span><span class="cx"> 
</span><del>-    m_page.setIntrinsicDeviceScaleFactor(intrinsicDeviceScaleFactor());
</del><ins>+    m_page-&gt;setIntrinsicDeviceScaleFactor(intrinsicDeviceScaleFactor());
</ins><span class="cx"> 
</span><span class="cx"> #if __MAC_OS_X_VERSION_MIN_REQUIRED &gt;= 101000
</span><span class="cx">     if (Class gestureClass = NSClassFromString(@&quot;NSImmediateActionGestureRecognizer&quot;)) {
</span><span class="lines">@@ -451,10 +468,32 @@
</span><span class="cx">         [m_immediateActionGestureRecognizer setDelaysPrimaryMouseButtonEvents:NO];
</span><span class="cx">     }
</span><span class="cx"> #endif
</span><ins>+
+
+    m_page-&gt;setAddsVisitedLinks(processPool.historyClient().addsVisitedLinks());
+
+    m_page-&gt;initializeWebPage();
+
+    registerDraggedTypes();
+
+    m_view.wantsLayer = YES;
+
+    // Explicitly set the layer contents placement so AppKit will make sure that our layer has masksToBounds set to YES.
+    m_view.layerContentsPlacement = NSViewLayerContentsPlacementTopLeft;
+
+    WebProcessPool::statistics().wkViewCount++;
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> WebViewImpl::~WebViewImpl()
</span><span class="cx"> {
</span><ins>+#if WK_API_ENABLED
+    if (m_remoteObjectRegistry) {
+        m_page-&gt;process().processPool().removeMessageReceiver(Messages::RemoteObjectRegistry::messageReceiverName(), m_page-&gt;pageID());
+        [m_remoteObjectRegistry _invalidate];
+        m_remoteObjectRegistry = nil;
+    }
+#endif
+
</ins><span class="cx">     ASSERT(!m_inSecureInputState);
</span><span class="cx"> 
</span><span class="cx"> #if WK_API_ENABLED
</span><span class="lines">@@ -466,6 +505,11 @@
</span><span class="cx"> #if __MAC_OS_X_VERSION_MIN_REQUIRED &gt;= 101000
</span><span class="cx">     [m_immediateActionController willDestroyView:m_view];
</span><span class="cx"> #endif
</span><ins>+
+    m_page-&gt;close();
+
+    WebProcessPool::statistics().wkViewCount--;
+
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> NSWindow *WebViewImpl::window()
</span><span class="lines">@@ -497,27 +541,27 @@
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::setDrawsBackground(bool drawsBackground)
</span><span class="cx"> {
</span><del>-    m_page.setDrawsBackground(drawsBackground);
</del><ins>+    m_page-&gt;setDrawsBackground(drawsBackground);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> bool WebViewImpl::drawsBackground() const
</span><span class="cx"> {
</span><del>-    return m_page.drawsBackground();
</del><ins>+    return m_page-&gt;drawsBackground();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::setDrawsTransparentBackground(bool drawsTransparentBackground)
</span><span class="cx"> {
</span><del>-    m_page.setDrawsTransparentBackground(drawsTransparentBackground);
</del><ins>+    m_page-&gt;setDrawsTransparentBackground(drawsTransparentBackground);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> bool WebViewImpl::drawsTransparentBackground() const
</span><span class="cx"> {
</span><del>-    return m_page.drawsTransparentBackground();
</del><ins>+    return m_page-&gt;drawsTransparentBackground();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> bool WebViewImpl::isOpaque() const
</span><span class="cx"> {
</span><del>-    return m_page.drawsBackground();
</del><ins>+    return m_page-&gt;drawsBackground();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> bool WebViewImpl::acceptsFirstMouse(NSEvent *event)
</span><span class="lines">@@ -531,7 +575,7 @@
</span><span class="cx">         return false;
</span><span class="cx"> 
</span><span class="cx">     setLastMouseDownEvent(event);
</span><del>-    bool result = m_page.acceptsFirstMouse(event.eventNumber, WebEventFactory::createWebMouseEvent(event, m_lastPressureEvent.get(), m_view));
</del><ins>+    bool result = m_page-&gt;acceptsFirstMouse(event.eventNumber, WebEventFactory::createWebMouseEvent(event, m_lastPressureEvent.get(), m_view));
</ins><span class="cx">     setLastMouseDownEvent(nil);
</span><span class="cx">     return result;
</span><span class="cx"> }
</span><span class="lines">@@ -555,9 +599,9 @@
</span><span class="cx">     m_inBecomeFirstResponder = true;
</span><span class="cx"> 
</span><span class="cx">     updateSecureInputState();
</span><del>-    m_page.viewStateDidChange(WebCore::ViewState::IsFocused);
</del><ins>+    m_page-&gt;viewStateDidChange(WebCore::ViewState::IsFocused);
</ins><span class="cx">     // Restore the selection in the editable region if resigning first responder cleared selection.
</span><del>-    m_page.restoreSelectionInFocusedEditableElement();
</del><ins>+    m_page-&gt;restoreSelectionInFocusedEditableElement();
</ins><span class="cx"> 
</span><span class="cx">     m_inBecomeFirstResponder = false;
</span><span class="cx"> 
</span><span class="lines">@@ -566,7 +610,7 @@
</span><span class="cx">         NSEvent *keyboardEvent = nil;
</span><span class="cx">         if ([event type] == NSKeyDown || [event type] == NSKeyUp)
</span><span class="cx">             keyboardEvent = event;
</span><del>-        m_page.setInitialFocus(direction == NSSelectingNext, keyboardEvent != nil, NativeWebKeyboardEvent(keyboardEvent, false, { }), [](WebKit::CallbackBase::Error) { });
</del><ins>+        m_page-&gt;setInitialFocus(direction == NSSelectingNext, keyboardEvent != nil, NativeWebKeyboardEvent(keyboardEvent, false, { }), [](WebKit::CallbackBase::Error) { });
</ins><span class="cx">     }
</span><span class="cx">     return true;
</span><span class="cx"> }
</span><span class="lines">@@ -589,20 +633,20 @@
</span><span class="cx">     m_inResignFirstResponder = true;
</span><span class="cx"> 
</span><span class="cx"> #if USE(ASYNC_NSTEXTINPUTCLIENT)
</span><del>-    m_page.confirmCompositionAsync();
</del><ins>+    m_page-&gt;confirmCompositionAsync();
</ins><span class="cx"> #else
</span><del>-    if (m_page.editorState().hasComposition &amp;&amp; !m_page.editorState().shouldIgnoreCompositionSelectionChange)
-        m_page.cancelComposition();
</del><ins>+    if (m_page-&gt;editorState().hasComposition &amp;&amp; !m_page-&gt;editorState().shouldIgnoreCompositionSelectionChange)
+        m_page-&gt;cancelComposition();
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx">     notifyInputContextAboutDiscardedComposition();
</span><span class="cx"> 
</span><span class="cx">     resetSecureInputState();
</span><span class="cx"> 
</span><del>-    if (!m_page.maintainsInactiveSelection())
-        m_page.clearSelection();
</del><ins>+    if (!m_page-&gt;maintainsInactiveSelection())
+        m_page-&gt;clearSelection();
</ins><span class="cx"> 
</span><del>-    m_page.viewStateDidChange(WebCore::ViewState::IsFocused);
</del><ins>+    m_page-&gt;viewStateDidChange(WebCore::ViewState::IsFocused);
</ins><span class="cx">     
</span><span class="cx">     m_inResignFirstResponder = false;
</span><span class="cx">     
</span><span class="lines">@@ -620,14 +664,14 @@
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::viewWillStartLiveResize()
</span><span class="cx"> {
</span><del>-    m_page.viewWillStartLiveResize();
</del><ins>+    m_page-&gt;viewWillStartLiveResize();
</ins><span class="cx"> 
</span><span class="cx">     [m_layoutStrategy willStartLiveResize];
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::viewDidEndLiveResize()
</span><span class="cx"> {
</span><del>-    m_page.viewWillEndLiveResize();
</del><ins>+    m_page-&gt;viewWillEndLiveResize();
</ins><span class="cx"> 
</span><span class="cx">     [m_layoutStrategy didEndLiveResize];
</span><span class="cx"> }
</span><span class="lines">@@ -701,18 +745,18 @@
</span><span class="cx">             accessibilityPosition = [[weakThis-&gt;m_view accessibilityAttributeValue:NSAccessibilityPositionAttribute] pointValue];
</span><span class="cx"> #pragma clang diagnostic pop
</span><span class="cx">         
</span><del>-        weakThis-&gt;m_page.windowAndViewFramesChanged(viewFrameInWindowCoordinates, accessibilityPosition);
</del><ins>+        weakThis-&gt;m_page-&gt;windowAndViewFramesChanged(viewFrameInWindowCoordinates, accessibilityPosition);
</ins><span class="cx">     });
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::setFixedLayoutSize(CGSize fixedLayoutSize)
</span><span class="cx"> {
</span><del>-    m_page.setFixedLayoutSize(WebCore::expandedIntSize(WebCore::FloatSize(fixedLayoutSize)));
</del><ins>+    m_page-&gt;setFixedLayoutSize(WebCore::expandedIntSize(WebCore::FloatSize(fixedLayoutSize)));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> CGSize WebViewImpl::fixedLayoutSize() const
</span><span class="cx"> {
</span><del>-    return m_page.fixedLayoutSize();
</del><ins>+    return m_page-&gt;fixedLayoutSize();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> std::unique_ptr&lt;WebKit::DrawingAreaProxy&gt; WebViewImpl::createDrawingAreaProxy()
</span><span class="lines">@@ -725,16 +769,16 @@
</span><span class="cx"> 
</span><span class="cx"> bool WebViewImpl::isUsingUISideCompositing() const
</span><span class="cx"> {
</span><del>-    auto* drawingArea = m_page.drawingArea();
</del><ins>+    auto* drawingArea = m_page-&gt;drawingArea();
</ins><span class="cx">     return drawingArea &amp;&amp; drawingArea-&gt;type() == DrawingAreaTypeRemoteLayerTree;
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::setDrawingAreaSize(CGSize size)
</span><span class="cx"> {
</span><del>-    if (!m_page.drawingArea())
</del><ins>+    if (!m_page-&gt;drawingArea())
</ins><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    m_page.drawingArea()-&gt;setSize(WebCore::IntSize(size), WebCore::IntSize(), WebCore::IntSize(m_resizeScrollOffset));
</del><ins>+    m_page-&gt;drawingArea()-&gt;setSize(WebCore::IntSize(size), WebCore::IntSize(), WebCore::IntSize(m_resizeScrollOffset));
</ins><span class="cx">     m_resizeScrollOffset = CGSizeZero;
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -755,7 +799,7 @@
</span><span class="cx">     // If a geometry update is pending the new update won't be sent. Poll without waiting for any
</span><span class="cx">     // pending did-update message now, such that the new update can be sent. We do so after setting
</span><span class="cx">     // the drawing area size such that the latest update is sent.
</span><del>-    if (DrawingAreaProxy* drawingArea = m_page.drawingArea())
</del><ins>+    if (DrawingAreaProxy* drawingArea = m_page-&gt;drawingArea())
</ins><span class="cx">         drawingArea-&gt;waitForPossibleGeometryUpdate(std::chrono::milliseconds::zero());
</span><span class="cx"> #else
</span><span class="cx">     ASSERT_NOT_REACHED();
</span><span class="lines">@@ -766,7 +810,7 @@
</span><span class="cx"> {
</span><span class="cx">     // This SPI is only used on 10.9 and below, and is incompatible with the fence-based drawing area size synchronization in 10.10+.
</span><span class="cx"> #if __MAC_OS_X_VERSION_MIN_REQUIRED &lt;= 1090
</span><del>-    if (DrawingAreaProxy* drawingArea = m_page.drawingArea()) {
</del><ins>+    if (DrawingAreaProxy* drawingArea = m_page-&gt;drawingArea()) {
</ins><span class="cx">         // If a geometry update is still pending then the action of receiving the
</span><span class="cx">         // first geometry update may result in another update being scheduled -
</span><span class="cx">         // we should wait for this to complete too.
</span><span class="lines">@@ -792,14 +836,14 @@
</span><span class="cx">     if (frameSizeUpdatesDisabled())
</span><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    if (DrawingAreaProxy* drawingArea = m_page.drawingArea())
</del><ins>+    if (DrawingAreaProxy* drawingArea = m_page-&gt;drawingArea())
</ins><span class="cx">         drawingArea-&gt;waitForPossibleGeometryUpdate();
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::drawRect(CGRect rect)
</span><span class="cx"> {
</span><span class="cx">     LOG(Printing, &quot;drawRect: x:%g, y:%g, width:%g, height:%g&quot;, rect.origin.x, rect.origin.y, rect.size.width, rect.size.height);
</span><del>-    m_page.endPrinting();
</del><ins>+    m_page-&gt;endPrinting();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> bool WebViewImpl::canChangeFrameLayout(WebFrameProxy&amp; frame)
</span><span class="lines">@@ -869,13 +913,15 @@
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     m_didScheduleSetTopContentInset = false;
</span><del>-    m_page.setTopContentInset(m_topContentInset);
</del><ins>+    m_page-&gt;setTopContentInset(m_topContentInset);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><del>-void WebViewImpl::setContentPreparationRect(CGRect rect)
</del><ins>+void WebViewImpl::prepareContentInRect(CGRect rect)
</ins><span class="cx"> {
</span><span class="cx">     m_contentPreparationRect = rect;
</span><span class="cx">     m_useContentPreparationRectForVisibleRect = true;
</span><ins>+
+    updateViewExposedRect();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::updateViewExposedRect()
</span><span class="lines">@@ -885,7 +931,7 @@
</span><span class="cx">     if (m_useContentPreparationRectForVisibleRect)
</span><span class="cx">         exposedRect = CGRectUnion(m_contentPreparationRect, exposedRect);
</span><span class="cx"> 
</span><del>-    if (auto drawingArea = m_page.drawingArea())
</del><ins>+    if (auto drawingArea = m_page-&gt;drawingArea())
</ins><span class="cx">         drawingArea-&gt;setExposedRect(m_clipsToVisibleRect ? WebCore::FloatRect(exposedRect) : WebCore::FloatRect::infiniteRect());
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -899,25 +945,25 @@
</span><span class="cx"> {
</span><span class="cx">     bool expandsToFit = minimumSizeForAutoLayout.width &gt; 0;
</span><span class="cx"> 
</span><del>-    m_page.setMinimumLayoutSize(WebCore::IntSize(minimumSizeForAutoLayout));
-    m_page.setMainFrameIsScrollable(!expandsToFit);
</del><ins>+    m_page-&gt;setMinimumLayoutSize(WebCore::IntSize(minimumSizeForAutoLayout));
+    m_page-&gt;setMainFrameIsScrollable(!expandsToFit);
</ins><span class="cx"> 
</span><span class="cx">     setClipsToVisibleRect(expandsToFit);
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> CGSize WebViewImpl::minimumSizeForAutoLayout() const
</span><span class="cx"> {
</span><del>-    return m_page.minimumLayoutSize();
</del><ins>+    return m_page-&gt;minimumLayoutSize();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::setShouldExpandToViewHeightForAutoLayout(bool shouldExpandToViewHeightForAutoLayout)
</span><span class="cx"> {
</span><del>-    m_page.setAutoSizingShouldExpandToViewHeight(shouldExpandToViewHeightForAutoLayout);
</del><ins>+    m_page-&gt;setAutoSizingShouldExpandToViewHeight(shouldExpandToViewHeightForAutoLayout);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> bool WebViewImpl::shouldExpandToViewHeightForAutoLayout() const
</span><span class="cx"> {
</span><del>-    return m_page.autoSizingShouldExpandToViewHeight();
</del><ins>+    return m_page-&gt;autoSizingShouldExpandToViewHeight();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::setIntrinsicContentSize(CGSize intrinsicContentSize)
</span><span class="lines">@@ -927,7 +973,7 @@
</span><span class="cx">     // so that autolayout will know to provide space for us.
</span><span class="cx"> 
</span><span class="cx">     CGSize intrinsicContentSizeAcknowledgingFlexibleWidth = intrinsicContentSize;
</span><del>-    if (intrinsicContentSize.width &lt; m_page.minimumLayoutSize().width())
</del><ins>+    if (intrinsicContentSize.width &lt; m_page-&gt;minimumLayoutSize().width())
</ins><span class="cx">         intrinsicContentSizeAcknowledgingFlexibleWidth.width = NSViewNoInstrinsicMetric;
</span><span class="cx"> 
</span><span class="cx">     m_intrinsicContentSize = intrinsicContentSizeAcknowledgingFlexibleWidth;
</span><span class="lines">@@ -949,13 +995,13 @@
</span><span class="cx">     if (viewScale &lt;= 0 || isnan(viewScale) || isinf(viewScale))
</span><span class="cx">         [NSException raise:NSInvalidArgumentException format:@&quot;View scale should be a positive number&quot;];
</span><span class="cx"> 
</span><del>-    m_page.scaleView(viewScale);
</del><ins>+    m_page-&gt;scaleView(viewScale);
</ins><span class="cx">     [m_layoutStrategy didChangeViewScale];
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> CGFloat WebViewImpl::viewScale() const
</span><span class="cx"> {
</span><del>-    return m_page.viewScaleFactor();
</del><ins>+    return m_page-&gt;viewScaleFactor();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> WKLayoutMode WebViewImpl::layoutMode() const
</span><span class="lines">@@ -982,7 +1028,7 @@
</span><span class="cx">     if ([m_fullScreenWindowController isFullScreen])
</span><span class="cx">         return false;
</span><span class="cx"> 
</span><del>-    WebFrameProxy* frame = m_page.mainFrame();
</del><ins>+    WebFrameProxy* frame = m_page-&gt;mainFrame();
</ins><span class="cx">     if (!frame)
</span><span class="cx">         return true;
</span><span class="cx"> 
</span><span class="lines">@@ -1015,7 +1061,7 @@
</span><span class="cx"> void WebViewImpl::setOverrideDeviceScaleFactor(CGFloat deviceScaleFactor)
</span><span class="cx"> {
</span><span class="cx">     m_overrideDeviceScaleFactor = deviceScaleFactor;
</span><del>-    m_page.setIntrinsicDeviceScaleFactor(intrinsicDeviceScaleFactor());
</del><ins>+    m_page-&gt;setIntrinsicDeviceScaleFactor(intrinsicDeviceScaleFactor());
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> float WebViewImpl::intrinsicDeviceScaleFactor() const
</span><span class="lines">@@ -1031,19 +1077,19 @@
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::windowDidOrderOffScreen()
</span><span class="cx"> {
</span><del>-    m_page.viewStateDidChange(WebCore::ViewState::IsVisible | WebCore::ViewState::WindowIsActive);
</del><ins>+    m_page-&gt;viewStateDidChange(WebCore::ViewState::IsVisible | WebCore::ViewState::WindowIsActive);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::windowDidOrderOnScreen()
</span><span class="cx"> {
</span><del>-    m_page.viewStateDidChange(WebCore::ViewState::IsVisible | WebCore::ViewState::WindowIsActive);
</del><ins>+    m_page-&gt;viewStateDidChange(WebCore::ViewState::IsVisible | WebCore::ViewState::WindowIsActive);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::windowDidBecomeKey(NSWindow *keyWindow)
</span><span class="cx"> {
</span><span class="cx">     if (keyWindow == m_view.window || keyWindow == m_view.window.attachedSheet) {
</span><span class="cx">         updateSecureInputState();
</span><del>-        m_page.viewStateDidChange(WebCore::ViewState::WindowIsActive);
</del><ins>+        m_page-&gt;viewStateDidChange(WebCore::ViewState::WindowIsActive);
</ins><span class="cx">     }
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -1051,18 +1097,18 @@
</span><span class="cx"> {
</span><span class="cx">     if (formerKeyWindow == m_view.window || formerKeyWindow == m_view.window.attachedSheet) {
</span><span class="cx">         updateSecureInputState();
</span><del>-        m_page.viewStateDidChange(WebCore::ViewState::WindowIsActive);
</del><ins>+        m_page-&gt;viewStateDidChange(WebCore::ViewState::WindowIsActive);
</ins><span class="cx">     }
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::windowDidMiniaturize()
</span><span class="cx"> {
</span><del>-    m_page.viewStateDidChange(WebCore::ViewState::IsVisible);
</del><ins>+    m_page-&gt;viewStateDidChange(WebCore::ViewState::IsVisible);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::windowDidDeminiaturize()
</span><span class="cx"> {
</span><del>-    m_page.viewStateDidChange(WebCore::ViewState::IsVisible);
</del><ins>+    m_page-&gt;viewStateDidChange(WebCore::ViewState::IsVisible);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::windowDidMove()
</span><span class="lines">@@ -1081,30 +1127,30 @@
</span><span class="cx">     if (oldBackingScaleFactor == newBackingScaleFactor)
</span><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    m_page.setIntrinsicDeviceScaleFactor(newBackingScaleFactor);
</del><ins>+    m_page-&gt;setIntrinsicDeviceScaleFactor(newBackingScaleFactor);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::windowDidChangeScreen()
</span><span class="cx"> {
</span><span class="cx">     NSWindow *window = m_targetWindowForMovePreparation ? m_targetWindowForMovePreparation : m_view.window;
</span><del>-    m_page.windowScreenDidChange((PlatformDisplayID)[[[[window screen] deviceDescription] objectForKey:@&quot;NSScreenNumber&quot;] intValue]);
</del><ins>+    m_page-&gt;windowScreenDidChange((PlatformDisplayID)[[[[window screen] deviceDescription] objectForKey:@&quot;NSScreenNumber&quot;] intValue]);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::windowDidChangeLayerHosting()
</span><span class="cx"> {
</span><del>-    m_page.layerHostingModeDidChange();
</del><ins>+    m_page-&gt;layerHostingModeDidChange();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::windowDidChangeOcclusionState()
</span><span class="cx"> {
</span><del>-    m_page.viewStateDidChange(WebCore::ViewState::IsVisible);
</del><ins>+    m_page-&gt;viewStateDidChange(WebCore::ViewState::IsVisible);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> bool WebViewImpl::shouldDelayWindowOrderingForEvent(NSEvent *event)
</span><span class="cx"> {
</span><span class="cx">     // If this is the active window or we don't have a range selection, there is no need to perform additional checks
</span><span class="cx">     // and we can avoid making a synchronous call to the WebProcess.
</span><del>-    if (m_view.window.isKeyWindow || m_page.editorState().selectionIsNone || !m_page.editorState().selectionIsRange)
</del><ins>+    if (m_view.window.isKeyWindow || m_page-&gt;editorState().selectionIsNone || !m_page-&gt;editorState().selectionIsRange)
</ins><span class="cx">         return false;
</span><span class="cx"> 
</span><span class="cx">     // There's a chance that responding to this event will run a nested event loop, and
</span><span class="lines">@@ -1116,7 +1162,7 @@
</span><span class="cx">         return false;
</span><span class="cx"> 
</span><span class="cx">     setLastMouseDownEvent(event);
</span><del>-    bool result = m_page.shouldDelayWindowOrderingForEvent(WebEventFactory::createWebMouseEvent(event, m_lastPressureEvent.get(), m_view));
</del><ins>+    bool result = m_page-&gt;shouldDelayWindowOrderingForEvent(WebEventFactory::createWebMouseEvent(event, m_lastPressureEvent.get(), m_view));
</ins><span class="cx">     setLastMouseDownEvent(nil);
</span><span class="cx">     return result;
</span><span class="cx"> }
</span><span class="lines">@@ -1124,7 +1170,7 @@
</span><span class="cx"> bool WebViewImpl::windowResizeMouseLocationIsInVisibleScrollerThumb(CGPoint point)
</span><span class="cx"> {
</span><span class="cx">     NSPoint localPoint = [m_view convertPoint:NSPointFromCGPoint(point) fromView:nil];
</span><del>-    NSRect visibleThumbRect = NSRect(m_page.visibleScrollerThumbRect());
</del><ins>+    NSRect visibleThumbRect = NSRect(m_page-&gt;visibleScrollerThumbRect());
</ins><span class="cx">     return NSMouseInRect(localPoint, visibleThumbRect, m_view.isFlipped);
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -1156,12 +1202,12 @@
</span><span class="cx">             m_viewInWindowChangeWasDeferred = true;
</span><span class="cx">         else
</span><span class="cx">             viewStateChanges |= WebCore::ViewState::IsInWindow;
</span><del>-        m_page.viewStateDidChange(viewStateChanges);
</del><ins>+        m_page-&gt;viewStateDidChange(viewStateChanges);
</ins><span class="cx"> 
</span><span class="cx">         updateWindowAndViewFrames();
</span><span class="cx"> 
</span><span class="cx">         // FIXME(135509) This call becomes unnecessary once 135509 is fixed; remove.
</span><del>-        m_page.layerHostingModeDidChange();
</del><ins>+        m_page-&gt;layerHostingModeDidChange();
</ins><span class="cx"> 
</span><span class="cx">         if (!m_flagsChangedEventMonitor) {
</span><span class="cx">             auto weakThis = createWeakPtr();
</span><span class="lines">@@ -1184,7 +1230,7 @@
</span><span class="cx">             m_viewInWindowChangeWasDeferred = true;
</span><span class="cx">         else
</span><span class="cx">             viewStateChanges |= WebCore::ViewState::IsInWindow;
</span><del>-        m_page.viewStateDidChange(viewStateChanges);
</del><ins>+        m_page-&gt;viewStateDidChange(viewStateChanges);
</ins><span class="cx"> 
</span><span class="cx">         [NSEvent removeMonitor:m_flagsChangedEventMonitor];
</span><span class="cx">         m_flagsChangedEventMonitor = nil;
</span><span class="lines">@@ -1197,7 +1243,7 @@
</span><span class="cx"> #endif
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    m_page.setIntrinsicDeviceScaleFactor(intrinsicDeviceScaleFactor());
</del><ins>+    m_page-&gt;setIntrinsicDeviceScaleFactor(intrinsicDeviceScaleFactor());
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::viewDidChangeBackingProperties()
</span><span class="lines">@@ -1207,23 +1253,23 @@
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     m_colorSpace = nullptr;
</span><del>-    if (DrawingAreaProxy *drawingArea = m_page.drawingArea())
</del><ins>+    if (DrawingAreaProxy *drawingArea = m_page-&gt;drawingArea())
</ins><span class="cx">         drawingArea-&gt;colorSpaceDidChange();
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::viewDidHide()
</span><span class="cx"> {
</span><del>-    m_page.viewStateDidChange(WebCore::ViewState::IsVisible);
</del><ins>+    m_page-&gt;viewStateDidChange(WebCore::ViewState::IsVisible);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::viewDidUnhide()
</span><span class="cx"> {
</span><del>-    m_page.viewStateDidChange(WebCore::ViewState::IsVisible);
</del><ins>+    m_page-&gt;viewStateDidChange(WebCore::ViewState::IsVisible);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::activeSpaceDidChange()
</span><span class="cx"> {
</span><del>-    m_page.viewStateDidChange(WebCore::ViewState::IsVisible);
</del><ins>+    m_page-&gt;viewStateDidChange(WebCore::ViewState::IsVisible);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> NSView *WebViewImpl::hitTest(CGPoint point)
</span><span class="lines">@@ -1241,7 +1287,7 @@
</span><span class="cx">         modifierFlags:flagsChangedEvent.modifierFlags timestamp:flagsChangedEvent.timestamp windowNumber:flagsChangedEvent.windowNumber
</span><span class="cx">         context:flagsChangedEvent.context eventNumber:0 clickCount:0 pressure:0];
</span><span class="cx">     NativeWebMouseEvent webEvent(fakeEvent, m_lastPressureEvent.get(), m_view);
</span><del>-    m_page.handleMouseEvent(webEvent);
</del><ins>+    m_page-&gt;handleMouseEvent(webEvent);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> ColorSpaceData WebViewImpl::colorSpace()
</span><span class="lines">@@ -1263,12 +1309,12 @@
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::setUnderlayColor(NSColor *underlayColor)
</span><span class="cx"> {
</span><del>-    m_page.setUnderlayColor(WebCore::colorFromNSColor(underlayColor));
</del><ins>+    m_page-&gt;setUnderlayColor(WebCore::colorFromNSColor(underlayColor));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> NSColor *WebViewImpl::underlayColor() const
</span><span class="cx"> {
</span><del>-    WebCore::Color webColor = m_page.underlayColor();
</del><ins>+    WebCore::Color webColor = m_page-&gt;underlayColor();
</ins><span class="cx">     if (!webColor.isValid())
</span><span class="cx">         return nil;
</span><span class="cx"> 
</span><span class="lines">@@ -1277,7 +1323,7 @@
</span><span class="cx"> 
</span><span class="cx"> NSColor *WebViewImpl::pageExtendedBackgroundColor() const
</span><span class="cx"> {
</span><del>-    WebCore::Color color = m_page.pageExtendedBackgroundColor();
</del><ins>+    WebCore::Color color = m_page-&gt;pageExtendedBackgroundColor();
</ins><span class="cx">     if (!color.isValid())
</span><span class="cx">         return nil;
</span><span class="cx"> 
</span><span class="lines">@@ -1286,12 +1332,12 @@
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::setOverlayScrollbarStyle(WTF::Optional&lt;WebCore::ScrollbarOverlayStyle&gt; scrollbarStyle)
</span><span class="cx"> {
</span><del>-    m_page.setOverlayScrollbarStyle(scrollbarStyle);
</del><ins>+    m_page-&gt;setOverlayScrollbarStyle(scrollbarStyle);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> WTF::Optional&lt;WebCore::ScrollbarOverlayStyle&gt; WebViewImpl::overlayScrollbarStyle() const
</span><span class="cx"> {
</span><del>-    return m_page.overlayScrollbarStyle();
</del><ins>+    return m_page-&gt;overlayScrollbarStyle();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::beginDeferringViewInWindowChanges()
</span><span class="lines">@@ -1315,7 +1361,7 @@
</span><span class="cx"> 
</span><span class="cx">     if (m_viewInWindowChangeWasDeferred) {
</span><span class="cx">         dispatchSetTopContentInset();
</span><del>-        m_page.viewStateDidChange(WebCore::ViewState::IsInWindow);
</del><ins>+        m_page-&gt;viewStateDidChange(WebCore::ViewState::IsInWindow);
</ins><span class="cx">         m_viewInWindowChangeWasDeferred = false;
</span><span class="cx">     }
</span><span class="cx"> }
</span><span class="lines">@@ -1331,7 +1377,7 @@
</span><span class="cx"> 
</span><span class="cx">     if (m_viewInWindowChangeWasDeferred) {
</span><span class="cx">         dispatchSetTopContentInset();
</span><del>-        m_page.viewStateDidChange(WebCore::ViewState::IsInWindow);
</del><ins>+        m_page-&gt;viewStateDidChange(WebCore::ViewState::IsInWindow);
</ins><span class="cx">         m_viewInWindowChangeWasDeferred = false;
</span><span class="cx">     }
</span><span class="cx"> }
</span><span class="lines">@@ -1346,7 +1392,7 @@
</span><span class="cx">     m_shouldDeferViewInWindowChanges = false;
</span><span class="cx"> 
</span><span class="cx">     auto weakThis = createWeakPtr();
</span><del>-    m_page.installViewStateChangeCompletionHandler([weakThis, completionHandler]() {
</del><ins>+    m_page-&gt;installViewStateChangeCompletionHandler([weakThis, completionHandler]() {
</ins><span class="cx">         completionHandler();
</span><span class="cx"> 
</span><span class="cx">         if (!weakThis)
</span><span class="lines">@@ -1357,7 +1403,7 @@
</span><span class="cx">     });
</span><span class="cx"> 
</span><span class="cx">     dispatchSetTopContentInset();
</span><del>-    m_page.viewStateDidChange(WebCore::ViewState::IsInWindow, false, WebPageProxy::ViewStateChangeDispatchMode::Immediate);
</del><ins>+    m_page-&gt;viewStateDidChange(WebCore::ViewState::IsInWindow, false, WebPageProxy::ViewStateChangeDispatchMode::Immediate);
</ins><span class="cx">     m_viewInWindowChangeWasDeferred = false;
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -1372,7 +1418,7 @@
</span><span class="cx">     }
</span><span class="cx">     // WKView has a single input context for all editable areas (except for plug-ins).
</span><span class="cx">     NSTextInputContext *context = [m_view _superInputContext];
</span><del>-    bool isInPasswordField = m_page.editorState().isInPasswordField;
</del><ins>+    bool isInPasswordField = m_page-&gt;editorState().isInPasswordField;
</ins><span class="cx"> 
</span><span class="cx">     if (isInPasswordField) {
</span><span class="cx">         if (!m_inSecureInputState)
</span><span class="lines">@@ -1418,7 +1464,7 @@
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     // Send back an empty string to the plug-in. This will disable text input.
</span><del>-    m_page.sendComplexTextInputToPlugin(m_pluginComplexTextInputIdentifier, String());
</del><ins>+    m_page-&gt;sendComplexTextInputToPlugin(m_pluginComplexTextInputIdentifier, String());
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::setPluginComplexTextInputStateAndIdentifier(PluginComplexTextInputState pluginComplexTextInputState, uint64_t pluginComplexTextInputIdentifier)
</span><span class="lines">@@ -1455,7 +1501,7 @@
</span><span class="cx">     BOOL didHandleEvent = [[WKTextInputWindowController sharedTextInputWindowController] interpretKeyEvent:event usingLegacyCocoaTextInput:usingLegacyCocoaTextInput string:&amp;string];
</span><span class="cx"> 
</span><span class="cx">     if (string) {
</span><del>-        m_page.sendComplexTextInputToPlugin(m_pluginComplexTextInputIdentifier, string);
</del><ins>+        m_page-&gt;sendComplexTextInputToPlugin(m_pluginComplexTextInputIdentifier, string);
</ins><span class="cx"> 
</span><span class="cx">         if (!usingLegacyCocoaTextInput)
</span><span class="cx">             m_pluginComplexTextInputState = PluginComplexTextInputDisabled;
</span><span class="lines">@@ -1522,7 +1568,7 @@
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::handleAcceptedAlternativeText(const String&amp; acceptedAlternative)
</span><span class="cx"> {
</span><del>-    m_page.handleAlternativeTextUIResult(acceptedAlternative);
</del><ins>+    m_page-&gt;handleAlternativeTextUIResult(acceptedAlternative);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> 
</span><span class="lines">@@ -1546,7 +1592,7 @@
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     NativeWebMouseEvent webEvent(event, m_lastPressureEvent.get(), m_view);
</span><del>-    m_page.handleMouseEvent(webEvent);
</del><ins>+    m_page-&gt;handleMouseEvent(webEvent);
</ins><span class="cx"> 
</span><span class="cx">     m_lastPressureEvent = event;
</span><span class="cx"> #endif
</span><span class="lines">@@ -1596,7 +1642,7 @@
</span><span class="cx"> 
</span><span class="cx"> bool WebViewImpl::isEditable() const
</span><span class="cx"> {
</span><del>-    return m_page.isEditable();
</del><ins>+    return m_page-&gt;isEditable();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> typedef HashMap&lt;SEL, String&gt; SelectorNameMap;
</span><span class="lines">@@ -1661,7 +1707,7 @@
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::executeEditCommandForSelector(SEL selector, const String&amp; argument)
</span><span class="cx"> {
</span><del>-    m_page.executeEditCommand(commandNameForSelector(selector), argument);
</del><ins>+    m_page-&gt;executeEditCommand(commandNameForSelector(selector), argument);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::registerEditCommand(RefPtr&lt;WebEditCommandProxy&gt; prpCommand, WebPageProxy::UndoOrRedo undoOrRedo)
</span><span class="lines">@@ -1688,9 +1734,9 @@
</span><span class="cx">     [pasteboard declareTypes:types owner:nil];
</span><span class="cx">     for (size_t i = 0; i &lt; numTypes; ++i) {
</span><span class="cx">         if ([[types objectAtIndex:i] isEqualTo:NSStringPboardType])
</span><del>-            [pasteboard setString:m_page.stringSelectionForPasteboard() forType:NSStringPboardType];
</del><ins>+            [pasteboard setString:m_page-&gt;stringSelectionForPasteboard() forType:NSStringPboardType];
</ins><span class="cx">         else {
</span><del>-            RefPtr&lt;WebCore::SharedBuffer&gt; buffer = m_page.dataSelectionForPasteboard([types objectAtIndex:i]);
</del><ins>+            RefPtr&lt;WebCore::SharedBuffer&gt; buffer = m_page-&gt;dataSelectionForPasteboard([types objectAtIndex:i]);
</ins><span class="cx">             [pasteboard setData:buffer ? buffer-&gt;createNSData().get() : nil forType:[types objectAtIndex:i]];
</span><span class="cx">         }
</span><span class="cx">     }
</span><span class="lines">@@ -1699,12 +1745,12 @@
</span><span class="cx"> 
</span><span class="cx"> bool WebViewImpl::readSelectionFromPasteboard(NSPasteboard *pasteboard)
</span><span class="cx"> {
</span><del>-    return m_page.readSelectionFromPasteboard([pasteboard name]);
</del><ins>+    return m_page-&gt;readSelectionFromPasteboard([pasteboard name]);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> id WebViewImpl::validRequestorForSendAndReturnTypes(NSString *sendType, NSString *returnType)
</span><span class="cx"> {
</span><del>-    EditorState editorState = m_page.editorState();
</del><ins>+    EditorState editorState = m_page-&gt;editorState();
</ins><span class="cx">     bool isValidSendType = false;
</span><span class="cx"> 
</span><span class="cx">     if (sendType &amp;&amp; !editorState.selectionIsNone) {
</span><span class="lines">@@ -1728,7 +1774,7 @@
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::centerSelectionInVisibleArea()
</span><span class="cx"> {
</span><del>-    m_page.centerSelectionInVisibleArea();
</del><ins>+    m_page-&gt;centerSelectionInVisibleArea();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::selectionDidChange()
</span><span class="lines">@@ -1743,11 +1789,11 @@
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::updateFontPanelIfNeeded()
</span><span class="cx"> {
</span><del>-    const EditorState&amp; editorState = m_page.editorState();
</del><ins>+    const EditorState&amp; editorState = m_page-&gt;editorState();
</ins><span class="cx">     if (editorState.selectionIsNone || !editorState.isContentEditable)
</span><span class="cx">         return;
</span><span class="cx">     if ([NSFontPanel sharedFontPanelExists] &amp;&amp; [[NSFontPanel sharedFontPanel] isVisible]) {
</span><del>-        m_page.fontAtSelection([](const String&amp; fontName, double fontSize, bool selectionHasMultipleFonts, WebKit::CallbackBase::Error error) {
</del><ins>+        m_page-&gt;fontAtSelection([](const String&amp; fontName, double fontSize, bool selectionHasMultipleFonts, WebKit::CallbackBase::Error error) {
</ins><span class="cx">             NSFont *font = [NSFont fontWithName:fontName size:fontSize];
</span><span class="cx">             if (font)
</span><span class="cx">                 [[NSFontManager sharedFontManager] setSelectedFont:font isMultiple:selectionHasMultipleFonts];
</span><span class="lines">@@ -1761,7 +1807,7 @@
</span><span class="cx">     NSFont *font = [fontManager convertFont:fontManager.selectedFont];
</span><span class="cx">     if (!font)
</span><span class="cx">         return;
</span><del>-    m_page.setFont(font.familyName, font.pointSize, font.fontDescriptor.symbolicTraits);
</del><ins>+    m_page-&gt;setFont(font.familyName, font.pointSize, font.fontDescriptor.symbolicTraits);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> static NSMenuItem *menuItem(id &lt;NSValidatedUserInterfaceItem&gt; item)
</span><span class="lines">@@ -1785,11 +1831,11 @@
</span><span class="cx">     if (action == @selector(showGuessPanel:)) {
</span><span class="cx">         if (NSMenuItem *menuItem = WebKit::menuItem(item))
</span><span class="cx">             [menuItem setTitle:WebCore::contextMenuItemTagShowSpellingPanel(![[[NSSpellChecker sharedSpellChecker] spellingPanel] isVisible])];
</span><del>-        return m_page.editorState().isContentEditable;
</del><ins>+        return m_page-&gt;editorState().isContentEditable;
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     if (action == @selector(checkSpelling:) || action == @selector(changeSpelling:))
</span><del>-        return m_page.editorState().isContentEditable;
</del><ins>+        return m_page-&gt;editorState().isContentEditable;
</ins><span class="cx"> 
</span><span class="cx">     if (action == @selector(toggleContinuousSpellChecking:)) {
</span><span class="cx">         bool enabled = TextChecker::isContinuousSpellCheckingAllowed();
</span><span class="lines">@@ -1807,54 +1853,54 @@
</span><span class="cx">     if (action == @selector(toggleAutomaticSpellingCorrection:)) {
</span><span class="cx">         bool checked = TextChecker::state().isAutomaticSpellingCorrectionEnabled;
</span><span class="cx">         [menuItem(item) setState:checked ? NSOnState : NSOffState];
</span><del>-        return m_page.editorState().isContentEditable;
</del><ins>+        return m_page-&gt;editorState().isContentEditable;
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     if (action == @selector(orderFrontSubstitutionsPanel:)) {
</span><span class="cx">         if (NSMenuItem *menuItem = WebKit::menuItem(item))
</span><span class="cx">             [menuItem setTitle:WebCore::contextMenuItemTagShowSubstitutions(![[[NSSpellChecker sharedSpellChecker] substitutionsPanel] isVisible])];
</span><del>-        return m_page.editorState().isContentEditable;
</del><ins>+        return m_page-&gt;editorState().isContentEditable;
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     if (action == @selector(toggleSmartInsertDelete:)) {
</span><del>-        bool checked = m_page.isSmartInsertDeleteEnabled();
</del><ins>+        bool checked = m_page-&gt;isSmartInsertDeleteEnabled();
</ins><span class="cx">         [menuItem(item) setState:checked ? NSOnState : NSOffState];
</span><del>-        return m_page.editorState().isContentEditable;
</del><ins>+        return m_page-&gt;editorState().isContentEditable;
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     if (action == @selector(toggleAutomaticQuoteSubstitution:)) {
</span><span class="cx">         bool checked = TextChecker::state().isAutomaticQuoteSubstitutionEnabled;
</span><span class="cx">         [menuItem(item) setState:checked ? NSOnState : NSOffState];
</span><del>-        return m_page.editorState().isContentEditable;
</del><ins>+        return m_page-&gt;editorState().isContentEditable;
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     if (action == @selector(toggleAutomaticDashSubstitution:)) {
</span><span class="cx">         bool checked = TextChecker::state().isAutomaticDashSubstitutionEnabled;
</span><span class="cx">         [menuItem(item) setState:checked ? NSOnState : NSOffState];
</span><del>-        return m_page.editorState().isContentEditable;
</del><ins>+        return m_page-&gt;editorState().isContentEditable;
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     if (action == @selector(toggleAutomaticLinkDetection:)) {
</span><span class="cx">         bool checked = TextChecker::state().isAutomaticLinkDetectionEnabled;
</span><span class="cx">         [menuItem(item) setState:checked ? NSOnState : NSOffState];
</span><del>-        return m_page.editorState().isContentEditable;
</del><ins>+        return m_page-&gt;editorState().isContentEditable;
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     if (action == @selector(toggleAutomaticTextReplacement:)) {
</span><span class="cx">         bool checked = TextChecker::state().isAutomaticTextReplacementEnabled;
</span><span class="cx">         [menuItem(item) setState:checked ? NSOnState : NSOffState];
</span><del>-        return m_page.editorState().isContentEditable;
</del><ins>+        return m_page-&gt;editorState().isContentEditable;
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     if (action == @selector(uppercaseWord:) || action == @selector(lowercaseWord:) || action == @selector(capitalizeWord:))
</span><del>-        return m_page.editorState().selectionIsRange &amp;&amp; m_page.editorState().isContentEditable;
</del><ins>+        return m_page-&gt;editorState().selectionIsRange &amp;&amp; m_page-&gt;editorState().isContentEditable;
</ins><span class="cx"> 
</span><span class="cx">     if (action == @selector(stopSpeaking:))
</span><span class="cx">         return [NSApp isSpeaking];
</span><span class="cx"> 
</span><span class="cx">     // The centerSelectionInVisibleArea: selector is enabled if there's a selection range or if there's an insertion point in an editable area.
</span><span class="cx">     if (action == @selector(centerSelectionInVisibleArea:))
</span><del>-        return m_page.editorState().selectionIsRange || (m_page.editorState().isContentEditable &amp;&amp; !m_page.editorState().selectionIsNone);
</del><ins>+        return m_page-&gt;editorState().selectionIsRange || (m_page-&gt;editorState().isContentEditable &amp;&amp; !m_page-&gt;editorState().selectionIsNone);
</ins><span class="cx"> 
</span><span class="cx">     // Next, handle editor commands. Start by returning true for anything that is not an editor command.
</span><span class="cx">     // Returning true is the default thing to do in an AppKit validate method for any selector that is not recognized.
</span><span class="lines">@@ -1870,7 +1916,7 @@
</span><span class="cx">         // FIXME: Theoretically, there is a race here; when we get the answer it might be old, from a previous time
</span><span class="cx">         // we asked for the same command; there is no guarantee the answer is still valid.
</span><span class="cx">         auto weakThis = createWeakPtr();
</span><del>-        m_page.validateCommand(commandName, [weakThis](const String&amp; commandName, bool isEnabled, int32_t state, WebKit::CallbackBase::Error error) {
</del><ins>+        m_page-&gt;validateCommand(commandName, [weakThis](const String&amp; commandName, bool isEnabled, int32_t state, WebKit::CallbackBase::Error error) {
</ins><span class="cx">             if (!weakThis)
</span><span class="cx">                 return;
</span><span class="cx"> 
</span><span class="lines">@@ -1901,7 +1947,7 @@
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::startSpeaking()
</span><span class="cx"> {
</span><del>-    m_page.getSelectionOrContentsAsString([](const String&amp; string, WebKit::CallbackBase::Error error) {
</del><ins>+    m_page-&gt;getSelectionOrContentsAsString([](const String&amp; string, WebKit::CallbackBase::Error error) {
</ins><span class="cx">         if (error != WebKit::CallbackBase::Error::None)
</span><span class="cx">             return;
</span><span class="cx">         if (!string)
</span><span class="lines">@@ -1930,20 +1976,20 @@
</span><span class="cx">         return;
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    m_page.advanceToNextMisspelling(true);
</del><ins>+    m_page-&gt;advanceToNextMisspelling(true);
</ins><span class="cx">     [spellingPanel orderFront:sender];
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::checkSpelling()
</span><span class="cx"> {
</span><del>-    m_page.advanceToNextMisspelling(false);
</del><ins>+    m_page-&gt;advanceToNextMisspelling(false);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::changeSpelling(id sender)
</span><span class="cx"> {
</span><span class="cx">     NSString *word = [[sender selectedCell] stringValue];
</span><span class="cx"> 
</span><del>-    m_page.changeSpellingToWord(word);
</del><ins>+    m_page-&gt;changeSpellingToWord(word);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::toggleContinuousSpellChecking()
</span><span class="lines">@@ -1951,7 +1997,7 @@
</span><span class="cx">     bool spellCheckingEnabled = !TextChecker::state().isContinuousSpellCheckingEnabled;
</span><span class="cx">     TextChecker::setContinuousSpellCheckingEnabled(spellCheckingEnabled);
</span><span class="cx"> 
</span><del>-    m_page.process().updateTextCheckerState();
</del><ins>+    m_page-&gt;process().updateTextCheckerState();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> bool WebViewImpl::isGrammarCheckingEnabled()
</span><span class="lines">@@ -1965,7 +2011,7 @@
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     TextChecker::setGrammarCheckingEnabled(flag);
</span><del>-    m_page.process().updateTextCheckerState();
</del><ins>+    m_page-&gt;process().updateTextCheckerState();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::toggleGrammarChecking()
</span><span class="lines">@@ -1973,14 +2019,14 @@
</span><span class="cx">     bool grammarCheckingEnabled = !TextChecker::state().isGrammarCheckingEnabled;
</span><span class="cx">     TextChecker::setGrammarCheckingEnabled(grammarCheckingEnabled);
</span><span class="cx"> 
</span><del>-    m_page.process().updateTextCheckerState();
</del><ins>+    m_page-&gt;process().updateTextCheckerState();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::toggleAutomaticSpellingCorrection()
</span><span class="cx"> {
</span><span class="cx">     TextChecker::setAutomaticSpellingCorrectionEnabled(!TextChecker::state().isAutomaticSpellingCorrectionEnabled);
</span><span class="cx"> 
</span><del>-    m_page.process().updateTextCheckerState();
</del><ins>+    m_page-&gt;process().updateTextCheckerState();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::orderFrontSubstitutionsPanel(id sender)
</span><span class="lines">@@ -2001,7 +2047,7 @@
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::toggleSmartInsertDelete()
</span><span class="cx"> {
</span><del>-    m_page.setSmartInsertDeleteEnabled(!m_page.isSmartInsertDeleteEnabled());
</del><ins>+    m_page-&gt;setSmartInsertDeleteEnabled(!m_page-&gt;isSmartInsertDeleteEnabled());
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> bool WebViewImpl::isAutomaticQuoteSubstitutionEnabled()
</span><span class="lines">@@ -2015,13 +2061,13 @@
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     TextChecker::setAutomaticQuoteSubstitutionEnabled(flag);
</span><del>-    m_page.process().updateTextCheckerState();
</del><ins>+    m_page-&gt;process().updateTextCheckerState();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::toggleAutomaticQuoteSubstitution()
</span><span class="cx"> {
</span><span class="cx">     TextChecker::setAutomaticQuoteSubstitutionEnabled(!TextChecker::state().isAutomaticQuoteSubstitutionEnabled);
</span><del>-    m_page.process().updateTextCheckerState();
</del><ins>+    m_page-&gt;process().updateTextCheckerState();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> bool WebViewImpl::isAutomaticDashSubstitutionEnabled()
</span><span class="lines">@@ -2035,13 +2081,13 @@
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     TextChecker::setAutomaticDashSubstitutionEnabled(flag);
</span><del>-    m_page.process().updateTextCheckerState();
</del><ins>+    m_page-&gt;process().updateTextCheckerState();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::toggleAutomaticDashSubstitution()
</span><span class="cx"> {
</span><span class="cx">     TextChecker::setAutomaticDashSubstitutionEnabled(!TextChecker::state().isAutomaticDashSubstitutionEnabled);
</span><del>-    m_page.process().updateTextCheckerState();
</del><ins>+    m_page-&gt;process().updateTextCheckerState();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> bool WebViewImpl::isAutomaticLinkDetectionEnabled()
</span><span class="lines">@@ -2055,13 +2101,13 @@
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     TextChecker::setAutomaticLinkDetectionEnabled(flag);
</span><del>-    m_page.process().updateTextCheckerState();
</del><ins>+    m_page-&gt;process().updateTextCheckerState();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::toggleAutomaticLinkDetection()
</span><span class="cx"> {
</span><span class="cx">     TextChecker::setAutomaticLinkDetectionEnabled(!TextChecker::state().isAutomaticLinkDetectionEnabled);
</span><del>-    m_page.process().updateTextCheckerState();
</del><ins>+    m_page-&gt;process().updateTextCheckerState();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> bool WebViewImpl::isAutomaticTextReplacementEnabled()
</span><span class="lines">@@ -2075,33 +2121,33 @@
</span><span class="cx">         return;
</span><span class="cx">     
</span><span class="cx">     TextChecker::setAutomaticTextReplacementEnabled(flag);
</span><del>-    m_page.process().updateTextCheckerState();
</del><ins>+    m_page-&gt;process().updateTextCheckerState();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::toggleAutomaticTextReplacement()
</span><span class="cx"> {
</span><span class="cx">     TextChecker::setAutomaticTextReplacementEnabled(!TextChecker::state().isAutomaticTextReplacementEnabled);
</span><del>-    m_page.process().updateTextCheckerState();
</del><ins>+    m_page-&gt;process().updateTextCheckerState();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::uppercaseWord()
</span><span class="cx"> {
</span><del>-    m_page.uppercaseWord();
</del><ins>+    m_page-&gt;uppercaseWord();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::lowercaseWord()
</span><span class="cx"> {
</span><del>-    m_page.lowercaseWord();
</del><ins>+    m_page-&gt;lowercaseWord();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::capitalizeWord()
</span><span class="cx"> {
</span><del>-    m_page.capitalizeWord();
</del><ins>+    m_page-&gt;capitalizeWord();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::preferencesDidChange()
</span><span class="cx"> {
</span><del>-    BOOL needsViewFrameInWindowCoordinates = m_page.preferences().pluginsEnabled();
</del><ins>+    BOOL needsViewFrameInWindowCoordinates = m_page-&gt;preferences().pluginsEnabled();
</ins><span class="cx"> 
</span><span class="cx">     if (!!needsViewFrameInWindowCoordinates == !!m_needsViewFrameInWindowCoordinates)
</span><span class="cx">         return;
</span><span class="lines">@@ -2171,7 +2217,7 @@
</span><span class="cx">     [m_immediateActionController dismissContentRelativeChildWindows];
</span><span class="cx"> #endif
</span><span class="cx">     
</span><del>-    m_pageClient.dismissCorrectionPanel(WebCore::ReasonForDismissingAlternativeTextIgnored);
</del><ins>+    m_pageClient-&gt;dismissCorrectionPanel(WebCore::ReasonForDismissingAlternativeTextIgnored);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::hideWordDefinitionWindow()
</span><span class="lines">@@ -2192,7 +2238,7 @@
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx">     NSPoint locationInViewCoordinates = [m_view convertPoint:[event locationInWindow] fromView:nil];
</span><del>-    m_page.performDictionaryLookupAtLocation(WebCore::FloatPoint(locationInViewCoordinates));
</del><ins>+    m_page-&gt;performDictionaryLookupAtLocation(WebCore::FloatPoint(locationInViewCoordinates));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::prepareForDictionaryLookup()
</span><span class="lines">@@ -2220,16 +2266,11 @@
</span><span class="cx"> #endif
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void* WebViewImpl::immediateActionAnimationControllerForHitTestResult(WKHitTestResultRef hitTestResult, uint32_t type, WKTypeRef userData)
</del><ins>+void* WebViewImpl::immediateActionAnimationControllerForHitTestResult(API::HitTestResult* hitTestResult, uint32_t type, API::Object* userData)
</ins><span class="cx"> {
</span><del>-    return [m_view _immediateActionAnimationControllerForHitTestResult:hitTestResult withType:type userData:userData];
</del><ins>+    return [m_view _web_immediateActionAnimationControllerForHitTestResultInternal:hitTestResult withType:type userData:userData];
</ins><span class="cx"> }
</span><span class="cx"> 
</span><del>-void* WebViewImpl::immediateActionAnimationControllerForHitTestResultFromViewOnly(WKHitTestResultRef hitTestResult, uint32_t type, WKTypeRef userData)
-{
-    return nil;
-}
-
</del><span class="cx"> void WebViewImpl::didPerformImmediateActionHitTest(const WebHitTestResultData&amp; result, bool contentPreventsDefault, API::Object* userData)
</span><span class="cx"> {
</span><span class="cx"> #if __MAC_OS_X_VERSION_MIN_REQUIRED &gt;= 101000
</span><span class="lines">@@ -2252,13 +2293,18 @@
</span><span class="cx">     [m_view _completeImmediateActionAnimation];
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+void WebViewImpl::didChangeContentSize(CGSize newSize)
+{
+    [m_view _didChangeContentSize:NSSizeFromCGSize(newSize)];
+}
+
</ins><span class="cx"> void WebViewImpl::setIgnoresNonWheelEvents(bool ignoresNonWheelEvents)
</span><span class="cx"> {
</span><span class="cx">     if (m_ignoresNonWheelEvents == ignoresNonWheelEvents)
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     m_ignoresNonWheelEvents = ignoresNonWheelEvents;
</span><del>-    m_page.setShouldDispatchFakeMouseMoveEvents(!ignoresNonWheelEvents);
</del><ins>+    m_page-&gt;setShouldDispatchFakeMouseMoveEvents(!ignoresNonWheelEvents);
</ins><span class="cx"> 
</span><span class="cx"> #if __MAC_OS_X_VERSION_MIN_REQUIRED &gt;= 101000
</span><span class="cx">     if (ignoresNonWheelEvents)
</span><span class="lines">@@ -2294,7 +2340,7 @@
</span><span class="cx">     // away, that information is not present in WebProcess
</span><span class="cx">     pid_t pid = 0;
</span><span class="cx">     if (registerProcess)
</span><del>-        pid = m_page.process().processIdentifier();
</del><ins>+        pid = m_page-&gt;process().processIdentifier();
</ins><span class="cx">     else if (!registerProcess) {
</span><span class="cx">         pid = WKAXRemoteProcessIdentifier(m_remoteAccessibilityChild.get());
</span><span class="cx">         m_remoteAccessibilityChild = nil;
</span><span class="lines">@@ -2310,7 +2356,7 @@
</span><span class="cx">     NSData *remoteWindowToken = WKAXRemoteTokenForElement(m_view.window);
</span><span class="cx">     IPC::DataReference elementToken = IPC::DataReference(reinterpret_cast&lt;const uint8_t*&gt;([remoteElementToken bytes]), [remoteElementToken length]);
</span><span class="cx">     IPC::DataReference windowToken = IPC::DataReference(reinterpret_cast&lt;const uint8_t*&gt;([remoteWindowToken bytes]), [remoteWindowToken length]);
</span><del>-    m_page.registerUIProcessAccessibilityTokens(elementToken, windowToken);
</del><ins>+    m_page-&gt;registerUIProcessAccessibilityTokens(elementToken, windowToken);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> id WebViewImpl::accessibilityFocusedUIElement()
</span><span class="lines">@@ -2462,7 +2508,7 @@
</span><span class="cx"> 
</span><span class="cx"> NSString *WebViewImpl::stringForToolTip(NSToolTipTag tag)
</span><span class="cx"> {
</span><del>-    return nsStringFromWebCoreString(m_page.toolTip());
</del><ins>+    return nsStringFromWebCoreString(m_page-&gt;toolTip());
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::toolTipChanged(const String&amp; oldToolTip, const String&amp; newToolTip)
</span><span class="lines">@@ -2560,7 +2606,7 @@
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     m_inspectorAttachmentView = newView;
</span><del>-    m_page.inspector()-&gt;attachmentViewDidChange(oldView ? oldView : m_view, newView ? newView : m_view);
</del><ins>+    m_page-&gt;inspector()-&gt;attachmentViewDidChange(oldView ? oldView : m_view, newView ? newView : m_view);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> NSView *WebViewImpl::inspectorAttachmentView()
</span><span class="lines">@@ -2573,26 +2619,16 @@
</span><span class="cx"> {
</span><span class="cx">     if (!m_remoteObjectRegistry) {
</span><span class="cx">         m_remoteObjectRegistry = adoptNS([[_WKRemoteObjectRegistry alloc] _initWithMessageSender:m_page]);
</span><del>-        m_page.process().processPool().addMessageReceiver(Messages::RemoteObjectRegistry::messageReceiverName(), m_page.pageID(), [m_remoteObjectRegistry remoteObjectRegistry]);
</del><ins>+        m_page-&gt;process().processPool().addMessageReceiver(Messages::RemoteObjectRegistry::messageReceiverName(), m_page-&gt;pageID(), [m_remoteObjectRegistry remoteObjectRegistry]);
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     return m_remoteObjectRegistry.get();
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void WebViewImpl::destroyRemoteObjectRegistry()
-{
-    if (!m_remoteObjectRegistry)
-        return;
-
-    m_page.process().processPool().removeMessageReceiver(Messages::RemoteObjectRegistry::messageReceiverName(), m_page.pageID());
-    [m_remoteObjectRegistry _invalidate];
-    m_remoteObjectRegistry = nil;
-}
-
</del><span class="cx"> WKBrowsingContextController *WebViewImpl::browsingContextController()
</span><span class="cx"> {
</span><span class="cx">     if (!m_browsingContextController)
</span><del>-        m_browsingContextController = adoptNS([[WKBrowsingContextController alloc] _initWithPageRef:toAPI(&amp;m_page)]);
</del><ins>+        m_browsingContextController = adoptNS([[WKBrowsingContextController alloc] _initWithPageRef:toAPI(m_page.ptr())]);
</ins><span class="cx"> 
</span><span class="cx">     return m_browsingContextController.get();
</span><span class="cx"> }
</span><span class="lines">@@ -2610,7 +2646,7 @@
</span><span class="cx">     // Prevent queued mouseDragged events from coming after the drag and fake mouseUp event.
</span><span class="cx">     m_ignoresMouseDraggedEvents = true;
</span><span class="cx"> 
</span><del>-    m_page.dragEnded(WebCore::IntPoint(windowMouseLoc), WebCore::globalPoint(windowMouseLoc, m_view.window), operation);
</del><ins>+    m_page-&gt;dragEnded(WebCore::IntPoint(windowMouseLoc), WebCore::globalPoint(windowMouseLoc, m_view.window), operation);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> static WebCore::DragApplicationFlags applicationFlagsForDrag(NSView *view, id &lt;NSDraggingInfo&gt; draggingInfo)
</span><span class="lines">@@ -2634,8 +2670,8 @@
</span><span class="cx">     WebCore::IntPoint global(WebCore::globalPoint(draggingInfo.draggingLocation, m_view.window));
</span><span class="cx">     WebCore::DragData dragData(draggingInfo, client, global, static_cast&lt;WebCore::DragOperation&gt;(draggingInfo.draggingSourceOperationMask), applicationFlagsForDrag(m_view, draggingInfo));
</span><span class="cx"> 
</span><del>-    m_page.resetCurrentDragInformation();
-    m_page.dragEntered(dragData, draggingInfo.draggingPasteboard.name);
</del><ins>+    m_page-&gt;resetCurrentDragInformation();
+    m_page-&gt;dragEntered(dragData, draggingInfo.draggingPasteboard.name);
</ins><span class="cx">     return NSDragOperationCopy;
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -2644,11 +2680,11 @@
</span><span class="cx">     WebCore::IntPoint client([m_view convertPoint:draggingInfo.draggingLocation fromView:nil]);
</span><span class="cx">     WebCore::IntPoint global(WebCore::globalPoint(draggingInfo.draggingLocation, m_view.window));
</span><span class="cx">     WebCore::DragData dragData(draggingInfo, client, global, static_cast&lt;WebCore::DragOperation&gt;(draggingInfo.draggingSourceOperationMask), applicationFlagsForDrag(m_view, draggingInfo));
</span><del>-    m_page.dragUpdated(dragData, draggingInfo.draggingPasteboard.name);
</del><ins>+    m_page-&gt;dragUpdated(dragData, draggingInfo.draggingPasteboard.name);
</ins><span class="cx"> 
</span><del>-    NSInteger numberOfValidItemsForDrop = m_page.currentDragNumberOfFilesToBeAccepted();
</del><ins>+    NSInteger numberOfValidItemsForDrop = m_page-&gt;currentDragNumberOfFilesToBeAccepted();
</ins><span class="cx">     NSDraggingFormation draggingFormation = NSDraggingFormationNone;
</span><del>-    if (m_page.currentDragIsOverFileInput() &amp;&amp; numberOfValidItemsForDrop &gt; 0)
</del><ins>+    if (m_page-&gt;currentDragIsOverFileInput() &amp;&amp; numberOfValidItemsForDrop &gt; 0)
</ins><span class="cx">         draggingFormation = NSDraggingFormationList;
</span><span class="cx"> 
</span><span class="cx">     if (draggingInfo.numberOfValidItemsForDrop != numberOfValidItemsForDrop)
</span><span class="lines">@@ -2656,7 +2692,7 @@
</span><span class="cx">     if (draggingInfo.draggingFormation != draggingFormation)
</span><span class="cx">         [draggingInfo setDraggingFormation:draggingFormation];
</span><span class="cx"> 
</span><del>-    return m_page.currentDragOperation();
</del><ins>+    return m_page-&gt;currentDragOperation();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::draggingExited(id &lt;NSDraggingInfo&gt; draggingInfo)
</span><span class="lines">@@ -2664,8 +2700,8 @@
</span><span class="cx">     WebCore::IntPoint client([m_view convertPoint:draggingInfo.draggingLocation fromView:nil]);
</span><span class="cx">     WebCore::IntPoint global(WebCore::globalPoint(draggingInfo.draggingLocation, m_view.window));
</span><span class="cx">     WebCore::DragData dragData(draggingInfo, client, global, static_cast&lt;WebCore::DragOperation&gt;(draggingInfo.draggingSourceOperationMask), applicationFlagsForDrag(m_view, draggingInfo));
</span><del>-    m_page.dragExited(dragData, draggingInfo.draggingPasteboard.name);
-    m_page.resetCurrentDragInformation();
</del><ins>+    m_page-&gt;dragExited(dragData, draggingInfo.draggingPasteboard.name);
+    m_page-&gt;resetCurrentDragInformation();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> bool WebViewImpl::prepareForDragOperation(id &lt;NSDraggingInfo&gt;)
</span><span class="lines">@@ -2723,12 +2759,12 @@
</span><span class="cx">     SandboxExtension::Handle sandboxExtensionHandle;
</span><span class="cx">     bool createdExtension = maybeCreateSandboxExtensionFromPasteboard(draggingInfo.draggingPasteboard, sandboxExtensionHandle);
</span><span class="cx">     if (createdExtension)
</span><del>-        m_page.process().willAcquireUniversalFileReadSandboxExtension();
</del><ins>+        m_page-&gt;process().willAcquireUniversalFileReadSandboxExtension();
</ins><span class="cx"> 
</span><span class="cx">     SandboxExtension::HandleArray sandboxExtensionForUpload;
</span><span class="cx">     createSandboxExtensionsForFileUpload(draggingInfo.draggingPasteboard, sandboxExtensionForUpload);
</span><span class="cx"> 
</span><del>-    m_page.performDragOperation(dragData, draggingInfo.draggingPasteboard.name, sandboxExtensionHandle, sandboxExtensionForUpload);
</del><ins>+    m_page-&gt;performDragOperation(dragData, draggingInfo.draggingPasteboard.name, sandboxExtensionHandle, sandboxExtensionForUpload);
</ins><span class="cx"> 
</span><span class="cx">     return true;
</span><span class="cx"> }
</span><span class="lines">@@ -2959,7 +2995,7 @@
</span><span class="cx">         windowCaptureRect = boundsForCustomSwipeViews;
</span><span class="cx">     else {
</span><span class="cx">         NSRect unobscuredBounds = m_view.bounds;
</span><del>-        float topContentInset = m_page.topContentInset();
</del><ins>+        float topContentInset = m_page-&gt;topContentInset();
</ins><span class="cx">         unobscuredBounds.origin.y += topContentInset;
</span><span class="cx">         unobscuredBounds.size.height -= topContentInset;
</span><span class="cx">         windowCaptureRect = [m_view convertRect:unobscuredBounds toView:nil];
</span><span class="lines">@@ -2984,12 +3020,12 @@
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::saveBackForwardSnapshotForCurrentItem()
</span><span class="cx"> {
</span><del>-    m_page.recordNavigationSnapshot();
</del><ins>+    m_page-&gt;recordNavigationSnapshot();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::saveBackForwardSnapshotForItem(WebBackForwardListItem&amp; item)
</span><span class="cx"> {
</span><del>-    m_page.recordNavigationSnapshot(item);
</del><ins>+    m_page-&gt;recordNavigationSnapshot(item);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> ViewGestureController&amp; WebViewImpl::ensureGestureController()
</span><span class="lines">@@ -3002,8 +3038,8 @@
</span><span class="cx"> void WebViewImpl::setAllowsBackForwardNavigationGestures(bool allowsBackForwardNavigationGestures)
</span><span class="cx"> {
</span><span class="cx">     m_allowsBackForwardNavigationGestures = allowsBackForwardNavigationGestures;
</span><del>-    m_page.setShouldRecordNavigationSnapshots(allowsBackForwardNavigationGestures);
-    m_page.setShouldUseImplicitRubberBandControl(allowsBackForwardNavigationGestures);
</del><ins>+    m_page-&gt;setShouldRecordNavigationSnapshots(allowsBackForwardNavigationGestures);
+    m_page-&gt;setShouldUseImplicitRubberBandControl(allowsBackForwardNavigationGestures);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::setAllowsMagnification(bool allowsMagnification)
</span><span class="lines">@@ -3018,7 +3054,7 @@
</span><span class="cx"> 
</span><span class="cx">     dismissContentRelativeChildWindowsWithAnimation(false);
</span><span class="cx"> 
</span><del>-    m_page.scalePageInViewCoordinates(magnification, WebCore::roundedIntPoint(centerPoint));
</del><ins>+    m_page-&gt;scalePageInViewCoordinates(magnification, WebCore::roundedIntPoint(centerPoint));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::setMagnification(double magnification)
</span><span class="lines">@@ -3029,14 +3065,14 @@
</span><span class="cx">     dismissContentRelativeChildWindowsWithAnimation(false);
</span><span class="cx"> 
</span><span class="cx">     WebCore::FloatPoint viewCenter(NSMidX([m_view bounds]), NSMidY([m_view bounds]));
</span><del>-    m_page.scalePageInViewCoordinates(magnification, roundedIntPoint(viewCenter));
</del><ins>+    m_page-&gt;scalePageInViewCoordinates(magnification, roundedIntPoint(viewCenter));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> double WebViewImpl::magnification() const
</span><span class="cx"> {
</span><span class="cx">     if (m_gestureController)
</span><span class="cx">         return m_gestureController-&gt;magnification();
</span><del>-    return m_page.pageScaleFactor();
</del><ins>+    return m_page-&gt;pageScaleFactor();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::setCustomSwipeViews(NSArray *customSwipeViews)
</span><span class="lines">@@ -3094,7 +3130,7 @@
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     NativeWebWheelEvent webEvent = NativeWebWheelEvent(event, m_view);
</span><del>-    m_page.handleWheelEvent(webEvent);
</del><ins>+    m_page-&gt;handleWheelEvent(webEvent);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::swipeWithEvent(NSEvent *event)
</span><span class="lines">@@ -3108,9 +3144,9 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     if (event.deltaX &gt; 0.0)
</span><del>-        m_page.goBack();
</del><ins>+        m_page-&gt;goBack();
</ins><span class="cx">     else if (event.deltaX &lt; 0.0)
</span><del>-        m_page.goForward();
</del><ins>+        m_page-&gt;goForward();
</ins><span class="cx">     else
</span><span class="cx">         [m_view _superSwipeWithEvent:event];
</span><span class="cx"> }
</span><span class="lines">@@ -3120,7 +3156,7 @@
</span><span class="cx">     if (!m_allowsMagnification) {
</span><span class="cx"> #if ENABLE(MAC_GESTURE_EVENTS)
</span><span class="cx">         NativeWebGestureEvent webEvent = NativeWebGestureEvent(event, m_view);
</span><del>-        m_page.handleGestureEvent(webEvent);
</del><ins>+        m_page-&gt;handleGestureEvent(webEvent);
</ins><span class="cx"> #endif
</span><span class="cx">         [m_view _superMagnifyWithEvent:event];
</span><span class="cx">         return;
</span><span class="lines">@@ -3137,7 +3173,7 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     NativeWebGestureEvent webEvent = NativeWebGestureEvent(event, m_view);
</span><del>-    m_page.handleGestureEvent(webEvent);
</del><ins>+    m_page-&gt;handleGestureEvent(webEvent);
</ins><span class="cx"> #else
</span><span class="cx">     gestureController.handleMagnificationGestureEvent(event, [m_view convertPoint:event.locationInWindow fromView:nil]);
</span><span class="cx"> #endif
</span><span class="lines">@@ -3169,7 +3205,7 @@
</span><span class="cx"> void WebViewImpl::rotateWithEvent(NSEvent *event)
</span><span class="cx"> {
</span><span class="cx">     NativeWebGestureEvent webEvent = NativeWebGestureEvent(event, m_view);
</span><del>-    m_page.handleGestureEvent(webEvent);
</del><ins>+    m_page-&gt;handleGestureEvent(webEvent);
</ins><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="lines">@@ -3320,7 +3356,7 @@
</span><span class="cx">         WebCore::KeypressCommand command(NSStringFromSelector(selector));
</span><span class="cx">         keypressCommands-&gt;append(command);
</span><span class="cx">         LOG(TextInput, &quot;...stored&quot;);
</span><del>-        m_page.registerKeypressCommandName(command.commandName);
</del><ins>+        m_page-&gt;registerKeypressCommandName(command.commandName);
</ins><span class="cx">     } else {
</span><span class="cx">         // FIXME: Send the command to Editor synchronously and only send it along the
</span><span class="cx">         // responder chain if it's a selector that does not correspond to an editing command.
</span><span class="lines">@@ -3373,16 +3409,16 @@
</span><span class="cx">         WebCore::KeypressCommand command(&quot;insertText:&quot;, text);
</span><span class="cx">         keypressCommands-&gt;append(command);
</span><span class="cx">         LOG(TextInput, &quot;...stored&quot;);
</span><del>-        m_page.registerKeypressCommandName(command.commandName);
</del><ins>+        m_page-&gt;registerKeypressCommandName(command.commandName);
</ins><span class="cx">         return;
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     String eventText = text;
</span><span class="cx">     eventText.replace(NSBackTabCharacter, NSTabCharacter); // same thing is done in KeyEventMac.mm in WebCore
</span><span class="cx">     if (!dictationAlternatives.isEmpty())
</span><del>-        m_page.insertDictatedTextAsync(eventText, replacementRange, dictationAlternatives, registerUndoGroup);
</del><ins>+        m_page-&gt;insertDictatedTextAsync(eventText, replacementRange, dictationAlternatives, registerUndoGroup);
</ins><span class="cx">     else
</span><del>-        m_page.insertTextAsync(eventText, replacementRange, registerUndoGroup);
</del><ins>+        m_page-&gt;insertTextAsync(eventText, replacementRange, registerUndoGroup);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::selectedRangeWithCompletionHandler(void(^completionHandlerPtr)(NSRange selectedRange))
</span><span class="lines">@@ -3390,7 +3426,7 @@
</span><span class="cx">     auto completionHandler = adoptNS([completionHandlerPtr copy]);
</span><span class="cx"> 
</span><span class="cx">     LOG(TextInput, &quot;selectedRange&quot;);
</span><del>-    m_page.getSelectedRangeAsync([completionHandler](const EditingRange&amp; editingRangeResult, WebKit::CallbackBase::Error error) {
</del><ins>+    m_page-&gt;getSelectedRangeAsync([completionHandler](const EditingRange&amp; editingRangeResult, WebKit::CallbackBase::Error error) {
</ins><span class="cx">         void (^completionHandlerBlock)(NSRange) = (void (^)(NSRange))completionHandler.get();
</span><span class="cx">         if (error != WebKit::CallbackBase::Error::None) {
</span><span class="cx">             LOG(TextInput, &quot;    ...selectedRange failed.&quot;);
</span><span class="lines">@@ -3411,7 +3447,7 @@
</span><span class="cx">     auto completionHandler = adoptNS([completionHandlerPtr copy]);
</span><span class="cx"> 
</span><span class="cx">     LOG(TextInput, &quot;markedRange&quot;);
</span><del>-    m_page.getMarkedRangeAsync([completionHandler](const EditingRange&amp; editingRangeResult, WebKit::CallbackBase::Error error) {
</del><ins>+    m_page-&gt;getMarkedRangeAsync([completionHandler](const EditingRange&amp; editingRangeResult, WebKit::CallbackBase::Error error) {
</ins><span class="cx">         void (^completionHandlerBlock)(NSRange) = (void (^)(NSRange))completionHandler.get();
</span><span class="cx">         if (error != WebKit::CallbackBase::Error::None) {
</span><span class="cx">             LOG(TextInput, &quot;    ...markedRange failed.&quot;);
</span><span class="lines">@@ -3432,7 +3468,7 @@
</span><span class="cx">     auto completionHandler = adoptNS([completionHandlerPtr copy]);
</span><span class="cx"> 
</span><span class="cx">     LOG(TextInput, &quot;hasMarkedText&quot;);
</span><del>-    m_page.getMarkedRangeAsync([completionHandler](const EditingRange&amp; editingRangeResult, WebKit::CallbackBase::Error error) {
</del><ins>+    m_page-&gt;getMarkedRangeAsync([completionHandler](const EditingRange&amp; editingRangeResult, WebKit::CallbackBase::Error error) {
</ins><span class="cx">         void (^completionHandlerBlock)(BOOL) = (void (^)(BOOL))completionHandler.get();
</span><span class="cx">         if (error != WebKit::CallbackBase::Error::None) {
</span><span class="cx">             LOG(TextInput, &quot;    ...hasMarkedText failed.&quot;);
</span><span class="lines">@@ -3450,7 +3486,7 @@
</span><span class="cx">     auto completionHandler = adoptNS([completionHandlerPtr copy]);
</span><span class="cx"> 
</span><span class="cx">     LOG(TextInput, &quot;attributedSubstringFromRange:(%u, %u)&quot;, proposedRange.location, proposedRange.length);
</span><del>-    m_page.attributedSubstringForCharacterRangeAsync(proposedRange, [completionHandler](const AttributedString&amp; string, const EditingRange&amp; actualRange, WebKit::CallbackBase::Error error) {
</del><ins>+    m_page-&gt;attributedSubstringForCharacterRangeAsync(proposedRange, [completionHandler](const AttributedString&amp; string, const EditingRange&amp; actualRange, WebKit::CallbackBase::Error error) {
</ins><span class="cx">         void (^completionHandlerBlock)(NSAttributedString *, NSRange) = (void (^)(NSAttributedString *, NSRange))completionHandler.get();
</span><span class="cx">         if (error != WebKit::CallbackBase::Error::None) {
</span><span class="cx">             LOG(TextInput, &quot;    ...attributedSubstringFromRange failed.&quot;);
</span><span class="lines">@@ -3481,7 +3517,7 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     auto weakThis = createWeakPtr();
</span><del>-    m_page.firstRectForCharacterRangeAsync(range, [weakThis, completionHandler](const WebCore::IntRect&amp; rect, const EditingRange&amp; actualRange, WebKit::CallbackBase::Error error) {
</del><ins>+    m_page-&gt;firstRectForCharacterRangeAsync(range, [weakThis, completionHandler](const WebCore::IntRect&amp; rect, const EditingRange&amp; actualRange, WebKit::CallbackBase::Error error) {
</ins><span class="cx">         if (!weakThis)
</span><span class="cx">             return;
</span><span class="cx"> 
</span><span class="lines">@@ -3515,7 +3551,7 @@
</span><span class="cx"> #pragma clang diagnostic pop
</span><span class="cx">     point = [m_view convertPoint:point fromView:nil];  // the point is relative to the main frame
</span><span class="cx"> 
</span><del>-    m_page.characterIndexForPointAsync(WebCore::IntPoint(point), [completionHandler](uint64_t result, WebKit::CallbackBase::Error error) {
</del><ins>+    m_page-&gt;characterIndexForPointAsync(WebCore::IntPoint(point), [completionHandler](uint64_t result, WebKit::CallbackBase::Error error) {
</ins><span class="cx">         void (^completionHandlerBlock)(NSUInteger) = (void (^)(NSUInteger))completionHandler.get();
</span><span class="cx">         if (error != WebKit::CallbackBase::Error::None) {
</span><span class="cx">             LOG(TextInput, &quot;    ...characterIndexForPoint failed.&quot;);
</span><span class="lines">@@ -3537,7 +3573,7 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     // Disable text input machinery when in non-editable content. An invisible inline input area affects performance, and can prevent Expose from working.
</span><del>-    if (!m_page.editorState().isContentEditable)
</del><ins>+    if (!m_page-&gt;editorState().isContentEditable)
</ins><span class="cx">         return nil;
</span><span class="cx"> 
</span><span class="cx">     return [m_view _superInputContext];
</span><span class="lines">@@ -3547,7 +3583,7 @@
</span><span class="cx"> {
</span><span class="cx">     LOG(TextInput, &quot;unmarkText&quot;);
</span><span class="cx"> 
</span><del>-    m_page.confirmCompositionAsync();
</del><ins>+    m_page-&gt;confirmCompositionAsync();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::setMarkedText(id string, NSRange selectedRange, NSRange replacementRange)
</span><span class="lines">@@ -3570,17 +3606,17 @@
</span><span class="cx">     if (inSecureInputState()) {
</span><span class="cx">         // In password fields, we only allow ASCII dead keys, and don't allow inline input, matching NSSecureTextInputField.
</span><span class="cx">         // Allowing ASCII dead keys is necessary to enable full Roman input when using a Vietnamese keyboard.
</span><del>-        ASSERT(!m_page.editorState().hasComposition);
</del><ins>+        ASSERT(!m_page-&gt;editorState().hasComposition);
</ins><span class="cx">         notifyInputContextAboutDiscardedComposition();
</span><span class="cx">         // FIXME: We should store the command to handle it after DOM event processing, as it's regular keyboard input now, not a composition.
</span><span class="cx">         if ([text length] == 1 &amp;&amp; isASCII([text characterAtIndex:0]))
</span><del>-            m_page.insertTextAsync(text, replacementRange);
</del><ins>+            m_page-&gt;insertTextAsync(text, replacementRange);
</ins><span class="cx">         else
</span><span class="cx">             NSBeep();
</span><span class="cx">         return;
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    m_page.setCompositionAsync(text, underlines, selectedRange, replacementRange);
</del><ins>+    m_page-&gt;setCompositionAsync(text, underlines, selectedRange, replacementRange);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> // Synchronous NSTextInputClient is still implemented to catch spurious sync calls. Remove when that is no longer needed.
</span><span class="lines">@@ -3653,7 +3689,7 @@
</span><span class="cx">     // FIXME: Why is the firstResponder check needed?
</span><span class="cx">     if (m_view == m_view.window.firstResponder) {
</span><span class="cx">         interpretKeyEvent(event, ^(BOOL handledByInputMethod, const Vector&lt;WebCore::KeypressCommand&gt;&amp; commands) {
</span><del>-            m_page.handleKeyboardEvent(NativeWebKeyboardEvent(event, handledByInputMethod, commands));
</del><ins>+            m_page-&gt;handleKeyboardEvent(NativeWebKeyboardEvent(event, handledByInputMethod, commands));
</ins><span class="cx">         });
</span><span class="cx">         return YES;
</span><span class="cx">     }
</span><span class="lines">@@ -3670,7 +3706,7 @@
</span><span class="cx"> 
</span><span class="cx">     interpretKeyEvent(event, ^(BOOL handledByInputMethod, const Vector&lt;WebCore::KeypressCommand&gt;&amp; commands) {
</span><span class="cx">         ASSERT(!handledByInputMethod || commands.isEmpty());
</span><del>-        m_page.handleKeyboardEvent(NativeWebKeyboardEvent(event, handledByInputMethod, commands));
</del><ins>+        m_page-&gt;handleKeyboardEvent(NativeWebKeyboardEvent(event, handledByInputMethod, commands));
</ins><span class="cx">     });
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -3697,7 +3733,7 @@
</span><span class="cx"> 
</span><span class="cx">     interpretKeyEvent(event, ^(BOOL handledByInputMethod, const Vector&lt;WebCore::KeypressCommand&gt;&amp; commands) {
</span><span class="cx">         ASSERT(!handledByInputMethod || commands.isEmpty());
</span><del>-        m_page.handleKeyboardEvent(NativeWebKeyboardEvent(event, handledByInputMethod, commands));
</del><ins>+        m_page-&gt;handleKeyboardEvent(NativeWebKeyboardEvent(event, handledByInputMethod, commands));
</ins><span class="cx">     });
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -3713,7 +3749,7 @@
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     interpretKeyEvent(event, ^(BOOL handledByInputMethod, const Vector&lt;WebCore::KeypressCommand&gt;&amp; commands) {
</span><del>-        m_page.handleKeyboardEvent(NativeWebKeyboardEvent(event, handledByInputMethod, commands));
</del><ins>+        m_page-&gt;handleKeyboardEvent(NativeWebKeyboardEvent(event, handledByInputMethod, commands));
</ins><span class="cx">     });
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -3769,7 +3805,7 @@
</span><span class="cx">     LOG(TextInput, &quot;Executing %u saved keypress commands...&quot;, parameters-&gt;commands-&gt;size());
</span><span class="cx"> 
</span><span class="cx">     parameters-&gt;executingSavedKeypressCommands = true;
</span><del>-    parameters-&gt;eventInterpretationHadSideEffects |= m_page.executeKeypressCommands(*parameters-&gt;commands);
</del><ins>+    parameters-&gt;eventInterpretationHadSideEffects |= m_page-&gt;executeKeypressCommands(*parameters-&gt;commands);
</ins><span class="cx">     parameters-&gt;commands-&gt;clear();
</span><span class="cx">     parameters-&gt;executingSavedKeypressCommands = false;
</span><span class="cx"> 
</span><span class="lines">@@ -3785,13 +3821,13 @@
</span><span class="cx">         parameters-&gt;consumedByIM = false;
</span><span class="cx"> 
</span><span class="cx">     // As in insertText:replacementRange:, we assume that the call comes from an input method if there is marked text.
</span><del>-    bool isFromInputMethod = m_page.editorState().hasComposition;
</del><ins>+    bool isFromInputMethod = m_page-&gt;editorState().hasComposition;
</ins><span class="cx"> 
</span><span class="cx">     if (parameters &amp;&amp; !isFromInputMethod) {
</span><span class="cx">         WebCore::KeypressCommand command(NSStringFromSelector(selector));
</span><span class="cx">         parameters-&gt;commands-&gt;append(command);
</span><span class="cx">         LOG(TextInput, &quot;...stored&quot;);
</span><del>-        m_page.registerKeypressCommandName(command.commandName);
</del><ins>+        m_page-&gt;registerKeypressCommandName(command.commandName);
</ins><span class="cx">     } else {
</span><span class="cx">         // FIXME: Send the command to Editor synchronously and only send it along the
</span><span class="cx">         // responder chain if it's a selector that does not correspond to an editing command.
</span><span class="lines">@@ -3821,7 +3857,7 @@
</span><span class="cx">         parameters-&gt;consumedByIM = false;
</span><span class="cx"> 
</span><span class="cx">     NSString *text;
</span><del>-    bool isFromInputMethod = m_page.editorState().hasComposition;
</del><ins>+    bool isFromInputMethod = m_page-&gt;editorState().hasComposition;
</ins><span class="cx"> 
</span><span class="cx">     Vector&lt;WebCore::TextAlternativeWithRange&gt; dictationAlternatives;
</span><span class="cx"> 
</span><span class="lines">@@ -3845,7 +3881,7 @@
</span><span class="cx">         ASSERT(replacementRange.location == NSNotFound);
</span><span class="cx">         WebCore::KeypressCommand command(&quot;insertText:&quot;, text);
</span><span class="cx">         parameters-&gt;commands-&gt;append(command);
</span><del>-        m_page.registerKeypressCommandName(command.commandName);
</del><ins>+        m_page-&gt;registerKeypressCommandName(command.commandName);
</ins><span class="cx">         return;
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="lines">@@ -3853,9 +3889,9 @@
</span><span class="cx">     eventText.replace(NSBackTabCharacter, NSTabCharacter); // same thing is done in KeyEventMac.mm in WebCore
</span><span class="cx">     bool eventHandled;
</span><span class="cx">     if (!dictationAlternatives.isEmpty())
</span><del>-        eventHandled = m_page.insertDictatedText(eventText, replacementRange, dictationAlternatives);
</del><ins>+        eventHandled = m_page-&gt;insertDictatedText(eventText, replacementRange, dictationAlternatives);
</ins><span class="cx">     else
</span><del>-        eventHandled = m_page.insertText(eventText, replacementRange);
</del><ins>+        eventHandled = m_page-&gt;insertText(eventText, replacementRange);
</ins><span class="cx"> 
</span><span class="cx">     if (parameters)
</span><span class="cx">         parameters-&gt;eventInterpretationHadSideEffects |= eventHandled;
</span><span class="lines">@@ -3869,7 +3905,7 @@
</span><span class="cx">         return [[WKTextInputWindowController sharedTextInputWindowController] inputContext];
</span><span class="cx"> 
</span><span class="cx">     // Disable text input machinery when in non-editable content. An invisible inline input area affects performance, and can prevent Expose from working.
</span><del>-    if (!m_page.editorState().isContentEditable)
</del><ins>+    if (!m_page-&gt;editorState().isContentEditable)
</ins><span class="cx">         return nil;
</span><span class="cx"> 
</span><span class="cx">     return [m_view _superInputContext];
</span><span class="lines">@@ -3880,7 +3916,7 @@
</span><span class="cx">     executeSavedKeypressCommands();
</span><span class="cx"> 
</span><span class="cx">     EditingRange selectedRange;
</span><del>-    m_page.getSelectedRange(selectedRange);
</del><ins>+    m_page-&gt;getSelectedRange(selectedRange);
</ins><span class="cx"> 
</span><span class="cx">     NSRange result = selectedRange;
</span><span class="cx">     if (result.location == NSNotFound)
</span><span class="lines">@@ -3897,15 +3933,15 @@
</span><span class="cx"> 
</span><span class="cx">     BOOL result;
</span><span class="cx">     if (parameters) {
</span><del>-        result = m_page.editorState().hasComposition;
</del><ins>+        result = m_page-&gt;editorState().hasComposition;
</ins><span class="cx">         if (result) {
</span><span class="cx">             // A saved command can confirm a composition, but it cannot start a new one.
</span><span class="cx">             executeSavedKeypressCommands();
</span><del>-            result = m_page.editorState().hasComposition;
</del><ins>+            result = m_page-&gt;editorState().hasComposition;
</ins><span class="cx">         }
</span><span class="cx">     } else {
</span><span class="cx">         EditingRange markedRange;
</span><del>-        m_page.getMarkedRange(markedRange);
</del><ins>+        m_page-&gt;getMarkedRange(markedRange);
</ins><span class="cx">         result = markedRange.location != notFound;
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="lines">@@ -3926,7 +3962,7 @@
</span><span class="cx">         parameters-&gt;consumedByIM = false;
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    m_page.confirmComposition();
</del><ins>+    m_page-&gt;confirmComposition();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::setMarkedText(id string, NSRange newSelectedRange, NSRange replacementRange)
</span><span class="lines">@@ -3955,19 +3991,19 @@
</span><span class="cx">     } else
</span><span class="cx">         text = string;
</span><span class="cx"> 
</span><del>-    if (m_page.editorState().isInPasswordField) {
</del><ins>+    if (m_page-&gt;editorState().isInPasswordField) {
</ins><span class="cx">         // In password fields, we only allow ASCII dead keys, and don't allow inline input, matching NSSecureTextInputField.
</span><span class="cx">         // Allowing ASCII dead keys is necessary to enable full Roman input when using a Vietnamese keyboard.
</span><del>-        ASSERT(!m_page.editorState().hasComposition);
</del><ins>+        ASSERT(!m_page-&gt;editorState().hasComposition);
</ins><span class="cx">         notifyInputContextAboutDiscardedComposition();
</span><span class="cx">         if ([text length] == 1 &amp;&amp; [[text decomposedStringWithCanonicalMapping] characterAtIndex:0] &lt; 0x80) {
</span><del>-            m_page.insertText(text, replacementRange);
</del><ins>+            m_page-&gt;insertText(text, replacementRange);
</ins><span class="cx">         } else
</span><span class="cx">             NSBeep();
</span><span class="cx">         return;
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    m_page.setComposition(text, underlines, newSelectedRange, replacementRange);
</del><ins>+    m_page-&gt;setComposition(text, underlines, newSelectedRange, replacementRange);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> NSRange WebViewImpl::markedRange()
</span><span class="lines">@@ -3975,7 +4011,7 @@
</span><span class="cx">     executeSavedKeypressCommands();
</span><span class="cx"> 
</span><span class="cx">     EditingRange markedRange;
</span><del>-    m_page.getMarkedRange(markedRange);
</del><ins>+    m_page-&gt;getMarkedRange(markedRange);
</ins><span class="cx"> 
</span><span class="cx">     NSRange result = markedRange;
</span><span class="cx">     if (result.location == NSNotFound)
</span><span class="lines">@@ -3990,16 +4026,16 @@
</span><span class="cx"> {
</span><span class="cx">     executeSavedKeypressCommands();
</span><span class="cx"> 
</span><del>-    if (!m_page.editorState().isContentEditable) {
</del><ins>+    if (!m_page-&gt;editorState().isContentEditable) {
</ins><span class="cx">         LOG(TextInput, &quot;attributedSubstringFromRange:(%u, %u) -&gt; nil&quot;, proposedRange.location, proposedRange.length);
</span><span class="cx">         return nil;
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    if (m_page.editorState().isInPasswordField)
</del><ins>+    if (m_page-&gt;editorState().isInPasswordField)
</ins><span class="cx">         return nil;
</span><span class="cx"> 
</span><span class="cx">     AttributedString result;
</span><del>-    m_page.getAttributedSubstringFromRange(proposedRange, result);
</del><ins>+    m_page-&gt;getAttributedSubstringFromRange(proposedRange, result);
</ins><span class="cx"> 
</span><span class="cx">     if (actualRange) {
</span><span class="cx">         *actualRange = proposedRange;
</span><span class="lines">@@ -4023,7 +4059,7 @@
</span><span class="cx"> #pragma clang diagnostic pop
</span><span class="cx">     point = [m_view convertPoint:point fromView:nil];  // the point is relative to the main frame
</span><span class="cx">     
</span><del>-    uint64_t result = m_page.characterIndexForPoint(WebCore::IntPoint(point));
</del><ins>+    uint64_t result = m_page-&gt;characterIndexForPoint(WebCore::IntPoint(point));
</ins><span class="cx">     if (result == notFound)
</span><span class="cx">         result = NSNotFound;
</span><span class="cx">     LOG(TextInput, &quot;characterIndexForPoint:(%f, %f) -&gt; %u&quot;, point.x, point.y, result);
</span><span class="lines">@@ -4047,7 +4083,7 @@
</span><span class="cx">         return NSZeroRect;
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    NSRect resultRect = m_page.firstRectForCharacterRange(range);
</del><ins>+    NSRect resultRect = m_page-&gt;firstRectForCharacterRange(range);
</ins><span class="cx">     resultRect = [m_view convertRect:resultRect toView:nil];
</span><span class="cx">     resultRect = [m_view.window convertRectToScreen:resultRect];
</span><span class="cx"> 
</span><span class="lines">@@ -4093,7 +4129,7 @@
</span><span class="cx">     if (m_view == m_view.window.firstResponder) {
</span><span class="cx">         Vector&lt;WebCore::KeypressCommand&gt; commands;
</span><span class="cx">         bool handledByInputMethod = interpretKeyEvent(event, commands);
</span><del>-        m_page.handleKeyboardEvent(NativeWebKeyboardEvent(event, handledByInputMethod, commands));
</del><ins>+        m_page-&gt;handleKeyboardEvent(NativeWebKeyboardEvent(event, handledByInputMethod, commands));
</ins><span class="cx">         return true;
</span><span class="cx">     }
</span><span class="cx">     
</span><span class="lines">@@ -4107,7 +4143,7 @@
</span><span class="cx"> 
</span><span class="cx">     LOG(TextInput, &quot;keyUp:%p %@&quot;, event, event);
</span><span class="cx">     // We don't interpret the keyUp event, as this breaks key bindings (see &lt;https://bugs.webkit.org/show_bug.cgi?id=130100&gt;).
</span><del>-    m_page.handleKeyboardEvent(NativeWebKeyboardEvent(event, false, { }));
</del><ins>+    m_page-&gt;handleKeyboardEvent(NativeWebKeyboardEvent(event, false, { }));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::keyDown(NSEvent *event)
</span><span class="lines">@@ -4145,7 +4181,7 @@
</span><span class="cx">         handledByInputMethod = false;
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    m_page.handleKeyboardEvent(NativeWebKeyboardEvent(event, handledByInputMethod, commands));
</del><ins>+    m_page-&gt;handleKeyboardEvent(NativeWebKeyboardEvent(event, handledByInputMethod, commands));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebViewImpl::flagsChanged(NSEvent *event)
</span><span class="lines">@@ -4164,7 +4200,7 @@
</span><span class="cx">     if (eventKeyCodeIsZeroOrNumLockOrFn(event))
</span><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    m_page.handleKeyboardEvent(NativeWebKeyboardEvent(event, false, { }));
</del><ins>+    m_page-&gt;handleKeyboardEvent(NativeWebKeyboardEvent(event, false, { }));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> #endif // USE(ASYNC_NSTEXTINPUTCLIENT)
</span><span class="lines">@@ -4185,13 +4221,13 @@
</span><span class="cx">                     LOG(TextInput, &quot;%s was handled by text input context&quot;, String(#EventName).substring(0, String(#EventName).find(&quot;Internal&quot;)).ascii().data()); \
</span><span class="cx">                 else { \
</span><span class="cx">                     NativeWebMouseEvent webEvent(retainedEvent.get(), weakThis-&gt;m_lastPressureEvent.get(), weakThis-&gt;m_view); \
</span><del>-                    weakThis-&gt;m_page.handleMouseEvent(webEvent); \
</del><ins>+                    weakThis-&gt;m_page-&gt;handleMouseEvent(webEvent); \
</ins><span class="cx">                 } \
</span><span class="cx">             }]; \
</span><span class="cx">             return; \
</span><span class="cx">         } \
</span><span class="cx">         NativeWebMouseEvent webEvent(event, m_lastPressureEvent.get(), m_view); \
</span><del>-        m_page.handleMouseEvent(webEvent); \
</del><ins>+        m_page-&gt;handleMouseEvent(webEvent); \
</ins><span class="cx">     }
</span><span class="cx"> #define NATIVE_MOUSE_EVENT_HANDLER_INTERNAL(EventName) \
</span><span class="cx">     void WebViewImpl::EventName(NSEvent *event) \
</span><span class="lines">@@ -4208,13 +4244,13 @@
</span><span class="cx">                     LOG(TextInput, &quot;%s was handled by text input context&quot;, String(#EventName).substring(0, String(#EventName).find(&quot;Internal&quot;)).ascii().data()); \
</span><span class="cx">                 else { \
</span><span class="cx">                     NativeWebMouseEvent webEvent(retainedEvent.get(), weakThis-&gt;m_lastPressureEvent.get(), weakThis-&gt;m_view); \
</span><del>-                    weakThis-&gt;m_page.handleMouseEvent(webEvent); \
</del><ins>+                    weakThis-&gt;m_page-&gt;handleMouseEvent(webEvent); \
</ins><span class="cx">                 } \
</span><span class="cx">             }]; \
</span><span class="cx">             return; \
</span><span class="cx">         } \
</span><span class="cx">         NativeWebMouseEvent webEvent(event, m_lastPressureEvent.get(), m_view); \
</span><del>-        m_page.handleMouseEvent(webEvent); \
</del><ins>+        m_page-&gt;handleMouseEvent(webEvent); \
</ins><span class="cx">     }
</span><span class="cx">     
</span><span class="cx"> #else // USE(ASYNC_NSTEXTINPUTCLIENT)
</span><span class="lines">@@ -4228,7 +4264,7 @@
</span><span class="cx">             return; \
</span><span class="cx">         } \
</span><span class="cx">         NativeWebMouseEvent webEvent(event, m_lastPressureEvent.get(), m_view); \
</span><del>-        m_page.handleMouseEvent(webEvent); \
</del><ins>+        m_page-&gt;handleMouseEvent(webEvent); \
</ins><span class="cx">     }
</span><span class="cx"> #define NATIVE_MOUSE_EVENT_HANDLER_INTERNAL(EventName) \
</span><span class="cx">     void WebViewImpl::EventName(NSEvent *event) \
</span><span class="lines">@@ -4240,7 +4276,7 @@
</span><span class="cx">             return; \
</span><span class="cx">         } \
</span><span class="cx">         NativeWebMouseEvent webEvent(event, m_lastPressureEvent.get(), m_view); \
</span><del>-        m_page.handleMouseEvent(webEvent); \
</del><ins>+        m_page-&gt;handleMouseEvent(webEvent); \
</ins><span class="cx">     }
</span><span class="cx"> #endif // USE(ASYNC_NSTEXTINPUTCLIENT)
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessWebPageProxyh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.h (191823 => 191824)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/WebPageProxy.h        2015-10-30 22:35:22 UTC (rev 191823)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.h        2015-10-30 22:48:32 UTC (rev 191824)
</span><span class="lines">@@ -986,10 +986,10 @@
</span><span class="cx">     void didSaveToPageCache();
</span><span class="cx">         
</span><span class="cx">     void setScrollPinningBehavior(WebCore::ScrollPinningBehavior);
</span><del>-    WebCore::ScrollPinningBehavior scrollPinningBehavior() { return m_scrollPinningBehavior; }
</del><ins>+    WebCore::ScrollPinningBehavior scrollPinningBehavior() const { return m_scrollPinningBehavior; }
</ins><span class="cx"> 
</span><span class="cx">     void setOverlayScrollbarStyle(WTF::Optional&lt;WebCore::ScrollbarOverlayStyle&gt;);
</span><del>-    WTF::Optional&lt;WebCore::ScrollbarOverlayStyle&gt; overlayScrollbarStyle() { return m_scrollbarOverlayStyle; }
</del><ins>+    WTF::Optional&lt;WebCore::ScrollbarOverlayStyle&gt; overlayScrollbarStyle() const { return m_scrollbarOverlayStyle; }
</ins><span class="cx"> 
</span><span class="cx">     bool shouldRecordNavigationSnapshots() const { return m_shouldRecordNavigationSnapshots; }
</span><span class="cx">     void setShouldRecordNavigationSnapshots(bool shouldRecordSnapshots) { m_shouldRecordNavigationSnapshots = shouldRecordSnapshots; }
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessWebProcessPoolcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/WebProcessPool.cpp (191823 => 191824)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/WebProcessPool.cpp        2015-10-30 22:35:22 UTC (rev 191823)
+++ trunk/Source/WebKit2/UIProcess/WebProcessPool.cpp        2015-10-30 22:48:32 UTC (rev 191824)
</span><span class="lines">@@ -836,7 +836,7 @@
</span><span class="cx">     return *process;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-PassRefPtr&lt;WebPageProxy&gt; WebProcessPool::createWebPage(PageClient&amp; pageClient, Ref&lt;API::PageConfiguration&gt;&amp;&amp; pageConfiguration)
</del><ins>+Ref&lt;WebPageProxy&gt; WebProcessPool::createWebPage(PageClient&amp; pageClient, Ref&lt;API::PageConfiguration&gt;&amp;&amp; pageConfiguration)
</ins><span class="cx"> {
</span><span class="cx">     if (!pageConfiguration-&gt;pageGroup())
</span><span class="cx">         pageConfiguration-&gt;setPageGroup(m_defaultPageGroup.ptr());
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessWebProcessPoolh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/WebProcessPool.h (191823 => 191824)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/WebProcessPool.h        2015-10-30 22:35:22 UTC (rev 191823)
+++ trunk/Source/WebKit2/UIProcess/WebProcessPool.h        2015-10-30 22:48:32 UTC (rev 191824)
</span><span class="lines">@@ -171,7 +171,7 @@
</span><span class="cx"> 
</span><span class="cx">     API::WebsiteDataStore* websiteDataStore() const { return m_websiteDataStore.get(); }
</span><span class="cx"> 
</span><del>-    PassRefPtr&lt;WebPageProxy&gt; createWebPage(PageClient&amp;, Ref&lt;API::PageConfiguration&gt;&amp;&amp;);
</del><ins>+    Ref&lt;WebPageProxy&gt; createWebPage(PageClient&amp;, Ref&lt;API::PageConfiguration&gt;&amp;&amp;);
</ins><span class="cx"> 
</span><span class="cx">     const String&amp; injectedBundlePath() const { return m_configuration-&gt;injectedBundlePath(); }
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessmacPageClientImplh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/mac/PageClientImpl.h (191823 => 191824)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/mac/PageClientImpl.h        2015-10-30 22:35:22 UTC (rev 191823)
+++ trunk/Source/WebKit2/UIProcess/mac/PageClientImpl.h        2015-10-30 22:48:32 UTC (rev 191824)
</span><span class="lines">@@ -51,7 +51,7 @@
</span><span class="cx"> #endif
</span><span class="cx">     {
</span><span class="cx"> public:
</span><del>-    PageClientImpl(WKView *, WKWebView *);
</del><ins>+    PageClientImpl(NSView *, WKWebView *);
</ins><span class="cx">     virtual ~PageClientImpl();
</span><span class="cx"> 
</span><span class="cx">     // FIXME: Eventually WebViewImpl should become the PageClient.
</span><span class="lines">@@ -224,7 +224,7 @@
</span><span class="cx">     virtual _WKRemoteObjectRegistry *remoteObjectRegistry() override;
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><del>-    WKView *m_wkView;
</del><ins>+    NSView *m_view;
</ins><span class="cx">     WKWebView *m_webView;
</span><span class="cx">     WebViewImpl* m_impl { nullptr };
</span><span class="cx"> #if USE(AUTOCORRECTION_PANEL)
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessmacPageClientImplmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/mac/PageClientImpl.mm (191823 => 191824)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/mac/PageClientImpl.mm        2015-10-30 22:35:22 UTC (rev 191823)
+++ trunk/Source/WebKit2/UIProcess/mac/PageClientImpl.mm        2015-10-30 22:48:32 UTC (rev 191824)
</span><span class="lines">@@ -93,8 +93,8 @@
</span><span class="cx"> 
</span><span class="cx"> namespace WebKit {
</span><span class="cx"> 
</span><del>-PageClientImpl::PageClientImpl(WKView* wkView, WKWebView *webView)
-    : m_wkView(wkView)
</del><ins>+PageClientImpl::PageClientImpl(NSView* view, WKWebView *webView)
+    : m_view(view)
</ins><span class="cx">     , m_webView(webView)
</span><span class="cx"> #if USE(DICTATION_ALTERNATIVES)
</span><span class="cx">     , m_alternativeTextUIController(std::make_unique&lt;AlternativeTextUIController&gt;())
</span><span class="lines">@@ -141,27 +141,27 @@
</span><span class="cx"> 
</span><span class="cx"> IntSize PageClientImpl::viewSize()
</span><span class="cx"> {
</span><del>-    return IntSize([m_wkView bounds].size);
</del><ins>+    return IntSize([m_view bounds].size);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> NSView *PageClientImpl::activeView() const
</span><span class="cx"> {
</span><span class="cx"> #if WK_API_ENABLED
</span><del>-    return m_wkView._thumbnailView ? (NSView *)m_wkView._thumbnailView : (NSView *)m_wkView;
</del><ins>+    return (m_impl &amp;&amp; m_impl-&gt;thumbnailView()) ? (NSView *)m_impl-&gt;thumbnailView() : m_view;
</ins><span class="cx"> #else
</span><del>-    return m_wkView;
</del><ins>+    return m_view;
</ins><span class="cx"> #endif
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> NSWindow *PageClientImpl::activeWindow() const
</span><span class="cx"> {
</span><span class="cx"> #if WK_API_ENABLED
</span><del>-    if (m_wkView._thumbnailView)
-        return m_wkView._thumbnailView.window;
</del><ins>+    if (m_impl &amp;&amp; m_impl-&gt;thumbnailView())
+        return m_impl-&gt;thumbnailView().window;
</ins><span class="cx"> #endif
</span><span class="cx">     if (m_impl &amp;&amp; m_impl-&gt;targetWindowForMovePreparation())
</span><span class="cx">         return m_impl-&gt;targetWindowForMovePreparation();
</span><del>-    return m_wkView.window;
</del><ins>+    return m_view.window;
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> bool PageClientImpl::isViewWindowActive()
</span><span class="lines">@@ -182,7 +182,7 @@
</span><span class="cx"> 
</span><span class="cx"> void PageClientImpl::makeFirstResponder()
</span><span class="cx"> {
</span><del>-     [[m_wkView window] makeFirstResponder:m_wkView];
</del><ins>+     [[m_view window] makeFirstResponder:m_view];
</ins><span class="cx"> }
</span><span class="cx">     
</span><span class="cx"> bool PageClientImpl::isViewVisible()
</span><span class="lines">@@ -287,7 +287,7 @@
</span><span class="cx"> 
</span><span class="cx"> void PageClientImpl::didChangeContentSize(const WebCore::IntSize&amp; newSize)
</span><span class="cx"> {
</span><del>-    [m_wkView _didChangeContentSize:newSize];
</del><ins>+    m_impl-&gt;didChangeContentSize(newSize);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void PageClientImpl::setCursor(const WebCore::Cursor&amp; cursor)
</span><span class="lines">@@ -297,10 +297,10 @@
</span><span class="cx">     if ([NSApp _cursorRectCursor])
</span><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    if (!m_wkView)
</del><ins>+    if (!m_view)
</ins><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    NSWindow *window = [m_wkView window];
</del><ins>+    NSWindow *window = [m_view window];
</ins><span class="cx">     if (!window)
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="lines">@@ -331,7 +331,7 @@
</span><span class="cx"> #if USE(INSERTION_UNDO_GROUPING)
</span><span class="cx"> void PageClientImpl::registerInsertionUndoGrouping()
</span><span class="cx"> {
</span><del>-    registerInsertionUndoGroupingWithUndoManager([m_wkView undoManager]);
</del><ins>+    registerInsertionUndoGroupingWithUndoManager([m_view undoManager]);
</ins><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="lines">@@ -342,12 +342,12 @@
</span><span class="cx"> 
</span><span class="cx"> bool PageClientImpl::canUndoRedo(WebPageProxy::UndoOrRedo undoOrRedo)
</span><span class="cx"> {
</span><del>-    return (undoOrRedo == WebPageProxy::Undo) ? [[m_wkView undoManager] canUndo] : [[m_wkView undoManager] canRedo];
</del><ins>+    return (undoOrRedo == WebPageProxy::Undo) ? [[m_view undoManager] canUndo] : [[m_view undoManager] canRedo];
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void PageClientImpl::executeUndoRedo(WebPageProxy::UndoOrRedo undoOrRedo)
</span><span class="cx"> {
</span><del>-    return (undoOrRedo == WebPageProxy::Undo) ? [[m_wkView undoManager] undo] : [[m_wkView undoManager] redo];
</del><ins>+    return (undoOrRedo == WebPageProxy::Undo) ? [[m_view undoManager] undo] : [[m_view undoManager] redo];
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void PageClientImpl::setDragImage(const IntPoint&amp; clientPosition, PassRefPtr&lt;ShareableBitmap&gt; dragImage, bool isLinkDrag)
</span><span class="lines">@@ -355,16 +355,16 @@
</span><span class="cx">     RetainPtr&lt;CGImageRef&gt; dragCGImage = dragImage-&gt;makeCGImage();
</span><span class="cx">     RetainPtr&lt;NSImage&gt; dragNSImage = adoptNS([[NSImage alloc] initWithCGImage:dragCGImage.get() size:dragImage-&gt;size()]);
</span><span class="cx">     IntSize size([dragNSImage size]);
</span><del>-    size.scale(1.0 / toImpl([m_wkView pageRef])-&gt;deviceScaleFactor());
</del><ins>+    size.scale(1.0 / m_impl-&gt;page().deviceScaleFactor());
</ins><span class="cx">     [dragNSImage setSize:size];
</span><span class="cx"> 
</span><span class="cx"> #if WK_API_ENABLED
</span><span class="cx">     if (m_webView) {
</span><del>-        NSPoint webViewPosition = [m_wkView convertPoint:clientPosition toView:m_webView];
</del><ins>+        NSPoint webViewPosition = [m_view convertPoint:clientPosition toView:m_webView];
</ins><span class="cx">         m_impl-&gt;dragImageForView(m_webView, dragNSImage.get(), webViewPosition, isLinkDrag);
</span><span class="cx">     } else
</span><span class="cx"> #endif
</span><del>-        m_impl-&gt;dragImageForView(m_wkView, dragNSImage.get(), clientPosition, isLinkDrag);
</del><ins>+        m_impl-&gt;dragImageForView(m_view, dragNSImage.get(), clientPosition, isLinkDrag);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void PageClientImpl::setPromisedDataForImage(const String&amp; pasteboardName, PassRefPtr&lt;SharedBuffer&gt; imageBuffer, const String&amp; filename, const String&amp; extension, const String&amp; title, const String&amp; url, const String&amp; visibleURL, PassRefPtr&lt;SharedBuffer&gt; archiveBuffer)
</span><span class="lines">@@ -405,30 +405,30 @@
</span><span class="cx"> 
</span><span class="cx"> FloatRect PageClientImpl::convertToDeviceSpace(const FloatRect&amp; rect)
</span><span class="cx"> {
</span><del>-    return toDeviceSpace(rect, [m_wkView window]);
</del><ins>+    return toDeviceSpace(rect, [m_view window]);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> FloatRect PageClientImpl::convertToUserSpace(const FloatRect&amp; rect)
</span><span class="cx"> {
</span><del>-    return toUserSpace(rect, [m_wkView window]);
</del><ins>+    return toUserSpace(rect, [m_view window]);
</ins><span class="cx"> }
</span><span class="cx">    
</span><span class="cx"> IntPoint PageClientImpl::screenToRootView(const IntPoint&amp; point)
</span><span class="cx"> {
</span><span class="cx"> #pragma clang diagnostic push
</span><span class="cx"> #pragma clang diagnostic ignored &quot;-Wdeprecated-declarations&quot;
</span><del>-    NSPoint windowCoord = [[m_wkView window] convertScreenToBase:point];
</del><ins>+    NSPoint windowCoord = [[m_view window] convertScreenToBase:point];
</ins><span class="cx"> #pragma clang diagnostic pop
</span><del>-    return IntPoint([m_wkView convertPoint:windowCoord fromView:nil]);
</del><ins>+    return IntPoint([m_view convertPoint:windowCoord fromView:nil]);
</ins><span class="cx"> }
</span><span class="cx">     
</span><span class="cx"> IntRect PageClientImpl::rootViewToScreen(const IntRect&amp; rect)
</span><span class="cx"> {
</span><span class="cx">     NSRect tempRect = rect;
</span><del>-    tempRect = [m_wkView convertRect:tempRect toView:nil];
</del><ins>+    tempRect = [m_view convertRect:tempRect toView:nil];
</ins><span class="cx"> #pragma clang diagnostic push
</span><span class="cx"> #pragma clang diagnostic ignored &quot;-Wdeprecated-declarations&quot;
</span><del>-    tempRect.origin = [[m_wkView window] convertBaseToScreen:tempRect.origin];
</del><ins>+    tempRect.origin = [[m_view window] convertBaseToScreen:tempRect.origin];
</ins><span class="cx"> #pragma clang diagnostic pop
</span><span class="cx">     return enclosingIntRect(tempRect);
</span><span class="cx"> }
</span><span class="lines">@@ -440,20 +440,20 @@
</span><span class="cx"> 
</span><span class="cx"> RefPtr&lt;WebPopupMenuProxy&gt; PageClientImpl::createPopupMenuProxy(WebPageProxy&amp; page)
</span><span class="cx"> {
</span><del>-    return WebPopupMenuProxyMac::create(m_wkView, page);
</del><ins>+    return WebPopupMenuProxyMac::create(m_view, page);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(CONTEXT_MENUS)
</span><span class="cx"> std::unique_ptr&lt;WebContextMenuProxy&gt; PageClientImpl::createContextMenuProxy(WebPageProxy&amp; page, const ContextMenuContextData&amp; context, const UserData&amp; userData)
</span><span class="cx"> {
</span><del>-    return std::make_unique&lt;WebContextMenuProxyMac&gt;(m_wkView, page, context, userData);
</del><ins>+    return std::make_unique&lt;WebContextMenuProxyMac&gt;(m_view, page, context, userData);
</ins><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(INPUT_TYPE_COLOR)
</span><span class="cx"> RefPtr&lt;WebColorPicker&gt; PageClientImpl::createColorPicker(WebPageProxy* page, const WebCore::Color&amp; initialColor,  const WebCore::IntRect&amp; rect)
</span><span class="cx"> {
</span><del>-    return WebColorPickerMac::create(page, initialColor, rect, m_wkView);
</del><ins>+    return WebColorPickerMac::create(page, initialColor, rect, m_view);
</ins><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="lines">@@ -531,7 +531,7 @@
</span><span class="cx"> #if ENABLE(MAC_GESTURE_EVENTS)
</span><span class="cx"> void PageClientImpl::gestureEventWasNotHandledByWebCore(const NativeWebGestureEvent&amp; event)
</span><span class="cx"> {
</span><del>-    [m_wkView _gestureEventWasNotHandledByWebCore:event.nativeEvent()];
</del><ins>+    m_impl-&gt;gestureEventWasNotHandledByWebCore(event.nativeEvent());
</ins><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="lines">@@ -549,14 +549,14 @@
</span><span class="cx"> {
</span><span class="cx">     m_impl-&gt;prepareForDictionaryLookup();
</span><span class="cx"> 
</span><del>-    DictionaryLookup::showPopup(dictionaryPopupInfo, m_wkView, [this](TextIndicator&amp; textIndicator) {
</del><ins>+    DictionaryLookup::showPopup(dictionaryPopupInfo, m_view, [this](TextIndicator&amp; textIndicator) {
</ins><span class="cx">         m_impl-&gt;setTextIndicator(textIndicator, TextIndicatorWindowLifetime::Permanent);
</span><span class="cx">     });
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void PageClientImpl::dismissContentRelativeChildWindows(bool withAnimation)
</span><span class="cx"> {
</span><del>-    [m_wkView _dismissContentRelativeChildWindowsWithAnimation:withAnimation];
</del><ins>+    m_impl-&gt;dismissContentRelativeChildWindowsWithAnimation(withAnimation);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void PageClientImpl::showCorrectionPanel(AlternativeTextType type, const FloatRect&amp; boundingBoxOfReplacedString, const String&amp; replacedString, const String&amp; replacementString, const Vector&lt;String&gt;&amp; alternativeReplacementStrings)
</span><span class="lines">@@ -564,7 +564,7 @@
</span><span class="cx"> #if USE(AUTOCORRECTION_PANEL)
</span><span class="cx">     if (!isViewVisible() || !isViewInWindow())
</span><span class="cx">         return;
</span><del>-    m_correctionPanel.show(m_wkView, *m_impl, type, boundingBoxOfReplacedString, replacedString, replacementString, alternativeReplacementStrings);
</del><ins>+    m_correctionPanel.show(m_view, *m_impl, type, boundingBoxOfReplacedString, replacedString, replacementString, alternativeReplacementStrings);
</ins><span class="cx"> #endif
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -587,7 +587,7 @@
</span><span class="cx"> void PageClientImpl::recordAutocorrectionResponse(AutocorrectionResponseType responseType, const String&amp; replacedString, const String&amp; replacementString)
</span><span class="cx"> {
</span><span class="cx">     NSCorrectionResponse response = responseType == AutocorrectionReverted ? NSCorrectionResponseReverted : NSCorrectionResponseEdited;
</span><del>-    CorrectionPanel::recordAutocorrectionResponse(m_wkView, m_impl-&gt;spellCheckerDocumentTag(), response, replacedString, replacementString);
</del><ins>+    CorrectionPanel::recordAutocorrectionResponse(m_view, m_impl-&gt;spellCheckerDocumentTag(), response, replacedString, replacementString);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void PageClientImpl::recommendedScrollbarStyleDidChange(ScrollbarStyle newStyle)
</span><span class="lines">@@ -599,7 +599,7 @@
</span><span class="cx">     else
</span><span class="cx">         options |= NSTrackingActiveInKeyWindow;
</span><span class="cx"> 
</span><del>-    RetainPtr&lt;NSTrackingArea&gt; trackingArea = adoptNS([[NSTrackingArea alloc] initWithRect:[m_wkView frame] options:options owner:m_wkView userInfo:nil]);
</del><ins>+    RetainPtr&lt;NSTrackingArea&gt; trackingArea = adoptNS([[NSTrackingArea alloc] initWithRect:[m_view frame] options:options owner:m_view userInfo:nil]);
</ins><span class="cx">     m_impl-&gt;setPrimaryTrackingArea(trackingArea.get());
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -635,7 +635,7 @@
</span><span class="cx"> {
</span><span class="cx">     if (!isViewVisible() || !isViewInWindow())
</span><span class="cx">         return;
</span><del>-    m_alternativeTextUIController-&gt;showAlternatives(m_wkView, boundingBoxOfDictatedText, dictationContext, ^(NSString *acceptedAlternative) {
</del><ins>+    m_alternativeTextUIController-&gt;showAlternatives(m_view, boundingBoxOfDictatedText, dictationContext, ^(NSString *acceptedAlternative) {
</ins><span class="cx">         m_impl-&gt;handleAcceptedAlternativeText(acceptedAlternative);
</span><span class="cx">     });
</span><span class="cx"> }
</span><span class="lines">@@ -783,7 +783,7 @@
</span><span class="cx"> 
</span><span class="cx"> CGRect PageClientImpl::boundsOfLayerInLayerBackedWindowCoordinates(CALayer *layer) const
</span><span class="cx"> {
</span><del>-    CALayer *windowContentLayer = static_cast&lt;NSView *&gt;(m_wkView.window.contentView).layer;
</del><ins>+    CALayer *windowContentLayer = static_cast&lt;NSView *&gt;(m_view.window.contentView).layer;
</ins><span class="cx">     ASSERT(windowContentLayer);
</span><span class="cx"> 
</span><span class="cx">     return [windowContentLayer convertRect:layer.bounds fromLayer:layer];
</span><span class="lines">@@ -802,12 +802,12 @@
</span><span class="cx">     if (m_webView)
</span><span class="cx">         return [m_webView _immediateActionAnimationControllerForHitTestResult:wrapper(*hitTestResult) withType:(_WKImmediateActionType)type userData:(id)(userData.get())];
</span><span class="cx"> #endif
</span><del>-    return m_impl-&gt;immediateActionAnimationControllerForHitTestResult(toAPI(hitTestResult.get()), type, toAPI(userData.get()));
</del><ins>+    return m_impl-&gt;immediateActionAnimationControllerForHitTestResult(hitTestResult.get(), type, userData.get());
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void PageClientImpl::showPlatformContextMenu(NSMenu *menu, IntPoint location)
</span><span class="cx"> {
</span><del>-    [menu popUpMenuPositioningItem:nil atLocation:location inView:m_wkView];
</del><ins>+    [menu popUpMenuPositioningItem:nil atLocation:location inView:m_view];
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(WIRELESS_PLAYBACK_TARGET)
</span><span class="lines">@@ -819,12 +819,12 @@
</span><span class="cx"> 
</span><span class="cx"> void PageClientImpl::refView()
</span><span class="cx"> {
</span><del>-    CFRetain(m_wkView);
</del><ins>+    CFRetain(m_view);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void PageClientImpl::derefView()
</span><span class="cx"> {
</span><del>-    CFRelease(m_wkView);
</del><ins>+    CFRelease(m_view);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void PageClientImpl::startWindowDrag()
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessmacWebColorPickerMach"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/mac/WebColorPickerMac.h (191823 => 191824)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/mac/WebColorPickerMac.h        2015-10-30 22:35:22 UTC (rev 191823)
+++ trunk/Source/WebKit2/UIProcess/mac/WebColorPickerMac.h        2015-10-30 22:48:32 UTC (rev 191824)
</span><span class="lines">@@ -37,7 +37,6 @@
</span><span class="cx"> #if USE(APPKIT)
</span><span class="cx"> 
</span><span class="cx"> #import &quot;WebColorPicker.h&quot;
</span><del>-#import &quot;WKView.h&quot;
</del><span class="cx"> #import &lt;WebCore/IntRect.h&gt;
</span><span class="cx"> #include &lt;wtf/RetainPtr.h&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -60,7 +59,7 @@
</span><span class="cx">     
</span><span class="cx"> class WebColorPickerMac : public WebColorPicker {
</span><span class="cx"> public:        
</span><del>-    static Ref&lt;WebColorPickerMac&gt; create(WebColorPicker::Client*, const WebCore::Color&amp;, const WebCore::IntRect&amp;, WKView*);
</del><ins>+    static Ref&lt;WebColorPickerMac&gt; create(WebColorPicker::Client*, const WebCore::Color&amp;, const WebCore::IntRect&amp;, NSView*);
</ins><span class="cx">     ~WebColorPickerMac();
</span><span class="cx"> 
</span><span class="cx">     virtual void endPicker() override;
</span><span class="lines">@@ -70,7 +69,7 @@
</span><span class="cx">     void didChooseColor(const WebCore::Color&amp;);
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    WebColorPickerMac(WebColorPicker::Client*, const WebCore::Color&amp;, const WebCore::IntRect&amp;, WKView*);
</del><ins>+    WebColorPickerMac(WebColorPicker::Client*, const WebCore::Color&amp;, const WebCore::IntRect&amp;, NSView*);
</ins><span class="cx">     RetainPtr&lt;NSObject&lt;WKColorPickerUIMac&gt; &gt; m_colorPickerUI;
</span><span class="cx"> };
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessmacWebColorPickerMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/mac/WebColorPickerMac.mm (191823 => 191824)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/mac/WebColorPickerMac.mm        2015-10-30 22:35:22 UTC (rev 191823)
+++ trunk/Source/WebKit2/UIProcess/mac/WebColorPickerMac.mm        2015-10-30 22:48:32 UTC (rev 191824)
</span><span class="lines">@@ -58,7 +58,7 @@
</span><span class="cx">     WebColorPickerMac *_picker;
</span><span class="cx">     RetainPtr&lt;NSPopoverColorWell&gt; _popoverWell;
</span><span class="cx"> }
</span><del>-- (id)initWithFrame:(const WebCore::IntRect &amp;)rect inView:(WKView *)view;
</del><ins>+- (id)initWithFrame:(const WebCore::IntRect &amp;)rect inView:(NSView *)view;
</ins><span class="cx"> @end
</span><span class="cx"> 
</span><span class="cx"> #else
</span><span class="lines">@@ -75,7 +75,7 @@
</span><span class="cx"> 
</span><span class="cx"> namespace WebKit {
</span><span class="cx"> 
</span><del>-Ref&lt;WebColorPickerMac&gt; WebColorPickerMac::create(WebColorPicker::Client* client, const WebCore::Color&amp; initialColor, const WebCore::IntRect&amp; rect, WKView* view)
</del><ins>+Ref&lt;WebColorPickerMac&gt; WebColorPickerMac::create(WebColorPicker::Client* client, const WebCore::Color&amp; initialColor, const WebCore::IntRect&amp; rect, NSView* view)
</ins><span class="cx"> {
</span><span class="cx">     return adoptRef(*new WebColorPickerMac(client, initialColor, rect, view));
</span><span class="cx"> }
</span><span class="lines">@@ -86,7 +86,7 @@
</span><span class="cx">         endPicker();
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-WebColorPickerMac::WebColorPickerMac(WebColorPicker::Client* client, const WebCore::Color&amp; initialColor, const WebCore::IntRect&amp; rect, WKView* view)
</del><ins>+WebColorPickerMac::WebColorPickerMac(WebColorPicker::Client* client, const WebCore::Color&amp; initialColor, const WebCore::IntRect&amp; rect, NSView* view)
</ins><span class="cx">     : WebColorPicker(client)
</span><span class="cx"> {
</span><span class="cx"> #if ENABLE(INPUT_TYPE_COLOR_POPOVER)
</span><span class="lines">@@ -136,7 +136,7 @@
</span><span class="cx"> #if ENABLE(INPUT_TYPE_COLOR_POPOVER)
</span><span class="cx"> 
</span><span class="cx"> @implementation WKColorPopoverMac
</span><del>-- (id)initWithFrame:(const WebCore::IntRect &amp;)rect inView:(WKView *)view
</del><ins>+- (id)initWithFrame:(const WebCore::IntRect &amp;)rect inView:(NSView *)view
</ins><span class="cx"> {
</span><span class="cx">     if(!(self = [super init]))
</span><span class="cx">         return self;
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessmacWebContextMenuProxyMach"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/mac/WebContextMenuProxyMac.h (191823 => 191824)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/mac/WebContextMenuProxyMac.h        2015-10-30 22:35:22 UTC (rev 191823)
+++ trunk/Source/WebKit2/UIProcess/mac/WebContextMenuProxyMac.h        2015-10-30 22:48:32 UTC (rev 191824)
</span><span class="lines">@@ -32,8 +32,8 @@
</span><span class="cx"> #include &lt;wtf/RetainPtr.h&gt;
</span><span class="cx"> 
</span><span class="cx"> OBJC_CLASS NSPopUpButtonCell;
</span><ins>+OBJC_CLASS NSView;
</ins><span class="cx"> OBJC_CLASS NSWindow;
</span><del>-OBJC_CLASS WKView;
</del><span class="cx"> 
</span><span class="cx"> namespace WebKit {
</span><span class="cx"> 
</span><span class="lines">@@ -44,7 +44,7 @@
</span><span class="cx"> 
</span><span class="cx"> class WebContextMenuProxyMac : public WebContextMenuProxy {
</span><span class="cx"> public:
</span><del>-    WebContextMenuProxyMac(WKView*, WebPageProxy&amp;, const ContextMenuContextData&amp;, const UserData&amp;);
</del><ins>+    WebContextMenuProxyMac(NSView*, WebPageProxy&amp;, const ContextMenuContextData&amp;, const UserData&amp;);
</ins><span class="cx">     ~WebContextMenuProxyMac();
</span><span class="cx"> 
</span><span class="cx">     void contextMenuItemSelected(const WebContextMenuItemData&amp;);
</span><span class="lines">@@ -71,7 +71,7 @@
</span><span class="cx"> 
</span><span class="cx">     RetainPtr&lt;NSMenu&gt; m_menu;
</span><span class="cx"> 
</span><del>-    WKView* m_webView;
</del><ins>+    NSView* m_webView;
</ins><span class="cx">     WebPageProxy&amp; m_page;
</span><span class="cx"> };
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessmacWebContextMenuProxyMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/mac/WebContextMenuProxyMac.mm (191823 => 191824)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/mac/WebContextMenuProxyMac.mm        2015-10-30 22:35:22 UTC (rev 191823)
+++ trunk/Source/WebKit2/UIProcess/mac/WebContextMenuProxyMac.mm        2015-10-30 22:48:32 UTC (rev 191824)
</span><span class="lines">@@ -36,7 +36,6 @@
</span><span class="cx"> #import &quot;ShareableBitmap.h&quot;
</span><span class="cx"> #import &quot;StringUtilities.h&quot;
</span><span class="cx"> #import &quot;WKSharingServicePickerDelegate.h&quot;
</span><del>-#import &quot;WKView.h&quot;
</del><span class="cx"> #import &quot;WebContextMenuItem.h&quot;
</span><span class="cx"> #import &quot;WebContextMenuItemData.h&quot;
</span><span class="cx"> #import &quot;WebProcessProxy.h&quot;
</span><span class="lines">@@ -152,7 +151,7 @@
</span><span class="cx"> 
</span><span class="cx"> namespace WebKit {
</span><span class="cx"> 
</span><del>-WebContextMenuProxyMac::WebContextMenuProxyMac(WKView* webView, WebPageProxy&amp; page, const ContextMenuContextData&amp; context, const UserData&amp; userData)
</del><ins>+WebContextMenuProxyMac::WebContextMenuProxyMac(NSView* webView, WebPageProxy&amp; page, const ContextMenuContextData&amp; context, const UserData&amp; userData)
</ins><span class="cx">     : WebContextMenuProxy(context, userData)
</span><span class="cx">     , m_webView(webView)
</span><span class="cx">     , m_page(page)
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessmacWebPopupMenuProxyMach"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/mac/WebPopupMenuProxyMac.h (191823 => 191824)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/mac/WebPopupMenuProxyMac.h        2015-10-30 22:35:22 UTC (rev 191823)
+++ trunk/Source/WebKit2/UIProcess/mac/WebPopupMenuProxyMac.h        2015-10-30 22:48:32 UTC (rev 191824)
</span><span class="lines">@@ -40,7 +40,7 @@
</span><span class="cx"> 
</span><span class="cx"> class WebPopupMenuProxyMac : public WebPopupMenuProxy {
</span><span class="cx"> public:
</span><del>-    static Ref&lt;WebPopupMenuProxyMac&gt; create(WKView *webView, WebPopupMenuProxy::Client&amp; client)
</del><ins>+    static Ref&lt;WebPopupMenuProxyMac&gt; create(NSView *webView, WebPopupMenuProxy::Client&amp; client)
</ins><span class="cx">     {
</span><span class="cx">         return adoptRef(*new WebPopupMenuProxyMac(webView, client));
</span><span class="cx">     }
</span><span class="lines">@@ -51,12 +51,12 @@
</span><span class="cx">     virtual void cancelTracking() override;
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    WebPopupMenuProxyMac(WKView *, WebPopupMenuProxy::Client&amp;);
</del><ins>+    WebPopupMenuProxyMac(NSView *, WebPopupMenuProxy::Client&amp;);
</ins><span class="cx"> 
</span><span class="cx">     void populate(const Vector&lt;WebPopupItem&gt;&amp;, NSFont *, WebCore::TextDirection);
</span><span class="cx"> 
</span><span class="cx">     RetainPtr&lt;NSPopUpButtonCell&gt; m_popup;
</span><del>-    WKView *m_webView;
</del><ins>+    NSView *m_webView;
</ins><span class="cx">     bool m_wasCanceled;
</span><span class="cx"> };
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessmacWebPopupMenuProxyMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/mac/WebPopupMenuProxyMac.mm (191823 => 191824)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/mac/WebPopupMenuProxyMac.mm        2015-10-30 22:35:22 UTC (rev 191823)
+++ trunk/Source/WebKit2/UIProcess/mac/WebPopupMenuProxyMac.mm        2015-10-30 22:48:32 UTC (rev 191824)
</span><span class="lines">@@ -32,7 +32,6 @@
</span><span class="cx"> #import &quot;PageClientImpl.h&quot;
</span><span class="cx"> #import &quot;PlatformPopupMenuData.h&quot;
</span><span class="cx"> #import &quot;StringUtilities.h&quot;
</span><del>-#import &quot;WKView.h&quot;
</del><span class="cx"> #import &quot;WebPopupItem.h&quot;
</span><span class="cx"> #import &lt;WebKitSystemInterface.h&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -40,7 +39,7 @@
</span><span class="cx"> 
</span><span class="cx"> namespace WebKit {
</span><span class="cx"> 
</span><del>-WebPopupMenuProxyMac::WebPopupMenuProxyMac(WKView *webView, WebPopupMenuProxy::Client&amp; client)
</del><ins>+WebPopupMenuProxyMac::WebPopupMenuProxyMac(NSView *webView, WebPopupMenuProxy::Client&amp; client)
</ins><span class="cx">     : WebPopupMenuProxy(client)
</span><span class="cx">     , m_webView(webView)
</span><span class="cx">     , m_wasCanceled(false)
</span></span></pre>
</div>
</div>

</body>
</html>