Fix the build after r243354
authortimothy_horton@apple.com <timothy_horton@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 22 Mar 2019 09:40:41 +0000 (09:40 +0000)
committertimothy_horton@apple.com <timothy_horton@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 22 Mar 2019 09:40:41 +0000 (09:40 +0000)
https://bugs.webkit.org/show_bug.cgi?id=196138
<rdar://problem/49145951>

* wtf/Platform.h:

* TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
(TEST):
* TestWebKitAPI/ios/UIKitSPI.h:

* Platform/spi/ios/UIKitSPI.h:
* Shared/DocumentEditingContext.mm:
(WebKit::DocumentEditingContext::toPlatformContext):
* UIProcess/ios/WKContentViewInteraction.mm:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@243370 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WTF/ChangeLog
Source/WTF/wtf/Platform.h
Source/WebKit/ChangeLog
Source/WebKit/Platform/spi/ios/UIKitSPI.h
Source/WebKit/Shared/DocumentEditingContext.mm
Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm
Tools/ChangeLog
Tools/TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm
Tools/TestWebKitAPI/ios/UIKitSPI.h

index a1e080e..4040789 100644 (file)
@@ -1,3 +1,11 @@
+2019-03-22  Tim Horton  <timothy_horton@apple.com>
+
+        Fix the build after r243354
+        https://bugs.webkit.org/show_bug.cgi?id=196138
+        <rdar://problem/49145951>
+
+        * wtf/Platform.h:
+
 2019-03-21  Eric Carlson  <eric.carlson@apple.com>
 
         Add UI process WebRTC runtime logging.
index 6980013..ed9a7c0 100644 (file)
 #define HAVE_UI_WEB_TOUCH_EVENTS_GESTURE_RECOGNIZER_WITH_ACTIVE_TOUCHES_BY_ID 1
 #endif
 
+#if PLATFORM(IOS_FAMILY) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 130000
+#define HAVE_UI_WK_DOCUMENT_CONTEXT 1
+#endif
+
 #if PLATFORM(IOSMAC)
 #define ENABLE_PLATFORM_DRIVEN_TEXT_CHECKING 1
 #endif
index e202392..45de3e3 100644 (file)
@@ -1,3 +1,14 @@
+2019-03-22  Tim Horton  <timothy_horton@apple.com>
+
+        Fix the build after r243354
+        https://bugs.webkit.org/show_bug.cgi?id=196138
+        <rdar://problem/49145951>
+
+        * Platform/spi/ios/UIKitSPI.h:
+        * Shared/DocumentEditingContext.mm:
+        (WebKit::DocumentEditingContext::toPlatformContext):
+        * UIProcess/ios/WKContentViewInteraction.mm:
+
 2019-03-21  Simon Fraser  <simon.fraser@apple.com>
 
         Clean up some TiledCoreAnimationDrawingArea members
index 8877d39..f2a843a 100644 (file)
@@ -1034,6 +1034,36 @@ typedef NSInteger UICompositingMode;
 @property (assign, nonatomic, setter=_setCentersPopoverIfSourceViewNotSet:, getter=_centersPopoverIfSourceViewNotSet) BOOL _centersPopoverIfSourceViewNotSet;
 @end
 
+@interface UIWKDocumentContext : NSObject
+
+@property (nonatomic, copy) NSObject *contextBefore;
+@property (nonatomic, copy) NSObject *selectedText;
+@property (nonatomic, copy) NSObject *contextAfter;
+@property (nonatomic, copy) NSObject *markedText;
+@property (nonatomic, assign) NSRange selectedRangeInMarkedText;
+@property (nonatomic, copy) NSAttributedString *annotatedText;
+
+- (void)addTextRect:(CGRect)rect forCharacterRange:(NSRange)range;
+
+@end
+
+typedef NS_OPTIONS(NSInteger, UIWKDocumentRequestFlags) {
+    UIWKDocumentRequestNone = 0,
+    UIWKDocumentRequestText = 1 << 0,
+    UIWKDocumentRequestAttributed = 1 << 1,
+    UIWKDocumentRequestRects = 1 << 2,
+    UIWKDocumentRequestSpatial = 1 << 3,
+    UIWKDocumentRequestAnnotation = 1 << 4,
+};
+
+@interface UIWKDocumentRequest : NSObject
+@property (nonatomic, assign) UIWKDocumentRequestFlags flags;
+@property (nonatomic, assign) UITextGranularity surroundingGranularity;
+@property (nonatomic, assign) NSInteger granularityCount;
+@property (nonatomic, assign) CGRect documentRect;
+@property (nonatomic, retain) id <NSCopying> inputElementIdentifier;
+@end
+
 #endif // USE(APPLE_INTERNAL_SDK)
 
 @interface UIGestureRecognizer (Staging_45970040)
@@ -1140,36 +1170,6 @@ static inline bool currentUserInterfaceIdiomIsPad()
 #endif
 }
 
-@interface UIWKDocumentContext : NSObject
-
-@property (nonatomic, copy) NSObject *contextBefore;
-@property (nonatomic, copy) NSObject *selectedText;
-@property (nonatomic, copy) NSObject *contextAfter;
-@property (nonatomic, copy) NSObject *markedText;
-@property (nonatomic, assign) NSRange selectedRangeInMarkedText;
-@property (nonatomic, copy) NSAttributedString *annotatedText;
-
-- (void)addTextRect:(CGRect)rect forCharacterRange:(NSRange)range;
-
-@end
-
-typedef NS_OPTIONS(NSInteger, UIWKDocumentRequestFlags) {
-    UIWKDocumentRequestNone = 0,
-    UIWKDocumentRequestText = 1 << 0,
-    UIWKDocumentRequestAttributed = 1 << 1,
-    UIWKDocumentRequestRects = 1 << 2,
-    UIWKDocumentRequestSpatial = 1 << 3,
-    UIWKDocumentRequestAnnotation = 1 << 4,
-};
-
-@interface UIWKDocumentRequest : NSObject
-@property (nonatomic, assign) UIWKDocumentRequestFlags flags;
-@property (nonatomic, assign) UITextGranularity surroundingGranularity;
-@property (nonatomic, assign) NSInteger granularityCount;
-@property (nonatomic, assign) CGRect documentRect;
-@property (nonatomic, retain) id <NSCopying> inputElementIdentifier;
-@end
-
 WTF_EXTERN_C_BEGIN
 
 BOOL UIKeyboardEnabledInputModesAllowOneToManyShortcuts(void);
index 1f5657a..ba424a0 100644 (file)
@@ -41,6 +41,7 @@ static inline NSRange toNSRange(DocumentEditingContext::Range range)
 
 UIWKDocumentContext *DocumentEditingContext::toPlatformContext(OptionSet<DocumentEditingContextRequest::Options> options)
 {
+#if HAVE(UI_WK_DOCUMENT_CONTEXT)
     RetainPtr<UIWKDocumentContext> platformContext = adoptNS([[NSClassFromString(@"UIWKDocumentContext") alloc] init]);
 
     if (options.contains(DocumentEditingContextRequest::Options::AttributedText)) {
@@ -63,6 +64,10 @@ UIWKDocumentContext *DocumentEditingContext::toPlatformContext(OptionSet<Documen
     [platformContext setAnnotatedText:annotatedText.string.get()];
 
     return platformContext.autorelease();
+#else
+    UNUSED_PARAM(options);
+    return nil;
+#endif
 }
 
 }
index 1dd6cc9..546b441 100644 (file)
@@ -6284,6 +6284,7 @@ static NSArray<NSItemProvider *> *extractItemProvidersFromDropSession(id <UIDrop
     return nil;
 }
 
+#if HAVE(UI_WK_DOCUMENT_CONTEXT)
 
 static inline OptionSet<WebKit::DocumentEditingContextRequest::Options> toWebDocumentRequestOptions(UIWKDocumentRequestFlags flags)
 {
@@ -6345,6 +6346,7 @@ static WebKit::DocumentEditingContextRequest toWebRequest(UIWKDocumentRequest *r
     }];
 }
 
+#endif
 
 #pragma mark - UIDragInteractionDelegate
 
index 54991d7..ed32ce5 100644 (file)
@@ -1,3 +1,13 @@
+2019-03-22  Tim Horton  <timothy_horton@apple.com>
+
+        Fix the build after r243354
+        https://bugs.webkit.org/show_bug.cgi?id=196138
+        <rdar://problem/49145951>
+
+        * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
+        (TEST):
+        * TestWebKitAPI/ios/UIKitSPI.h:
+
 2019-03-21  Tim Horton  <timothy_horton@apple.com>
 
         Adopt UIWKDocumentContext
index fc60ea9..23cdf94 100644 (file)
@@ -25,7 +25,7 @@
 
 #import "config.h"
 
-#if PLATFORM(IOS_FAMILY)
+#if PLATFORM(IOS_FAMILY) && HAVE(UI_WK_DOCUMENT_CONTEXT)
 
 #import "PlatformUtilities.h"
 #import "Test.h"
@@ -236,4 +236,4 @@ TEST(WebKit, DocumentEditingContext)
     EXPECT_NSSTRING_EQ(" world", context.contextAfter);
 }
 
-#endif // PLATFORM(IOS_FAMILY)
+#endif // PLATFORM(IOS_FAMILY) && HAVE(UI_WK_DOCUMENT_CONTEXT)
index bc898e9..8726461 100644 (file)
@@ -37,6 +37,7 @@
 #import <UIKit/UITextInputTraits_Private.h>
 #import <UIKit/UITextInput_Private.h>
 #import <UIKit/UIViewController_Private.h>
+#import <UIKit/UIWKTextInteractionAssistant.h>
 
 #if ENABLE(DRAG_SUPPORT)
 @protocol UIDragSession;
@@ -98,6 +99,38 @@ WTF_EXTERN_C_END
 + (UICalloutBar *)sharedCalloutBar;
 @end
 
+@interface UIWKDocumentContext : NSObject
+
+@property (nonatomic, copy) NSObject *contextBefore;
+@property (nonatomic, copy) NSObject *selectedText;
+@property (nonatomic, copy) NSObject *contextAfter;
+@property (nonatomic, copy) NSObject *markedText;
+@property (nonatomic, assign) NSRange selectedRangeInMarkedText;
+@property (nonatomic, copy) NSAttributedString *annotatedText;
+
+- (NSArray<NSValue *> *)characterRectsForCharacterRange:(NSRange)range;
+
+@end
+
+typedef NS_OPTIONS(NSInteger, UIWKDocumentRequestFlags) {
+    UIWKDocumentRequestNone = 0,
+    UIWKDocumentRequestText = 1 << 0,
+    UIWKDocumentRequestAttributed = 1 << 1,
+    UIWKDocumentRequestRects = 1 << 2,
+    UIWKDocumentRequestSpatial = 1 << 3,
+    UIWKDocumentRequestAnnotation = 1 << 4,
+};
+
+@interface UIWKDocumentRequest : NSObject
+
+@property (nonatomic, assign) UIWKDocumentRequestFlags flags;
+@property (nonatomic, assign) UITextGranularity surroundingGranularity;
+@property (nonatomic, assign) NSInteger granularityCount;
+@property (nonatomic, assign) CGRect documentRect;
+@property (nonatomic, retain) id <NSCopying> inputElementIdentifier;
+
+@end
+
 #endif
 
 @protocol UITextInputTraits_Private_Proposed_SPI_34583628 <UITextInputPrivate>
@@ -141,36 +174,4 @@ WTF_EXTERN_C_END
 + (BOOL)isInHardwareKeyboardMode;
 @end
 
-@interface UIWKDocumentContext : NSObject
-
-@property (nonatomic, copy) NSObject *contextBefore;
-@property (nonatomic, copy) NSObject *selectedText;
-@property (nonatomic, copy) NSObject *contextAfter;
-@property (nonatomic, copy) NSObject *markedText;
-@property (nonatomic, assign) NSRange selectedRangeInMarkedText;
-@property (nonatomic, copy) NSAttributedString *annotatedText;
-
-- (NSArray<NSValue *> *)characterRectsForCharacterRange:(NSRange)range;
-
-@end
-
-typedef NS_OPTIONS(NSInteger, UIWKDocumentRequestFlags) {
-    UIWKDocumentRequestNone = 0,
-    UIWKDocumentRequestText = 1 << 0,
-    UIWKDocumentRequestAttributed = 1 << 1,
-    UIWKDocumentRequestRects = 1 << 2,
-    UIWKDocumentRequestSpatial = 1 << 3,
-    UIWKDocumentRequestAnnotation = 1 << 4,
-};
-
-@interface UIWKDocumentRequest : NSObject
-
-@property (nonatomic, assign) UIWKDocumentRequestFlags flags;
-@property (nonatomic, assign) UITextGranularity surroundingGranularity;
-@property (nonatomic, assign) NSInteger granularityCount;
-@property (nonatomic, assign) CGRect documentRect;
-@property (nonatomic, retain) id <NSCopying> inputElementIdentifier;
-
-@end
-
 #endif // PLATFORM(IOS_FAMILY)