⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 263275 in webkit


Ignore:
Timestamp:
Jun 19, 2020, 10:11:27 AM (6 years ago)
Author:
Chris Fleizach
Message:

AX: Make isolated tree enablement status dependent on client preference
https://bugs.webkit.org/show_bug.cgi?id=213355
<rdar://problem/64506577>

Reviewed by Zalan Bujtas.

Source/WebKit:

We don't want the isolated tree mode in all clients (like Mail or Dictionary).
As a result, we can set this setting to off and allow safari and mini browser turn on more directly.

  • Shared/WebPreferences.yaml:
  • UIProcess/API/Cocoa/WKPreferences.mm:

(-[WKPreferences _setAccessibilityIsolatedTreeEnabled:]):
(-[WKPreferences _accessibilityIsolatedTreeEnabled]):

  • UIProcess/API/Cocoa/WKPreferencesPrivate.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
(WebKit::InjectedBundle::setAccessibilityIsolatedTreeEnabled):

  • WebProcess/InjectedBundle/InjectedBundle.h:

Tools:

  • MiniBrowser/mac/AppDelegate.m:

(-[BrowserAppDelegate defaultConfiguration]):

Location:
trunk
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/ChangeLog

    r263274 r263275  
     12020-06-19  Chris Fleizach  <cfleizach@apple.com>
     2
     3        AX: Make isolated tree enablement status dependent on client preference
     4        https://bugs.webkit.org/show_bug.cgi?id=213355
     5        <rdar://problem/64506577>
     6
     7        Reviewed by Zalan Bujtas.
     8
     9        We don't want the isolated tree mode in all clients (like Mail or Dictionary).
     10        As a result, we can set this setting to off and allow safari and mini browser turn on more directly.
     11
     12        * Shared/WebPreferences.yaml:
     13        * UIProcess/API/Cocoa/WKPreferences.mm:
     14        (-[WKPreferences _setAccessibilityIsolatedTreeEnabled:]):
     15        (-[WKPreferences _accessibilityIsolatedTreeEnabled]):
     16        * UIProcess/API/Cocoa/WKPreferencesPrivate.h:
     17        * WebProcess/InjectedBundle/InjectedBundle.cpp:
     18        (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
     19        (WebKit::InjectedBundle::setAccessibilityIsolatedTreeEnabled):
     20        * WebProcess/InjectedBundle/InjectedBundle.h:
     21
    1222020-06-19  Rob Buis  <rbuis@igalia.com>
    223
  • trunk/Source/WebKit/Shared/WebPreferences.yaml

    r263274 r263275  
    20142014IsAccessibilityIsolatedTreeEnabled:
    20152015    type: bool
    2016     defaultValue: true
     2016    defaultValue: false
    20172017    humanReadableName: "Isolated Accessibility Tree Mode"
    20182018    humanReadableDescription: "Enable an accessibility hierarchy for VoiceOver that can be accessed on a secondary thread for improved performance"
  • trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreferences.mm

    r260303 r263275  
    14571457}
    14581458
     1459- (void)_setAccessibilityIsolatedTreeEnabled:(BOOL)accessibilityIsolatedTreeEnabled
     1460{
     1461#if ENABLE(ACCESSIBILITY_ISOLATED_TREE)
     1462    _preferences->setIsAccessibilityIsolatedTreeEnabled(accessibilityIsolatedTreeEnabled);
     1463#endif
     1464}
     1465
     1466- (BOOL)_accessibilityIsolatedTreeEnabled
     1467{
     1468#if ENABLE(ACCESSIBILITY_ISOLATED_TREE)
     1469    return _preferences->isAccessibilityIsolatedTreeEnabled();
     1470#else
     1471    return false;
     1472#endif
     1473}
     1474
    14591475@end
    14601476
  • trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreferencesPrivate.h

    r260547 r263275  
    164164@property (nonatomic, readonly) BOOL _isITPDatabaseEnabled WK_API_AVAILABLE(macos(WK_MAC_TBA), ios(WK_IOS_TBA));
    165165@property (nonatomic, setter=_setServiceWorkerEntitlementDisabledForTesting:) BOOL _serviceWorkerEntitlementDisabledForTesting WK_API_AVAILABLE(macos(WK_MAC_TBA), ios(WK_IOS_TBA));
     166@property (nonatomic, setter=_setAccessibilityIsolatedTreeEnabled:) BOOL _accessibilityIsolatedTreeEnabled WK_API_AVAILABLE(macos(10.16));
    166167
    167168#if !TARGET_OS_IPHONE
  • trunk/Source/WebKit/WebProcess/InjectedBundle/InjectedBundle.cpp

    r262922 r263275  
    293293#endif
    294294
     295#if ENABLE(ACCESSIBILITY_ISOLATED_TREE)
     296    if (preference == "IsAccessibilityIsolatedTreeEnabled")
     297        RuntimeEnabledFeatures::sharedFeatures().setIsAccessibilityIsolatedTreeEnabled(enabled);
     298#endif
     299
    295300    // Map the names used in LayoutTests with the names used in WebCore::Settings and WebPreferencesStore.
    296301#define FOR_EACH_OVERRIDE_BOOL_PREFERENCE(macro) \
     
    615620}
    616621
     622void InjectedBundle::setAccessibilityIsolatedTreeEnabled(bool enabled)
     623{
     624#if ENABLE(ACCESSIBILITY_ISOLATED_TREE)
     625    RuntimeEnabledFeatures::sharedFeatures().setIsAccessibilityIsolatedTreeEnabled(enabled);
     626#endif
     627}
     628
    617629} // namespace WebKit
  • trunk/Source/WebKit/WebProcess/InjectedBundle/InjectedBundle.h

    r260081 r263275  
    145145    void setWebAnimationsEnabled(bool);
    146146    void setWebAnimationsCSSIntegrationEnabled(bool);
     147    void setAccessibilityIsolatedTreeEnabled(bool);
    147148    void dispatchPendingLoadRequests();
    148149
  • trunk/Tools/ChangeLog

    r263267 r263275  
     12020-06-19  Chris Fleizach  <cfleizach@apple.com>
     2
     3        AX: Make isolated tree enablement status dependent on client preference
     4        https://bugs.webkit.org/show_bug.cgi?id=213355
     5        <rdar://problem/64506577>
     6
     7        Reviewed by Zalan Bujtas.
     8
     9        * MiniBrowser/mac/AppDelegate.m:
     10        (-[BrowserAppDelegate defaultConfiguration]):
     11
    1122020-06-19  Aakash Jain  <aakash_jain@apple.com>
    213
  • trunk/Tools/MiniBrowser/mac/AppDelegate.m

    r261324 r263275  
    145145        configuration.preferences._mediaDevicesEnabled = YES;
    146146        configuration.preferences._mockCaptureDevicesEnabled = YES;
     147        configuration.preferences._accessibilityIsolatedTreeEnabled = YES;
    147148    }
    148149
Note: See TracChangeset for help on using the changeset viewer.