Title: [174824] trunk
Revision
174824
Author
[email protected]
Date
2014-10-17 10:30:54 -0700 (Fri, 17 Oct 2014)

Log Message

[iOS] Turn off font autosizing for iOS WebKitTestRunner
https://bugs.webkit.org/show_bug.cgi?id=137806

Reviewed by Sam Weinig.
Source/WebKit2:

Confusingly, WKPreferencesSetTextAutosizingEnabled() does nothing on iOS.
Instead, we have to add WKPreferencesSetMinimumZoomFontSize() and set it to 0
to disable font autosizing.

* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetMinimumZoomFontSize):
(WKPreferencesGetMinimumZoomFontSize):
* UIProcess/API/C/WKPreferencesRefPrivate.h:

Tools:

Confusingly, WKPreferencesSetTextAutosizingEnabled() does nothing on iOS.
Instead, we have to add WKPreferencesSetMinimumZoomFontSize() and set it to 0
to disable font autosizing.

Add platformResetPreferencesToConsistentValues() and implement it in the iOS
test controller to set platform-specific prefs.

* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
(WTR::TestController::platformResetPreferencesToConsistentValues):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformResetPreferencesToConsistentValues):
* WebKitTestRunner/mac/TestControllerMac.mm:
(WTR::TestController::platformResetPreferencesToConsistentValues):

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (174823 => 174824)


--- trunk/Source/WebKit2/ChangeLog	2014-10-17 16:40:14 UTC (rev 174823)
+++ trunk/Source/WebKit2/ChangeLog	2014-10-17 17:30:54 UTC (rev 174824)
@@ -1,3 +1,19 @@
+2014-10-16  Simon Fraser  <[email protected]>
+
+        [iOS] Turn off font autosizing for iOS WebKitTestRunner
+        https://bugs.webkit.org/show_bug.cgi?id=137806
+
+        Reviewed by Sam Weinig.
+        
+        Confusingly, WKPreferencesSetTextAutosizingEnabled() does nothing on iOS.
+        Instead, we have to add WKPreferencesSetMinimumZoomFontSize() and set it to 0
+        to disable font autosizing.
+
+        * UIProcess/API/C/WKPreferences.cpp:
+        (WKPreferencesSetMinimumZoomFontSize):
+        (WKPreferencesGetMinimumZoomFontSize):
+        * UIProcess/API/C/WKPreferencesRefPrivate.h:
+
 2014-10-17  Gyuyoung Kim  <[email protected]>
 
         [EFL] REGRESSION(r173929): It broke the Web Inspector

Modified: trunk/Source/WebKit2/UIProcess/API/C/WKPreferences.cpp (174823 => 174824)


--- trunk/Source/WebKit2/UIProcess/API/C/WKPreferences.cpp	2014-10-17 16:40:14 UTC (rev 174823)
+++ trunk/Source/WebKit2/UIProcess/API/C/WKPreferences.cpp	2014-10-17 17:30:54 UTC (rev 174824)
@@ -1285,3 +1285,13 @@
 {
     return toImpl(preferencesRef)->longMousePressEnabled();
 }
+
+void WKPreferencesSetMinimumZoomFontSize(WKPreferencesRef preferencesRef, double size)
+{
+    toImpl(preferencesRef)->setMinimumZoomFontSize(size);
+}
+
+double WKPreferencesGetMinimumZoomFontSize(WKPreferencesRef preferencesRef)
+{
+    return toImpl(preferencesRef)->minimumZoomFontSize();
+}

Modified: trunk/Source/WebKit2/UIProcess/API/C/WKPreferencesRefPrivate.h (174823 => 174824)


--- trunk/Source/WebKit2/UIProcess/API/C/WKPreferencesRefPrivate.h	2014-10-17 16:40:14 UTC (rev 174823)
+++ trunk/Source/WebKit2/UIProcess/API/C/WKPreferencesRefPrivate.h	2014-10-17 17:30:54 UTC (rev 174824)
@@ -334,6 +334,10 @@
 WK_EXPORT void WKPreferencesSetLongMousePressEnabled(WKPreferencesRef preferencesRef, bool enabled);
 WK_EXPORT bool WKPreferencesGetLongMousePressEnabled(WKPreferencesRef preferencesRef);
 
+// Defaults to 0. Setting this to 0 disables font autosizing on iOS.
+WK_EXPORT void WKPreferencesSetMinimumZoomFontSize(WKPreferencesRef preferencesRef, double);
+WK_EXPORT double WKPreferencesGetMinimumZoomFontSize(WKPreferencesRef preferencesRef);
+
 #ifdef __cplusplus
 }
 #endif

Modified: trunk/Tools/ChangeLog (174823 => 174824)


--- trunk/Tools/ChangeLog	2014-10-17 16:40:14 UTC (rev 174823)
+++ trunk/Tools/ChangeLog	2014-10-17 17:30:54 UTC (rev 174824)
@@ -1,3 +1,26 @@
+2014-10-16  Simon Fraser  <[email protected]>
+
+        [iOS] Turn off font autosizing for iOS WebKitTestRunner
+        https://bugs.webkit.org/show_bug.cgi?id=137806
+
+        Reviewed by Sam Weinig.
+
+        Confusingly, WKPreferencesSetTextAutosizingEnabled() does nothing on iOS.
+        Instead, we have to add WKPreferencesSetMinimumZoomFontSize() and set it to 0
+        to disable font autosizing.
+        
+        Add platformResetPreferencesToConsistentValues() and implement it in the iOS
+        test controller to set platform-specific prefs.
+
+        * WebKitTestRunner/TestController.cpp:
+        (WTR::TestController::resetPreferencesToConsistentValues):
+        (WTR::TestController::platformResetPreferencesToConsistentValues):
+        * WebKitTestRunner/TestController.h:
+        * WebKitTestRunner/ios/TestControllerIOS.mm:
+        (WTR::TestController::platformResetPreferencesToConsistentValues):
+        * WebKitTestRunner/mac/TestControllerMac.mm:
+        (WTR::TestController::platformResetPreferencesToConsistentValues):
+
 2014-10-16  Dan Bernstein  <[email protected]>
 
         OSObjectPtr is missing leakRef()

Modified: trunk/Tools/WebKitTestRunner/TestController.cpp (174823 => 174824)


--- trunk/Tools/WebKitTestRunner/TestController.cpp	2014-10-17 16:40:14 UTC (rev 174823)
+++ trunk/Tools/WebKitTestRunner/TestController.cpp	2014-10-17 17:30:54 UTC (rev 174824)
@@ -588,6 +588,8 @@
 #endif
 
     WKPreferencesSetAcceleratedDrawingEnabled(preferences, m_shouldUseAcceleratedDrawing);
+    
+    platformResetPreferencesToConsistentValues();
 }
 
 bool TestController::resetStateToConsistentValues()
@@ -730,6 +732,10 @@
 void TestController::platformConfigureViewForTest(const TestInvocation&)
 {
 }
+
+void TestController::platformResetPreferencesToConsistentValues()
+{
+}
 #endif
 
 void TestController::configureViewForTest(const TestInvocation& test)

Modified: trunk/Tools/WebKitTestRunner/TestController.h (174823 => 174824)


--- trunk/Tools/WebKitTestRunner/TestController.h	2014-10-17 16:40:14 UTC (rev 174823)
+++ trunk/Tools/WebKitTestRunner/TestController.h	2014-10-17 17:30:54 UTC (rev 174824)
@@ -121,6 +121,7 @@
     void platformInitialize();
     void platformDestroy();
     void platformInitializeContext();
+    void platformResetPreferencesToConsistentValues();
     void platformConfigureViewForTest(const TestInvocation&);
     void platformWillRunTest(const TestInvocation&);
     void platformRunUntil(bool& done, double timeout);

Modified: trunk/Tools/WebKitTestRunner/ios/TestControllerIOS.mm (174823 => 174824)


--- trunk/Tools/WebKitTestRunner/ios/TestControllerIOS.mm	2014-10-17 16:40:14 UTC (rev 174823)
+++ trunk/Tools/WebKitTestRunner/ios/TestControllerIOS.mm	2014-10-17 17:30:54 UTC (rev 174824)
@@ -30,8 +30,9 @@
 #import <Foundation/Foundation.h>
 #import "PlatformWebView.h"
 #import "TestInvocation.h"
+#import <WebKit/WKPreferencesRefPrivate.h>
 #import <WebKit/WKStringCF.h>
-#include <wtf/MainThread.h>
+#import <wtf/MainThread.h>
 
 namespace WTR {
 
@@ -79,6 +80,13 @@
     return strstr(pathOrURL, "viewport/");
 }
 
+void TestController::platformResetPreferencesToConsistentValues()
+{
+    WKPreferencesRef preferences = WKPageGroupGetPreferences(m_pageGroup.get());
+    // Note that WKPreferencesSetTextAutosizingEnabled has no effect on iOS.
+    WKPreferencesSetMinimumZoomFontSize(preferences, 0);
+}
+
 void TestController::platformConfigureViewForTest(const TestInvocation& test)
 {
     if (shouldMakeViewportFlexible(test.pathOrURL())) {

Modified: trunk/Tools/WebKitTestRunner/mac/TestControllerMac.mm (174823 => 174824)


--- trunk/Tools/WebKitTestRunner/mac/TestControllerMac.mm	2014-10-17 16:40:14 UTC (rev 174823)
+++ trunk/Tools/WebKitTestRunner/mac/TestControllerMac.mm	2014-10-17 17:30:54 UTC (rev 174824)
@@ -78,6 +78,10 @@
     return strstr(pathOrURL, "tiled-drawing/");
 }
 
+void TestController::platformResetPreferencesToConsistentValues()
+{
+}
+
 void TestController::platformConfigureViewForTest(const TestInvocation& test)
 {
     auto viewOptions = adoptWK(WKMutableDictionaryCreate());
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to