Changeset 246270 in webkit


Ignore:
Timestamp:
Jun 10, 2019 12:19:16 PM (5 years ago)
Author:
timothy@apple.com
Message:

Integrate dark mode support for iOS.
https://bugs.webkit.org/show_bug.cgi?id=198687
rdar://problem/51545643

Reviewed by Tim Horton.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Tests: css-dark-mode

  • Configurations/FeatureDefines.xcconfig:
  • SourcesCocoa.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/cocoa/FontCascadeCocoa.mm:

(WebCore::showLetterpressedGlyphsWithAdvances):

  • platform/ios/LocalCurrentTraitCollection.h: Added.
  • platform/ios/LocalCurrentTraitCollection.mm: Added.
  • platform/ios/PasteboardIOS.mm:
  • rendering/RenderThemeIOS.mm:

(WebCore::RenderThemeIOS::systemColor const):

  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::systemColor const):

Source/WebCore/PAL:

  • Configurations/FeatureDefines.xcconfig:
  • pal/spi/ios/UIKitSPI.h:

Source/WebKit:

  • Configurations/FeatureDefines.xcconfig:
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _effectiveAppearanceIsDark]):
(-[WKWebView _effectiveAppearanceIsInactive]):
(-[WKWebView _dynamicUserInterfaceTraitDidChange]):

  • UIProcess/API/Cocoa/WKWebViewInternal.h:
  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::effectiveAppearanceIsDark const):
(WebKit::PageClientImpl::effectiveAppearanceIsInactive const):

  • UIProcess/ios/WKPasswordView.mm:

(-[WKPasswordView showInScrollView:]):
(configureScrollView): Deleted.

Source/WebKitLegacy/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:

  • wtf/Platform.h:

Tools:

  • TestWebKitAPI/Configurations/FeatureDefines.xcconfig:

LayoutTests:

  • platform/ios/TestExpectations:
Location:
trunk
Files:
2 added
28 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r246263 r246270  
     12019-06-10  Timothy Hatcher  <timothy@apple.com>
     2
     3        Integrate dark mode support for iOS.
     4        https://bugs.webkit.org/show_bug.cgi?id=198687
     5        rdar://problem/51545643
     6
     7        Reviewed by Tim Horton.
     8
     9        * platform/ios/TestExpectations:
     10
    1112019-06-10  Youenn Fablet  <youenn@apple.com>
    212
  • trunk/LayoutTests/platform/ios/TestExpectations

    r246104 r246270  
    11451145css-dark-mode [ Skip ]
    11461146
     1147# Test Dark Mode CSS support for light mode on older systems.
     1148css-dark-mode/older-systems [ Pass ]
     1149
    11471150###
    11481151# Known failures
  • trunk/Source/JavaScriptCore/ChangeLog

    r246266 r246270  
     12019-06-10  Timothy Hatcher  <timothy@apple.com>
     2
     3        Integrate dark mode support for iOS.
     4        https://bugs.webkit.org/show_bug.cgi?id=198687
     5        rdar://problem/51545643
     6
     7        Reviewed by Tim Horton.
     8
     9        * Configurations/FeatureDefines.xcconfig:
     10
    1112019-06-10  Adrian Perez de Castro  <aperez@igalia.com>
    212
  • trunk/Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig

    r245875 r246270  
    116116
    117117ENABLE_DARK_MODE_CSS = $(ENABLE_DARK_MODE_CSS_$(WK_PLATFORM_NAME));
     118ENABLE_DARK_MODE_CSS_iphoneos = ENABLE_DARK_MODE_CSS;
     119ENABLE_DARK_MODE_CSS_iphonesimulator = ENABLE_DARK_MODE_CSS;
     120ENABLE_DARK_MODE_CSS_iosmac = ENABLE_DARK_MODE_CSS;
    118121ENABLE_DARK_MODE_CSS_macosx = ENABLE_DARK_MODE_CSS;
    119122
  • trunk/Source/WTF/ChangeLog

    r246235 r246270  
     12019-06-10  Timothy Hatcher  <timothy@apple.com>
     2
     3        Integrate dark mode support for iOS.
     4        https://bugs.webkit.org/show_bug.cgi?id=198687
     5        rdar://problem/51545643
     6
     7        Reviewed by Tim Horton.
     8
     9        * wtf/Platform.h:
     10
    1112019-06-08  Andy Estes  <aestes@apple.com>
    212
  • trunk/Source/WTF/wtf/Platform.h

    r245979 r246270  
    14321432#endif
    14331433
    1434 #if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101400) || PLATFORM(GTK)
     1434#if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101400) || (PLATFORM(IOS_FAMILY) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 130000) || PLATFORM(GTK)
    14351435#define HAVE_OS_DARK_MODE_SUPPORT 1
    14361436#endif
  • trunk/Source/WebCore/ChangeLog

    r246267 r246270  
     12019-06-10  Timothy Hatcher  <timothy@apple.com>
     2
     3        Integrate dark mode support for iOS.
     4        https://bugs.webkit.org/show_bug.cgi?id=198687
     5        rdar://problem/51545643
     6
     7        Reviewed by Tim Horton.
     8
     9        Tests: css-dark-mode
     10
     11        * Configurations/FeatureDefines.xcconfig:
     12        * SourcesCocoa.txt:
     13        * WebCore.xcodeproj/project.pbxproj:
     14        * platform/graphics/cocoa/FontCascadeCocoa.mm:
     15        (WebCore::showLetterpressedGlyphsWithAdvances):
     16        * platform/ios/LocalCurrentTraitCollection.h: Added.
     17        * platform/ios/LocalCurrentTraitCollection.mm: Added.
     18        * platform/ios/PasteboardIOS.mm:
     19        * rendering/RenderThemeIOS.mm:
     20        (WebCore::RenderThemeIOS::systemColor const):
     21        * rendering/RenderThemeMac.mm:
     22        (WebCore::RenderThemeMac::systemColor const):
     23
    1242019-06-10  Ali Juma  <ajuma@chromium.org>
    225
  • trunk/Source/WebCore/Configurations/FeatureDefines.xcconfig

    r245875 r246270  
    116116
    117117ENABLE_DARK_MODE_CSS = $(ENABLE_DARK_MODE_CSS_$(WK_PLATFORM_NAME));
     118ENABLE_DARK_MODE_CSS_iphoneos = ENABLE_DARK_MODE_CSS;
     119ENABLE_DARK_MODE_CSS_iphonesimulator = ENABLE_DARK_MODE_CSS;
     120ENABLE_DARK_MODE_CSS_iosmac = ENABLE_DARK_MODE_CSS;
    118121ENABLE_DARK_MODE_CSS_macosx = ENABLE_DARK_MODE_CSS;
    119122
  • trunk/Source/WebCore/PAL/ChangeLog

    r246235 r246270  
     12019-06-10  Timothy Hatcher  <timothy@apple.com>
     2
     3        Integrate dark mode support for iOS.
     4        https://bugs.webkit.org/show_bug.cgi?id=198687
     5        rdar://problem/51545643
     6
     7        Reviewed by Tim Horton.
     8
     9        * Configurations/FeatureDefines.xcconfig:
     10        * pal/spi/ios/UIKitSPI.h:
     11
    1122019-06-08  Andy Estes  <aestes@apple.com>
    213
  • trunk/Source/WebCore/PAL/Configurations/FeatureDefines.xcconfig

    r245875 r246270  
    116116
    117117ENABLE_DARK_MODE_CSS = $(ENABLE_DARK_MODE_CSS_$(WK_PLATFORM_NAME));
     118ENABLE_DARK_MODE_CSS_iphoneos = ENABLE_DARK_MODE_CSS;
     119ENABLE_DARK_MODE_CSS_iphonesimulator = ENABLE_DARK_MODE_CSS;
     120ENABLE_DARK_MODE_CSS_iosmac = ENABLE_DARK_MODE_CSS;
    118121ENABLE_DARK_MODE_CSS_macosx = ENABLE_DARK_MODE_CSS;
    119122
  • trunk/Source/WebCore/PAL/pal/spi/ios/UIKitSPI.h

    r244955 r246270  
    117117+ (UIColor *)systemRedColor;
    118118+ (UIColor *)systemYellowColor;
     119+ (UIColor *)systemTealColor;
    119120
    120121+ (UIColor *)_disambiguated_due_to_CIImage_colorWithCGColor:(CGColorRef)cgColor;
     
    162163#endif
    163164
     165#if HAVE(OS_DARK_MODE_SUPPORT)
     166@interface UIColor (UIColorInternal)
     167+ (UIColor *)tableCellDefaultSelectionTintColor;
     168@end
     169#endif
     170
    164171#endif // PLATFORM(IOS_FAMILY)
  • trunk/Source/WebCore/SourcesCocoa.txt

    r246002 r246270  
    384384platform/ios/LegacyTileLayer.mm
    385385platform/ios/LegacyTileLayerPool.mm
     386platform/ios/LocalCurrentTraitCollection.mm
    386387platform/ios/LowPowerModeNotifierIOS.mm
    387388platform/ios/PasteboardIOS.mm
  • trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj

    r246193 r246270  
    622622                1C24EEA51C729CE40080F8FC /* FontFaceSet.h in Headers */ = {isa = PBXBuildFile; fileRef = 1C24EEA31C729CE40080F8FC /* FontFaceSet.h */; };
    623623                1C24EEA91C72A7B40080F8FC /* JSFontFaceSet.h in Headers */ = {isa = PBXBuildFile; fileRef = 1C24EEA71C72A7B40080F8FC /* JSFontFaceSet.h */; };
     624                1C43DE6B22AB4B8A001527D9 /* LocalCurrentTraitCollection.h in Headers */ = {isa = PBXBuildFile; fileRef = 1C43DE6822AB4B8A001527D9 /* LocalCurrentTraitCollection.h */; };
    624625                1C6626111C6E7CA600AB527C /* FontFace.h in Headers */ = {isa = PBXBuildFile; fileRef = 1C66260F1C6E7CA600AB527C /* FontFace.h */; };
    625626                1C73A7132185757E004CCEA5 /* TextUnderlineOffset.h in Headers */ = {isa = PBXBuildFile; fileRef = 1CB6B4FB217B83940093B9CD /* TextUnderlineOffset.h */; settings = {ATTRIBUTES = (Private, ); }; };
     
    63826383                1C33277221CF0D2E000DC9F2 /* WHLSLUnnamedType.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WHLSLUnnamedType.h; sourceTree = "<group>"; };
    63836384                1C3969CF1B74211E002BCFA7 /* FontCacheCoreText.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FontCacheCoreText.cpp; sourceTree = "<group>"; };
     6385                1C43DE6822AB4B8A001527D9 /* LocalCurrentTraitCollection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LocalCurrentTraitCollection.h; sourceTree = "<group>"; };
     6386                1C43DE6A22AB4B8A001527D9 /* LocalCurrentTraitCollection.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = LocalCurrentTraitCollection.mm; sourceTree = "<group>"; };
    63846387                1C59B0182238687900853805 /* WHLSLScopedSetAdder.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WHLSLScopedSetAdder.h; sourceTree = "<group>"; };
    63856388                1C66260E1C6E7CA600AB527C /* FontFace.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FontFace.cpp; sourceTree = "<group>"; };
     
    2233222335                                E4E39AFA1330EFA8003AB274 /* LegacyTileLayerPool.h */,
    2233322336                                E4E39AFC1330EFC5003AB274 /* LegacyTileLayerPool.mm */,
     22337                                1C43DE6822AB4B8A001527D9 /* LocalCurrentTraitCollection.h */,
     22338                                1C43DE6A22AB4B8A001527D9 /* LocalCurrentTraitCollection.mm */,
    2233422339                                46EFAF0D1E5FB9C200E7F34B /* LowPowerModeNotifierIOS.mm */,
    2233522340                                E45390190EAFCACA003695C8 /* PasteboardIOS.mm */,
     
    3052230527                                8A12E35D11FA33280025836A /* LoadTiming.h in Headers */,
    3052330528                                06E81ED70AB5D5E900C87837 /* LocalCurrentGraphicsContext.h in Headers */,
     30529                                1C43DE6B22AB4B8A001527D9 /* LocalCurrentTraitCollection.h in Headers */,
    3052430530                                445775E520472F73008DCE5D /* LocalDefaultSystemAppearance.h in Headers */,
    3052530531                                F5973DE015CFB2030027F804 /* LocaleMac.h in Headers */,
  • trunk/Source/WebCore/platform/graphics/cocoa/FontCascadeCocoa.mm

    r245753 r246270  
    130130    }
    131131
    132 #if USE(APPLE_INTERNAL_SDK) && __has_include(<WebKitAdditions/FontCascadeCocoaAdditions.mm>)
    133 #include <WebKitAdditions/FontCascadeCocoaAdditions.mm>
     132#if HAVE(OS_DARK_MODE_SUPPORT)
     133    styleConfiguration.appearanceName = coreContext.useDarkAppearance() ? @"UIAppearanceDark" : @"UIAppearanceLight";
    134134#endif
    135135
  • trunk/Source/WebCore/platform/ios/PasteboardIOS.mm

    r245839 r246270  
    4242#import <wtf/text/StringHash.h>
    4343
    44 @interface NSAttributedString (NSAttributedStringKitAdditions)
     44@interface NSAttributedString (NSAttributedStringInternal)
    4545- (id)initWithRTF:(NSData *)data documentAttributes:(NSDictionary **)dict;
    4646- (id)initWithRTFD:(NSData *)data documentAttributes:(NSDictionary **)dict;
  • trunk/Source/WebCore/rendering/RenderThemeIOS.mm

    r246118 r246270  
    5353#import "IOSurface.h"
    5454#import "Icon.h"
     55#import "LocalCurrentTraitCollection.h"
    5556#import "LocalizedDateCache.h"
    5657#import "NodeRenderStyle.h"
     
    7980#import <wtf/RefPtr.h>
    8081#import <wtf/StdLibExtras.h>
    81 
    82 #if USE(APPLE_INTERNAL_SDK) && __has_include(<WebKitAdditions/RenderThemeIOSAdditions.mm>)
    83 #include <WebKitAdditions/RenderThemeIOSAdditions.mm>
    84 #endif
    8582
    8683@interface WebCoreRenderThemeBundle : NSObject
     
    14471444    auto& cache = colorCache(options);
    14481445    return cache.systemStyleColors.ensure(cssValueID, [this, cssValueID, options] () -> Color {
    1449 #if USE(APPLE_INTERNAL_SDK) && __has_include(<WebKitAdditions/RenderThemeIOSSystemColorAdditions.mm>)
    1450 #include <WebKitAdditions/RenderThemeIOSSystemColorAdditions.mm>
     1446        const bool useDarkAppearance = options.contains(StyleColor::Options::UseDarkAppearance);
     1447        const bool useInactiveAppearance = options.contains(StyleColor::Options::UseInactiveAppearance);
     1448        LocalCurrentTraitCollection localTraitCollection(useDarkAppearance, useInactiveAppearance);
     1449
     1450        auto cssColorToSelector = [cssValueID] () -> SEL {
     1451            switch (cssValueID) {
     1452#if HAVE(OS_DARK_MODE_SUPPORT)
     1453            case CSSValueText:
     1454            case CSSValueAppleSystemLabel:
     1455            case CSSValueAppleSystemHeaderText:
     1456                return @selector(labelColor);
     1457            case CSSValueAppleSystemSecondaryLabel:
     1458                return @selector(secondaryLabelColor);
     1459            case CSSValueAppleSystemTertiaryLabel:
     1460                return @selector(tertiaryLabelColor);
     1461            case CSSValueAppleSystemQuaternaryLabel:
     1462                return @selector(quaternaryLabelColor);
     1463            case CSSValueAppleSystemPlaceholderText:
     1464                return @selector(placeholderTextColor);
     1465            case CSSValueWebkitControlBackground:
     1466            case CSSValueAppleSystemControlBackground:
     1467            case CSSValueAppleSystemTextBackground:
     1468            case CSSValueAppleSystemBackground:
     1469                return @selector(systemBackgroundColor);
     1470            case CSSValueAppleSystemSecondaryBackground:
     1471                return @selector(secondarySystemBackgroundColor);
     1472            case CSSValueAppleSystemTertiaryBackground:
     1473                return @selector(tertiarySystemBackgroundColor);
     1474            case CSSValueAppleSystemGroupedBackground:
     1475                return @selector(systemGroupedBackgroundColor);
     1476            case CSSValueAppleSystemSecondaryGroupedBackground:
     1477                return @selector(secondarySystemGroupedBackgroundColor);
     1478            case CSSValueAppleSystemTertiaryGroupedBackground:
     1479                return @selector(tertiarySystemGroupedBackgroundColor);
     1480            case CSSValueAppleSystemGrid:
     1481            case CSSValueAppleSystemSeparator:
     1482            case CSSValueAppleSystemContainerBorder:
     1483                return @selector(separatorColor);
     1484            case CSSValueAppleSystemSelectedContentBackground:
     1485            case CSSValueAppleSystemUnemphasizedSelectedContentBackground:
     1486                return @selector(tableCellDefaultSelectionTintColor);
     1487            case CSSValueAppleSystemBrown:
     1488                return @selector(systemBrownColor);
     1489            case CSSValueAppleSystemIndigo:
     1490                return @selector(systemIndigoColor);
    14511491#endif
    1452 
    1453         auto cssColorToSelector = [cssValueID] () -> SEL {
    1454 #if USE(APPLE_INTERNAL_SDK) && __has_include(<WebKitAdditions/RenderThemeIOSColorToSelectorAdditions.mm>)
    1455 #include <WebKitAdditions/RenderThemeIOSColorToSelectorAdditions.mm>
    1456 #endif
    1457 
    1458             switch (cssValueID) {
     1492            case CSSValueAppleSystemTeal:
     1493                return @selector(systemTealColor);
    14591494            case CSSValueAppleWirelessPlaybackTargetActive:
    14601495            case CSSValueAppleSystemBlue:
  • trunk/Source/WebCore/rendering/RenderThemeMac.mm

    r245543 r246270  
    714714            case CSSValueAppleSystemHeaderText:
    715715                return @selector(headerTextColor);
     716            case CSSValueAppleSystemBackground:
     717            case CSSValueAppleSystemSecondaryBackground:
     718            case CSSValueAppleSystemTertiaryBackground:
     719            case CSSValueAppleSystemGroupedBackground:
     720            case CSSValueAppleSystemSecondaryGroupedBackground:
     721            case CSSValueAppleSystemTertiaryGroupedBackground:
    716722            case CSSValueAppleSystemTextBackground:
    717723                return @selector(textBackgroundColor);
  • trunk/Source/WebKit/ChangeLog

    r246264 r246270  
     12019-06-10  Timothy Hatcher  <timothy@apple.com>
     2
     3        Integrate dark mode support for iOS.
     4        https://bugs.webkit.org/show_bug.cgi?id=198687
     5        rdar://problem/51545643
     6
     7        Reviewed by Tim Horton.
     8
     9        * Configurations/FeatureDefines.xcconfig:
     10        * UIProcess/API/Cocoa/WKWebView.mm:
     11        (-[WKWebView _effectiveAppearanceIsDark]):
     12        (-[WKWebView _effectiveAppearanceIsInactive]):
     13        (-[WKWebView _dynamicUserInterfaceTraitDidChange]):
     14        * UIProcess/API/Cocoa/WKWebViewInternal.h:
     15        * UIProcess/ios/PageClientImplIOS.h:
     16        * UIProcess/ios/PageClientImplIOS.mm:
     17        (WebKit::PageClientImpl::effectiveAppearanceIsDark const):
     18        (WebKit::PageClientImpl::effectiveAppearanceIsInactive const):
     19        * UIProcess/ios/WKPasswordView.mm:
     20        (-[WKPasswordView showInScrollView:]):
     21        (configureScrollView): Deleted.
     22
    1232019-06-10  Sihui Liu  <sihui_liu@apple.com>
    224
  • trunk/Source/WebKit/Configurations/FeatureDefines.xcconfig

    r245875 r246270  
    116116
    117117ENABLE_DARK_MODE_CSS = $(ENABLE_DARK_MODE_CSS_$(WK_PLATFORM_NAME));
     118ENABLE_DARK_MODE_CSS_iphoneos = ENABLE_DARK_MODE_CSS;
     119ENABLE_DARK_MODE_CSS_iphonesimulator = ENABLE_DARK_MODE_CSS;
     120ENABLE_DARK_MODE_CSS_iosmac = ENABLE_DARK_MODE_CSS;
    118121ENABLE_DARK_MODE_CSS_macosx = ENABLE_DARK_MODE_CSS;
    119122
  • trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm

    r246236 r246270  
    474474}
    475475
    476 #endif
    477 
    478 #if USE(APPLE_INTERNAL_SDK)
    479 #include <WebKitAdditions/WKWebViewInternalAdditions.mm>
    480 #endif
     476- (BOOL)_effectiveAppearanceIsDark
     477{
     478    return self.traitCollection.userInterfaceStyle == UIUserInterfaceStyleDark;
     479}
     480
     481- (BOOL)_effectiveAppearanceIsInactive
     482{
     483#if HAVE(OS_DARK_MODE_SUPPORT) && !PLATFORM(WATCHOS)
     484    return self.traitCollection.userInterfaceLevel != UIUserInterfaceLevelElevated;
     485#else
     486    return NO;
     487#endif
     488}
     489
     490#endif // PLATFORM(IOS_FAMILY)
    481491
    482492static bool shouldRequireUserGestureToLoadVideo()
     
    72587268}
    72597269
     7270- (void)_dynamicUserInterfaceTraitDidChange
     7271{
     7272    if (!_page)
     7273        return;
     7274    _page->effectiveAppearanceDidChange();
     7275    [self _updateScrollViewBackground];
     7276}
     7277
    72607278#endif // PLATFORM(IOS_FAMILY)
    7261 
    7262 #if USE(APPLE_INTERNAL_SDK)
    7263 #include <WebKitAdditions/WKWebViewAdditions.mm>
    7264 #endif
    72657279
    72667280- (BOOL)_beginBackSwipeForTesting
  • trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewInternal.h

    r244955 r246270  
    170170@property (nonatomic, readonly) UIEdgeInsets _computedUnobscuredSafeAreaInset;
    171171@property (nonatomic, readonly, getter=_isRetainingActiveFocusedState) BOOL _retainingActiveFocusedState;
    172 #endif
    173 
    174 #if USE(APPLE_INTERNAL_SDK)
    175 #include <WebKitAdditions/WKWebViewInternalAdditions.h>
    176 #endif
     172
     173- (BOOL)_effectiveAppearanceIsDark;
     174- (BOOL)_effectiveAppearanceIsInactive;
     175#endif // PLATFORM(IOS_FAMILY)
    177176
    178177#if ENABLE(ATTACHMENT_ELEMENT)
  • trunk/Source/WebKit/UIProcess/ios/PageClientImplIOS.h

    r245778 r246270  
    142142    void didPerformDictionaryLookup(const WebCore::DictionaryPopupInfo&) override;
    143143
    144 #if USE(APPLE_INTERNAL_SDK)
    145 #include <WebKitAdditions/PageClientImplIOSAdditions.h>
    146 #endif
     144    bool effectiveAppearanceIsDark() const override;
     145    bool effectiveAppearanceIsInactive() const override;
    147146
    148147    void couldNotRestorePageState() override;
  • trunk/Source/WebKit/UIProcess/ios/PageClientImplIOS.mm

    r245778 r246270  
    477477}
    478478
    479 #if USE(APPLE_INTERNAL_SDK)
    480 #include <WebKitAdditions/PageClientImplIOSAdditions.mm>
    481 #endif
     479bool PageClientImpl::effectiveAppearanceIsDark() const
     480{
     481    return [m_webView _effectiveAppearanceIsDark];
     482}
     483
     484bool PageClientImpl::effectiveAppearanceIsInactive() const
     485{
     486    return [m_webView _effectiveAppearanceIsInactive];
     487}
    482488
    483489void PageClientImpl::setRemoteLayerTreeRootNode(RemoteLayerTreeNode* rootNode)
  • trunk/Source/WebKit/UIProcess/ios/WKPasswordView.mm

    r244955 r246270  
    3535#import <wtf/RetainPtr.h>
    3636#import <wtf/text/WTFString.h>
    37 
    38 #if USE(APPLE_INTERNAL_SDK) && __has_include(<WebKitAdditions/WKPasswordViewAdditions.mm>)
    39 #include <WebKitAdditions/WKPasswordViewAdditions.mm>
    40 #else
    41 static void configureScrollView(UIScrollView *scrollView)
    42 {
    43     [scrollView setBackgroundColor:[UIColor groupTableViewBackgroundColor]];
    44 }
    45 #endif
    46 
    4737
    4838const CGFloat passwordEntryFieldPadding = 10;
     
    112102    [_scrollView setContentSize:self.frame.size];
    113103
    114     configureScrollView(_scrollView.get());
     104#if HAVE(OS_DARK_MODE_SUPPORT)
     105    [_scrollView setBackgroundColor:UIColor.systemGroupedBackgroundColor];
     106#else
     107    [_scrollView setBackgroundColor:UIColor.groupTableViewBackgroundColor];
     108#endif
    115109
    116110    [scrollView addSubview:self];
  • trunk/Source/WebKitLegacy/mac/ChangeLog

    r246231 r246270  
     12019-06-10  Timothy Hatcher  <timothy@apple.com>
     2
     3        Integrate dark mode support for iOS.
     4        https://bugs.webkit.org/show_bug.cgi?id=198687
     5        rdar://problem/51545643
     6
     7        Reviewed by Tim Horton.
     8
     9        * Configurations/FeatureDefines.xcconfig:
     10
    1112019-06-07  Said Abou-Hallawa  <sabouhallawa@apple.com>
    212
  • trunk/Source/WebKitLegacy/mac/Configurations/FeatureDefines.xcconfig

    r245875 r246270  
    116116
    117117ENABLE_DARK_MODE_CSS = $(ENABLE_DARK_MODE_CSS_$(WK_PLATFORM_NAME));
     118ENABLE_DARK_MODE_CSS_iphoneos = ENABLE_DARK_MODE_CSS;
     119ENABLE_DARK_MODE_CSS_iphonesimulator = ENABLE_DARK_MODE_CSS;
     120ENABLE_DARK_MODE_CSS_iosmac = ENABLE_DARK_MODE_CSS;
    118121ENABLE_DARK_MODE_CSS_macosx = ENABLE_DARK_MODE_CSS;
    119122
  • trunk/Tools/ChangeLog

    r246269 r246270  
     12019-06-10  Timothy Hatcher  <timothy@apple.com>
     2
     3        Integrate dark mode support for iOS.
     4        https://bugs.webkit.org/show_bug.cgi?id=198687
     5        rdar://problem/51545643
     6
     7        Reviewed by Tim Horton.
     8
     9        * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
     10
    1112019-06-10  Jonathan Bedard  <jbedard@apple.com>
    212
  • trunk/Tools/TestWebKitAPI/Configurations/FeatureDefines.xcconfig

    r245875 r246270  
    116116
    117117ENABLE_DARK_MODE_CSS = $(ENABLE_DARK_MODE_CSS_$(WK_PLATFORM_NAME));
     118ENABLE_DARK_MODE_CSS_iphoneos = ENABLE_DARK_MODE_CSS;
     119ENABLE_DARK_MODE_CSS_iphonesimulator = ENABLE_DARK_MODE_CSS;
     120ENABLE_DARK_MODE_CSS_iosmac = ENABLE_DARK_MODE_CSS;
    118121ENABLE_DARK_MODE_CSS_macosx = ENABLE_DARK_MODE_CSS;
    119122
Note: See TracChangeset for help on using the changeset viewer.