Title: [233385] trunk/Tools
Revision
233385
Author
timothy_hor...@apple.com
Date
2018-06-29 18:20:02 -0700 (Fri, 29 Jun 2018)

Log Message

Add -apple-color-filter and system appearance toggles to MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=187210

Reviewed by Simon Fraser.

* MiniBrowser/mac/AppDelegate.m:
(defaultConfiguration):
* MiniBrowser/mac/SettingsController.h:
* MiniBrowser/mac/SettingsController.m:
(-[SettingsController _populateMenu]):
(-[SettingsController validateMenuItem:]):
(-[SettingsController toggleAppleColorFilterEnabled:]):
(-[SettingsController appleColorFilterEnabled]):
(-[SettingsController toggleUseSystemAppearance:]):
(-[SettingsController useSystemAppearance]):
* MiniBrowser/mac/WK1BrowserWindowController.m:
(-[WK1BrowserWindowController didChangeSettings]):
* MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController didChangeSettings]):

Modified Paths

Diff

Modified: trunk/Tools/ChangeLog (233384 => 233385)


--- trunk/Tools/ChangeLog	2018-06-30 01:07:38 UTC (rev 233384)
+++ trunk/Tools/ChangeLog	2018-06-30 01:20:02 UTC (rev 233385)
@@ -1,3 +1,25 @@
+2018-06-29  Tim Horton  <timothy_hor...@apple.com>
+
+        Add -apple-color-filter and system appearance toggles to MiniBrowser
+        https://bugs.webkit.org/show_bug.cgi?id=187210
+
+        Reviewed by Simon Fraser.
+
+        * MiniBrowser/mac/AppDelegate.m:
+        (defaultConfiguration):
+        * MiniBrowser/mac/SettingsController.h:
+        * MiniBrowser/mac/SettingsController.m:
+        (-[SettingsController _populateMenu]):
+        (-[SettingsController validateMenuItem:]):
+        (-[SettingsController toggleAppleColorFilterEnabled:]):
+        (-[SettingsController appleColorFilterEnabled]):
+        (-[SettingsController toggleUseSystemAppearance:]):
+        (-[SettingsController useSystemAppearance]):
+        * MiniBrowser/mac/WK1BrowserWindowController.m:
+        (-[WK1BrowserWindowController didChangeSettings]):
+        * MiniBrowser/mac/WK2BrowserWindowController.m:
+        (-[WK2BrowserWindowController didChangeSettings]):
+
 2018-06-29  Aditya Keerthi  <akeer...@apple.com>
 
         [macOS] Do not crash if there is an attempt to copy a file URL to the clipboard

Modified: trunk/Tools/MiniBrowser/mac/AppDelegate.m (233384 => 233385)


--- trunk/Tools/MiniBrowser/mac/AppDelegate.m	2018-06-30 01:07:38 UTC (rev 233384)
+++ trunk/Tools/MiniBrowser/mac/AppDelegate.m	2018-06-30 01:20:02 UTC (rev 233385)
@@ -116,6 +116,7 @@
 
     configuration.suppressesIncrementalRendering = [SettingsController shared].incrementalRenderingSuppressed;
     configuration.websiteDataStore._resourceLoadStatisticsEnabled = [SettingsController shared].resourceLoadStatisticsEnabled;
+    configuration._colorFilterEnabled = [SettingsController shared].appleColorFilterEnabled;
     return configuration;
 }
 

Modified: trunk/Tools/MiniBrowser/mac/SettingsController.h (233384 => 233385)


--- trunk/Tools/MiniBrowser/mac/SettingsController.h	2018-06-30 01:07:38 UTC (rev 233384)
+++ trunk/Tools/MiniBrowser/mac/SettingsController.h	2018-06-30 01:20:02 UTC (rev 233385)
@@ -56,6 +56,8 @@
 @property (nonatomic, readonly) BOOL visualViewportEnabled;
 @property (nonatomic, readonly) BOOL largeImageAsyncDecodingEnabled;
 @property (nonatomic, readonly) BOOL animatedImageAsyncDecodingEnabled;
+@property (nonatomic, readonly) BOOL appleColorFilterEnabled;
+@property (nonatomic, readonly) BOOL useSystemAppearance;
 @property (nonatomic, readonly) BOOL loadsAllSiteIcons;
 @property (nonatomic, readonly) BOOL usesGameControllerFramework;
 @property (nonatomic, readonly) BOOL networkCacheSpeculativeRevalidationDisabled;

Modified: trunk/Tools/MiniBrowser/mac/SettingsController.m (233384 => 233385)


--- trunk/Tools/MiniBrowser/mac/SettingsController.m	2018-06-30 01:07:38 UTC (rev 233384)
+++ trunk/Tools/MiniBrowser/mac/SettingsController.m	2018-06-30 01:20:02 UTC (rev 233385)
@@ -64,6 +64,8 @@
 static NSString * const VisualViewportEnabledPreferenceKey = @"VisualViewportEnabled";
 static NSString * const LargeImageAsyncDecodingEnabledPreferenceKey = @"LargeImageAsyncDecodingEnabled";
 static NSString * const AnimatedImageAsyncDecodingEnabledPreferenceKey = @"AnimatedImageAsyncDecodingEnabled";
+static NSString * const AppleColorFilterEnabledPreferenceKey = @"AppleColorFilterEnabled";
+static NSString * const UseSystemAppearancePreferenceKey = @"UseSystemAppearance";
 
 // This default name intentionally overlaps with the key that WebKit2 checks when creating a view.
 static NSString * const UseRemoteLayerTreeDrawingAreaPreferenceKey = @"WebKit2UseRemoteLayerTreeDrawingArea";
@@ -170,7 +172,8 @@
     [self _addItemWithTitle:@"Enable Resource Load Statistics" action:@selector(toggleResourceLoadStatisticsEnabled:) indented:NO];
     [self _addItemWithTitle:@"Enable Large Image Async Decoding" action:@selector(toggleLargeImageAsyncDecodingEnabled:) indented:NO];
     [self _addItemWithTitle:@"Enable Animated Image Async Decoding" action:@selector(toggleAnimatedImageAsyncDecodingEnabled:) indented:NO];
-
+    [self _addItemWithTitle:@"Enable -apple-color-filter" action:@selector(toggleAppleColorFilterEnabled:) indented:NO];
+    [self _addItemWithTitle:@"Use System Appearance" action:@selector(toggleUseSystemAppearance:) indented:NO];
     [self _addHeaderWithTitle:@"WebKit2-only Settings"];
 
     [self _addItemWithTitle:@"Reserve Space For Banners" action:@selector(toggleReserveSpaceForBanners:) indented:YES];
@@ -260,6 +263,10 @@
         [menuItem setState:[self largeImageAsyncDecodingEnabled] ? NSControlStateValueOn : NSControlStateValueOff];
     else if (action == @selector(toggleAnimatedImageAsyncDecodingEnabled:))
         [menuItem setState:[self animatedImageAsyncDecodingEnabled] ? NSControlStateValueOn : NSControlStateValueOff];
+    else if (action == @selector(toggleAppleColorFilterEnabled:))
+        [menuItem setState:[self appleColorFilterEnabled] ? NSControlStateValueOn : NSControlStateValueOff];
+    else if (action == @selector(toggleUseSystemAppearance:))
+        [menuItem setState:[self useSystemAppearance] ? NSControlStateValueOn : NSControlStateValueOff];
     else if (action == @selector(toggleVisualViewportEnabled:))
         [menuItem setState:[self visualViewportEnabled] ? NSControlStateValueOn : NSControlStateValueOff];
     else if (action == @selector(toggleReserveSpaceForBanners:))
@@ -568,6 +575,26 @@
     return [[NSUserDefaults standardUserDefaults] boolForKey:AnimatedImageAsyncDecodingEnabledPreferenceKey];
 }
 
+- (void)toggleAppleColorFilterEnabled:(id)sender
+{
+    [self _toggleBooleanDefault:AppleColorFilterEnabledPreferenceKey];
+}
+
+- (BOOL)appleColorFilterEnabled
+{
+    return [[NSUserDefaults standardUserDefaults] boolForKey:AppleColorFilterEnabledPreferenceKey];
+}
+
+- (void)toggleUseSystemAppearance:(id)sender
+{
+    [self _toggleBooleanDefault:UseSystemAppearancePreferenceKey];
+}
+
+- (BOOL)useSystemAppearance
+{
+    return [[NSUserDefaults standardUserDefaults] boolForKey:UseSystemAppearancePreferenceKey];
+}
+
 - (void)toggleEnableSubPixelCSSOMMetrics:(id)sender
 {
     [self _toggleBooleanDefault:EnableSubPixelCSSOMMetricsPreferenceKey];

Modified: trunk/Tools/MiniBrowser/mac/WK1BrowserWindowController.m (233384 => 233385)


--- trunk/Tools/MiniBrowser/mac/WK1BrowserWindowController.m	2018-06-30 01:07:38 UTC (rev 233384)
+++ trunk/Tools/MiniBrowser/mac/WK1BrowserWindowController.m	2018-06-30 01:20:02 UTC (rev 233385)
@@ -311,7 +311,10 @@
     [[WebPreferences standardPreferences] setVisualViewportEnabled:settings.visualViewportEnabled];
     [[WebPreferences standardPreferences] setLargeImageAsyncDecodingEnabled:settings.largeImageAsyncDecodingEnabled];
     [[WebPreferences standardPreferences] setAnimatedImageAsyncDecodingEnabled:settings.animatedImageAsyncDecodingEnabled];
+    [[WebPreferences standardPreferences] setColorFilterEnabled:settings.appleColorFilterEnabled];
 
+    _webView._useSystemAppearance = settings.useSystemAppearance;
+
     BOOL useTransparentWindows = settings.useTransparentWindows;
     if (useTransparentWindows != !self.window.isOpaque) {
         [self.window setOpaque:!useTransparentWindows];

Modified: trunk/Tools/MiniBrowser/mac/WK2BrowserWindowController.m (233384 => 233385)


--- trunk/Tools/MiniBrowser/mac/WK2BrowserWindowController.m	2018-06-30 01:07:38 UTC (rev 233384)
+++ trunk/Tools/MiniBrowser/mac/WK2BrowserWindowController.m	2018-06-30 01:20:02 UTC (rev 233385)
@@ -396,6 +396,8 @@
     SettingsController *settings = [SettingsController shared];
     WKPreferences *preferences = _webView.configuration.preferences;
 
+    _webView._useSystemAppearance = settings.useSystemAppearance;
+
     preferences._tiledScrollingIndicatorVisible = settings.tiledScrollingIndicatorVisible;
     preferences._compositingBordersVisible = settings.layerBordersVisible;
     preferences._compositingRepaintCountersVisible = settings.layerBordersVisible;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to