Title: [229684] trunk/Source/WebKit
- Revision
- 229684
- Author
- [email protected]
- Date
- 2018-03-16 15:22:43 -0700 (Fri, 16 Mar 2018)
Log Message
Add _useSystemAppearance to WKView
https://bugs.webkit.org/show_bug.cgi?id=183706
<rdar://problem/38516584>
Reviewed by Tim Horton.
Plumb useSystemAppearance and other supporting functions to WKView
* UIProcess/API/Cocoa/WKViewPrivate.h:
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _initializeWithConfiguration:]):
(-[WKWebView _useSystemAppearance]):
(-[WKWebView _setUseSystemAppearance:]):
(-[WKWebView effectiveAppearanceDidChange]):
* UIProcess/API/mac/WKView.mm:
(-[WKView effectiveAppearanceDidChange]):
(-[WKView _setUseSystemAppearance:]):
(-[WKView _useSystemAppearance]):
(-[WKView _setDefaultAppearance:]):
* UIProcess/Cocoa/WebViewImpl.h:
* UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::setUseSystemAppearance):
(WebKit::WebViewImpl::useSystemAppearance):
(WebKit::WebViewImpl::setDefaultAppearance):
Modified Paths
Diff
Modified: trunk/Source/WebKit/ChangeLog (229683 => 229684)
--- trunk/Source/WebKit/ChangeLog 2018-03-16 21:17:27 UTC (rev 229683)
+++ trunk/Source/WebKit/ChangeLog 2018-03-16 22:22:43 UTC (rev 229684)
@@ -1,3 +1,30 @@
+2018-03-16 Megan Gardner <[email protected]>
+
+ Add _useSystemAppearance to WKView
+ https://bugs.webkit.org/show_bug.cgi?id=183706
+ <rdar://problem/38516584>
+
+ Reviewed by Tim Horton.
+
+ Plumb useSystemAppearance and other supporting functions to WKView
+
+ * UIProcess/API/Cocoa/WKViewPrivate.h:
+ * UIProcess/API/Cocoa/WKWebView.mm:
+ (-[WKWebView _initializeWithConfiguration:]):
+ (-[WKWebView _useSystemAppearance]):
+ (-[WKWebView _setUseSystemAppearance:]):
+ (-[WKWebView effectiveAppearanceDidChange]):
+ * UIProcess/API/mac/WKView.mm:
+ (-[WKView effectiveAppearanceDidChange]):
+ (-[WKView _setUseSystemAppearance:]):
+ (-[WKView _useSystemAppearance]):
+ (-[WKView _setDefaultAppearance:]):
+ * UIProcess/Cocoa/WebViewImpl.h:
+ * UIProcess/Cocoa/WebViewImpl.mm:
+ (WebKit::WebViewImpl::setUseSystemAppearance):
+ (WebKit::WebViewImpl::useSystemAppearance):
+ (WebKit::WebViewImpl::setDefaultAppearance):
+
2018-03-16 Brent Fulgham <[email protected]>
Set a trap to catch an infrequent form-related nullptr crash
Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKViewPrivate.h (229683 => 229684)
--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKViewPrivate.h 2018-03-16 21:17:27 UTC (rev 229683)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKViewPrivate.h 2018-03-16 22:22:43 UTC (rev 229684)
@@ -140,6 +140,8 @@
- (void)_doAfterNextPresentationUpdate:(void (^)(void))updateBlock WK_API_AVAILABLE(macosx(WK_MAC_TBA));
+@property (nonatomic, readwrite, setter=_setUseSystemAppearance:) BOOL _useSystemAppearance WK_API_AVAILABLE(macosx(WK_MAC_TBA));
+
@end
#endif // !TARGET_OS_IPHONE
Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm (229683 => 229684)
--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm 2018-03-16 21:17:27 UTC (rev 229683)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm 2018-03-16 22:22:43 UTC (rev 229684)
@@ -684,8 +684,6 @@
_impl->setAutomaticallyAdjustsContentInsets(true);
_impl->setRequiresUserActionForEditingControlsManager([configuration _requiresUserActionForEditingControlsManager]);
-
- _page->setDefaultAppearance([self _defaultAppearance]);
#endif
_page->setBackgroundExtendsBeyondPage(true);
@@ -6172,18 +6170,18 @@
- (BOOL)_useSystemAppearance
{
- return _page->useSystemAppearance();
+ return _impl->useSystemAppearance();
}
- (void)_setUseSystemAppearance:(BOOL)useSystemAppearance
{
- _page->setUseSystemAppearance(useSystemAppearance);
- _page->setDefaultAppearance([self _defaultAppearance]);
+ _impl->setUseSystemAppearance(useSystemAppearance);
+ _impl->setDefaultAppearance([self _defaultAppearance]);
}
- (void)effectiveAppearanceDidChange
{
- _page->setDefaultAppearance([self _defaultAppearance]);
+ _impl->setDefaultAppearance([self _defaultAppearance]);
}
- (void)_setHeaderBannerHeight:(int)height
Modified: trunk/Source/WebKit/UIProcess/API/mac/WKView.mm (229683 => 229684)
--- trunk/Source/WebKit/UIProcess/API/mac/WKView.mm 2018-03-16 21:17:27 UTC (rev 229683)
+++ trunk/Source/WebKit/UIProcess/API/mac/WKView.mm 2018-03-16 22:22:43 UTC (rev 229684)
@@ -1609,6 +1609,35 @@
{
_data->_impl->setShouldSuppressFirstResponderChanges(shouldSuppress);
}
+
+#if USE(APPLE_INTERNAL_SDK)
+#import <WebKitAdditions/WebViewAndWKWebViewAdditions.mm>
+#else
+- (bool)_defaultAppearance { return true; }
+#endif
+
+- (void)effectiveAppearanceDidChange
+{
+ _data->_impl->setDefaultAppearance([self _defaultAppearance]);
+}
+
+- (void)_setUseSystemAppearance:(BOOL)useSystemAppearance
+{
+ _data->_impl->setUseSystemAppearance(useSystemAppearance);
+ _data->_impl->setDefaultAppearance([self _defaultAppearance]);
+}
+
+- (BOOL)_useSystemAppearance
+{
+ return _data->_impl->useSystemAppearance();
+}
+
+- (void)_setDefaultAppearance:(BOOL)defaultAppearance
+{
+ _data->_impl->setDefaultAppearance(defaultAppearance);
+}
+
+
@end
#endif // PLATFORM(MAC)
Modified: trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.h (229683 => 229684)
--- trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.h 2018-03-16 21:17:27 UTC (rev 229683)
+++ trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.h 2018-03-16 22:22:43 UTC (rev 229684)
@@ -533,6 +533,10 @@
bool beginBackSwipeForTesting();
bool completeBackSwipeForTesting();
+
+ void setUseSystemAppearance(bool);
+ bool useSystemAppearance();
+ void setDefaultAppearance(bool);
private:
#if HAVE(TOUCH_BAR)
Modified: trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm (229683 => 229684)
--- trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm 2018-03-16 21:17:27 UTC (rev 229683)
+++ trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm 2018-03-16 22:22:43 UTC (rev 229684)
@@ -4973,7 +4973,22 @@
return false;
return m_gestureController->completeSimulatedSwipeInDirectionForTesting(ViewGestureController::SwipeDirection::Back);
}
+
+void WebViewImpl::setUseSystemAppearance(bool useSystemAppearance)
+{
+ m_page->setUseSystemAppearance(useSystemAppearance);
+}
+bool WebViewImpl::useSystemAppearance()
+{
+ return m_page->useSystemAppearance();
+}
+
+void WebViewImpl::setDefaultAppearance(bool defaultAppearance)
+{
+ m_page->setDefaultAppearance(defaultAppearance);
+}
+
} // namespace WebKit
#endif // PLATFORM(MAC)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes