<!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>[166861] 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/166861">166861</a></dd>
<dt>Author</dt> <dd>mitz@apple.com</dd>
<dt>Date</dt> <dd>2014-04-06 17:54:14 -0700 (Sun, 06 Apr 2014)</dd>
</dl>
<h3>Log Message</h3>
<pre>Clean up WKGestureTypes.h
https://bugs.webkit.org/show_bug.cgi?id=131286
Reviewed by Sam Weinig.
Renamed WKGestureTypes.h to GestureTypes.h, dropped the useless “WK” prefixes and changed
into scoped enums, with the exception of SelectionFlags.
* Shared/ios/GestureTypes.h: Copied from Source/WebKit2/Shared/ios/WKGestureTypes.h.
* Shared/ios/WKGestureTypes.h: Removed.
* UIProcess/API/Cocoa/_WKElementAction.mm:
(copyElement):
(saveImage):
* UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::didUpdateBlockSelectionWithTouch):
* UIProcess/ios/WKContentViewInteraction.h:
* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _performAction:]):
(toGestureType):
(toUIWKGestureType):
(toSelectionTouch):
(toUIWKSelectionTouch):
(toGestureRecognizerState):
(toUIGestureRecognizerState):
(toUIWKSelectionFlags):
(toSelectionHandlePosition):
(selectionChangedWithGesture):
(selectionChangedWithTouch):
(-[WKContentView _didUpdateBlockSelectionWithTouch:withFlags:growThreshold:shrinkThreshold:]):
(-[WKContentView changeSelectionWithGestureAt:withGesture:withState:]):
(-[WKContentView changeSelectionWithTouchAt:withSelectionTouch:baseIsStart:]):
(-[WKContentView changeSelectionWithTouchesFrom:to:withGesture:withState:]):
(-[WKContentView changeBlockSelectionWithTouchAt:withSelectionTouch:forHandle:]):
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::rangeForWebSelectionAtPosition):
(WebKit::WebPage::selectWithGesture):
(WebKit::distanceBetweenRectsForPosition):
(WebKit::computeEdgeCenter):
(WebKit::WebPage::expandedRangeFromHandle):
(WebKit::WebPage::contractedRangeFromHandle):
(WebKit::WebPage::computeExpandAndShrinkThresholdsForHandle):
(WebKit::shouldExpand):
(WebKit::WebPage::changeBlockSelection):
(WebKit::WebPage::updateBlockSelectionWithTouch):
(WebKit::WebPage::updateSelectionWithTouches):
(WebKit::WebPage::performActionOnElement):</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebKit2ChangeLog">trunk/Source/WebKit2/ChangeLog</a></li>
<li><a href="#trunkSourceWebKit2UIProcessAPICocoa_WKElementActionmm">trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKElementAction.mm</a></li>
<li><a href="#trunkSourceWebKit2UIProcessiosPageClientImplIOSmm">trunk/Source/WebKit2/UIProcess/ios/PageClientImplIOS.mm</a></li>
<li><a href="#trunkSourceWebKit2UIProcessiosWKContentViewInteractionh">trunk/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessiosWKContentViewInteractionmm">trunk/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm</a></li>
<li><a href="#trunkSourceWebKit2WebKit2xcodeprojprojectpbxproj">trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj</a></li>
<li><a href="#trunkSourceWebKit2WebProcessWebPageWebPageh">trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h</a></li>
<li><a href="#trunkSourceWebKit2WebProcessWebPageiosWebPageIOSmm">trunk/Source/WebKit2/WebProcess/WebPage/ios/WebPageIOS.mm</a></li>
</ul>
<h3>Added Paths</h3>
<ul>
<li><a href="#trunkSourceWebKit2SharediosGestureTypesh">trunk/Source/WebKit2/Shared/ios/GestureTypes.h</a></li>
</ul>
<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkSourceWebKit2SharediosWKGestureTypesh">trunk/Source/WebKit2/Shared/ios/WKGestureTypes.h</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebKit2ChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/ChangeLog (166860 => 166861)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/ChangeLog        2014-04-07 00:16:35 UTC (rev 166860)
+++ trunk/Source/WebKit2/ChangeLog        2014-04-07 00:54:14 UTC (rev 166861)
</span><span class="lines">@@ -1,3 +1,54 @@
</span><ins>+2014-04-06 Dan Bernstein <mitz@apple.com>
+
+ Clean up WKGestureTypes.h
+ https://bugs.webkit.org/show_bug.cgi?id=131286
+
+ Reviewed by Sam Weinig.
+
+ Renamed WKGestureTypes.h to GestureTypes.h, dropped the useless “WK” prefixes and changed
+ into scoped enums, with the exception of SelectionFlags.
+
+ * Shared/ios/GestureTypes.h: Copied from Source/WebKit2/Shared/ios/WKGestureTypes.h.
+ * Shared/ios/WKGestureTypes.h: Removed.
+ * UIProcess/API/Cocoa/_WKElementAction.mm:
+ (copyElement):
+ (saveImage):
+ * UIProcess/ios/PageClientImplIOS.mm:
+ (WebKit::PageClientImpl::didUpdateBlockSelectionWithTouch):
+ * UIProcess/ios/WKContentViewInteraction.h:
+ * UIProcess/ios/WKContentViewInteraction.mm:
+ (-[WKContentView _performAction:]):
+ (toGestureType):
+ (toUIWKGestureType):
+ (toSelectionTouch):
+ (toUIWKSelectionTouch):
+ (toGestureRecognizerState):
+ (toUIGestureRecognizerState):
+ (toUIWKSelectionFlags):
+ (toSelectionHandlePosition):
+ (selectionChangedWithGesture):
+ (selectionChangedWithTouch):
+ (-[WKContentView _didUpdateBlockSelectionWithTouch:withFlags:growThreshold:shrinkThreshold:]):
+ (-[WKContentView changeSelectionWithGestureAt:withGesture:withState:]):
+ (-[WKContentView changeSelectionWithTouchAt:withSelectionTouch:baseIsStart:]):
+ (-[WKContentView changeSelectionWithTouchesFrom:to:withGesture:withState:]):
+ (-[WKContentView changeBlockSelectionWithTouchAt:withSelectionTouch:forHandle:]):
+ * WebKit2.xcodeproj/project.pbxproj:
+ * WebProcess/WebPage/WebPage.h:
+ * WebProcess/WebPage/ios/WebPageIOS.mm:
+ (WebKit::WebPage::rangeForWebSelectionAtPosition):
+ (WebKit::WebPage::selectWithGesture):
+ (WebKit::distanceBetweenRectsForPosition):
+ (WebKit::computeEdgeCenter):
+ (WebKit::WebPage::expandedRangeFromHandle):
+ (WebKit::WebPage::contractedRangeFromHandle):
+ (WebKit::WebPage::computeExpandAndShrinkThresholdsForHandle):
+ (WebKit::shouldExpand):
+ (WebKit::WebPage::changeBlockSelection):
+ (WebKit::WebPage::updateBlockSelectionWithTouch):
+ (WebKit::WebPage::updateSelectionWithTouches):
+ (WebKit::WebPage::performActionOnElement):
+
</ins><span class="cx"> 2014-04-06 Sam Weinig <sam@webkit.org>
</span><span class="cx">
</span><span class="cx"> Document user content related APIs..
</span></span></pre></div>
<a id="trunkSourceWebKit2SharediosGestureTypeshfromrev166859trunkSourceWebKit2SharediosWKGestureTypesh"></a>
<div class="copfile"><h4>Copied: trunk/Source/WebKit2/Shared/ios/GestureTypes.h (from rev 166859, trunk/Source/WebKit2/Shared/ios/WKGestureTypes.h) (0 => 166861)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/ios/GestureTypes.h         (rev 0)
+++ trunk/Source/WebKit2/Shared/ios/GestureTypes.h        2014-04-07 00:54:14 UTC (rev 166861)
</span><span class="lines">@@ -0,0 +1,87 @@
</span><ins>+/*
+ * Copyright (C) 2012 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef GestureTypes_h
+#define GestureTypes_h
+
+namespace WebKit {
+
+enum class GestureType {
+ Loupe,
+ OneFingerTap,
+ TapAndAHalf,
+ DoubleTap,
+ TapAndHalf,
+ DoubleTapInUneditable,
+ OneFingerTapInUneditable,
+ OneFingerTapSelectsAll,
+ OneFingerDoubleTap,
+ OneFingerTripleTap,
+ TwoFingerSingleTap,
+ TwoFingerRangedSelectGesture,
+ TapOnLinkWithGesture,
+ MakeWebSelection
+};
+
+enum class SelectionTouch {
+ Started,
+ Moved,
+ Ended,
+ EndedMovingForward,
+ EndedMovingBackward,
+ EndedNotMoving
+};
+
+enum class GestureRecognizerState {
+ Possible,
+ Began,
+ Changed,
+ Ended,
+ Cancelled,
+ Failed,
+ Recognized = Ended
+};
+
+enum class SheetAction {
+ Copy,
+ SaveImage
+};
+
+enum SelectionFlags {
+ None = 0,
+ WordIsNearTap = 1 << 0,
+ IsBlockSelection = 1 << 1,
+};
+
+enum class SelectionHandlePosition {
+ Top,
+ Right,
+ Bottom,
+ Left
+};
+
+} // namespace WebKit
+
+#endif // GestureTypes_h
</ins></span></pre></div>
<a id="trunkSourceWebKit2SharediosWKGestureTypesh"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebKit2/Shared/ios/WKGestureTypes.h (166860 => 166861)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/ios/WKGestureTypes.h        2014-04-07 00:16:35 UTC (rev 166860)
+++ trunk/Source/WebKit2/Shared/ios/WKGestureTypes.h        2014-04-07 00:54:14 UTC (rev 166861)
</span><span class="lines">@@ -1,86 +0,0 @@
</span><del>-/*
- * Copyright (C) 2012 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef WKGestureTypes_h
-#define WKGestureTypes_h
-
-namespace WebKit {
-
-typedef enum {
- WKGestureLoupe,
- WKGestureOneFingerTap,
- WKGestureTapAndAHalf,
- WKGestureDoubleTap,
- WKGestureTapAndHalf,
- WKGestureDoubleTapInUneditable,
- WKGestureOneFingerTapInUneditable,
- WKGestureOneFingerTapSelectsAll,
- WKGestureOneFingerDoubleTap,
- WKGestureOneFingerTripleTap,
- WKGestureTwoFingerSingleTap,
- WKGestureTwoFingerRangedSelectGesture,
- WKGestureTapOnLinkWithGesture,
- WKGestureMakeWebSelection
-} WKGestureType;
-
-typedef enum {
- WKSelectionTouchStarted,
- WKSelectionTouchMoved,
- WKSelectionTouchEnded,
- WKSelectionTouchEndedMovingForward,
- WKSelectionTouchEndedMovingBackward,
- WKSelectionTouchEndedNotMoving
-} WKSelectionTouch;
-
-typedef enum {
- WKGestureRecognizerStatePossible,
- WKGestureRecognizerStateBegan,
- WKGestureRecognizerStateChanged,
- WKGestureRecognizerStateEnded,
- WKGestureRecognizerStateCancelled,
- WKGestureRecognizerStateFailed,
- WKGestureRecognizerStateRecognized = WKGestureRecognizerStateEnded
-} WKGestureRecognizerState;
-
-typedef enum {
- WKSheetActionCopy,
- WKSheetActionSaveImage
-} WKSheetActions;
-
-typedef enum {
- WKNone = 0,
- WKWordIsNearTap = 1,
- WKIsBlockSelection = 2
-} WKSelectionFlags;
-
-typedef enum {
- WKHandleTop,
- WKHandleRight,
- WKHandleBottom,
- WKHandleLeft
-} WKHandlePosition;
-} // namespace WebKit
-
-#endif // WKGestureTypes_h
</del></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPICocoa_WKElementActionmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKElementAction.mm (166860 => 166861)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKElementAction.mm        2014-04-07 00:16:35 UTC (rev 166860)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/_WKElementAction.mm        2014-04-07 00:54:14 UTC (rev 166861)
</span><span class="lines">@@ -30,9 +30,9 @@
</span><span class="cx">
</span><span class="cx"> #if PLATFORM(IOS)
</span><span class="cx">
</span><ins>+#import "GestureTypes.h"
+#import "WKContentViewInteraction.h"
</ins><span class="cx"> #import "_WKActivatedElementInfoInternal.h"
</span><del>-#import "WKContentViewInteraction.h"
-#import "WKGestureTypes.h"
</del><span class="cx"> #import <SafariServices/SSReadingList.h>
</span><span class="cx"> #import <WebCore/LocalizedStrings.h>
</span><span class="cx"> #import <WebCore/SoftLinking.h>
</span><span class="lines">@@ -75,12 +75,12 @@
</span><span class="cx">
</span><span class="cx"> static void copyElement(WKContentView *view)
</span><span class="cx"> {
</span><del>- [view _performAction:WebKit::WKSheetActionCopy];
</del><ins>+ [view _performAction:WebKit::SheetAction::Copy];
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> static void saveImage(WKContentView *view)
</span><span class="cx"> {
</span><del>- [view _performAction:WebKit::WKSheetActionSaveImage];
</del><ins>+ [view _performAction:WebKit::SheetAction::SaveImage];
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> static void addToReadingList(NSURL *targetURL, NSString *title)
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessiosPageClientImplIOSmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/ios/PageClientImplIOS.mm (166860 => 166861)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/ios/PageClientImplIOS.mm        2014-04-07 00:16:35 UTC (rev 166860)
+++ trunk/Source/WebKit2/UIProcess/ios/PageClientImplIOS.mm        2014-04-07 00:54:14 UTC (rev 166861)
</span><span class="lines">@@ -370,7 +370,7 @@
</span><span class="cx">
</span><span class="cx"> void PageClientImpl::didUpdateBlockSelectionWithTouch(uint32_t touch, uint32_t flags, float growThreshold, float shrinkThreshold)
</span><span class="cx"> {
</span><del>- [m_contentView _didUpdateBlockSelectionWithTouch:(WKSelectionTouch)touch withFlags:(WKSelectionFlags)flags growThreshold:growThreshold shrinkThreshold:shrinkThreshold];
</del><ins>+ [m_contentView _didUpdateBlockSelectionWithTouch:(SelectionTouch)touch withFlags:(SelectionFlags)flags growThreshold:growThreshold shrinkThreshold:shrinkThreshold];
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void PageClientImpl::showPlaybackTargetPicker(bool hasVideo, const IntRect& elementRect)
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessiosWKContentViewInteractionh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.h (166860 => 166861)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.h        2014-04-07 00:16:35 UTC (rev 166860)
+++ trunk/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.h        2014-04-07 00:54:14 UTC (rev 166861)
</span><span class="lines">@@ -28,19 +28,19 @@
</span><span class="cx"> #import "WKContentView.h"
</span><span class="cx">
</span><span class="cx"> #import "AssistedNodeInformation.h"
</span><ins>+#import "GestureTypes.h"
</ins><span class="cx"> #import "InteractionInformationAtPosition.h"
</span><span class="cx"> #import "WKAirPlayRoutePicker.h"
</span><span class="cx"> #import "WKFormPeripheral.h"
</span><del>-#import "WKGestureTypes.h"
</del><span class="cx"> #import <UIKit/UITextInput_Private.h>
</span><span class="cx"> #import <UIKit/UIView.h>
</span><ins>+#import <UIKit/UIWKSelectionAssistant.h>
+#import <UIKit/UIWKTextInteractionAssistant.h>
</ins><span class="cx"> #import <UIKit/UIWebFormAccessory.h>
</span><span class="cx"> #import <UIKit/UIWebTouchEventsGestureRecognizer.h>
</span><del>-#import <UIKit/UIWKSelectionAssistant.h>
-#import <UIKit/UIWKTextInteractionAssistant.h>
</del><span class="cx"> #import <wtf/Forward.h>
</span><ins>+#import <wtf/Vector.h>
</ins><span class="cx"> #import <wtf/text/WTFString.h>
</span><del>-#import <wtf/Vector.h>
</del><span class="cx">
</span><span class="cx"> namespace WebCore {
</span><span class="cx"> class Color;
</span><span class="lines">@@ -137,11 +137,11 @@
</span><span class="cx"> - (void)_positionInformationDidChange:(const WebKit::InteractionInformationAtPosition&)info;
</span><span class="cx"> - (void)_attemptClickAtLocation:(CGPoint)location;
</span><span class="cx"> - (void)_updatePositionInformation;
</span><del>-- (void)_performAction:(WebKit::WKSheetActions)action;
</del><ins>+- (void)_performAction:(WebKit::SheetAction)action;
</ins><span class="cx"> - (void)_willStartScrollingOrZooming;
</span><span class="cx"> - (void)_willStartUserTriggeredScrollingOrZooming;
</span><span class="cx"> - (void)_didEndScrollingOrZooming;
</span><del>-- (void)_didUpdateBlockSelectionWithTouch:(WebKit::WKSelectionTouch)touch withFlags:(WebKit::WKSelectionFlags)flags growThreshold:(CGFloat)growThreshold shrinkThreshold:(CGFloat)shrinkThreshold;
</del><ins>+- (void)_didUpdateBlockSelectionWithTouch:(WebKit::SelectionTouch)touch withFlags:(WebKit::SelectionFlags)flags growThreshold:(CGFloat)growThreshold shrinkThreshold:(CGFloat)shrinkThreshold;
</ins><span class="cx"> - (void)_showPlaybackTargetPicker:(BOOL)hasVideo fromRect:(const WebCore::IntRect&)elementRect;
</span><span class="cx"> - (void)accessoryDone;
</span><span class="cx"> - (Vector<WebKit::WKOptionItem>&) assistedNodeSelectOptions;
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessiosWKContentViewInteractionmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm (166860 => 166861)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm        2014-04-07 00:16:35 UTC (rev 166860)
+++ trunk/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm        2014-04-07 00:54:14 UTC (rev 166861)
</span><span class="lines">@@ -882,7 +882,7 @@
</span><span class="cx"> [_textSelectionAssistant hideTextStyleOptions];
</span><span class="cx"> }
</span><span class="cx">
</span><del>-- (void)_performAction:(WKSheetActions)action
</del><ins>+- (void)_performAction:(SheetAction)action
</ins><span class="cx"> {
</span><span class="cx"> _page->performActionOnElement((uint32_t)action);
</span><span class="cx"> }
</span><span class="lines">@@ -977,173 +977,172 @@
</span><span class="cx">
</span><span class="cx"> // UIWKInteractionViewProtocol
</span><span class="cx">
</span><del>-static inline WKGestureType toWKGestureType(UIWKGestureType gestureType)
</del><ins>+static inline GestureType toGestureType(UIWKGestureType gestureType)
</ins><span class="cx"> {
</span><span class="cx"> switch (gestureType) {
</span><span class="cx"> case UIWKGestureLoupe:
</span><del>- return WKGestureLoupe;
</del><ins>+ return GestureType::Loupe;
</ins><span class="cx"> case UIWKGestureOneFingerTap:
</span><del>- return WKGestureOneFingerTap;
</del><ins>+ return GestureType::OneFingerTap;
</ins><span class="cx"> case UIWKGestureTapAndAHalf:
</span><del>- return WKGestureTapAndAHalf;
</del><ins>+ return GestureType::TapAndAHalf;
</ins><span class="cx"> case UIWKGestureDoubleTap:
</span><del>- return WKGestureDoubleTap;
</del><ins>+ return GestureType::DoubleTap;
</ins><span class="cx"> case UIWKGestureTapAndHalf:
</span><del>- return WKGestureTapAndHalf;
</del><ins>+ return GestureType::TapAndHalf;
</ins><span class="cx"> case UIWKGestureDoubleTapInUneditable:
</span><del>- return WKGestureDoubleTapInUneditable;
</del><ins>+ return GestureType::DoubleTapInUneditable;
</ins><span class="cx"> case UIWKGestureOneFingerTapInUneditable:
</span><del>- return WKGestureOneFingerTapInUneditable;
</del><ins>+ return GestureType::OneFingerTapInUneditable;
</ins><span class="cx"> case UIWKGestureOneFingerTapSelectsAll:
</span><del>- return WKGestureOneFingerTapSelectsAll;
</del><ins>+ return GestureType::OneFingerTapSelectsAll;
</ins><span class="cx"> case UIWKGestureOneFingerDoubleTap:
</span><del>- return WKGestureOneFingerDoubleTap;
</del><ins>+ return GestureType::OneFingerDoubleTap;
</ins><span class="cx"> case UIWKGestureOneFingerTripleTap:
</span><del>- return WKGestureOneFingerTripleTap;
</del><ins>+ return GestureType::OneFingerTripleTap;
</ins><span class="cx"> case UIWKGestureTwoFingerSingleTap:
</span><del>- return WKGestureTwoFingerSingleTap;
</del><ins>+ return GestureType::TwoFingerSingleTap;
</ins><span class="cx"> case UIWKGestureTwoFingerRangedSelectGesture:
</span><del>- return WKGestureTwoFingerRangedSelectGesture;
</del><ins>+ return GestureType::TwoFingerRangedSelectGesture;
</ins><span class="cx"> case UIWKGestureTapOnLinkWithGesture:
</span><del>- return WKGestureTapOnLinkWithGesture;
</del><ins>+ return GestureType::TapOnLinkWithGesture;
</ins><span class="cx"> case UIWKGestureMakeWebSelection:
</span><del>- return WKGestureMakeWebSelection;
</del><ins>+ return GestureType::MakeWebSelection;
</ins><span class="cx"> }
</span><span class="cx"> ASSERT_NOT_REACHED();
</span><del>- return WKGestureLoupe;
</del><ins>+ return GestureType::Loupe;
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-static inline UIWKGestureType toUIWKGestureType(WKGestureType gestureType)
</del><ins>+static inline UIWKGestureType toUIWKGestureType(GestureType gestureType)
</ins><span class="cx"> {
</span><span class="cx"> switch (gestureType) {
</span><del>- case WKGestureLoupe:
</del><ins>+ case GestureType::Loupe:
</ins><span class="cx"> return UIWKGestureLoupe;
</span><del>- case WKGestureOneFingerTap:
</del><ins>+ case GestureType::OneFingerTap:
</ins><span class="cx"> return UIWKGestureOneFingerTap;
</span><del>- case WKGestureTapAndAHalf:
</del><ins>+ case GestureType::TapAndAHalf:
</ins><span class="cx"> return UIWKGestureTapAndAHalf;
</span><del>- case WKGestureDoubleTap:
</del><ins>+ case GestureType::DoubleTap:
</ins><span class="cx"> return UIWKGestureDoubleTap;
</span><del>- case WKGestureTapAndHalf:
</del><ins>+ case GestureType::TapAndHalf:
</ins><span class="cx"> return UIWKGestureTapAndHalf;
</span><del>- case WKGestureDoubleTapInUneditable:
</del><ins>+ case GestureType::DoubleTapInUneditable:
</ins><span class="cx"> return UIWKGestureDoubleTapInUneditable;
</span><del>- case WKGestureOneFingerTapInUneditable:
</del><ins>+ case GestureType::OneFingerTapInUneditable:
</ins><span class="cx"> return UIWKGestureOneFingerTapInUneditable;
</span><del>- case WKGestureOneFingerTapSelectsAll:
</del><ins>+ case GestureType::OneFingerTapSelectsAll:
</ins><span class="cx"> return UIWKGestureOneFingerTapSelectsAll;
</span><del>- case WKGestureOneFingerDoubleTap:
</del><ins>+ case GestureType::OneFingerDoubleTap:
</ins><span class="cx"> return UIWKGestureOneFingerDoubleTap;
</span><del>- case WKGestureOneFingerTripleTap:
</del><ins>+ case GestureType::OneFingerTripleTap:
</ins><span class="cx"> return UIWKGestureOneFingerTripleTap;
</span><del>- case WKGestureTwoFingerSingleTap:
</del><ins>+ case GestureType::TwoFingerSingleTap:
</ins><span class="cx"> return UIWKGestureTwoFingerSingleTap;
</span><del>- case WKGestureTwoFingerRangedSelectGesture:
</del><ins>+ case GestureType::TwoFingerRangedSelectGesture:
</ins><span class="cx"> return UIWKGestureTwoFingerRangedSelectGesture;
</span><del>- case WKGestureTapOnLinkWithGesture:
</del><ins>+ case GestureType::TapOnLinkWithGesture:
</ins><span class="cx"> return UIWKGestureTapOnLinkWithGesture;
</span><del>- case WKGestureMakeWebSelection:
</del><ins>+ case GestureType::MakeWebSelection:
</ins><span class="cx"> return UIWKGestureMakeWebSelection;
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static inline WKSelectionTouch toWKSelectionTouch(UIWKSelectionTouch touch)
</del><ins>+static inline SelectionTouch toSelectionTouch(UIWKSelectionTouch touch)
</ins><span class="cx"> {
</span><span class="cx"> switch (touch) {
</span><span class="cx"> case UIWKSelectionTouchStarted:
</span><del>- return WKSelectionTouchStarted;
</del><ins>+ return SelectionTouch::Started;
</ins><span class="cx"> case UIWKSelectionTouchMoved:
</span><del>- return WKSelectionTouchMoved;
</del><ins>+ return SelectionTouch::Moved;
</ins><span class="cx"> case UIWKSelectionTouchEnded:
</span><del>- return WKSelectionTouchEnded;
</del><ins>+ return SelectionTouch::Ended;
</ins><span class="cx"> case UIWKSelectionTouchEndedMovingForward:
</span><del>- return WKSelectionTouchEndedMovingForward;
</del><ins>+ return SelectionTouch::EndedMovingForward;
</ins><span class="cx"> case UIWKSelectionTouchEndedMovingBackward:
</span><del>- return WKSelectionTouchEndedMovingBackward;
</del><ins>+ return SelectionTouch::EndedMovingBackward;
</ins><span class="cx"> case UIWKSelectionTouchEndedNotMoving:
</span><del>- return WKSelectionTouchEndedNotMoving;
</del><ins>+ return SelectionTouch::EndedNotMoving;
</ins><span class="cx"> }
</span><span class="cx"> ASSERT_NOT_REACHED();
</span><del>- return WKSelectionTouchEnded;
</del><ins>+ return SelectionTouch::Ended;
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-static inline UIWKSelectionTouch toUIWKSelectionTouch(WKSelectionTouch touch)
</del><ins>+static inline UIWKSelectionTouch toUIWKSelectionTouch(SelectionTouch touch)
</ins><span class="cx"> {
</span><span class="cx"> switch (touch) {
</span><del>- case WKSelectionTouchStarted:
</del><ins>+ case SelectionTouch::Started:
</ins><span class="cx"> return UIWKSelectionTouchStarted;
</span><del>- case WKSelectionTouchMoved:
</del><ins>+ case SelectionTouch::Moved:
</ins><span class="cx"> return UIWKSelectionTouchMoved;
</span><del>- case WKSelectionTouchEnded:
</del><ins>+ case SelectionTouch::Ended:
</ins><span class="cx"> return UIWKSelectionTouchEnded;
</span><del>- case WKSelectionTouchEndedMovingForward:
</del><ins>+ case SelectionTouch::EndedMovingForward:
</ins><span class="cx"> return UIWKSelectionTouchEndedMovingForward;
</span><del>- case WKSelectionTouchEndedMovingBackward:
</del><ins>+ case SelectionTouch::EndedMovingBackward:
</ins><span class="cx"> return UIWKSelectionTouchEndedMovingBackward;
</span><del>- case WKSelectionTouchEndedNotMoving:
</del><ins>+ case SelectionTouch::EndedNotMoving:
</ins><span class="cx"> return UIWKSelectionTouchEndedNotMoving;
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static inline WKGestureRecognizerState toWKGestureRecognizerState(UIGestureRecognizerState state)
</del><ins>+static inline GestureRecognizerState toGestureRecognizerState(UIGestureRecognizerState state)
</ins><span class="cx"> {
</span><span class="cx"> switch (state) {
</span><span class="cx"> case UIGestureRecognizerStatePossible:
</span><del>- return WKGestureRecognizerStatePossible;
</del><ins>+ return GestureRecognizerState::Possible;
</ins><span class="cx"> case UIGestureRecognizerStateBegan:
</span><del>- return WKGestureRecognizerStateBegan;
</del><ins>+ return GestureRecognizerState::Began;
</ins><span class="cx"> case UIGestureRecognizerStateChanged:
</span><del>- return WKGestureRecognizerStateChanged;
</del><ins>+ return GestureRecognizerState::Changed;
</ins><span class="cx"> case UIGestureRecognizerStateCancelled:
</span><del>- return WKGestureRecognizerStateCancelled;
</del><ins>+ return GestureRecognizerState::Cancelled;
</ins><span class="cx"> case UIGestureRecognizerStateEnded:
</span><del>- return WKGestureRecognizerStateEnded;
</del><ins>+ return GestureRecognizerState::Ended;
</ins><span class="cx"> case UIGestureRecognizerStateFailed:
</span><del>- return WKGestureRecognizerStateFailed;
</del><ins>+ return GestureRecognizerState::Failed;
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static inline UIGestureRecognizerState toUIGestureRecognizerState(WKGestureRecognizerState state)
</del><ins>+static inline UIGestureRecognizerState toUIGestureRecognizerState(GestureRecognizerState state)
</ins><span class="cx"> {
</span><span class="cx"> switch (state) {
</span><del>- case WKGestureRecognizerStatePossible:
</del><ins>+ case GestureRecognizerState::Possible:
</ins><span class="cx"> return UIGestureRecognizerStatePossible;
</span><del>- case WKGestureRecognizerStateBegan:
</del><ins>+ case GestureRecognizerState::Began:
</ins><span class="cx"> return UIGestureRecognizerStateBegan;
</span><del>- case WKGestureRecognizerStateChanged:
</del><ins>+ case GestureRecognizerState::Changed:
</ins><span class="cx"> return UIGestureRecognizerStateChanged;
</span><del>- case WKGestureRecognizerStateCancelled:
</del><ins>+ case GestureRecognizerState::Cancelled:
</ins><span class="cx"> return UIGestureRecognizerStateCancelled;
</span><del>- case WKGestureRecognizerStateEnded:
</del><ins>+ case GestureRecognizerState::Ended:
</ins><span class="cx"> return UIGestureRecognizerStateEnded;
</span><del>- case WKGestureRecognizerStateFailed:
</del><ins>+ case GestureRecognizerState::Failed:
</ins><span class="cx"> return UIGestureRecognizerStateFailed;
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static inline UIWKSelectionFlags toUIWKSelectionFlags(WKSelectionFlags flag)
</del><ins>+static inline UIWKSelectionFlags toUIWKSelectionFlags(SelectionFlags flags)
</ins><span class="cx"> {
</span><del>- switch (flag) {
- case WKNone:
- return UIWKNone;
- case WKWordIsNearTap:
- return UIWKWordIsNearTap;
- case WKIsBlockSelection:
- return UIWKIsBlockSelection;
- }
</del><ins>+ NSInteger uiFlags = UIWKNone;
+ if (flags & WordIsNearTap)
+ uiFlags |= UIWKWordIsNearTap;
+ if (flags & IsBlockSelection)
+ uiFlags |= UIWKIsBlockSelection;
+
+ return static_cast<UIWKSelectionFlags>(uiFlags);
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-static inline WKHandlePosition toWKHandlePosition(UIWKHandlePosition position)
</del><ins>+static inline SelectionHandlePosition toSelectionHandlePosition(UIWKHandlePosition position)
</ins><span class="cx"> {
</span><span class="cx"> switch (position) {
</span><span class="cx"> case UIWKHandleTop:
</span><del>- return WKHandleTop;
</del><ins>+ return SelectionHandlePosition::Top;
</ins><span class="cx"> case UIWKHandleRight:
</span><del>- return WKHandleRight;
</del><ins>+ return SelectionHandlePosition::Right;
</ins><span class="cx"> case UIWKHandleBottom:
</span><del>- return WKHandleBottom;
</del><ins>+ return SelectionHandlePosition::Bottom;
</ins><span class="cx"> case UIWKHandleLeft:
</span><del>- return WKHandleLeft;
</del><ins>+ return SelectionHandlePosition::Left;
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1154,9 +1153,9 @@
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx"> if ([view webSelectionAssistant])
</span><del>- [(UIWKSelectionAssistant *)[view webSelectionAssistant] selectionChangedWithGestureAt:(CGPoint)point withGesture:toUIWKGestureType((WKGestureType)gestureType) withState:toUIGestureRecognizerState(static_cast<WKGestureRecognizerState>(gestureState)) withFlags:(toUIWKSelectionFlags((WKSelectionFlags)flags))];
</del><ins>+ [(UIWKSelectionAssistant *)[view webSelectionAssistant] selectionChangedWithGestureAt:(CGPoint)point withGesture:toUIWKGestureType((GestureType)gestureType) withState:toUIGestureRecognizerState(static_cast<GestureRecognizerState>(gestureState)) withFlags:(toUIWKSelectionFlags((SelectionFlags)flags))];
</ins><span class="cx"> else
</span><del>- [(UIWKTextInteractionAssistant *)[view interactionAssistant] selectionChangedWithGestureAt:(CGPoint)point withGesture:toUIWKGestureType((WKGestureType)gestureType) withState:toUIGestureRecognizerState(static_cast<WKGestureRecognizerState>(gestureState)) withFlags:(toUIWKSelectionFlags((WKSelectionFlags)flags))];
</del><ins>+ [(UIWKTextInteractionAssistant *)[view interactionAssistant] selectionChangedWithGestureAt:(CGPoint)point withGesture:toUIWKGestureType((GestureType)gestureType) withState:toUIGestureRecognizerState(static_cast<GestureRecognizerState>(gestureState)) withFlags:(toUIWKSelectionFlags((SelectionFlags)flags))];
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> static void selectionChangedWithTouch(bool error, WKContentView *view, const WebCore::IntPoint& point, uint32_t touch)
</span><span class="lines">@@ -1166,40 +1165,40 @@
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx"> if ([view webSelectionAssistant])
</span><del>- [(UIWKSelectionAssistant *)[view webSelectionAssistant] selectionChangedWithTouchAt:(CGPoint)point withSelectionTouch:toUIWKSelectionTouch((WKSelectionTouch)touch)];
</del><ins>+ [(UIWKSelectionAssistant *)[view webSelectionAssistant] selectionChangedWithTouchAt:(CGPoint)point withSelectionTouch:toUIWKSelectionTouch((SelectionTouch)touch)];
</ins><span class="cx"> else
</span><del>- [(UIWKTextInteractionAssistant *)[view interactionAssistant] selectionChangedWithTouchAt:(CGPoint)point withSelectionTouch:toUIWKSelectionTouch((WKSelectionTouch)touch)];
</del><ins>+ [(UIWKTextInteractionAssistant *)[view interactionAssistant] selectionChangedWithTouchAt:(CGPoint)point withSelectionTouch:toUIWKSelectionTouch((SelectionTouch)touch)];
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-- (void)_didUpdateBlockSelectionWithTouch:(WebKit::WKSelectionTouch)touch withFlags:(WebKit::WKSelectionFlags)flags growThreshold:(CGFloat)growThreshold shrinkThreshold:(CGFloat)shrinkThreshold
</del><ins>+- (void)_didUpdateBlockSelectionWithTouch:(SelectionTouch)touch withFlags:(SelectionFlags)flags growThreshold:(CGFloat)growThreshold shrinkThreshold:(CGFloat)shrinkThreshold
</ins><span class="cx"> {
</span><del>- [_webSelectionAssistant blockSelectionChangedWithTouch:toUIWKSelectionTouch((WKSelectionTouch)touch) withFlags:toUIWKSelectionFlags((WKSelectionFlags)flags) growThreshold:growThreshold shrinkThreshold:shrinkThreshold];
</del><ins>+ [_webSelectionAssistant blockSelectionChangedWithTouch:toUIWKSelectionTouch(touch) withFlags:toUIWKSelectionFlags(flags) growThreshold:growThreshold shrinkThreshold:shrinkThreshold];
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> - (void)changeSelectionWithGestureAt:(CGPoint)point withGesture:(UIWKGestureType)gestureType withState:(UIGestureRecognizerState)state
</span><span class="cx"> {
</span><del>- _page->selectWithGesture(WebCore::IntPoint(point), CharacterGranularity, toWKGestureType(gestureType), toWKGestureRecognizerState(state), GestureCallback::create([self](bool error, const WebCore::IntPoint& point, uint32_t gestureType, uint32_t gestureState, uint32_t flags) {
</del><ins>+ _page->selectWithGesture(WebCore::IntPoint(point), CharacterGranularity, static_cast<uint32_t>(toGestureType(gestureType)), static_cast<uint32_t>(toGestureRecognizerState(state)), GestureCallback::create([self](bool error, const WebCore::IntPoint& point, uint32_t gestureType, uint32_t gestureState, uint32_t flags) {
</ins><span class="cx"> selectionChangedWithGesture(error, self, point, gestureType, gestureState, flags);
</span><span class="cx"> }));
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> - (void)changeSelectionWithTouchAt:(CGPoint)point withSelectionTouch:(UIWKSelectionTouch)touch baseIsStart:(BOOL)baseIsStart
</span><span class="cx"> {
</span><del>- _page->updateSelectionWithTouches(WebCore::IntPoint(point), toWKSelectionTouch(touch), baseIsStart, TouchesCallback::create([self](bool error, const WebCore::IntPoint& point, uint32_t touch) {
</del><ins>+ _page->updateSelectionWithTouches(WebCore::IntPoint(point), static_cast<uint32_t>(toSelectionTouch(touch)), baseIsStart, TouchesCallback::create([self](bool error, const WebCore::IntPoint& point, uint32_t touch) {
</ins><span class="cx"> selectionChangedWithTouch(error, self, point, touch);
</span><span class="cx"> }));
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> - (void)changeSelectionWithTouchesFrom:(CGPoint)from to:(CGPoint)to withGesture:(UIWKGestureType)gestureType withState:(UIGestureRecognizerState)gestureState
</span><span class="cx"> {
</span><del>- _page->selectWithTwoTouches(WebCore::IntPoint(from), WebCore::IntPoint(to), toWKGestureType(gestureType), toWKGestureRecognizerState(gestureState), GestureCallback::create([self](bool error, const WebCore::IntPoint& point, uint32_t gestureType, uint32_t gestureState, uint32_t flags) {
</del><ins>+ _page->selectWithTwoTouches(WebCore::IntPoint(from), WebCore::IntPoint(to), static_cast<uint32_t>(toGestureType(gestureType)), static_cast<uint32_t>(toGestureRecognizerState(gestureState)), GestureCallback::create([self](bool error, const WebCore::IntPoint& point, uint32_t gestureType, uint32_t gestureState, uint32_t flags) {
</ins><span class="cx"> selectionChangedWithGesture(error, self, point, gestureType, gestureState, flags);
</span><span class="cx"> }));
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> - (void)changeBlockSelectionWithTouchAt:(CGPoint)point withSelectionTouch:(UIWKSelectionTouch)touch forHandle:(UIWKHandlePosition)handle
</span><span class="cx"> {
</span><del>- _page->updateBlockSelectionWithTouch(WebCore::IntPoint(point), toWKSelectionTouch(touch), toWKHandlePosition(handle));
</del><ins>+ _page->updateBlockSelectionWithTouch(WebCore::IntPoint(point), static_cast<uint32_t>(toSelectionTouch(touch)), static_cast<uint32_t>(toSelectionHandlePosition(handle)));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> - (const WKAutoCorrectionData&)autocorrectionData
</span></span></pre></div>
<a id="trunkSourceWebKit2WebKit2xcodeprojprojectpbxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj (166860 => 166861)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj        2014-04-07 00:16:35 UTC (rev 166860)
+++ trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj        2014-04-07 00:54:14 UTC (rev 166861)
</span><span class="lines">@@ -546,7 +546,7 @@
</span><span class="cx">                 2DA944A11884E4F000ED86DB /* WebIOSEventFactory.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2DA9449A1884E4F000ED86DB /* WebIOSEventFactory.mm */; };
</span><span class="cx">                 2DA944A21884E4F000ED86DB /* WebPlatformTouchPointIOS.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2DA9449B1884E4F000ED86DB /* WebPlatformTouchPointIOS.cpp */; };
</span><span class="cx">                 2DA944A31884E4F000ED86DB /* WebTouchEventIOS.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2DA9449C1884E4F000ED86DB /* WebTouchEventIOS.cpp */; };
</span><del>-                2DA944A41884E4F000ED86DB /* WKGestureTypes.h in Headers */ = {isa = PBXBuildFile; fileRef = 2DA9449D1884E4F000ED86DB /* WKGestureTypes.h */; };
</del><ins>+                2DA944A41884E4F000ED86DB /* GestureTypes.h in Headers */ = {isa = PBXBuildFile; fileRef = 2DA9449D1884E4F000ED86DB /* GestureTypes.h */; };
</ins><span class="cx">                 2DA944A71884E94800ED86DB /* DownloadIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2DA944A61884E94800ED86DB /* DownloadIOS.mm */; };
</span><span class="cx">                 2DA944AD1884E9BA00ED86DB /* TextCheckerIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2DA944A91884E9BA00ED86DB /* TextCheckerIOS.mm */; };
</span><span class="cx">                 2DA944AE1884E9BA00ED86DB /* WebInspectorProxyIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2DA944AA1884E9BA00ED86DB /* WebInspectorProxyIOS.mm */; };
</span><span class="lines">@@ -2354,7 +2354,7 @@
</span><span class="cx">                 2DA9449A1884E4F000ED86DB /* WebIOSEventFactory.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = WebIOSEventFactory.mm; path = ios/WebIOSEventFactory.mm; sourceTree = "<group>"; };
</span><span class="cx">                 2DA9449B1884E4F000ED86DB /* WebPlatformTouchPointIOS.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = WebPlatformTouchPointIOS.cpp; path = ios/WebPlatformTouchPointIOS.cpp; sourceTree = "<group>"; };
</span><span class="cx">                 2DA9449C1884E4F000ED86DB /* WebTouchEventIOS.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = WebTouchEventIOS.cpp; path = ios/WebTouchEventIOS.cpp; sourceTree = "<group>"; };
</span><del>-                2DA9449D1884E4F000ED86DB /* WKGestureTypes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WKGestureTypes.h; path = ios/WKGestureTypes.h; sourceTree = "<group>"; };
</del><ins>+                2DA9449D1884E4F000ED86DB /* GestureTypes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GestureTypes.h; path = ios/GestureTypes.h; sourceTree = "<group>"; };
</ins><span class="cx">                 2DA944A61884E94800ED86DB /* DownloadIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = DownloadIOS.mm; path = Downloads/ios/DownloadIOS.mm; sourceTree = "<group>"; };
</span><span class="cx">                 2DA944A91884E9BA00ED86DB /* TextCheckerIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = TextCheckerIOS.mm; path = ios/TextCheckerIOS.mm; sourceTree = "<group>"; };
</span><span class="cx">                 2DA944AA1884E9BA00ED86DB /* WebInspectorProxyIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = WebInspectorProxyIOS.mm; path = ios/WebInspectorProxyIOS.mm; sourceTree = "<group>"; };
</span><span class="lines">@@ -4457,13 +4457,13 @@
</span><span class="cx">                 2DA944961884E4DA00ED86DB /* ios */ = {
</span><span class="cx">                         isa = PBXGroup;
</span><span class="cx">                         children = (
</span><ins>+                                2DA9449D1884E4F000ED86DB /* GestureTypes.h */,
</ins><span class="cx">                                 2DA944971884E4F000ED86DB /* NativeWebKeyboardEventIOS.mm */,
</span><span class="cx">                                 2DA944981884E4F000ED86DB /* NativeWebTouchEventIOS.mm */,
</span><span class="cx">                                 2DA944991884E4F000ED86DB /* WebIOSEventFactory.h */,
</span><span class="cx">                                 2DA9449A1884E4F000ED86DB /* WebIOSEventFactory.mm */,
</span><span class="cx">                                 2DA9449B1884E4F000ED86DB /* WebPlatformTouchPointIOS.cpp */,
</span><span class="cx">                                 2DA9449C1884E4F000ED86DB /* WebTouchEventIOS.cpp */,
</span><del>-                                2DA9449D1884E4F000ED86DB /* WKGestureTypes.h */,
</del><span class="cx">                         );
</span><span class="cx">                         name = ios;
</span><span class="cx">                         sourceTree = "<group>";
</span><span class="lines">@@ -7138,7 +7138,7 @@
</span><span class="cx">                                 51217465164C21370037A5C1 /* WebResourceBuffer.h in Headers */,
</span><span class="cx">                                 33367630130C9998006C9DE2 /* WebResourceCacheManager.h in Headers */,
</span><span class="cx">                                 33367656130C9ECA006C9DE2 /* WebResourceCacheManagerMessages.h in Headers */,
</span><del>-                                2DA944A41884E4F000ED86DB /* WKGestureTypes.h in Headers */,
</del><ins>+                                2DA944A41884E4F000ED86DB /* GestureTypes.h in Headers */,
</ins><span class="cx">                                 33367636130C99B2006C9DE2 /* WebResourceCacheManagerProxy.h in Headers */,
</span><span class="cx">                                 33367658130C9ECB006C9DE2 /* WebResourceCacheManagerProxyMessages.h in Headers */,
</span><span class="cx">                                 0F931C1C18C5711900DBA7C3 /* ScrollingTreeOverflowScrollingNodeIOS.h in Headers */,
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessWebPageWebPageh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h (166860 => 166861)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h        2014-04-07 00:16:35 UTC (rev 166860)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h        2014-04-07 00:54:14 UTC (rev 166861)
</span><span class="lines">@@ -77,7 +77,7 @@
</span><span class="cx"> #endif
</span><span class="cx">
</span><span class="cx"> #if PLATFORM(IOS)
</span><del>-#include "WKGestureTypes.h"
</del><ins>+#include "GestureTypes.h"
</ins><span class="cx"> #endif
</span><span class="cx">
</span><span class="cx"> #if ENABLE(TOUCH_EVENTS)
</span><span class="lines">@@ -792,12 +792,12 @@
</span><span class="cx">
</span><span class="cx"> #if PLATFORM(IOS)
</span><span class="cx"> static void convertSelectionRectsToRootView(WebCore::FrameView*, Vector<WebCore::SelectionRect>&);
</span><del>- PassRefPtr<WebCore::Range> rangeForWebSelectionAtPosition(const WebCore::IntPoint&, const WebCore::VisiblePosition&, WKSelectionFlags&);
</del><ins>+ PassRefPtr<WebCore::Range> rangeForWebSelectionAtPosition(const WebCore::IntPoint&, const WebCore::VisiblePosition&, SelectionFlags&);
</ins><span class="cx"> PassRefPtr<WebCore::Range> rangeForBlockAtPoint(const WebCore::IntPoint&);
</span><del>- void computeExpandAndShrinkThresholdsForHandle(const WebCore::IntPoint&, WKHandlePosition, float& growThreshold, float& shrinkThreshold);
- PassRefPtr<WebCore::Range> changeBlockSelection(const WebCore::IntPoint&, WKHandlePosition, float& growThreshold, float& shrinkThreshold, WKSelectionFlags&);
- PassRefPtr<WebCore::Range> expandedRangeFromHandle(WebCore::Range*, WKHandlePosition);
- PassRefPtr<WebCore::Range> contractedRangeFromHandle(WebCore::Range* currentRange, WKHandlePosition, WKSelectionFlags&);
</del><ins>+ void computeExpandAndShrinkThresholdsForHandle(const WebCore::IntPoint&, SelectionHandlePosition, float& growThreshold, float& shrinkThreshold);
+ PassRefPtr<WebCore::Range> changeBlockSelection(const WebCore::IntPoint&, SelectionHandlePosition, float& growThreshold, float& shrinkThreshold, SelectionFlags&);
+ PassRefPtr<WebCore::Range> expandedRangeFromHandle(WebCore::Range*, SelectionHandlePosition);
+ PassRefPtr<WebCore::Range> contractedRangeFromHandle(WebCore::Range* currentRange, SelectionHandlePosition, SelectionFlags&);
</ins><span class="cx"> void getAssistedNodeInformation(AssistedNodeInformation&);
</span><span class="cx"> void platformInitializeAccessibility();
</span><span class="cx"> RefPtr<WebCore::Range> m_currentBlockSelection;
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessWebPageiosWebPageIOSmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/WebPage/ios/WebPageIOS.mm (166860 => 166861)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/WebPage/ios/WebPageIOS.mm        2014-04-07 00:16:35 UTC (rev 166860)
+++ trunk/Source/WebKit2/WebProcess/WebPage/ios/WebPageIOS.mm        2014-04-07 00:54:14 UTC (rev 166861)
</span><span class="lines">@@ -32,37 +32,37 @@
</span><span class="cx"> #import "DataReference.h"
</span><span class="cx"> #import "EditingRange.h"
</span><span class="cx"> #import "EditorState.h"
</span><ins>+#import "GestureTypes.h"
</ins><span class="cx"> #import "InteractionInformationAtPosition.h"
</span><ins>+#import "LayerTreeHost.h"
</ins><span class="cx"> #import "PluginView.h"
</span><del>-#import "LayerTreeHost.h"
</del><span class="cx"> #import "VisibleContentRectUpdateInfo.h"
</span><ins>+#import "WKAccessibilityWebPageObjectIOS.h"
</ins><span class="cx"> #import "WebChromeClient.h"
</span><span class="cx"> #import "WebCoreArgumentCoders.h"
</span><ins>+#import "WebFrame.h"
</ins><span class="cx"> #import "WebKitSystemInterface.h"
</span><span class="cx"> #import "WebKitSystemInterfaceIOS.h"
</span><del>-#import "WebFrame.h"
</del><span class="cx"> #import "WebPageProxyMessages.h"
</span><span class="cx"> #import "WebProcess.h"
</span><del>-#import "WKAccessibilityWebPageObjectIOS.h"
-#import "WKGestureTypes.h"
</del><span class="cx"> #import <CoreText/CTFont.h>
</span><span class="cx"> #import <WebCore/Chrome.h>
</span><span class="cx"> #import <WebCore/Element.h>
</span><span class="cx"> #import <WebCore/EventHandler.h>
</span><ins>+#import <WebCore/FloatQuad.h>
</ins><span class="cx"> #import <WebCore/FocusController.h>
</span><del>-#import <WebCore/FloatQuad.h>
</del><span class="cx"> #import <WebCore/Frame.h>
</span><span class="cx"> #import <WebCore/FrameView.h>
</span><del>-#import <WebCore/HitTestResult.h>
</del><span class="cx"> #import <WebCore/HTMLElementTypeHelpers.h>
</span><span class="cx"> #import <WebCore/HTMLFormElement.h>
</span><span class="cx"> #import <WebCore/HTMLInputElement.h>
</span><del>-#import <WebCore/HTMLOptionElement.h>
</del><span class="cx"> #import <WebCore/HTMLOptGroupElement.h>
</span><span class="cx"> #import <WebCore/HTMLOptionElement.h>
</span><ins>+#import <WebCore/HTMLOptionElement.h>
</ins><span class="cx"> #import <WebCore/HTMLParserIdioms.h>
</span><span class="cx"> #import <WebCore/HTMLSelectElement.h>
</span><span class="cx"> #import <WebCore/HTMLTextAreaElement.h>
</span><ins>+#import <WebCore/HitTestResult.h>
</ins><span class="cx"> #import <WebCore/KeyboardEvent.h>
</span><span class="cx"> #import <WebCore/MainFrame.h>
</span><span class="cx"> #import <WebCore/MediaSessionManagerIOS.h>
</span><span class="lines">@@ -438,7 +438,7 @@
</span><span class="cx"> return constrainedPoint;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-PassRefPtr<Range> WebPage::rangeForWebSelectionAtPosition(const IntPoint& point, const VisiblePosition& position, WKSelectionFlags& flags)
</del><ins>+PassRefPtr<Range> WebPage::rangeForWebSelectionAtPosition(const IntPoint& point, const VisiblePosition& position, SelectionFlags& flags)
</ins><span class="cx"> {
</span><span class="cx"> HitTestResult result = m_page->mainFrame().eventHandler().hitTestResultAtPoint((point), HitTestRequest::ReadOnly | HitTestRequest::Active | HitTestRequest::DisallowShadowContent | HitTestRequest::AllowChildFrameContent);
</span><span class="cx">
</span><span class="lines">@@ -491,7 +491,7 @@
</span><span class="cx"> if (range && !range->collapsed(ASSERT_NO_EXCEPTION))
</span><span class="cx"> return range;
</span><span class="cx"> }
</span><del>- flags = WKIsBlockSelection;
</del><ins>+ flags = IsBlockSelection;
</ins><span class="cx"> range = Range::create(bestChoice->document());
</span><span class="cx"> range->selectNodeContents(bestChoice, ASSERT_NO_EXCEPTION);
</span><span class="cx"> return range->collapsed(ASSERT_NO_EXCEPTION) ? nullptr : range;
</span><span class="lines">@@ -533,10 +533,10 @@
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx"> RefPtr<Range> range;
</span><del>- WKSelectionFlags flags = WKNone;
- WKGestureRecognizerState wkGestureState = static_cast<WKGestureRecognizerState>(gestureState);
- switch (static_cast<WKGestureType>(gestureType)) {
- case WKGestureOneFingerTap:
</del><ins>+ SelectionFlags flags = None;
+ GestureRecognizerState wkGestureState = static_cast<GestureRecognizerState>(gestureState);
+ switch (static_cast<GestureType>(gestureType)) {
+ case GestureType::OneFingerTap:
</ins><span class="cx"> {
</span><span class="cx"> VisiblePosition result;
</span><span class="cx"> // move the the position at the end of the word
</span><span class="lines">@@ -569,34 +569,34 @@
</span><span class="cx"> }
</span><span class="cx"> break;
</span><span class="cx">
</span><del>- case WKGestureLoupe:
</del><ins>+ case GestureType::Loupe:
</ins><span class="cx"> range = Range::create(*frame.document(), position, position);
</span><span class="cx"> break;
</span><span class="cx">
</span><del>- case WKGestureTapAndAHalf:
</del><ins>+ case GestureType::TapAndAHalf:
</ins><span class="cx"> switch (wkGestureState) {
</span><del>- case WKGestureRecognizerStateBegan:
</del><ins>+ case GestureRecognizerState::Began:
</ins><span class="cx"> range = wordRangeFromPosition(position);
</span><span class="cx"> m_currentWordRange = Range::create(*frame.document(), range->startPosition(), range->endPosition());
</span><span class="cx"> break;
</span><del>- case WKGestureRecognizerStateChanged:
</del><ins>+ case GestureRecognizerState::Changed:
</ins><span class="cx"> range = Range::create(*frame.document(), m_currentWordRange->startPosition(), m_currentWordRange->endPosition());
</span><span class="cx"> if (position < range->startPosition())
</span><span class="cx"> range->setStart(position.deepEquivalent(), ASSERT_NO_EXCEPTION);
</span><span class="cx"> if (position > range->endPosition())
</span><span class="cx"> range->setEnd(position.deepEquivalent(), ASSERT_NO_EXCEPTION);
</span><span class="cx"> break;
</span><del>- case WKGestureRecognizerStateEnded:
- case WKGestureRecognizerStateCancelled:
</del><ins>+ case GestureRecognizerState::Ended:
+ case GestureRecognizerState::Cancelled:
</ins><span class="cx"> m_currentWordRange = nullptr;
</span><span class="cx"> break;
</span><del>- case WKGestureRecognizerStateFailed:
- case WKGestureRecognizerStatePossible:
</del><ins>+ case GestureRecognizerState::Failed:
+ case GestureRecognizerState::Possible:
</ins><span class="cx"> ASSERT_NOT_REACHED();
</span><span class="cx"> }
</span><span class="cx"> break;
</span><span class="cx">
</span><del>- case WKGestureOneFingerDoubleTap:
</del><ins>+ case GestureType::OneFingerDoubleTap:
</ins><span class="cx"> if (atBoundaryOfGranularity(position, LineGranularity, DirectionForward)) {
</span><span class="cx"> // Double-tap at end of line only places insertion point there.
</span><span class="cx"> // This helps to get the callout for pasting at ends of lines,
</span><span class="lines">@@ -606,12 +606,12 @@
</span><span class="cx"> range = wordRangeFromPosition(position);
</span><span class="cx"> break;
</span><span class="cx">
</span><del>- case WKGestureTwoFingerSingleTap:
</del><ins>+ case GestureType::TwoFingerSingleTap:
</ins><span class="cx"> // Single tap with two fingers selects the entire paragraph.
</span><span class="cx"> range = enclosingTextUnitOfGranularity(position, ParagraphGranularity, DirectionForward);
</span><span class="cx"> break;
</span><span class="cx">
</span><del>- case WKGestureOneFingerTripleTap:
</del><ins>+ case GestureType::OneFingerTripleTap:
</ins><span class="cx"> if (atBoundaryOfGranularity(position, LineGranularity, DirectionForward)) {
</span><span class="cx"> // Triple-tap at end of line only places insertion point there.
</span><span class="cx"> // This helps to get the callout for pasting at ends of lines,
</span><span class="lines">@@ -621,14 +621,14 @@
</span><span class="cx"> range = enclosingTextUnitOfGranularity(position, ParagraphGranularity, DirectionForward);
</span><span class="cx"> break;
</span><span class="cx">
</span><del>- case WKGestureMakeWebSelection:
- if (wkGestureState == WKGestureRecognizerStateBegan) {
</del><ins>+ case GestureType::MakeWebSelection:
+ if (wkGestureState == GestureRecognizerState::Began) {
</ins><span class="cx"> m_blockSelectionDesiredSize.setWidth(blockSelectionStartWidth);
</span><span class="cx"> m_blockSelectionDesiredSize.setHeight(blockSelectionStartHeight);
</span><span class="cx"> m_currentBlockSelection = nullptr;
</span><span class="cx"> }
</span><span class="cx"> range = rangeForWebSelectionAtPosition(point, position, flags);
</span><del>- if (wkGestureState == WKGestureRecognizerStateEnded && flags & WKIsBlockSelection)
</del><ins>+ if (wkGestureState == GestureRecognizerState::Ended && flags & IsBlockSelection)
</ins><span class="cx"> m_currentBlockSelection = range;
</span><span class="cx"> break;
</span><span class="cx">
</span><span class="lines">@@ -638,7 +638,7 @@
</span><span class="cx"> if (range)
</span><span class="cx"> frame.selection().setSelectedRange(range.get(), position.affinity(), true);
</span><span class="cx">
</span><del>- send(Messages::WebPageProxy::GestureCallback(point, gestureType, gestureState, flags, callbackID));
</del><ins>+ send(Messages::WebPageProxy::GestureCallback(point, gestureType, gestureState, static_cast<uint32_t>(flags), callbackID));
</ins><span class="cx"> m_shouldReturnWordAtSelection = false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -722,16 +722,16 @@
</span><span class="cx">
</span><span class="cx"> static const int maxHitTests = 10;
</span><span class="cx">
</span><del>-static inline float distanceBetweenRectsForPosition(IntRect& first, IntRect& second, WKHandlePosition handlePosition)
</del><ins>+static inline float distanceBetweenRectsForPosition(IntRect& first, IntRect& second, SelectionHandlePosition handlePosition)
</ins><span class="cx"> {
</span><span class="cx"> switch (handlePosition) {
</span><del>- case WKHandleTop:
</del><ins>+ case SelectionHandlePosition::Top:
</ins><span class="cx"> return abs(first.y() - second.y());
</span><del>- case WKHandleRight:
</del><ins>+ case SelectionHandlePosition::Right:
</ins><span class="cx"> return abs(first.maxX() - second.maxX());
</span><del>- case WKHandleBottom:
</del><ins>+ case SelectionHandlePosition::Bottom:
</ins><span class="cx"> return abs(first.maxY() - second.maxY());
</span><del>- case WKHandleLeft:
</del><ins>+ case SelectionHandlePosition::Left:
</ins><span class="cx"> return abs(first.x() - second.x());
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -772,21 +772,21 @@
</span><span class="cx"> return Range::create(rangeA->ownerDocument(), start->startContainer(), start->startOffset(), end->endContainer(), end->endOffset());
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static inline IntPoint computeEdgeCenter(const IntRect& box, WKHandlePosition handlePosition)
</del><ins>+static inline IntPoint computeEdgeCenter(const IntRect& box, SelectionHandlePosition handlePosition)
</ins><span class="cx"> {
</span><span class="cx"> switch (handlePosition) {
</span><del>- case WKHandleTop:
</del><ins>+ case SelectionHandlePosition::Top:
</ins><span class="cx"> return IntPoint(box.x() + box.width() / 2, box.y());
</span><del>- case WKHandleRight:
</del><ins>+ case SelectionHandlePosition::Right:
</ins><span class="cx"> return IntPoint(box.maxX(), box.y() + box.height() / 2);
</span><del>- case WKHandleBottom:
</del><ins>+ case SelectionHandlePosition::Bottom:
</ins><span class="cx"> return IntPoint(box.x() + box.width() / 2, box.maxY());
</span><del>- case WKHandleLeft:
</del><ins>+ case SelectionHandlePosition::Left:
</ins><span class="cx"> return IntPoint(box.x(), box.y() + box.height() / 2);
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-PassRefPtr<Range> WebPage::expandedRangeFromHandle(Range* currentRange, WKHandlePosition handlePosition)
</del><ins>+PassRefPtr<Range> WebPage::expandedRangeFromHandle(Range* currentRange, SelectionHandlePosition handlePosition)
</ins><span class="cx"> {
</span><span class="cx"> // FIXME: We should use boundingRect() instead of boundingBox() in this function when <rdar://problem/16063723> is fixed.
</span><span class="cx"> IntRect currentBox = currentRange->boundingBox();
</span><span class="lines">@@ -808,16 +808,16 @@
</span><span class="cx">
</span><span class="cx"> IntPoint testPoint = edgeCenter;
</span><span class="cx"> switch (handlePosition) {
</span><del>- case WKHandleTop:
</del><ins>+ case SelectionHandlePosition::Top:
</ins><span class="cx"> testPoint.move(0, -distance);
</span><span class="cx"> break;
</span><del>- case WKHandleRight:
</del><ins>+ case SelectionHandlePosition::Right:
</ins><span class="cx"> testPoint.move(distance, 0);
</span><span class="cx"> break;
</span><del>- case WKHandleBottom:
</del><ins>+ case SelectionHandlePosition::Bottom:
</ins><span class="cx"> testPoint.move(0, distance);
</span><span class="cx"> break;
</span><del>- case WKHandleLeft:
</del><ins>+ case SelectionHandlePosition::Left:
</ins><span class="cx"> testPoint.move(-distance, 0);
</span><span class="cx"> break;
</span><span class="cx"> }
</span><span class="lines">@@ -837,12 +837,12 @@
</span><span class="cx"> bool isBetterChoice = !(rectsEssentiallyTheSame(copyRect, currentBox, .05));
</span><span class="cx"> if (isBetterChoice) {
</span><span class="cx"> switch (handlePosition) {
</span><del>- case WKHandleTop:
- case WKHandleBottom:
</del><ins>+ case SelectionHandlePosition::Top:
+ case SelectionHandlePosition::Bottom:
</ins><span class="cx"> isBetterChoice = (copyRect.height() > currentBox.height());
</span><span class="cx"> break;
</span><del>- case WKHandleRight:
- case WKHandleLeft:
</del><ins>+ case SelectionHandlePosition::Right:
+ case SelectionHandlePosition::Left:
</ins><span class="cx"> isBetterChoice = (copyRect.width() > currentBox.width());
</span><span class="cx"> break;
</span><span class="cx"> }
</span><span class="lines">@@ -852,12 +852,12 @@
</span><span class="cx"> if (bestRange && isBetterChoice) {
</span><span class="cx"> // Furtherore, is it smaller than the best we've found so far?
</span><span class="cx"> switch (handlePosition) {
</span><del>- case WKHandleTop:
- case WKHandleBottom:
</del><ins>+ case SelectionHandlePosition::Top:
+ case SelectionHandlePosition::Bottom:
</ins><span class="cx"> isBetterChoice = (copyRect.height() < bestRect.height());
</span><span class="cx"> break;
</span><del>- case WKHandleRight:
- case WKHandleLeft:
</del><ins>+ case SelectionHandlePosition::Right:
+ case SelectionHandlePosition::Left:
</ins><span class="cx"> isBetterChoice = (copyRect.width() < bestRect.width());
</span><span class="cx"> break;
</span><span class="cx"> }
</span><span class="lines">@@ -877,7 +877,7 @@
</span><span class="cx"> return currentRange;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-PassRefPtr<Range> WebPage::contractedRangeFromHandle(Range* currentRange, WKHandlePosition handlePosition, WKSelectionFlags& flags)
</del><ins>+PassRefPtr<Range> WebPage::contractedRangeFromHandle(Range* currentRange, SelectionHandlePosition handlePosition, SelectionFlags& flags)
</ins><span class="cx"> {
</span><span class="cx"> // Shrinking with a base and extent will always give better results. If we only have a single element,
</span><span class="cx"> // see if we can break that down to a base and extent. Shrinking base and extent is comparatively straightforward.
</span><span class="lines">@@ -886,17 +886,17 @@
</span><span class="cx"> // FIXME: We should use boundingRect() instead of boundingBox() in this function when <rdar://problem/16063723> is fixed.
</span><span class="cx"> IntRect currentBox = currentRange->boundingBox();
</span><span class="cx"> IntPoint edgeCenter = computeEdgeCenter(currentBox, handlePosition);
</span><del>- flags = WKIsBlockSelection;
</del><ins>+ flags = IsBlockSelection;
</ins><span class="cx">
</span><span class="cx"> float maxDistance;
</span><span class="cx">
</span><span class="cx"> switch (handlePosition) {
</span><del>- case WKHandleTop:
- case WKHandleBottom:
</del><ins>+ case SelectionHandlePosition::Top:
+ case SelectionHandlePosition::Bottom:
</ins><span class="cx"> maxDistance = currentBox.height();
</span><span class="cx"> break;
</span><del>- case WKHandleRight:
- case WKHandleLeft:
</del><ins>+ case SelectionHandlePosition::Right:
+ case SelectionHandlePosition::Left:
</ins><span class="cx"> maxDistance = currentBox.width();
</span><span class="cx"> break;
</span><span class="cx"> }
</span><span class="lines">@@ -910,12 +910,12 @@
</span><span class="cx"> if (bestRange) {
</span><span class="cx"> float shrankDistance;
</span><span class="cx"> switch (handlePosition) {
</span><del>- case WKHandleTop:
- case WKHandleBottom:
</del><ins>+ case SelectionHandlePosition::Top:
+ case SelectionHandlePosition::Bottom:
</ins><span class="cx"> shrankDistance = abs(currentBox.height() - bestRect.height());
</span><span class="cx"> break;
</span><del>- case WKHandleRight:
- case WKHandleLeft:
</del><ins>+ case SelectionHandlePosition::Right:
+ case SelectionHandlePosition::Left:
</ins><span class="cx"> shrankDistance = abs(currentBox.width() - bestRect.width());
</span><span class="cx"> break;
</span><span class="cx"> }
</span><span class="lines">@@ -927,22 +927,22 @@
</span><span class="cx">
</span><span class="cx"> IntPoint testPoint = edgeCenter;
</span><span class="cx"> switch (handlePosition) {
</span><del>- case WKHandleTop:
</del><ins>+ case SelectionHandlePosition::Top:
</ins><span class="cx"> testPoint.move(0, distance);
</span><span class="cx"> break;
</span><del>- case WKHandleRight:
</del><ins>+ case SelectionHandlePosition::Right:
</ins><span class="cx"> testPoint.move(-distance, 0);
</span><span class="cx"> break;
</span><del>- case WKHandleBottom:
</del><ins>+ case SelectionHandlePosition::Bottom:
</ins><span class="cx"> testPoint.move(0, -distance);
</span><span class="cx"> break;
</span><del>- case WKHandleLeft:
</del><ins>+ case SelectionHandlePosition::Left:
</ins><span class="cx"> testPoint.move(distance, 0);
</span><span class="cx"> break;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> RefPtr<Range> newRange = rangeForBlockAtPoint(testPoint);
</span><del>- if (handlePosition == WKHandleTop || handlePosition == WKHandleLeft)
</del><ins>+ if (handlePosition == SelectionHandlePosition::Top || handlePosition == SelectionHandlePosition::Left)
</ins><span class="cx"> newRange = Range::create(newRange->startContainer()->document(), newRange->startPosition(), currentRange->endPosition());
</span><span class="cx"> else
</span><span class="cx"> newRange = Range::create(newRange->startContainer()->document(), currentRange->startPosition(), newRange->endPosition());
</span><span class="lines">@@ -950,12 +950,12 @@
</span><span class="cx"> IntRect copyRect = newRange->boundingBox();
</span><span class="cx"> bool isBetterChoice;
</span><span class="cx"> switch (handlePosition) {
</span><del>- case WKHandleTop:
- case WKHandleBottom:
</del><ins>+ case SelectionHandlePosition::Top:
+ case SelectionHandlePosition::Bottom:
</ins><span class="cx"> isBetterChoice = (copyRect.height() < currentBox.height());
</span><span class="cx"> break;
</span><del>- case WKHandleLeft:
- case WKHandleRight:
</del><ins>+ case SelectionHandlePosition::Left:
+ case SelectionHandlePosition::Right:
</ins><span class="cx"> isBetterChoice = (copyRect.width() > bestRect.width());
</span><span class="cx"> break;
</span><span class="cx"> }
</span><span class="lines">@@ -963,12 +963,12 @@
</span><span class="cx"> isBetterChoice = isBetterChoice && !areRangesEqual(newRange.get(), currentRange);
</span><span class="cx"> if (bestRange && isBetterChoice) {
</span><span class="cx"> switch (handlePosition) {
</span><del>- case WKHandleTop:
- case WKHandleBottom:
</del><ins>+ case SelectionHandlePosition::Top:
+ case SelectionHandlePosition::Bottom:
</ins><span class="cx"> isBetterChoice = (copyRect.height() > bestRect.height());
</span><span class="cx"> break;
</span><del>- case WKHandleLeft:
- case WKHandleRight:
</del><ins>+ case SelectionHandlePosition::Left:
+ case SelectionHandlePosition::Right:
</ins><span class="cx"> isBetterChoice = (copyRect.width() > bestRect.width());
</span><span class="cx"> break;
</span><span class="cx"> }
</span><span class="lines">@@ -992,21 +992,21 @@
</span><span class="cx">
</span><span class="cx"> RenderObject* renderer = node->renderer();
</span><span class="cx"> if (renderer && renderer->childrenInline() && (renderer->isRenderBlock() && !toRenderBlock(renderer)->inlineElementContinuation()) && !renderer->isTable()) {
</span><del>- flags = WKNone;
</del><ins>+ flags = None;
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> return bestRange;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void WebPage::computeExpandAndShrinkThresholdsForHandle(const IntPoint& point, WKHandlePosition handlePosition, float& growThreshold, float& shrinkThreshold)
</del><ins>+void WebPage::computeExpandAndShrinkThresholdsForHandle(const IntPoint& point, SelectionHandlePosition handlePosition, float& growThreshold, float& shrinkThreshold)
</ins><span class="cx"> {
</span><span class="cx"> Frame& frame = m_page->focusController().focusedOrMainFrame();
</span><span class="cx"> RefPtr<Range> currentRange = m_currentBlockSelection ? m_currentBlockSelection.get() : frame.selection().selection().toNormalizedRange();
</span><span class="cx"> ASSERT(currentRange);
</span><span class="cx">
</span><span class="cx"> RefPtr<Range> expandedRange = expandedRangeFromHandle(currentRange.get(), handlePosition);
</span><del>- WKSelectionFlags flags;
</del><ins>+ SelectionFlags flags;
</ins><span class="cx"> RefPtr<Range> contractedRange = contractedRangeFromHandle(currentRange.get(), handlePosition, flags);
</span><span class="cx">
</span><span class="cx"> // FIXME: We should use boundingRect() instead of boundingBox() in this function when <rdar://problem/16063723> is fixed.
</span><span class="lines">@@ -1021,7 +1021,7 @@
</span><span class="cx"> float minThreshold;
</span><span class="cx">
</span><span class="cx"> switch (handlePosition) {
</span><del>- case WKHandleTop: {
</del><ins>+ case SelectionHandlePosition::Top: {
</ins><span class="cx"> current = currentBounds.y();
</span><span class="cx"> expanded = expandedBounds.y();
</span><span class="cx"> contracted = contractedBounds.y();
</span><span class="lines">@@ -1029,7 +1029,7 @@
</span><span class="cx"> minThreshold = FLT_MAX;
</span><span class="cx"> break;
</span><span class="cx"> }
</span><del>- case WKHandleRight: {
</del><ins>+ case SelectionHandlePosition::Right: {
</ins><span class="cx"> current = currentBounds.maxX();
</span><span class="cx"> expanded = expandedBounds.maxX();
</span><span class="cx"> contracted = contractedBounds.maxX();
</span><span class="lines">@@ -1037,7 +1037,7 @@
</span><span class="cx"> minThreshold = FLT_MIN;
</span><span class="cx"> break;
</span><span class="cx"> }
</span><del>- case WKHandleBottom: {
</del><ins>+ case SelectionHandlePosition::Bottom: {
</ins><span class="cx"> current = currentBounds.maxY();
</span><span class="cx"> expanded = expandedBounds.maxY();
</span><span class="cx"> contracted = contractedBounds.maxY();
</span><span class="lines">@@ -1045,7 +1045,7 @@
</span><span class="cx"> minThreshold = FLT_MIN;
</span><span class="cx"> break;
</span><span class="cx"> }
</span><del>- case WKHandleLeft: {
</del><ins>+ case SelectionHandlePosition::Left: {
</ins><span class="cx"> current = currentBounds.x();
</span><span class="cx"> expanded = expandedBounds.x();
</span><span class="cx"> contracted = contractedBounds.x();
</span><span class="lines">@@ -1062,25 +1062,25 @@
</span><span class="cx"> if (areRangesEqual(expandedRange.get(), currentRange.get()))
</span><span class="cx"> growThreshold = maxThreshold;
</span><span class="cx">
</span><del>- if ((flags & WKIsBlockSelection) && areRangesEqual(contractedRange.get(), currentRange.get()))
</del><ins>+ if (flags & IsBlockSelection && areRangesEqual(contractedRange.get(), currentRange.get()))
</ins><span class="cx"> shrinkThreshold = minThreshold;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static inline bool shouldExpand(WKHandlePosition handlePosition, const IntRect& rect, const IntPoint& point)
</del><ins>+static inline bool shouldExpand(SelectionHandlePosition handlePosition, const IntRect& rect, const IntPoint& point)
</ins><span class="cx"> {
</span><span class="cx"> switch (handlePosition) {
</span><del>- case WKHandleTop:
</del><ins>+ case SelectionHandlePosition::Top:
</ins><span class="cx"> return (point.y() < rect.y());
</span><del>- case WKHandleLeft:
</del><ins>+ case SelectionHandlePosition::Left:
</ins><span class="cx"> return (point.x() < rect.x());
</span><del>- case WKHandleRight:
</del><ins>+ case SelectionHandlePosition::Right:
</ins><span class="cx"> return (point.x() > rect.maxX());
</span><del>- case WKHandleBottom:
</del><ins>+ case SelectionHandlePosition::Bottom:
</ins><span class="cx"> return (point.y() > rect.maxY());
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-PassRefPtr<WebCore::Range> WebPage::changeBlockSelection(const IntPoint& point, WKHandlePosition handlePosition, float& growThreshold, float& shrinkThreshold, WKSelectionFlags& flags)
</del><ins>+PassRefPtr<WebCore::Range> WebPage::changeBlockSelection(const IntPoint& point, SelectionHandlePosition handlePosition, float& growThreshold, float& shrinkThreshold, SelectionFlags& flags)
</ins><span class="cx"> {
</span><span class="cx"> Frame& frame = m_page->focusController().focusedOrMainFrame();
</span><span class="cx"> RefPtr<Range> currentRange = m_currentBlockSelection ? m_currentBlockSelection.get() : frame.selection().selection().toNormalizedRange();
</span><span class="lines">@@ -1105,22 +1105,22 @@
</span><span class="cx">
</span><span class="cx"> float growThreshold = 0;
</span><span class="cx"> float shrinkThreshold = 0;
</span><del>- WKSelectionFlags flags = WKIsBlockSelection;
</del><ins>+ SelectionFlags flags = IsBlockSelection;
</ins><span class="cx">
</span><del>- switch (static_cast<WKSelectionTouch>(touch)) {
- case WKSelectionTouchStarted:
- computeExpandAndShrinkThresholdsForHandle(adjustedPoint, static_cast<WKHandlePosition>(handlePosition), growThreshold, shrinkThreshold);
</del><ins>+ switch (static_cast<SelectionTouch>(touch)) {
+ case SelectionTouch::Started:
+ computeExpandAndShrinkThresholdsForHandle(adjustedPoint, static_cast<SelectionHandlePosition>(handlePosition), growThreshold, shrinkThreshold);
</ins><span class="cx"> break;
</span><del>- case WKSelectionTouchEnded:
</del><ins>+ case SelectionTouch::Ended:
</ins><span class="cx"> break;
</span><del>- case WKSelectionTouchMoved:
- changeBlockSelection(adjustedPoint, static_cast<WKHandlePosition>(handlePosition), growThreshold, shrinkThreshold, flags);
</del><ins>+ case SelectionTouch::Moved:
+ changeBlockSelection(adjustedPoint, static_cast<SelectionHandlePosition>(handlePosition), growThreshold, shrinkThreshold, flags);
</ins><span class="cx"> break;
</span><span class="cx"> default:
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- send(Messages::WebPageProxy::DidUpdateBlockSelectionWithTouch(touch, flags, growThreshold, shrinkThreshold));
</del><ins>+ send(Messages::WebPageProxy::DidUpdateBlockSelectionWithTouch(touch, static_cast<uint32_t>(flags), growThreshold, shrinkThreshold));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void WebPage::clearSelection()
</span><span class="lines">@@ -1141,12 +1141,12 @@
</span><span class="cx"> RefPtr<Range> range;
</span><span class="cx"> VisiblePosition result;
</span><span class="cx">
</span><del>- switch (static_cast<WKSelectionTouch>(touches)) {
- case WKSelectionTouchStarted:
- case WKSelectionTouchEndedNotMoving:
</del><ins>+ switch (static_cast<SelectionTouch>(touches)) {
+ case SelectionTouch::Started:
+ case SelectionTouch::EndedNotMoving:
</ins><span class="cx"> break;
</span><span class="cx">
</span><del>- case WKSelectionTouchEnded:
</del><ins>+ case SelectionTouch::Ended:
</ins><span class="cx"> if (frame.selection().selection().isContentEditable()) {
</span><span class="cx"> result = closestWordBoundaryForPosition(position);
</span><span class="cx"> if (result.isNotNull())
</span><span class="lines">@@ -1155,15 +1155,15 @@
</span><span class="cx"> range = rangeForPosition(&frame, position, baseIsStart);
</span><span class="cx"> break;
</span><span class="cx">
</span><del>- case WKSelectionTouchEndedMovingForward:
</del><ins>+ case SelectionTouch::EndedMovingForward:
</ins><span class="cx"> range = rangeAtWordBoundaryForPosition(&frame, position, baseIsStart, DirectionForward);
</span><span class="cx"> break;
</span><span class="cx">
</span><del>- case WKSelectionTouchEndedMovingBackward:
</del><ins>+ case SelectionTouch::EndedMovingBackward:
</ins><span class="cx"> range = rangeAtWordBoundaryForPosition(&frame, position, baseIsStart, DirectionBackward);
</span><span class="cx"> break;
</span><span class="cx">
</span><del>- case WKSelectionTouchMoved:
</del><ins>+ case SelectionTouch::Moved:
</ins><span class="cx"> range = rangeForPosition(&frame, position, baseIsStart);
</span><span class="cx"> break;
</span><span class="cx"> }
</span><span class="lines">@@ -1529,7 +1529,7 @@
</span><span class="cx"> if (!element->renderer())
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- if (static_cast<WKSheetActions>(action) == WKSheetActionCopy) {
</del><ins>+ if (static_cast<SheetAction>(action) == SheetAction::Copy) {
</ins><span class="cx"> if (element->renderer()->isRenderImage()) {
</span><span class="cx"> Element* linkElement = containingLinkElement(element);
</span><span class="cx">
</span><span class="lines">@@ -1540,7 +1540,7 @@
</span><span class="cx"> } else if (element->isLink()) {
</span><span class="cx"> m_interactionNode->document().frame()->editor().copyURL(element->document().completeURL(stripLeadingAndTrailingHTMLSpaces(element->getAttribute(HTMLNames::hrefAttr))), element->textContent());
</span><span class="cx"> }
</span><del>- } else if (static_cast<WKSelectionTouch>(action) == WKSheetActionSaveImage) {
</del><ins>+ } else if (static_cast<SheetAction>(action) == SheetAction::SaveImage) {
</ins><span class="cx"> if (!element->renderer()->isRenderImage())
</span><span class="cx"> return;
</span><span class="cx"> CachedImage* cachedImage = toRenderImage(element->renderer())->cachedImage();
</span></span></pre>
</div>
</div>
</body>
</html>