<!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>[242690] trunk/Source/WebKit</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/242690">242690</a></dd>
<dt>Author</dt> <dd>wenson_hsieh@apple.com</dd>
<dt>Date</dt> <dd>2019-03-10 16:49:10 -0700 (Sun, 10 Mar 2019)</dd>
</dl>

<h3>Log Message</h3>
<pre>Fix some misleading function and variable names in WKContentViewInteraction.mm
https://bugs.webkit.org/show_bug.cgi?id=195536

Reviewed by Tim Horton.

* UIProcess/ios/WKContentViewInteraction.mm:
(shouldDeferZoomingToSelectionWhenRevealingFocusedElement):

Rename shouldZoomToRevealSelectionRect to shouldDeferZoomingToSelectionWhenRevealingFocusedElement; this
function is used to determine whether we should zoom to the selection rect when revealing the focused element,
and therefore affects whether we need to defer zooming until we get selection information.

(rectToRevealWhenZoomingToFocusedElement):
(-[WKContentView _elementDidFocus:userIsInteracting:blurPreviousNode:changingActivityState:userObject:]):

Rename shouldShowKeyboard to shouldShowInputView; this boolean indicates whether we should show not only the
keyboard, but other UI for user input such as date and select pickers.

(-[WKContentView _didReceiveEditorStateUpdateAfterFocus]):
(shouldZoomToRevealSelectionRect): Deleted.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebKitChangeLog">trunk/Source/WebKit/ChangeLog</a></li>
<li><a href="#trunkSourceWebKitUIProcessiosWKContentViewInteractionmm">trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebKitChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/ChangeLog (242689 => 242690)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/ChangeLog    2019-03-10 20:08:54 UTC (rev 242689)
+++ trunk/Source/WebKit/ChangeLog       2019-03-10 23:49:10 UTC (rev 242690)
</span><span class="lines">@@ -1,3 +1,26 @@
</span><ins>+2019-03-10  Wenson Hsieh  <wenson_hsieh@apple.com>
+
+        Fix some misleading function and variable names in WKContentViewInteraction.mm
+        https://bugs.webkit.org/show_bug.cgi?id=195536
+
+        Reviewed by Tim Horton.
+
+        * UIProcess/ios/WKContentViewInteraction.mm:
+        (shouldDeferZoomingToSelectionWhenRevealingFocusedElement):
+
+        Rename shouldZoomToRevealSelectionRect to shouldDeferZoomingToSelectionWhenRevealingFocusedElement; this
+        function is used to determine whether we should zoom to the selection rect when revealing the focused element,
+        and therefore affects whether we need to defer zooming until we get selection information.
+
+        (rectToRevealWhenZoomingToFocusedElement):
+        (-[WKContentView _elementDidFocus:userIsInteracting:blurPreviousNode:changingActivityState:userObject:]):
+
+        Rename shouldShowKeyboard to shouldShowInputView; this boolean indicates whether we should show not only the
+        keyboard, but other UI for user input such as date and select pickers.
+
+        (-[WKContentView _didReceiveEditorStateUpdateAfterFocus]):
+        (shouldZoomToRevealSelectionRect): Deleted.
+
</ins><span class="cx"> 2019-03-10  Simon Fraser  <simon.fraser@apple.com>
</span><span class="cx"> 
</span><span class="cx">         ScrollingTree should have the final say on where layers go
</span></span></pre></div>
<a id="trunkSourceWebKitUIProcessiosWKContentViewInteractionmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm (242689 => 242690)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm    2019-03-10 20:08:54 UTC (rev 242689)
+++ trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm       2019-03-10 23:49:10 UTC (rev 242690)
</span><span class="lines">@@ -4723,7 +4723,7 @@
</span><span class="cx">     return _formAccessoryView.get();
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-static bool shouldZoomToRevealSelectionRect(WebKit::InputType type)
</del><ins>+static bool shouldDeferZoomingToSelectionWhenRevealingFocusedElement(WebKit::InputType type)
</ins><span class="cx"> {
</span><span class="cx">     switch (type) {
</span><span class="cx">     case WebKit::InputType::ContentEditable:
</span><span class="lines">@@ -4748,7 +4748,7 @@
</span><span class="cx">     if (elementInfo.elementRect.contains(elementInfo.lastInteractionLocation))
</span><span class="cx">         elementInteractionRect = { elementInfo.lastInteractionLocation, { 1, 1 } };
</span><span class="cx"> 
</span><del>-    if (!shouldZoomToRevealSelectionRect(elementInfo.elementType))
</del><ins>+    if (!shouldDeferZoomingToSelectionWhenRevealingFocusedElement(elementInfo.elementType))
</ins><span class="cx">         return elementInteractionRect;
</span><span class="cx"> 
</span><span class="cx">     if (editorState.isMissingPostLayoutData) {
</span><span class="lines">@@ -4840,7 +4840,7 @@
</span><span class="cx">     else
</span><span class="cx">         [self _stopSuppressingSelectionAssistantForReason:WebKit::FocusedElementIsTooSmall];
</span><span class="cx"> 
</span><del>-    BOOL shouldShowKeyboard = [&] {
</del><ins>+    BOOL shouldShowInputView = [&] {
</ins><span class="cx">         switch (startInputSessionPolicy) {
</span><span class="cx">         case _WKFocusStartsInputSessionPolicyAuto:
</span><span class="cx">             // The default behavior is to allow node assistance if the user is interacting.
</span><span class="lines">@@ -4887,7 +4887,7 @@
</span><span class="cx">         [_drawingCoordinator installInkPickerForDrawing:information.embeddedViewID];
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><del>-    if (!shouldShowKeyboard)
</del><ins>+    if (!shouldShowInputView)
</ins><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     if (!isAssistableInputType(information.elementType))
</span><span class="lines">@@ -4951,7 +4951,7 @@
</span><span class="cx">     if (editableChanged)
</span><span class="cx">         [_webView _scheduleVisibleContentRectUpdate];
</span><span class="cx">     
</span><del>-    if (!shouldZoomToRevealSelectionRect(_focusedElementInformation.elementType))
</del><ins>+    if (!shouldDeferZoomingToSelectionWhenRevealingFocusedElement(_focusedElementInformation.elementType))
</ins><span class="cx">         [self _zoomToRevealFocusedElement];
</span><span class="cx"> 
</span><span class="cx">     [self _ensureFormAccessoryView];
</span><span class="lines">@@ -5106,7 +5106,7 @@
</span><span class="cx"> 
</span><span class="cx">     // FIXME: If the initial writing direction just changed, we should wait until we get the next post-layout editor state
</span><span class="cx">     // before zooming to reveal the selection rect.
</span><del>-    if (shouldZoomToRevealSelectionRect(_focusedElementInformation.elementType))
</del><ins>+    if (shouldDeferZoomingToSelectionWhenRevealingFocusedElement(_focusedElementInformation.elementType))
</ins><span class="cx">         [self _zoomToRevealFocusedElement];
</span><span class="cx"> }
</span><span class="cx"> 
</span></span></pre>
</div>
</div>

</body>
</html>