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

Reply via email to