- From: Jarred Nicholls <jarred@webkit.org>
- Date: Tue, 10 Apr 2012 13:40:56 -0400
- To: Simon Pieters <simonp@opera.com>
- Cc: Jonas Sicking <jonas@sicking.cc>, "public-webapps@w3c.org" <public-webapps@w3c.org>, ian@hixie.ch
- Message-ID: <CANufG2MKbFcQ5Sf0Qrcx9DYpH+zfMrJzM36mZrUotEtc-0Uupg@mail.gmail.com>
On Tue, Apr 10, 2012 at 8:27 AM, Simon Pieters <simonp@opera.com> wrote: > On Tue, 10 Apr 2012 14:01:47 +0200, Jarred Nicholls <jarred@webkit.org> > wrote: > > On Tue, Apr 10, 2012 at 1:20 AM, Simon Pieters <simonp@opera.com> wrote: >> >> On Wed, 04 Apr 2012 18:37:46 +0200, Jonas Sicking <jonas@sicking.cc> >>> wrote: >>> >>> Sounds great to me. The ports attribute is basically useless except in >>> >>>> this >>>> one instance since ports are these days expose as part of structured >>>> clones. >>>> >>>> Avoiding using it in this arguably weird way in this one instance seems >>>> like a win to me. >>>> >>>> >>> I'd like to have an opinion from WebKit and Microsoft about this >>> proposal. >>> Can someone comment or cc relevant people, please? >>> >>> >> FWIW this to me seems like a good improvement to the intuitiveness. >> > > OK. To make things clear, are you OK with making this change in WebKit? > > Since >> a MessageEvent interface is being used, qualifying that *source* >> WindowProxy >> >> is populated is all that's needed? >> > > It wouldn't be a WindowProxy, but a port. I'd also make .ports null. The > IDL for MessageEvent's source member would need to change type from > WindowProxy? to object?. I think this ought to be considered as a last resort until we understand the ramifications. On a personal note, I think having *source* mean different things in different contexts would introduce confusion and is not in line with least-surprise. Perhaps hixie can weigh in on this proposal. > > > >> >>> cheers >>> >>> >>> / Jonas >>> >>>> >>>> On Wednesday, April 4, 2012, Simon Pieters wrote: >>>> >>>> Hi, >>>> >>>>> >>>>> In Opera Extensions we use something that resembles shared workers. One >>>>> modification is that the 'connect' event's source port is exposed in >>>>> .source instead of in .ports[0], to make it closer to the API for >>>>> cross-document messaging. Maybe we should make this change to Shared >>>>> Workers as well. >>>>> >>>>> I think shared workers hasn't seen wide adoption yet, so maybe changes >>>>> like this are still possible. >>>>> >>>>> What do people think? >>>>> >>>>> currently: >>>>> onconnect = function(e) { e.ports[0].postMessage('pong') } >>>>> >>>>> proposed change: >>>>> onconnect = function(e) { e.source.postMessage('pong') } >>>>> >>>>> -- >>>>> Simon Pieters >>>>> Opera Software >>>>> >>>>> >>>>> >>>>> >>> -- >>> Simon Pieters >>> Opera Software >>> >>> >>> > > -- > Simon Pieters > Opera Software >
Received on Tuesday, 10 April 2012 17:41:50 UTC