Title: [258301] branches/safari-610.1.7-branch/Source/WebCore
Revision
258301
Author
[email protected]
Date
2020-03-11 17:33:51 -0700 (Wed, 11 Mar 2020)

Log Message

Cherry-pick r258297. rdar://problem/60347323

    AX: Isolated tree: enabling secondary thread for the wrong clients
    https://bugs.webkit.org/show_bug.cgi?id=208950

    Reviewed by Chris Fleizach.

    Removed incorrect call to _AXUIElementUseSecondaryAXThread and wrap it
    in initializeSecondaryAXThread with the appropriate checks.

    * accessibility/AXObjectCache.cpp:
    (WebCore::AXObjectCache::isolatedTreeFocusedObject):
    (WebCore::AXObjectCache::initializeSecondaryAXThread):
    (WebCore::AXObjectCache::isolatedTreeRootObject):
    * accessibility/AXObjectCache.h:

    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@258297 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Modified Paths

Diff

Modified: branches/safari-610.1.7-branch/Source/WebCore/ChangeLog (258300 => 258301)


--- branches/safari-610.1.7-branch/Source/WebCore/ChangeLog	2020-03-12 00:33:47 UTC (rev 258300)
+++ branches/safari-610.1.7-branch/Source/WebCore/ChangeLog	2020-03-12 00:33:51 UTC (rev 258301)
@@ -1,3 +1,40 @@
+2020-03-11  Alan Coon  <[email protected]>
+
+        Cherry-pick r258297. rdar://problem/60347323
+
+    AX: Isolated tree: enabling secondary thread for the wrong clients
+    https://bugs.webkit.org/show_bug.cgi?id=208950
+    
+    Reviewed by Chris Fleizach.
+    
+    Removed incorrect call to _AXUIElementUseSecondaryAXThread and wrap it
+    in initializeSecondaryAXThread with the appropriate checks.
+    
+    * accessibility/AXObjectCache.cpp:
+    (WebCore::AXObjectCache::isolatedTreeFocusedObject):
+    (WebCore::AXObjectCache::initializeSecondaryAXThread):
+    (WebCore::AXObjectCache::isolatedTreeRootObject):
+    * accessibility/AXObjectCache.h:
+    
+    
+    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@258297 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+    2020-03-11  Andres Gonzalez  <[email protected]>
+
+            AX: Isolated tree: enabling secondary thread for the wrong clients
+            https://bugs.webkit.org/show_bug.cgi?id=208950
+
+            Reviewed by Chris Fleizach.
+
+            Removed incorrect call to _AXUIElementUseSecondaryAXThread and wrap it
+            in initializeSecondaryAXThread with the appropriate checks.
+
+            * accessibility/AXObjectCache.cpp:
+            (WebCore::AXObjectCache::isolatedTreeFocusedObject):
+            (WebCore::AXObjectCache::initializeSecondaryAXThread):
+            (WebCore::AXObjectCache::isolatedTreeRootObject):
+            * accessibility/AXObjectCache.h:
+
 2020-03-10  Russell Epstein  <[email protected]>
 
         Cherry-pick r258229. rdar://problem/60299543

Modified: branches/safari-610.1.7-branch/Source/WebCore/accessibility/AXObjectCache.cpp (258300 => 258301)


--- branches/safari-610.1.7-branch/Source/WebCore/accessibility/AXObjectCache.cpp	2020-03-12 00:33:47 UTC (rev 258300)
+++ branches/safari-610.1.7-branch/Source/WebCore/accessibility/AXObjectCache.cpp	2020-03-12 00:33:51 UTC (rev 258301)
@@ -392,11 +392,7 @@
     auto tree = AXIsolatedTree::treeForPageID(*pageID);
     if (!tree) {
         tree = generateIsolatedTree(*pageID, document);
-        // Now that we have created our tree, initialize the secondary thread,
-        // so future requests come in on the other thread.
-        if (_AXSIsolatedTreeModeFunctionIsAvailable() && _AXSIsolatedTreeMode_Soft() == AXSIsolatedTreeModeSecondaryThread)
-            _AXUIElementUseSecondaryAXThread(true);
-        _AXUIElementUseSecondaryAXThread(true);
+        initializeSecondaryAXThread();
     }
 
     if (tree)
@@ -749,6 +745,15 @@
 }
 
 #if ENABLE(ACCESSIBILITY_ISOLATED_TREE)
+
+void AXObjectCache::initializeSecondaryAXThread()
+{
+    // Now that we have created our tree, initialize the secondary thread,
+    // so future requests come in on the other thread.
+    if (_AXSIsolatedTreeModeFunctionIsAvailable() && _AXSIsolatedTreeMode_Soft() == AXSIsolatedTreeModeSecondaryThread)
+        _AXUIElementUseSecondaryAXThread(true);
+}
+
 AXCoreObject* AXObjectCache::isolatedTreeRootObject()
 {
     if (!m_pageID)
@@ -759,11 +764,7 @@
         tree = Accessibility::retrieveValueFromMainThread<RefPtr<AXIsolatedTree>>([this] () -> RefPtr<AXIsolatedTree> {
             return generateIsolatedTree(*m_pageID, m_document);
         });
-
-        // Now that we have created our tree, initialize the secondary thread,
-        // so future requests come in on the other thread.
-        if (_AXSIsolatedTreeModeFunctionIsAvailable() && _AXSIsolatedTreeMode_Soft() == AXSIsolatedTreeModeSecondaryThread)
-            _AXUIElementUseSecondaryAXThread(true);
+        AXObjectCache::initializeSecondaryAXThread();
     }
 
     if (tree)

Modified: branches/safari-610.1.7-branch/Source/WebCore/accessibility/AXObjectCache.h (258300 => 258301)


--- branches/safari-610.1.7-branch/Source/WebCore/accessibility/AXObjectCache.h	2020-03-12 00:33:47 UTC (rev 258300)
+++ branches/safari-610.1.7-branch/Source/WebCore/accessibility/AXObjectCache.h	2020-03-12 00:33:51 UTC (rev 258301)
@@ -360,6 +360,7 @@
     void setIsolatedTreeFocusedObject(Node*);
     static Ref<AXIsolatedTree> generateIsolatedTree(PageIdentifier, Document&);
     void updateIsolatedTree(AXCoreObject*, AXNotification);
+    static void initializeSecondaryAXThread();
 #endif
 
 protected:
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to