- From: Erik Bruchez <ebruchez@orbeon.com>
- Date: Tue, 20 Nov 2018 22:58:43 -0800
- To: Steven Pemberton <steven.pemberton@cwi.nl>
- Cc: XForms <public-xformsusers@w3.org>
- Message-ID: <CAAc0PEWrgiFE3=nZLaDBTbEFRhVwuiR=yhRc=y3dpa+KBT53Mg@mail.gmail.com>
I am not a huge fan of the `to` attribute, so I am looking for other solutions :) DOM events with the Shadow DOM have an attribute called `composed` [1]. When that attribute is set to `true` and the event bubbles, it does so through the Shadow DOM root. We could follow this and add a `composed="true"` attribute on `dispatch` instead of `to="parent"`. Now for the other way around, that is dispatching an event in the embedding form to the embedded form, I don't find a corresponding mechanism for the Shadow DOM, which is crazy. We could consider attaching a listener with a special observer within the embedded form, something like: <action event="my-custom-event-from-the-outside" observer="#host"/> Our implementation already makes use of values starting with `#`, namely: [2] event="#all" observer="#document" observer="#preceding-sibling" target="#observer" -Erik [1] https://developer.mozilla.org/en-US/docs/Web/API/Event/composed [2] https://doc.orbeon.com/xforms/events/events-extensions-other On Tue, Nov 13, 2018 at 6:25 AM Steven Pemberton <steven.pemberton@cwi.nl> wrote: > Add @to attribute to dispatch: (we can discuss the choice of name) > > to = targetid | parent | control > Value 'targetid' is default > > The attribute has the following effects: > to="targetid", targetid="..." behaviour is as now. > to="control", targetid="id of control element", event is dispatched to > first model of embedded control > to="parent", (targetid is ignored), event is dispatched to embedding > control element > > Examples: > > <dispatch name="tick" targetid="clock"/> > <dispatch name="tick" to="targetid" targetid="clock"/> (has same > effect > as above) > <dispatch name="reset" to="control" targetid="game"/> > <dispatch name="finished" to="parent"/> > > You might prefer: > > <dispatch name="reset" to="control" control="game"/> > > Steven > >
Received on Wednesday, 21 November 2018 06:59:17 UTC