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 Bug 1523969 part 1 - Move method definition inline comments to new line in accessible/. r=jamie 2019-02-25 16:02:26 -06:00
DocAccessibleChildBase.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
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 Bug 1521000 - Part 2: Adjust our clang-format rules to include spaces after the hash for nested preprocessor directives r=sylvestre 2019-01-18 10:16:18 +01:00
ProxyAccessibleBase.cpp Bug 1534395 - Rename TabParent to BrowserParent. r=nika 2019-04-09 16:38:15 -05:00
ProxyAccessibleBase.h Bug 1520611 - Consolidate ProxyAccessible::MustPruneChildren into nsAccUtils. r=Jamie 2019-01-24 00:23:30 +00:00
ProxyAccessibleShared.h Bug 1525980 - Make announcement events work over IPC. r=Jamie 2019-02-14 17:42:47 +00:00
moz.build Bug 1565728 - Introduce PDocAccessiblePlatformExt. r=Jamie 2019-09-13 16:55:01 +00:00