[Bug 25813] New: [Custom]: Throw Exception when EXTENDS and PROTOTYPE have a mismatch

https://www.w3.org/Bugs/Public/show_bug.cgi?id=25813

            Bug ID: 25813
           Summary: [Custom]: Throw Exception when EXTENDS and PROTOTYPE
                    have a mismatch
           Product: WebAppsWG
           Version: unspecified
          Hardware: PC
                OS: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Component Model
          Assignee: dglazkov@chromium.org
          Reporter: dfreedm@google.com
        QA Contact: public-webapps-bugzilla@w3.org
                CC: mike@w3.org, public-webapps@w3.org
            Blocks: 14968

Given the current spec language, it is possible to construct an element that
claims to extend from something like HTMLButtonElement, but does not have one
in the prototype.

Example:

document.registerElement('not-input', {
  extends: 'input',
  prototype: HTMLElement.prototype
});

Elements like this will be a footgun, as they will appear to be regular type
extension elements, but will be missing expected API and IDL properties (in UAs
that implement IDL in prototype).

I think the spec should say that UAs should throw at the registration of such a
frankenstien's monster of an element and spare developers and users from having
to double check prototypes of type extensions.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Received on Monday, 19 May 2014 19:46:59 UTC