Title: [230041] trunk/Source/WebKit
- Revision
- 230041
- Author
- d...@apple.com
- Date
- 2018-03-28 13:11:47 -0700 (Wed, 28 Mar 2018)
Log Message
WKWebViewContentProvider shouldn't be a UIScrollViewDelegate
https://bugs.webkit.org/show_bug.cgi?id=184107
<rdar://problem/38967492>
Reviewed by Tim Horton.
There is no need for this class to be a UIScrollViewDelegate. Instead
the protocol should have an optional method that is effectively
scrollViewDidScroll.
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView scrollViewDidScroll:]): Call web_scrollViewDidScroll
if it exists.
* UIProcess/Cocoa/WKWebViewContentProvider.h: Remove UIScrollViewDelegate
and add an optional web_scrollViewDidScroll.
* UIProcess/ios/WKPDFView.mm:
(-[WKPDFView web_scrollViewDidScroll:]): Renamed from scrollViewDidScroll.
(-[WKPDFView scrollViewDidScroll:]): Deleted.
* UIProcess/ios/WKSystemPreviewView.mm:
(-[WKSystemPreviewView scrollViewDidScroll:]): Deleted.
Modified Paths
Diff
Modified: trunk/Source/WebKit/ChangeLog (230040 => 230041)
--- trunk/Source/WebKit/ChangeLog 2018-03-28 20:05:43 UTC (rev 230040)
+++ trunk/Source/WebKit/ChangeLog 2018-03-28 20:11:47 UTC (rev 230041)
@@ -1,3 +1,26 @@
+2018-03-28 Dean Jackson <d...@apple.com>
+
+ WKWebViewContentProvider shouldn't be a UIScrollViewDelegate
+ https://bugs.webkit.org/show_bug.cgi?id=184107
+ <rdar://problem/38967492>
+
+ Reviewed by Tim Horton.
+
+ There is no need for this class to be a UIScrollViewDelegate. Instead
+ the protocol should have an optional method that is effectively
+ scrollViewDidScroll.
+
+ * UIProcess/API/Cocoa/WKWebView.mm:
+ (-[WKWebView scrollViewDidScroll:]): Call web_scrollViewDidScroll
+ if it exists.
+ * UIProcess/Cocoa/WKWebViewContentProvider.h: Remove UIScrollViewDelegate
+ and add an optional web_scrollViewDidScroll.
+ * UIProcess/ios/WKPDFView.mm:
+ (-[WKPDFView web_scrollViewDidScroll:]): Renamed from scrollViewDidScroll.
+ (-[WKPDFView scrollViewDidScroll:]): Deleted.
+ * UIProcess/ios/WKSystemPreviewView.mm:
+ (-[WKSystemPreviewView scrollViewDidScroll:]): Deleted.
+
2018-03-28 Wenson Hsieh <wenson_hs...@apple.com>
[Extra zoom mode] Make boosted text autosizing values switchable at runtime
Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm (230040 => 230041)
--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm 2018-03-28 20:05:43 UTC (rev 230040)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm 2018-03-28 20:11:47 UTC (rev 230041)
@@ -2428,8 +2428,8 @@
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
- if (![self usesStandardContentView])
- [_customContentView scrollViewDidScroll:(UIScrollView *)scrollView];
+ if (![self usesStandardContentView] && [_customContentView respondsToSelector:@selector(web_scrollViewDidScroll:)])
+ [_customContentView web_scrollViewDidScroll:(UIScrollView *)scrollView];
[self _scheduleVisibleContentRectUpdateAfterScrollInView:scrollView];
Modified: trunk/Source/WebKit/UIProcess/Cocoa/WKWebViewContentProvider.h (230040 => 230041)
--- trunk/Source/WebKit/UIProcess/Cocoa/WKWebViewContentProvider.h 2018-03-28 20:05:43 UTC (rev 230040)
+++ trunk/Source/WebKit/UIProcess/Cocoa/WKWebViewContentProvider.h 2018-03-28 20:11:47 UTC (rev 230041)
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
+ * Copyright (C) 2014, 2018 Apple Inc. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
@@ -37,12 +37,10 @@
@class UIView;
@class WKWebView;
@protocol NSObject;
-@protocol UIScrollViewDelegate;
struct CGSize;
struct UIEdgeInsets;
-// FIXME: This should be API (and probably should not be a UIScrollViewDelegate).
-@protocol WKWebViewContentProvider <NSObject, UIScrollViewDelegate>
+@protocol WKWebViewContentProvider <NSObject>
- (instancetype)web_initWithFrame:(CGRect) frame webView:(WKWebView *)webView;
- (void)web_setContentProviderData:(NSData *)data suggestedFilename:(NSString *)filename;
@@ -55,6 +53,9 @@
- (void)web_findString:(NSString *)string options:(_WKFindOptions)options maxCount:(NSUInteger)maxCount;
- (void)web_hideFindUI;
+@optional
+- (void)web_scrollViewDidScroll:(UIScrollView *)scrollView;
+
@end
#endif // PLATFORM(IOS)
Modified: trunk/Source/WebKit/UIProcess/ios/WKPDFView.mm (230040 => 230041)
--- trunk/Source/WebKit/UIProcess/ios/WKPDFView.mm 2018-03-28 20:05:43 UTC (rev 230040)
+++ trunk/Source/WebKit/UIProcess/ios/WKPDFView.mm 2018-03-28 20:11:47 UTC (rev 230041)
@@ -242,7 +242,7 @@
[self _revalidateViews];
}
-- (void)scrollViewDidScroll:(UIScrollView *)scrollView
+- (void)web_scrollViewDidScroll:(UIScrollView *)scrollView
{
if (scrollView.isZoomBouncing || scrollView._isAnimatingZoom)
return;
Modified: trunk/Source/WebKit/UIProcess/ios/WKSystemPreviewView.mm (230040 => 230041)
--- trunk/Source/WebKit/UIProcess/ios/WKSystemPreviewView.mm 2018-03-28 20:05:43 UTC (rev 230040)
+++ trunk/Source/WebKit/UIProcess/ios/WKSystemPreviewView.mm 2018-03-28 20:11:47 UTC (rev 230041)
@@ -161,14 +161,6 @@
page->goBack();
}
-#pragma mark UIScrollViewDelegate
-
-// FIXME: This class, and WKWebContentProvider itself, shouldn't need to be a UIScrollViewDelegate.
-
-- (void)scrollViewDidScroll:(UIScrollView *)scrollView
-{
-}
-
@end
#endif
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes