W3C home > Mailing lists > Public > public-webapps@w3.org > July to September 2011

Re: Mutation events replacement

From: Ryosuke Niwa <rniwa@webkit.org>
Date: Fri, 1 Jul 2011 18:26:58 -0700
Message-ID: <BANLkTinQ3SU=hy2hzXwBXL6KqO+BuHAZ1g@mail.gmail.com>
To: Rafael Weinstein <rafaelw@google.com>
Cc: David Flanagan <dflanagan@mozilla.com>, Olli@pettay.fi, Olli Pettay <Olli.Pettay@helsinki.fi>, Boris Zbarsky <bzbarsky@mit.edu>, public-webapps <public-webapps@w3.org>
On Fri, Jul 1, 2011 at 5:36 PM, Rafael Weinstein <rafaelw@google.com> wrote:

> We've been prototyping more useful higher-level semantics on top of
> what we've proposed (akin to what you're asking about). In general, if
> you want to know something correct about what happened to a tree from
> state (a) to state (b) you need to register an observer at all nodes
> in the tree for the types of changes you care about. Subtree
> observation isn't sufficient for this purpose exactly for the reason
> you are observing: you don't hear about when something that was in
> tree was removed, modified, then returned.
>

Why?  If I have a list of mutations that happened in a subtree with
information such as containerNode, offset at which the node was inserted or
removed, shouldn't I be able to tell exactly what had happened?

We've prototyped the semantics of our proposal and are working on
> implementing higher-level observation semantics on top of them. It's
> still work in progress, but you can get an idea of what's required.
>

I'll add that being able to annotate a sequence of mutations with
higher-level semantics will be super useful.  For example, if execCommand or
editing actions make a bunch of modifications, they should all be grouped
together and and label as such.  Also, a widget library can label all
mutations caused by the creation of a widget to avoid shooting itself or
inform other components and libraries on the page.

- Ryosuke
Received on Saturday, 2 July 2011 01:27:53 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 18:49:46 GMT