<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://www.w3.org/Bugs/Public/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4"
          urlbase="https://www.w3.org/Bugs/Public/"
          
          maintainer="sysbot+bugzilla@w3.org"
>

    <bug>
          <bug_id>14913</bug_id>
          
          <creation_ts>2011-11-23 17:38:09 +0000</creation_ts>
          <short_desc>No way to specify [OverrideBuiltins] if the getter is in a partial interface</short_desc>
          <delta_ts>2011-12-29 16:22:15 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebAppsWG</product>
          <component>WebIDL</component>
          <version>unspecified</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Aryeh Gregor">ayg</reporter>
          <assigned_to name="Cameron McCormack">cam</assigned_to>
          <cc>annevk</cc>
    
    <cc>ian</cc>
    
    <cc>mike</cc>
    
    <cc>public-script-coord</cc>
          
          <qa_contact>public-webapps-bugzilla</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>60387</commentid>
    <comment_count>0</comment_count>
    <who name="Aryeh Gregor">ayg</who>
    <bug_when>2011-11-23 17:38:09 +0000</bug_when>
    <thetext>HTML currently has [OverrideBuiltins] partial interface Document { ... }, which is invalid because you can&apos;t have extended attributes on a partial interface.  But DOM4 can&apos;t add [OverrideBuiltins] to the actual Document interface definition, because that defines no getter.

Suggested resolution: allow [OverrideBuiltins] on partial interfaces, and say it has the same effect as if it was specified on the original interface.  So the partial interface can add that extended attribute too, not just members.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>60393</commentid>
    <comment_count>1</comment_count>
    <who name="Ian &apos;Hixie&apos; Hickson">ian</who>
    <bug_when>2011-11-23 17:58:10 +0000</bug_when>
    <thetext>By just restricting it to the interface or partial interface that has the getter, we can neatly solve the problem of it being unclear which interface should have it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61286</commentid>
    <comment_count>2</comment_count>
    <who name="Cameron McCormack">cam</who>
    <bug_when>2011-12-09 06:07:17 +0000</bug_when>
    <thetext>The non-localised effects of extended attributes on partial interface definitions is exactly what I was trying to avoid with the current spec restrictions.  Ian&apos;s comment 1 suggestion does neatly get around that problem.

(An alternative would be to write in HTML

  [NoInterfaceObject,OverrideBuiltins]
  interface DocumentProperties {
    getter ...;
  };
  Document implements DocumentProperties;

.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61586</commentid>
    <comment_count>3</comment_count>
    <who name="Cameron McCormack">cam</who>
    <bug_when>2011-12-15 03:18:50 +0000</bug_when>
    <thetext>I&apos;ve done comment 1.

http://dev.w3.org/cvsweb/2006/webapi/WebIDL/Overview.xml.diff?r1=1.421;r2=1.422;f=h

Aryeh, let me know if this change is satisfactory, thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>62109</commentid>
    <comment_count>4</comment_count>
    <who name="Aryeh Gregor">ayg</who>
    <bug_when>2011-12-28 18:03:47 +0000</bug_when>
    <thetext>AFAICT, the grammar still doesn&apos;t allow extended attributes on partial interfaces, although the prose now does.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>62117</commentid>
    <comment_count>5</comment_count>
    <who name="Cameron McCormack">cam</who>
    <bug_when>2011-12-29 00:24:37 +0000</bug_when>
    <thetext>You were right.  I fixed this yesterday as part of the callback edit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>62135</commentid>
    <comment_count>6</comment_count>
    <who name="Aryeh Gregor">ayg</who>
    <bug_when>2011-12-29 16:22:15 +0000</bug_when>
    <thetext>Oh, I misread.  Never mind me.  Updated WebIDLParser.js and idlharness.js:

https://github.com/ayg/webidl.js/commit/ebed0073
http://dvcs.w3.org/hg/html/rev/c0952a1118d7</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>