W3C home > Mailing lists > Public > public-script-coord@w3.org > July to September 2013

Re: Forbid constants on [noInterfaceObject] interfaces

From: Cameron McCormack <cam@mcc.id.au>
Date: Sat, 03 Aug 2013 12:48:22 +1000
Message-ID: <51FC6F76.6030907@mcc.id.au>
To: Boris Zbarsky <bzbarsky@MIT.EDU>
CC: David Bruant <bruant.d@gmail.com>, "public-script-coord@w3.org" <public-script-coord@w3.org>
Boris Zbarsky wrote:
> On 7/31/13 9:43 AM, David Bruant wrote:
>> given how they promote the feature [1] (see code snippets in the
>> article, it has both "PERSISTENT" and window.TEMPORARY), I doubt this is
>> a bug.
>
> It's a bug if merely having [NoInterfaceObject] on an interface causes
> its constants to end up on the global. That's just not what the spec
> says to do. If Chrome's binding generator has this behavior, it should
> be fixed.
>
> If, on the other hand, Chrome just unilaterally added some constants on
> Window... well, that's really unfortunate, but not a WebIDL issue.
>
>> Worse, I doubt this can be changed.
>
> Again, that just seems like something for the Window spec and bug
> reports to Chrome and other UAs, not an issue with WebIDL per se.

It's really the `Window implements LocalFileSystem;` statement in the 
spec that's putting the constants on the global.  With that, it makes 
sense that they were using the (never in the spec) [Supplemental].

Still, it doesn't seem to be a great design to be sticking these things 
on the global -- the constants or the requestFileSystem and 
resolveLocalFileSystemURL operations.
Received on Saturday, 3 August 2013 02:48:56 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 21:37:50 UTC