[Bug 19402] MutationObservers: When appending a record to the queue the last item needs to be replaced if it represents the same mutation and the new record has an oldValue

https://www.w3.org/Bugs/Public/show_bug.cgi?id=19402

--- Comment #3 from Olli Pettay <bugs@pettay.fi> ---
(In reply to comment #2)
> 1. Define an "Interest Group" which is a mapping of Observer -> Delivery
> Options, which is initially empty.
> 2. Start at |target| and walk in the ancestor chain. For each node, visit
> the registered and transient observers and add them to the map if they care
> about the given mutation type (and have subtree set if the current node
> isn't |target|. If a given observer is already present in the map, the
> Delivery Options are OR'd into the existing options.
> 3. Now enqueue either the record or recordWithOldValue for each observer,
> depending on whether the delivery options specify old value.

This sounds pretty much what Gecko does.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Monday, 15 October 2012 18:07:46 UTC