gecko-dev/accessible/ipc
James Teh 4a0ed4f097 Bug 1581040: handle late creation/re-creation of OuterDocAccessible for OOP iframe. r=yzen,nika
1. When creating a DocAccessibleParent for an embedded document in an OOP iframe, it's possible that the embedder accessible hasn't been set yet.
    This can occur if the iframe is initially hidden.
    Previously, we incorrectly set the document up as a top level document (e.g. tab document) in this case.
    Now, we set up the document as top level in its content process, set up the proxy, etc.
    The document will be added to its child document later when the embedder is set.

2. When setting the embedder accessible for an OOP iframe, check if the embedded DocAccessibleParent already exists.
    This can happen if an iframe is hidden and then shown or an iframe is reflowed by layout.
    If it already exists, add the embedded (child) document to its embedder.

3. Mac's implementation of ProxyCreated requires that AddChildDoc be called *before* ProxyCreated so it can invalidate the native children of the parent.
    Because it's possible for an OOP iframe document to be added to its embedder after the document is created, we can't satisfy this requirement for OOP iframe documents.
    Therefore, we now allow a null parent in Mac's ProxyCreated and use the reorder event fired later to invalidate the native children.

Differential Revision: https://phabricator.services.mozilla.com/D51357

--HG--
extra : moz-landing-system : lando
2019-11-07 00:38:59 +00:00
..
extension Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan 2019-10-06 18:29:55 +00:00
other Bug 1565728 - Introduce PDocAccessiblePlatformExt. r=Jamie 2019-09-13 16:55:01 +00:00
win Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan 2019-10-21 14:13:44 +00:00
DocAccessibleChildBase.cpp
DocAccessibleChildBase.h
DocAccessibleParent.cpp Bug 1581040: handle late creation/re-creation of OuterDocAccessible for OOP iframe. r=yzen,nika 2019-11-07 00:38:59 +00:00
DocAccessibleParent.h Bug 1565728 - Introduce PDocAccessiblePlatformExt. r=Jamie 2019-09-13 16:55:01 +00:00
IPCTypes.h
ProxyAccessibleBase.cpp
ProxyAccessibleBase.h
ProxyAccessibleShared.h
moz.build Bug 1565728 - Introduce PDocAccessiblePlatformExt. r=Jamie 2019-09-13 16:55:01 +00:00