[html5] r5373 - [giow] (2) Convert HTML from 'float' to 'double' throughout. THIS IS HIGHLY EXPE [...]

whatwg at whatwg.org whatwg at whatwg.org
Fri Aug 27 12:18:13 PDT 2010


Author: ianh
Date: 2010-08-27 12:18:11 -0700 (Fri, 27 Aug 2010)
New Revision: 5373

Modified:
   complete.html
   index
   source
Log:
[giow] (2) Convert HTML from 'float' to 'double' throughout. THIS IS HIGHLY EXPERIMENTAL. THIS LIKELY HAS ALL KINDS OF IMPLICATIONS I HAVE NOT CONSIDERED. PLEASE SEND FEEDBACK IF THIS IS IN THE SLIGHTEST BIT PROBLEMATIC.

Modified: complete.html
===================================================================
--- complete.html	2010-08-27 18:41:17 UTC (rev 5372)
+++ complete.html	2010-08-27 19:18:11 UTC (rev 5373)
@@ -3292,12 +3292,12 @@
     specification. <a href=#refsWEBIDL>[WEBIDL]</a></p>
 
     <p id=float-nan>Except where otherwise specified, if an IDL
-    attribute that is a floating point number type (<code title="">float</code>) is assigned an Infinity or Not-a-Number
+    attribute that is a floating point number type (<code title="">double</code>) is assigned an Infinity or Not-a-Number
     (NaN) value, a <code><a href=#not_supported_err>NOT_SUPPORTED_ERR</a></code> exception must be
     raised.</p>
 
     <p>Except where otherwise specified, if a method with an argument
-    that is a floating point number type (<code title="">float</code>)
+    that is a floating point number type (<code title="">double</code>)
     is passed an Infinity or Not-a-Number (NaN) value, a
     <code><a href=#not_supported_err>NOT_SUPPORTED_ERR</a></code> exception must be raised.</p>
 
@@ -4023,14 +4023,14 @@
 
    <li><p><i>Conversion</i>: Let <var title="">S</var> be the set of
    finite IEEE 754 single-precision floating point values except
-   −0, but with two special values added: 2<sup title="">128</sup> and −2<sup title="">128</sup>.</li>
+   −0, but with two special values added: 2<sup title="">1024</sup> and −2<sup title="">1024</sup>.</li>
 
    <li><p>Let <var title="">rounded-value</var> be the number in <var title="">S</var> that is closest to <var title="">value</var>,
    selecting the number with an even significand if there are two
-   equally close values. (The two special values 2<sup title="">128</sup> and −2<sup title="">128</sup> are
+   equally close values. (The two special values 2<sup title="">1024</sup> and −2<sup title="">1024</sup> are
    considered to have even significands for this purpose.)</li>
 
-   <li><p>If <var title="">rounded-value</var> is 2<sup title="">128</sup> or −2<sup title="">128</sup>, return an
+   <li><p>If <var title="">rounded-value</var> is 2<sup title="">1024</sup> or −2<sup title="">1024</sup>, return an
    error.</li>
 
    <li><p>Return <var title="">rounded-value</var>.</li>
@@ -6678,7 +6678,7 @@
   value.</p>
 
   <p>If a reflecting IDL attribute is a floating point number type
-  (<code>float</code>), then, on getting, the content attribute must
+  (<code>double</code>), then, on getting, the content attribute must
   be parsed according to the <a href=#rules-for-parsing-floating-point-number-values>rules for parsing floating point
   number values</a>, and if that is successful, the resulting value
   must be returned. If, on the other hand, it fails, or if the
@@ -24271,7 +24271,7 @@
   const unsigned short <a href=#dom-media-network_no_source title=dom-media-NETWORK_NO_SOURCE>NETWORK_NO_SOURCE</a> = 3;
   readonly attribute unsigned short <a href=#dom-media-networkstate title=dom-media-networkState>networkState</a>;
            attribute DOMString <a href=#dom-media-preload title=dom-media-preload>preload</a>;
-<!--v3BUF  readonly attribute float <span title="dom-media-bufferingRate">bufferingRate</span>;
+<!--v3BUF  readonly attribute double <span title="dom-media-bufferingRate">bufferingRate</span>;
   readonly attribute boolean <span title="dom-media-bufferingThrottled">bufferingThrottled</span>;
 -->  readonly attribute <a href=#timeranges>TimeRanges</a> <a href=#dom-media-buffered title=dom-media-buffered>buffered</a>;
   void <a href=#dom-media-load title=dom-media-load>load</a>();
@@ -24287,13 +24287,13 @@
   readonly attribute boolean <a href=#dom-media-seeking title=dom-media-seeking>seeking</a>;
 
   // playback state
-           attribute float <a href=#dom-media-currenttime title=dom-media-currentTime>currentTime</a>;
-  readonly attribute float <a href=#dom-media-initialtime title=dom-media-initialTime>initialTime</a>;
-  readonly attribute float <a href=#dom-media-duration title=dom-media-duration>duration</a>;
+           attribute double <a href=#dom-media-currenttime title=dom-media-currentTime>currentTime</a>;
+  readonly attribute double <a href=#dom-media-initialtime title=dom-media-initialTime>initialTime</a>;
+  readonly attribute double <a href=#dom-media-duration title=dom-media-duration>duration</a>;
   readonly attribute <span>Date</span> <a href=#dom-media-startoffsettime title=dom-media-startOffsetTime>startOffsetTime</a>;
   readonly attribute boolean <a href=#dom-media-paused title=dom-media-paused>paused</a>;
-           attribute float <a href=#dom-media-defaultplaybackrate title=dom-media-defaultPlaybackRate>defaultPlaybackRate</a>;
-           attribute float <a href=#dom-media-playbackrate title=dom-media-playbackRate>playbackRate</a>;
+           attribute double <a href=#dom-media-defaultplaybackrate title=dom-media-defaultPlaybackRate>defaultPlaybackRate</a>;
+           attribute double <a href=#dom-media-playbackrate title=dom-media-playbackRate>playbackRate</a>;
   readonly attribute <a href=#timeranges>TimeRanges</a> <a href=#dom-media-played title=dom-media-played>played</a>;
   readonly attribute <a href=#timeranges>TimeRanges</a> <a href=#dom-media-seekable title=dom-media-seekable>seekable</a>;
   readonly attribute boolean <a href=#dom-media-ended title=dom-media-ended>ended</a>;
@@ -24304,7 +24304,7 @@
 
   // controls
            attribute boolean <a href=#dom-media-controls title=dom-media-controls>controls</a>;
-           attribute float <a href=#dom-media-volume title=dom-media-volume>volume</a>;
+           attribute double <a href=#dom-media-volume title=dom-media-volume>volume</a>;
            attribute boolean <a href=#dom-media-muted title=dom-media-muted>muted</a>;
 <!--TT-->
   // timed tracks
@@ -27782,13 +27782,13 @@
 
   </div>
 
-  <hr><pre class=idl>[<a href=#dom-timedtrackcue title=dom-TimedTrackCue>Constructor</a>(in DOMString id, in float startTime, in float endTime, in DOMString text, in optional DOMString settings, in optional DOMString voice, in optional boolean pauseOnExit)]
+  <hr><pre class=idl>[<a href=#dom-timedtrackcue title=dom-TimedTrackCue>Constructor</a>(in DOMString id, in double startTime, in double endTime, in DOMString text, in optional DOMString settings, in optional DOMString voice, in optional boolean pauseOnExit)]
 interface <dfn id=timedtrackcue>TimedTrackCue</dfn> {
   readonly attribute <a href=#timedtrack>TimedTrack</a> <a href=#dom-timedtrackcue-track title=dom-TimedTrackCue-track>track</a>;
   readonly attribute DOMString <a href=#dom-timedtrackcue-id title=dom-TimedTrackCue-id>id</a>;
 
-  readonly attribute float <a href=#dom-timedtrackcue-starttime title=dom-TimedTrackCue-startTime>startTime</a>;
-  readonly attribute float <a href=#dom-timedtrackcue-endtime title=dom-TimedTrackCue-endTime>endTime</a>;
+  readonly attribute double <a href=#dom-timedtrackcue-starttime title=dom-TimedTrackCue-startTime>startTime</a>;
+  readonly attribute double <a href=#dom-timedtrackcue-endtime title=dom-TimedTrackCue-endTime>endTime</a>;
   readonly attribute boolean <a href=#dom-timedtrackcue-pauseonexit title=dom-TimedTrackCue-pauseOnExit>pauseOnExit</a>;
 
   readonly attribute DOMString <a href=#dom-timedtrackcue-direction title=dom-TimedTrackCue-direction>direction</a>;
@@ -29580,8 +29580,8 @@
 
   <pre class=idl>interface <dfn id=timeranges>TimeRanges</dfn> {
   readonly attribute unsigned long <a href=#dom-timeranges-length title=dom-TimeRanges-length>length</a>;
-  float <a href=#dom-timeranges-start title=dom-TimeRanges-start>start</a>(in unsigned long index);
-  float <a href=#dom-timeranges-end title=dom-TimeRanges-end>end</a>(in unsigned long index);
+  double <a href=#dom-timeranges-start title=dom-TimeRanges-start>start</a>(in unsigned long index);
+  double <a href=#dom-timeranges-end title=dom-TimeRanges-end>end</a>(in unsigned long index);
 };</pre>
 
   <dl class=domintro><dt><var title="">media</var> . <code title=dom-TimeRanges-length><a href=#dom-timeranges-length>length</a></code></dt>
@@ -30168,18 +30168,18 @@
   // useful e.g. for when an image manipulation app uses <canvas> both for UI previews and the actual work
 -->
   // transformations (default transform is the identity matrix)
-  void <a href=#dom-context-2d-scale title=dom-context-2d-scale>scale</a>(in float x, in float y);
-  void <a href=#dom-context-2d-rotate title=dom-context-2d-rotate>rotate</a>(in float angle);
-  void <a href=#dom-context-2d-translate title=dom-context-2d-translate>translate</a>(in float x, in float y);
-  void <a href=#dom-context-2d-transform title=dom-context-2d-transform>transform</a>(in float a, in float b, in float c, in float d, in float e, in float f);
-  void <a href=#dom-context-2d-settransform title=dom-context-2d-setTransform>setTransform</a>(in float a, in float b, in float c, in float d, in float e, in float f);
+  void <a href=#dom-context-2d-scale title=dom-context-2d-scale>scale</a>(in double x, in double y);
+  void <a href=#dom-context-2d-rotate title=dom-context-2d-rotate>rotate</a>(in double angle);
+  void <a href=#dom-context-2d-translate title=dom-context-2d-translate>translate</a>(in double x, in double y);
+  void <a href=#dom-context-2d-transform title=dom-context-2d-transform>transform</a>(in double a, in double b, in double c, in double d, in double e, in double f);
+  void <a href=#dom-context-2d-settransform title=dom-context-2d-setTransform>setTransform</a>(in double a, in double b, in double c, in double d, in double e, in double f);
 <!--
   // v5 we've also received requests for:
   void skew(...);
   void reflect(...); // or mirror(...)
 -->
   // compositing
-           attribute float <a href=#dom-context-2d-globalalpha title=dom-context-2d-globalAlpha>globalAlpha</a>; // (default 1.0)
+           attribute double <a href=#dom-context-2d-globalalpha title=dom-context-2d-globalAlpha>globalAlpha</a>; // (default 1.0)
            attribute DOMString <a href=#dom-context-2d-globalcompositeoperation title=dom-context-2d-globalCompositeOperation>globalCompositeOperation</a>; // (default source-over)
 <!--
   // v5 we've also received requests for:
@@ -30193,75 +30193,75 @@
   // colors and styles
            attribute any <a href=#dom-context-2d-strokestyle title=dom-context-2d-strokeStyle>strokeStyle</a>; // (default black)
            attribute any <a href=#dom-context-2d-fillstyle title=dom-context-2d-fillStyle>fillStyle</a>; // (default black)
-  <a href=#canvasgradient>CanvasGradient</a> <a href=#dom-context-2d-createlineargradient title=dom-context-2d-createLinearGradient>createLinearGradient</a>(in float x0, in float y0, in float x1, in float y1);
-  <a href=#canvasgradient>CanvasGradient</a> <a href=#dom-context-2d-createradialgradient title=dom-context-2d-createRadialGradient>createRadialGradient</a>(in float x0, in float y0, in float r0, in float x1, in float y1, in float r1);
+  <a href=#canvasgradient>CanvasGradient</a> <a href=#dom-context-2d-createlineargradient title=dom-context-2d-createLinearGradient>createLinearGradient</a>(in double x0, in double y0, in double x1, in double y1);
+  <a href=#canvasgradient>CanvasGradient</a> <a href=#dom-context-2d-createradialgradient title=dom-context-2d-createRadialGradient>createRadialGradient</a>(in double x0, in double y0, in double r0, in double x1, in double y1, in double r1);
   <a href=#canvaspattern>CanvasPattern</a> <a href=#dom-context-2d-createpattern title=dom-context-2d-createPattern>createPattern</a>(in <a href=#htmlimageelement>HTMLImageElement</a> image, in DOMString repetition);
   <a href=#canvaspattern>CanvasPattern</a> <a href=#dom-context-2d-createpattern title=dom-context-2d-createPattern>createPattern</a>(in <a href=#htmlcanvaselement>HTMLCanvasElement</a> image, in DOMString repetition);
   <a href=#canvaspattern>CanvasPattern</a> <a href=#dom-context-2d-createpattern title=dom-context-2d-createPattern>createPattern</a>(in <a href=#htmlvideoelement>HTMLVideoElement</a> image, in DOMString repetition);
 
   // line caps/joins
-           attribute float <a href=#dom-context-2d-linewidth title=dom-context-2d-lineWidth>lineWidth</a>; // (default 1)
+           attribute double <a href=#dom-context-2d-linewidth title=dom-context-2d-lineWidth>lineWidth</a>; // (default 1)
            attribute DOMString <a href=#dom-context-2d-linecap title=dom-context-2d-lineCap>lineCap</a>; // "butt", "round", "square" (default "butt")
            attribute DOMString <a href=#dom-context-2d-linejoin title=dom-context-2d-lineJoin>lineJoin</a>; // "round", "bevel", "miter" (default "miter")
-           attribute float <a href=#dom-context-2d-miterlimit title=dom-context-2d-miterLimit>miterLimit</a>; // (default 10)
+           attribute double <a href=#dom-context-2d-miterlimit title=dom-context-2d-miterLimit>miterLimit</a>; // (default 10)
 
   // shadows
-           attribute float <a href=#dom-context-2d-shadowoffsetx title=dom-context-2d-shadowOffsetX>shadowOffsetX</a>; // (default 0)
-           attribute float <a href=#dom-context-2d-shadowoffsety title=dom-context-2d-shadowOffsetY>shadowOffsetY</a>; // (default 0)
-           attribute float <a href=#dom-context-2d-shadowblur title=dom-context-2d-shadowBlur>shadowBlur</a>; // (default 0)
+           attribute double <a href=#dom-context-2d-shadowoffsetx title=dom-context-2d-shadowOffsetX>shadowOffsetX</a>; // (default 0)
+           attribute double <a href=#dom-context-2d-shadowoffsety title=dom-context-2d-shadowOffsetY>shadowOffsetY</a>; // (default 0)
+           attribute double <a href=#dom-context-2d-shadowblur title=dom-context-2d-shadowBlur>shadowBlur</a>; // (default 0)
            attribute DOMString <a href=#dom-context-2d-shadowcolor title=dom-context-2d-shadowColor>shadowColor</a>; // (default transparent black)
 
   // rects
-  void <a href=#dom-context-2d-clearrect title=dom-context-2d-clearRect>clearRect</a>(in float x, in float y, in float w, in float h);
-  void <a href=#dom-context-2d-fillrect title=dom-context-2d-fillRect>fillRect</a>(in float x, in float y, in float w, in float h);
-  void <a href=#dom-context-2d-strokerect title=dom-context-2d-strokeRect>strokeRect</a>(in float x, in float y, in float w, in float h);
+  void <a href=#dom-context-2d-clearrect title=dom-context-2d-clearRect>clearRect</a>(in double x, in double y, in double w, in double h);
+  void <a href=#dom-context-2d-fillrect title=dom-context-2d-fillRect>fillRect</a>(in double x, in double y, in double w, in double h);
+  void <a href=#dom-context-2d-strokerect title=dom-context-2d-strokeRect>strokeRect</a>(in double x, in double y, in double w, in double h);
 
   // path API
   void <a href=#dom-context-2d-beginpath title=dom-context-2d-beginPath>beginPath</a>();
   void <a href=#dom-context-2d-closepath title=dom-context-2d-closePath>closePath</a>();
-  void <a href=#dom-context-2d-moveto title=dom-context-2d-moveTo>moveTo</a>(in float x, in float y);
-  void <a href=#dom-context-2d-lineto title=dom-context-2d-lineTo>lineTo</a>(in float x, in float y);
-  void <a href=#dom-context-2d-quadraticcurveto title=dom-context-2d-quadraticCurveTo>quadraticCurveTo</a>(in float cpx, in float cpy, in float x, in float y);
-  void <a href=#dom-context-2d-beziercurveto title=dom-context-2d-bezierCurveTo>bezierCurveTo</a>(in float cp1x, in float cp1y, in float cp2x, in float cp2y, in float x, in float y);
-  void <a href=#dom-context-2d-arcto title=dom-context-2d-arcTo>arcTo</a>(in float x1, in float y1, in float x2, in float y2, in float radius);
-  void <a href=#dom-context-2d-rect title=dom-context-2d-rect>rect</a>(in float x, in float y, in float w, in float h);
-  void <a href=#dom-context-2d-arc title=dom-context-2d-arc>arc</a>(in float x, in float y, in float radius, in float startAngle, in float endAngle, in boolean anticlockwise);
+  void <a href=#dom-context-2d-moveto title=dom-context-2d-moveTo>moveTo</a>(in double x, in double y);
+  void <a href=#dom-context-2d-lineto title=dom-context-2d-lineTo>lineTo</a>(in double x, in double y);
+  void <a href=#dom-context-2d-quadraticcurveto title=dom-context-2d-quadraticCurveTo>quadraticCurveTo</a>(in double cpx, in double cpy, in double x, in double y);
+  void <a href=#dom-context-2d-beziercurveto title=dom-context-2d-bezierCurveTo>bezierCurveTo</a>(in double cp1x, in double cp1y, in double cp2x, in double cp2y, in double x, in double y);
+  void <a href=#dom-context-2d-arcto title=dom-context-2d-arcTo>arcTo</a>(in double x1, in double y1, in double x2, in double y2, in double radius);
+  void <a href=#dom-context-2d-rect title=dom-context-2d-rect>rect</a>(in double x, in double y, in double w, in double h);
+  void <a href=#dom-context-2d-arc title=dom-context-2d-arc>arc</a>(in double x, in double y, in double radius, in double startAngle, in double endAngle, in boolean anticlockwise);
   void <a href=#dom-context-2d-fill title=dom-context-2d-fill>fill</a>();
   void <a href=#dom-context-2d-stroke title=dom-context-2d-stroke>stroke</a>();
   void <a href=#dom-context-2d-clip title=dom-context-2d-clip>clip</a>();
-  boolean <a href=#dom-context-2d-ispointinpath title=dom-context-2d-isPointInPath>isPointInPath</a>(in float x, in float y);
+  boolean <a href=#dom-context-2d-ispointinpath title=dom-context-2d-isPointInPath>isPointInPath</a>(in double x, in double y);
 
   // focus management
-  boolean <a href=#dom-context-2d-drawfocusring title=dom-context-2d-drawFocusRing>drawFocusRing</a>(in <a href=#element>Element</a> element, in float xCaret, in float yCaret, in optional boolean canDrawCustom);
+  boolean <a href=#dom-context-2d-drawfocusring title=dom-context-2d-drawFocusRing>drawFocusRing</a>(in <a href=#element>Element</a> element, in double xCaret, in double yCaret, in optional boolean canDrawCustom);
 
   // text
            attribute DOMString <a href=#dom-context-2d-font title=dom-context-2d-font>font</a>; // (default 10px sans-serif)
            attribute DOMString <a href=#dom-context-2d-textalign title=dom-context-2d-textAlign>textAlign</a>; // "start", "end", "left", "right", "center" (default: "start")
            attribute DOMString <a href=#dom-context-2d-textbaseline title=dom-context-2d-textBaseline>textBaseline</a>; // "top", "hanging", "middle", "alphabetic", "ideographic", "bottom" (default: "alphabetic")
-  void <a href=#dom-context-2d-filltext title=dom-context-2d-fillText>fillText</a>(in DOMString text, in float x, in float y, in optional float maxWidth);
-  void <a href=#dom-context-2d-stroketext title=dom-context-2d-strokeText>strokeText</a>(in DOMString text, in float x, in float y, in optional float maxWidth);<!-- v5DVT
-  void <span title="dom-context-2d-fillVerticalText">fillVerticalText</span>(in DOMString text, in float x, in float y, in optional float maxHeight);
-  void <span title="dom-context-2d-strokeVerticalText">strokeVerticalText</span>(in DOMString text, in float x, in float y, in optional float maxHeight); -->
+  void <a href=#dom-context-2d-filltext title=dom-context-2d-fillText>fillText</a>(in DOMString text, in double x, in double y, in optional double maxWidth);
+  void <a href=#dom-context-2d-stroketext title=dom-context-2d-strokeText>strokeText</a>(in DOMString text, in double x, in double y, in optional double maxWidth);<!-- v5DVT
+  void <span title="dom-context-2d-fillVerticalText">fillVerticalText</span>(in DOMString text, in double x, in double y, in optional double maxHeight);
+  void <span title="dom-context-2d-strokeVerticalText">strokeVerticalText</span>(in DOMString text, in double x, in double y, in optional double maxHeight); -->
   <a href=#textmetrics>TextMetrics</a> <a href=#dom-context-2d-measuretext title=dom-context-2d-measureText>measureText</a>(in DOMString text);
 
   // drawing images
-  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlimageelement>HTMLImageElement</a> image, in float dx, in float dy, in optional float dw, in float dh);
-  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlimageelement>HTMLImageElement</a> image, in float sx, in float sy, in float sw, in float sh, in float dx, in float dy, in float dw, in float dh);
-  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlcanvaselement>HTMLCanvasElement</a> image, in float dx, in float dy, in optional float dw, in float dh);
-  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlcanvaselement>HTMLCanvasElement</a> image, in float sx, in float sy, in float sw, in float sh, in float dx, in float dy, in float dw, in float dh);
-  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlvideoelement>HTMLVideoElement</a> image, in float dx, in float dy, in optional float dw, in float dh);
-  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlvideoelement>HTMLVideoElement</a> image, in float sx, in float sy, in float sw, in float sh, in float dx, in float dy, in float dw, in float dh);
+  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlimageelement>HTMLImageElement</a> image, in double dx, in double dy, in optional double dw, in double dh);
+  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlimageelement>HTMLImageElement</a> image, in double sx, in double sy, in double sw, in double sh, in double dx, in double dy, in double dw, in double dh);
+  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlcanvaselement>HTMLCanvasElement</a> image, in double dx, in double dy, in optional double dw, in double dh);
+  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlcanvaselement>HTMLCanvasElement</a> image, in double sx, in double sy, in double sw, in double sh, in double dx, in double dy, in double dw, in double dh);
+  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlvideoelement>HTMLVideoElement</a> image, in double dx, in double dy, in optional double dw, in double dh);
+  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlvideoelement>HTMLVideoElement</a> image, in double sx, in double sy, in double sw, in double sh, in double dx, in double dy, in double dw, in double dh);
 
   // pixel manipulation
-  <a href=#imagedata>ImageData</a> <a href=#dom-context-2d-createimagedata title=dom-context-2d-createImageData>createImageData</a>(in float sw, in float sh);
+  <a href=#imagedata>ImageData</a> <a href=#dom-context-2d-createimagedata title=dom-context-2d-createImageData>createImageData</a>(in double sw, in double sh);
   <a href=#imagedata>ImageData</a> <a href=#dom-context-2d-createimagedata title=dom-context-2d-createImageData>createImageData</a>(in <a href=#imagedata>ImageData</a> imagedata);
-  <a href=#imagedata>ImageData</a> <a href=#dom-context-2d-getimagedata title=dom-context-2d-getImageData>getImageData</a>(in float sx, in float sy, in float sw, in float sh);
-  void <a href=#dom-context-2d-putimagedata title=dom-context-2d-putImageData>putImageData</a>(in <a href=#imagedata>ImageData</a> imagedata, in float dx, in float dy, in optional float dirtyX, in float dirtyY, in float dirtyWidth, in float dirtyHeight);
+  <a href=#imagedata>ImageData</a> <a href=#dom-context-2d-getimagedata title=dom-context-2d-getImageData>getImageData</a>(in double sx, in double sy, in double sw, in double sh);
+  void <a href=#dom-context-2d-putimagedata title=dom-context-2d-putImageData>putImageData</a>(in <a href=#imagedata>ImageData</a> imagedata, in double dx, in double dy, in optional double dirtyX, in double dirtyY, in double dirtyWidth, in double dirtyHeight);
 };
 
 interface <dfn id=canvasgradient>CanvasGradient</dfn> {
   // opaque object
-  void <a href=#dom-canvasgradient-addcolorstop title=dom-canvasgradient-addColorStop>addColorStop</a>(in float offset, in DOMString color);
+  void <a href=#dom-canvasgradient-addcolorstop title=dom-canvasgradient-addColorStop>addColorStop</a>(in double offset, in DOMString color);
 };
 
 interface <dfn id=canvaspattern>CanvasPattern</dfn> {
@@ -30269,7 +30269,7 @@
 };
 
 interface <dfn id=textmetrics>TextMetrics</dfn> {
-  readonly attribute float <a href=#dom-textmetrics-width title=dom-textmetrics-width>width</a>;
+  readonly attribute double <a href=#dom-textmetrics-width title=dom-textmetrics-width>width</a>;
 };
 
 interface <dfn id=imagedata>ImageData</dfn> {
@@ -32498,11 +32498,14 @@
   <p>The source rectangle is the rectangle whose corners are the four
   points (<var title="">sx</var>, <var title="">sy</var>), (<span title=""><var title="">sx</var>+<var title="">sw</var></span>, <var title="">sy</var>), (<span title=""><var title="">sx</var>+<var title="">sw</var></span>, <span title=""><var title="">sy</var>+<var title="">sh</var></span>), (<var title="">sx</var>, <span title=""><var title="">sy</var>+<var title="">sh</var></span>).</p>
 
-  <p>If the source rectangle is not entirely within the source image,
-  or if one of the <var title="">sw</var> or <var title="">sh</var>
+  <p>If one of the <var title="">sw</var> or <var title="">sh</var>
   arguments is zero, the implementation must raise an
   <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception.</p>
 
+  <p>Pixels of the source rectangle that are not entirely within the
+  source image must be treated as transparent black.</p> <!-- see
+  CORE-32111 http://krijnhoetmer.nl/irc-logs/whatwg/20100818#l-737 -->
+
   <p>The destination rectangle is the rectangle whose corners are the
   four points (<var title="">dx</var>, <var title="">dy</var>),
   (<span title=""><var title="">dx</var>+<var title="">dw</var></span>, <var title="">dy</var>), (<span title=""><var title="">dx</var>+<var title="">dw</var></span>, <span title=""><var title="">dy</var>+<var title="">dh</var></span>), (<var title="">dx</var>, <span title=""><var title="">dy</var>+<var title="">dh</var></span>).</p>
@@ -44455,9 +44458,9 @@
    <dt>DOM interface:</dt>
    <dd>
 <pre class=idl>interface <dfn id=htmlprogresselement>HTMLProgressElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
-           attribute float <a href=#dom-progress-value title=dom-progress-value>value</a>;
-           attribute float <a href=#dom-progress-max title=dom-progress-max>max</a>;
-  readonly attribute float <a href=#dom-progress-position title=dom-progress-position>position</a>;
+           attribute double <a href=#dom-progress-value title=dom-progress-value>value</a>;
+           attribute double <a href=#dom-progress-max title=dom-progress-max>max</a>;
+  readonly attribute double <a href=#dom-progress-position title=dom-progress-position>position</a>;
   readonly attribute <a href=#htmlformelement>HTMLFormElement</a> <a href=#dom-fae-form title=dom-fae-form>form</a>;
   readonly attribute <a href=#nodelist>NodeList</a> <a href=#dom-lfe-labels title=dom-lfe-labels>labels</a>;
 };</pre>
@@ -44610,12 +44613,12 @@
    <dt>DOM interface:</dt>
    <dd>
 <pre class=idl>interface <dfn id=htmlmeterelement>HTMLMeterElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
-           attribute float <a href=#dom-meter-value title=dom-meter-value>value</a>;
-           attribute float <a href=#dom-meter-min title=dom-meter-min>min</a>;
-           attribute float <a href=#dom-meter-max title=dom-meter-max>max</a>;
-           attribute float <a href=#dom-meter-low title=dom-meter-low>low</a>;
-           attribute float <a href=#dom-meter-high title=dom-meter-high>high</a>;
-           attribute float <a href=#dom-meter-optimum title=dom-meter-optimum>optimum</a>;
+           attribute double <a href=#dom-meter-value title=dom-meter-value>value</a>;
+           attribute double <a href=#dom-meter-min title=dom-meter-min>min</a>;
+           attribute double <a href=#dom-meter-max title=dom-meter-max>max</a>;
+           attribute double <a href=#dom-meter-low title=dom-meter-low>low</a>;
+           attribute double <a href=#dom-meter-high title=dom-meter-high>high</a>;
+           attribute double <a href=#dom-meter-optimum title=dom-meter-optimum>optimum</a>;
   readonly attribute <a href=#htmlformelement>HTMLFormElement</a> <a href=#dom-fae-form title=dom-fae-form>form</a>;
   readonly attribute <a href=#nodelist>NodeList</a> <a href=#dom-lfe-labels title=dom-lfe-labels>labels</a>;
 };</pre>

Modified: index
===================================================================
--- index	2010-08-27 18:41:17 UTC (rev 5372)
+++ index	2010-08-27 19:18:11 UTC (rev 5373)
@@ -3214,12 +3214,12 @@
     specification. <a href=#refsWEBIDL>[WEBIDL]</a></p>
 
     <p id=float-nan>Except where otherwise specified, if an IDL
-    attribute that is a floating point number type (<code title="">float</code>) is assigned an Infinity or Not-a-Number
+    attribute that is a floating point number type (<code title="">double</code>) is assigned an Infinity or Not-a-Number
     (NaN) value, a <code><a href=#not_supported_err>NOT_SUPPORTED_ERR</a></code> exception must be
     raised.</p>
 
     <p>Except where otherwise specified, if a method with an argument
-    that is a floating point number type (<code title="">float</code>)
+    that is a floating point number type (<code title="">double</code>)
     is passed an Infinity or Not-a-Number (NaN) value, a
     <code><a href=#not_supported_err>NOT_SUPPORTED_ERR</a></code> exception must be raised.</p>
 
@@ -3945,14 +3945,14 @@
 
    <li><p><i>Conversion</i>: Let <var title="">S</var> be the set of
    finite IEEE 754 single-precision floating point values except
-   −0, but with two special values added: 2<sup title="">128</sup> and −2<sup title="">128</sup>.</li>
+   −0, but with two special values added: 2<sup title="">1024</sup> and −2<sup title="">1024</sup>.</li>
 
    <li><p>Let <var title="">rounded-value</var> be the number in <var title="">S</var> that is closest to <var title="">value</var>,
    selecting the number with an even significand if there are two
-   equally close values. (The two special values 2<sup title="">128</sup> and −2<sup title="">128</sup> are
+   equally close values. (The two special values 2<sup title="">1024</sup> and −2<sup title="">1024</sup> are
    considered to have even significands for this purpose.)</li>
 
-   <li><p>If <var title="">rounded-value</var> is 2<sup title="">128</sup> or −2<sup title="">128</sup>, return an
+   <li><p>If <var title="">rounded-value</var> is 2<sup title="">1024</sup> or −2<sup title="">1024</sup>, return an
    error.</li>
 
    <li><p>Return <var title="">rounded-value</var>.</li>
@@ -6600,7 +6600,7 @@
   value.</p>
 
   <p>If a reflecting IDL attribute is a floating point number type
-  (<code>float</code>), then, on getting, the content attribute must
+  (<code>double</code>), then, on getting, the content attribute must
   be parsed according to the <a href=#rules-for-parsing-floating-point-number-values>rules for parsing floating point
   number values</a>, and if that is successful, the resulting value
   must be returned. If, on the other hand, it fails, or if the
@@ -24196,7 +24196,7 @@
   const unsigned short <a href=#dom-media-network_no_source title=dom-media-NETWORK_NO_SOURCE>NETWORK_NO_SOURCE</a> = 3;
   readonly attribute unsigned short <a href=#dom-media-networkstate title=dom-media-networkState>networkState</a>;
            attribute DOMString <a href=#dom-media-preload title=dom-media-preload>preload</a>;
-<!--v3BUF  readonly attribute float <span title="dom-media-bufferingRate">bufferingRate</span>;
+<!--v3BUF  readonly attribute double <span title="dom-media-bufferingRate">bufferingRate</span>;
   readonly attribute boolean <span title="dom-media-bufferingThrottled">bufferingThrottled</span>;
 -->  readonly attribute <a href=#timeranges>TimeRanges</a> <a href=#dom-media-buffered title=dom-media-buffered>buffered</a>;
   void <a href=#dom-media-load title=dom-media-load>load</a>();
@@ -24212,13 +24212,13 @@
   readonly attribute boolean <a href=#dom-media-seeking title=dom-media-seeking>seeking</a>;
 
   // playback state
-           attribute float <a href=#dom-media-currenttime title=dom-media-currentTime>currentTime</a>;
-  readonly attribute float <a href=#dom-media-initialtime title=dom-media-initialTime>initialTime</a>;
-  readonly attribute float <a href=#dom-media-duration title=dom-media-duration>duration</a>;
+           attribute double <a href=#dom-media-currenttime title=dom-media-currentTime>currentTime</a>;
+  readonly attribute double <a href=#dom-media-initialtime title=dom-media-initialTime>initialTime</a>;
+  readonly attribute double <a href=#dom-media-duration title=dom-media-duration>duration</a>;
   readonly attribute <span>Date</span> <a href=#dom-media-startoffsettime title=dom-media-startOffsetTime>startOffsetTime</a>;
   readonly attribute boolean <a href=#dom-media-paused title=dom-media-paused>paused</a>;
-           attribute float <a href=#dom-media-defaultplaybackrate title=dom-media-defaultPlaybackRate>defaultPlaybackRate</a>;
-           attribute float <a href=#dom-media-playbackrate title=dom-media-playbackRate>playbackRate</a>;
+           attribute double <a href=#dom-media-defaultplaybackrate title=dom-media-defaultPlaybackRate>defaultPlaybackRate</a>;
+           attribute double <a href=#dom-media-playbackrate title=dom-media-playbackRate>playbackRate</a>;
   readonly attribute <a href=#timeranges>TimeRanges</a> <a href=#dom-media-played title=dom-media-played>played</a>;
   readonly attribute <a href=#timeranges>TimeRanges</a> <a href=#dom-media-seekable title=dom-media-seekable>seekable</a>;
   readonly attribute boolean <a href=#dom-media-ended title=dom-media-ended>ended</a>;
@@ -24229,7 +24229,7 @@
 
   // controls
            attribute boolean <a href=#dom-media-controls title=dom-media-controls>controls</a>;
-           attribute float <a href=#dom-media-volume title=dom-media-volume>volume</a>;
+           attribute double <a href=#dom-media-volume title=dom-media-volume>volume</a>;
            attribute boolean <a href=#dom-media-muted title=dom-media-muted>muted</a>;
 <!--TT-->
   // timed tracks
@@ -27707,13 +27707,13 @@
 
   </div>
 
-  <hr><pre class=idl>[<a href=#dom-timedtrackcue title=dom-TimedTrackCue>Constructor</a>(in DOMString id, in float startTime, in float endTime, in DOMString text, in optional DOMString settings, in optional DOMString voice, in optional boolean pauseOnExit)]
+  <hr><pre class=idl>[<a href=#dom-timedtrackcue title=dom-TimedTrackCue>Constructor</a>(in DOMString id, in double startTime, in double endTime, in DOMString text, in optional DOMString settings, in optional DOMString voice, in optional boolean pauseOnExit)]
 interface <dfn id=timedtrackcue>TimedTrackCue</dfn> {
   readonly attribute <a href=#timedtrack>TimedTrack</a> <a href=#dom-timedtrackcue-track title=dom-TimedTrackCue-track>track</a>;
   readonly attribute DOMString <a href=#dom-timedtrackcue-id title=dom-TimedTrackCue-id>id</a>;
 
-  readonly attribute float <a href=#dom-timedtrackcue-starttime title=dom-TimedTrackCue-startTime>startTime</a>;
-  readonly attribute float <a href=#dom-timedtrackcue-endtime title=dom-TimedTrackCue-endTime>endTime</a>;
+  readonly attribute double <a href=#dom-timedtrackcue-starttime title=dom-TimedTrackCue-startTime>startTime</a>;
+  readonly attribute double <a href=#dom-timedtrackcue-endtime title=dom-TimedTrackCue-endTime>endTime</a>;
   readonly attribute boolean <a href=#dom-timedtrackcue-pauseonexit title=dom-TimedTrackCue-pauseOnExit>pauseOnExit</a>;
 
   readonly attribute DOMString <a href=#dom-timedtrackcue-direction title=dom-TimedTrackCue-direction>direction</a>;
@@ -29505,8 +29505,8 @@
 
   <pre class=idl>interface <dfn id=timeranges>TimeRanges</dfn> {
   readonly attribute unsigned long <a href=#dom-timeranges-length title=dom-TimeRanges-length>length</a>;
-  float <a href=#dom-timeranges-start title=dom-TimeRanges-start>start</a>(in unsigned long index);
-  float <a href=#dom-timeranges-end title=dom-TimeRanges-end>end</a>(in unsigned long index);
+  double <a href=#dom-timeranges-start title=dom-TimeRanges-start>start</a>(in unsigned long index);
+  double <a href=#dom-timeranges-end title=dom-TimeRanges-end>end</a>(in unsigned long index);
 };</pre>
 
   <dl class=domintro><dt><var title="">media</var> . <code title=dom-TimeRanges-length><a href=#dom-timeranges-length>length</a></code></dt>
@@ -30093,18 +30093,18 @@
   // useful e.g. for when an image manipulation app uses <canvas> both for UI previews and the actual work
 -->
   // transformations (default transform is the identity matrix)
-  void <a href=#dom-context-2d-scale title=dom-context-2d-scale>scale</a>(in float x, in float y);
-  void <a href=#dom-context-2d-rotate title=dom-context-2d-rotate>rotate</a>(in float angle);
-  void <a href=#dom-context-2d-translate title=dom-context-2d-translate>translate</a>(in float x, in float y);
-  void <a href=#dom-context-2d-transform title=dom-context-2d-transform>transform</a>(in float a, in float b, in float c, in float d, in float e, in float f);
-  void <a href=#dom-context-2d-settransform title=dom-context-2d-setTransform>setTransform</a>(in float a, in float b, in float c, in float d, in float e, in float f);
+  void <a href=#dom-context-2d-scale title=dom-context-2d-scale>scale</a>(in double x, in double y);
+  void <a href=#dom-context-2d-rotate title=dom-context-2d-rotate>rotate</a>(in double angle);
+  void <a href=#dom-context-2d-translate title=dom-context-2d-translate>translate</a>(in double x, in double y);
+  void <a href=#dom-context-2d-transform title=dom-context-2d-transform>transform</a>(in double a, in double b, in double c, in double d, in double e, in double f);
+  void <a href=#dom-context-2d-settransform title=dom-context-2d-setTransform>setTransform</a>(in double a, in double b, in double c, in double d, in double e, in double f);
 <!--
   // v5 we've also received requests for:
   void skew(...);
   void reflect(...); // or mirror(...)
 -->
   // compositing
-           attribute float <a href=#dom-context-2d-globalalpha title=dom-context-2d-globalAlpha>globalAlpha</a>; // (default 1.0)
+           attribute double <a href=#dom-context-2d-globalalpha title=dom-context-2d-globalAlpha>globalAlpha</a>; // (default 1.0)
            attribute DOMString <a href=#dom-context-2d-globalcompositeoperation title=dom-context-2d-globalCompositeOperation>globalCompositeOperation</a>; // (default source-over)
 <!--
   // v5 we've also received requests for:
@@ -30118,75 +30118,75 @@
   // colors and styles
            attribute any <a href=#dom-context-2d-strokestyle title=dom-context-2d-strokeStyle>strokeStyle</a>; // (default black)
            attribute any <a href=#dom-context-2d-fillstyle title=dom-context-2d-fillStyle>fillStyle</a>; // (default black)
-  <a href=#canvasgradient>CanvasGradient</a> <a href=#dom-context-2d-createlineargradient title=dom-context-2d-createLinearGradient>createLinearGradient</a>(in float x0, in float y0, in float x1, in float y1);
-  <a href=#canvasgradient>CanvasGradient</a> <a href=#dom-context-2d-createradialgradient title=dom-context-2d-createRadialGradient>createRadialGradient</a>(in float x0, in float y0, in float r0, in float x1, in float y1, in float r1);
+  <a href=#canvasgradient>CanvasGradient</a> <a href=#dom-context-2d-createlineargradient title=dom-context-2d-createLinearGradient>createLinearGradient</a>(in double x0, in double y0, in double x1, in double y1);
+  <a href=#canvasgradient>CanvasGradient</a> <a href=#dom-context-2d-createradialgradient title=dom-context-2d-createRadialGradient>createRadialGradient</a>(in double x0, in double y0, in double r0, in double x1, in double y1, in double r1);
   <a href=#canvaspattern>CanvasPattern</a> <a href=#dom-context-2d-createpattern title=dom-context-2d-createPattern>createPattern</a>(in <a href=#htmlimageelement>HTMLImageElement</a> image, in DOMString repetition);
   <a href=#canvaspattern>CanvasPattern</a> <a href=#dom-context-2d-createpattern title=dom-context-2d-createPattern>createPattern</a>(in <a href=#htmlcanvaselement>HTMLCanvasElement</a> image, in DOMString repetition);
   <a href=#canvaspattern>CanvasPattern</a> <a href=#dom-context-2d-createpattern title=dom-context-2d-createPattern>createPattern</a>(in <a href=#htmlvideoelement>HTMLVideoElement</a> image, in DOMString repetition);
 
   // line caps/joins
-           attribute float <a href=#dom-context-2d-linewidth title=dom-context-2d-lineWidth>lineWidth</a>; // (default 1)
+           attribute double <a href=#dom-context-2d-linewidth title=dom-context-2d-lineWidth>lineWidth</a>; // (default 1)
            attribute DOMString <a href=#dom-context-2d-linecap title=dom-context-2d-lineCap>lineCap</a>; // "butt", "round", "square" (default "butt")
            attribute DOMString <a href=#dom-context-2d-linejoin title=dom-context-2d-lineJoin>lineJoin</a>; // "round", "bevel", "miter" (default "miter")
-           attribute float <a href=#dom-context-2d-miterlimit title=dom-context-2d-miterLimit>miterLimit</a>; // (default 10)
+           attribute double <a href=#dom-context-2d-miterlimit title=dom-context-2d-miterLimit>miterLimit</a>; // (default 10)
 
   // shadows
-           attribute float <a href=#dom-context-2d-shadowoffsetx title=dom-context-2d-shadowOffsetX>shadowOffsetX</a>; // (default 0)
-           attribute float <a href=#dom-context-2d-shadowoffsety title=dom-context-2d-shadowOffsetY>shadowOffsetY</a>; // (default 0)
-           attribute float <a href=#dom-context-2d-shadowblur title=dom-context-2d-shadowBlur>shadowBlur</a>; // (default 0)
+           attribute double <a href=#dom-context-2d-shadowoffsetx title=dom-context-2d-shadowOffsetX>shadowOffsetX</a>; // (default 0)
+           attribute double <a href=#dom-context-2d-shadowoffsety title=dom-context-2d-shadowOffsetY>shadowOffsetY</a>; // (default 0)
+           attribute double <a href=#dom-context-2d-shadowblur title=dom-context-2d-shadowBlur>shadowBlur</a>; // (default 0)
            attribute DOMString <a href=#dom-context-2d-shadowcolor title=dom-context-2d-shadowColor>shadowColor</a>; // (default transparent black)
 
   // rects
-  void <a href=#dom-context-2d-clearrect title=dom-context-2d-clearRect>clearRect</a>(in float x, in float y, in float w, in float h);
-  void <a href=#dom-context-2d-fillrect title=dom-context-2d-fillRect>fillRect</a>(in float x, in float y, in float w, in float h);
-  void <a href=#dom-context-2d-strokerect title=dom-context-2d-strokeRect>strokeRect</a>(in float x, in float y, in float w, in float h);
+  void <a href=#dom-context-2d-clearrect title=dom-context-2d-clearRect>clearRect</a>(in double x, in double y, in double w, in double h);
+  void <a href=#dom-context-2d-fillrect title=dom-context-2d-fillRect>fillRect</a>(in double x, in double y, in double w, in double h);
+  void <a href=#dom-context-2d-strokerect title=dom-context-2d-strokeRect>strokeRect</a>(in double x, in double y, in double w, in double h);
 
   // path API
   void <a href=#dom-context-2d-beginpath title=dom-context-2d-beginPath>beginPath</a>();
   void <a href=#dom-context-2d-closepath title=dom-context-2d-closePath>closePath</a>();
-  void <a href=#dom-context-2d-moveto title=dom-context-2d-moveTo>moveTo</a>(in float x, in float y);
-  void <a href=#dom-context-2d-lineto title=dom-context-2d-lineTo>lineTo</a>(in float x, in float y);
-  void <a href=#dom-context-2d-quadraticcurveto title=dom-context-2d-quadraticCurveTo>quadraticCurveTo</a>(in float cpx, in float cpy, in float x, in float y);
-  void <a href=#dom-context-2d-beziercurveto title=dom-context-2d-bezierCurveTo>bezierCurveTo</a>(in float cp1x, in float cp1y, in float cp2x, in float cp2y, in float x, in float y);
-  void <a href=#dom-context-2d-arcto title=dom-context-2d-arcTo>arcTo</a>(in float x1, in float y1, in float x2, in float y2, in float radius);
-  void <a href=#dom-context-2d-rect title=dom-context-2d-rect>rect</a>(in float x, in float y, in float w, in float h);
-  void <a href=#dom-context-2d-arc title=dom-context-2d-arc>arc</a>(in float x, in float y, in float radius, in float startAngle, in float endAngle, in boolean anticlockwise);
+  void <a href=#dom-context-2d-moveto title=dom-context-2d-moveTo>moveTo</a>(in double x, in double y);
+  void <a href=#dom-context-2d-lineto title=dom-context-2d-lineTo>lineTo</a>(in double x, in double y);
+  void <a href=#dom-context-2d-quadraticcurveto title=dom-context-2d-quadraticCurveTo>quadraticCurveTo</a>(in double cpx, in double cpy, in double x, in double y);
+  void <a href=#dom-context-2d-beziercurveto title=dom-context-2d-bezierCurveTo>bezierCurveTo</a>(in double cp1x, in double cp1y, in double cp2x, in double cp2y, in double x, in double y);
+  void <a href=#dom-context-2d-arcto title=dom-context-2d-arcTo>arcTo</a>(in double x1, in double y1, in double x2, in double y2, in double radius);
+  void <a href=#dom-context-2d-rect title=dom-context-2d-rect>rect</a>(in double x, in double y, in double w, in double h);
+  void <a href=#dom-context-2d-arc title=dom-context-2d-arc>arc</a>(in double x, in double y, in double radius, in double startAngle, in double endAngle, in boolean anticlockwise);
   void <a href=#dom-context-2d-fill title=dom-context-2d-fill>fill</a>();
   void <a href=#dom-context-2d-stroke title=dom-context-2d-stroke>stroke</a>();
   void <a href=#dom-context-2d-clip title=dom-context-2d-clip>clip</a>();
-  boolean <a href=#dom-context-2d-ispointinpath title=dom-context-2d-isPointInPath>isPointInPath</a>(in float x, in float y);
+  boolean <a href=#dom-context-2d-ispointinpath title=dom-context-2d-isPointInPath>isPointInPath</a>(in double x, in double y);
 
   // focus management
-  boolean <a href=#dom-context-2d-drawfocusring title=dom-context-2d-drawFocusRing>drawFocusRing</a>(in <a href=#element>Element</a> element, in float xCaret, in float yCaret, in optional boolean canDrawCustom);
+  boolean <a href=#dom-context-2d-drawfocusring title=dom-context-2d-drawFocusRing>drawFocusRing</a>(in <a href=#element>Element</a> element, in double xCaret, in double yCaret, in optional boolean canDrawCustom);
 
   // text
            attribute DOMString <a href=#dom-context-2d-font title=dom-context-2d-font>font</a>; // (default 10px sans-serif)
            attribute DOMString <a href=#dom-context-2d-textalign title=dom-context-2d-textAlign>textAlign</a>; // "start", "end", "left", "right", "center" (default: "start")
            attribute DOMString <a href=#dom-context-2d-textbaseline title=dom-context-2d-textBaseline>textBaseline</a>; // "top", "hanging", "middle", "alphabetic", "ideographic", "bottom" (default: "alphabetic")
-  void <a href=#dom-context-2d-filltext title=dom-context-2d-fillText>fillText</a>(in DOMString text, in float x, in float y, in optional float maxWidth);
-  void <a href=#dom-context-2d-stroketext title=dom-context-2d-strokeText>strokeText</a>(in DOMString text, in float x, in float y, in optional float maxWidth);<!-- v5DVT
-  void <span title="dom-context-2d-fillVerticalText">fillVerticalText</span>(in DOMString text, in float x, in float y, in optional float maxHeight);
-  void <span title="dom-context-2d-strokeVerticalText">strokeVerticalText</span>(in DOMString text, in float x, in float y, in optional float maxHeight); -->
+  void <a href=#dom-context-2d-filltext title=dom-context-2d-fillText>fillText</a>(in DOMString text, in double x, in double y, in optional double maxWidth);
+  void <a href=#dom-context-2d-stroketext title=dom-context-2d-strokeText>strokeText</a>(in DOMString text, in double x, in double y, in optional double maxWidth);<!-- v5DVT
+  void <span title="dom-context-2d-fillVerticalText">fillVerticalText</span>(in DOMString text, in double x, in double y, in optional double maxHeight);
+  void <span title="dom-context-2d-strokeVerticalText">strokeVerticalText</span>(in DOMString text, in double x, in double y, in optional double maxHeight); -->
   <a href=#textmetrics>TextMetrics</a> <a href=#dom-context-2d-measuretext title=dom-context-2d-measureText>measureText</a>(in DOMString text);
 
   // drawing images
-  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlimageelement>HTMLImageElement</a> image, in float dx, in float dy, in optional float dw, in float dh);
-  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlimageelement>HTMLImageElement</a> image, in float sx, in float sy, in float sw, in float sh, in float dx, in float dy, in float dw, in float dh);
-  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlcanvaselement>HTMLCanvasElement</a> image, in float dx, in float dy, in optional float dw, in float dh);
-  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlcanvaselement>HTMLCanvasElement</a> image, in float sx, in float sy, in float sw, in float sh, in float dx, in float dy, in float dw, in float dh);
-  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlvideoelement>HTMLVideoElement</a> image, in float dx, in float dy, in optional float dw, in float dh);
-  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlvideoelement>HTMLVideoElement</a> image, in float sx, in float sy, in float sw, in float sh, in float dx, in float dy, in float dw, in float dh);
+  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlimageelement>HTMLImageElement</a> image, in double dx, in double dy, in optional double dw, in double dh);
+  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlimageelement>HTMLImageElement</a> image, in double sx, in double sy, in double sw, in double sh, in double dx, in double dy, in double dw, in double dh);
+  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlcanvaselement>HTMLCanvasElement</a> image, in double dx, in double dy, in optional double dw, in double dh);
+  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlcanvaselement>HTMLCanvasElement</a> image, in double sx, in double sy, in double sw, in double sh, in double dx, in double dy, in double dw, in double dh);
+  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlvideoelement>HTMLVideoElement</a> image, in double dx, in double dy, in optional double dw, in double dh);
+  void <a href=#dom-context-2d-drawimage title=dom-context-2d-drawImage>drawImage</a>(in <a href=#htmlvideoelement>HTMLVideoElement</a> image, in double sx, in double sy, in double sw, in double sh, in double dx, in double dy, in double dw, in double dh);
 
   // pixel manipulation
-  <a href=#imagedata>ImageData</a> <a href=#dom-context-2d-createimagedata title=dom-context-2d-createImageData>createImageData</a>(in float sw, in float sh);
+  <a href=#imagedata>ImageData</a> <a href=#dom-context-2d-createimagedata title=dom-context-2d-createImageData>createImageData</a>(in double sw, in double sh);
   <a href=#imagedata>ImageData</a> <a href=#dom-context-2d-createimagedata title=dom-context-2d-createImageData>createImageData</a>(in <a href=#imagedata>ImageData</a> imagedata);
-  <a href=#imagedata>ImageData</a> <a href=#dom-context-2d-getimagedata title=dom-context-2d-getImageData>getImageData</a>(in float sx, in float sy, in float sw, in float sh);
-  void <a href=#dom-context-2d-putimagedata title=dom-context-2d-putImageData>putImageData</a>(in <a href=#imagedata>ImageData</a> imagedata, in float dx, in float dy, in optional float dirtyX, in float dirtyY, in float dirtyWidth, in float dirtyHeight);
+  <a href=#imagedata>ImageData</a> <a href=#dom-context-2d-getimagedata title=dom-context-2d-getImageData>getImageData</a>(in double sx, in double sy, in double sw, in double sh);
+  void <a href=#dom-context-2d-putimagedata title=dom-context-2d-putImageData>putImageData</a>(in <a href=#imagedata>ImageData</a> imagedata, in double dx, in double dy, in optional double dirtyX, in double dirtyY, in double dirtyWidth, in double dirtyHeight);
 };
 
 interface <dfn id=canvasgradient>CanvasGradient</dfn> {
   // opaque object
-  void <a href=#dom-canvasgradient-addcolorstop title=dom-canvasgradient-addColorStop>addColorStop</a>(in float offset, in DOMString color);
+  void <a href=#dom-canvasgradient-addcolorstop title=dom-canvasgradient-addColorStop>addColorStop</a>(in double offset, in DOMString color);
 };
 
 interface <dfn id=canvaspattern>CanvasPattern</dfn> {
@@ -30194,7 +30194,7 @@
 };
 
 interface <dfn id=textmetrics>TextMetrics</dfn> {
-  readonly attribute float <a href=#dom-textmetrics-width title=dom-textmetrics-width>width</a>;
+  readonly attribute double <a href=#dom-textmetrics-width title=dom-textmetrics-width>width</a>;
 };
 
 interface <dfn id=imagedata>ImageData</dfn> {
@@ -32423,11 +32423,14 @@
   <p>The source rectangle is the rectangle whose corners are the four
   points (<var title="">sx</var>, <var title="">sy</var>), (<span title=""><var title="">sx</var>+<var title="">sw</var></span>, <var title="">sy</var>), (<span title=""><var title="">sx</var>+<var title="">sw</var></span>, <span title=""><var title="">sy</var>+<var title="">sh</var></span>), (<var title="">sx</var>, <span title=""><var title="">sy</var>+<var title="">sh</var></span>).</p>
 
-  <p>If the source rectangle is not entirely within the source image,
-  or if one of the <var title="">sw</var> or <var title="">sh</var>
+  <p>If one of the <var title="">sw</var> or <var title="">sh</var>
   arguments is zero, the implementation must raise an
   <code><a href=#index_size_err>INDEX_SIZE_ERR</a></code> exception.</p>
 
+  <p>Pixels of the source rectangle that are not entirely within the
+  source image must be treated as transparent black.</p> <!-- see
+  CORE-32111 http://krijnhoetmer.nl/irc-logs/whatwg/20100818#l-737 -->
+
   <p>The destination rectangle is the rectangle whose corners are the
   four points (<var title="">dx</var>, <var title="">dy</var>),
   (<span title=""><var title="">dx</var>+<var title="">dw</var></span>, <var title="">dy</var>), (<span title=""><var title="">dx</var>+<var title="">dw</var></span>, <span title=""><var title="">dy</var>+<var title="">dh</var></span>), (<var title="">dx</var>, <span title=""><var title="">dy</var>+<var title="">dh</var></span>).</p>
@@ -44380,9 +44383,9 @@
    <dt>DOM interface:</dt>
    <dd>
 <pre class=idl>interface <dfn id=htmlprogresselement>HTMLProgressElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
-           attribute float <a href=#dom-progress-value title=dom-progress-value>value</a>;
-           attribute float <a href=#dom-progress-max title=dom-progress-max>max</a>;
-  readonly attribute float <a href=#dom-progress-position title=dom-progress-position>position</a>;
+           attribute double <a href=#dom-progress-value title=dom-progress-value>value</a>;
+           attribute double <a href=#dom-progress-max title=dom-progress-max>max</a>;
+  readonly attribute double <a href=#dom-progress-position title=dom-progress-position>position</a>;
   readonly attribute <a href=#htmlformelement>HTMLFormElement</a> <a href=#dom-fae-form title=dom-fae-form>form</a>;
   readonly attribute <a href=#nodelist>NodeList</a> <a href=#dom-lfe-labels title=dom-lfe-labels>labels</a>;
 };</pre>
@@ -44535,12 +44538,12 @@
    <dt>DOM interface:</dt>
    <dd>
 <pre class=idl>interface <dfn id=htmlmeterelement>HTMLMeterElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
-           attribute float <a href=#dom-meter-value title=dom-meter-value>value</a>;
-           attribute float <a href=#dom-meter-min title=dom-meter-min>min</a>;
-           attribute float <a href=#dom-meter-max title=dom-meter-max>max</a>;
-           attribute float <a href=#dom-meter-low title=dom-meter-low>low</a>;
-           attribute float <a href=#dom-meter-high title=dom-meter-high>high</a>;
-           attribute float <a href=#dom-meter-optimum title=dom-meter-optimum>optimum</a>;
+           attribute double <a href=#dom-meter-value title=dom-meter-value>value</a>;
+           attribute double <a href=#dom-meter-min title=dom-meter-min>min</a>;
+           attribute double <a href=#dom-meter-max title=dom-meter-max>max</a>;
+           attribute double <a href=#dom-meter-low title=dom-meter-low>low</a>;
+           attribute double <a href=#dom-meter-high title=dom-meter-high>high</a>;
+           attribute double <a href=#dom-meter-optimum title=dom-meter-optimum>optimum</a>;
   readonly attribute <a href=#htmlformelement>HTMLFormElement</a> <a href=#dom-fae-form title=dom-fae-form>form</a>;
   readonly attribute <a href=#nodelist>NodeList</a> <a href=#dom-lfe-labels title=dom-lfe-labels>labels</a>;
 };</pre>

Modified: source
===================================================================
--- source	2010-08-27 18:41:17 UTC (rev 5372)
+++ source	2010-08-27 19:18:11 UTC (rev 5373)
@@ -2203,12 +2203,12 @@
 
     <p id="float-nan">Except where otherwise specified, if an IDL
     attribute that is a floating point number type (<code
-    title="">float</code>) is assigned an Infinity or Not-a-Number
+    title="">double</code>) is assigned an Infinity or Not-a-Number
     (NaN) value, a <code>NOT_SUPPORTED_ERR</code> exception must be
     raised.</p>
 
     <p>Except where otherwise specified, if a method with an argument
-    that is a floating point number type (<code title="">float</code>)
+    that is a floating point number type (<code title="">double</code>)
     is passed an Infinity or Not-a-Number (NaN) value, a
     <code>NOT_SUPPORTED_ERR</code> exception must be raised.</p>
 
@@ -3059,17 +3059,17 @@
    <li><p><i>Conversion</i>: Let <var title="">S</var> be the set of
    finite IEEE 754 single-precision floating point values except
    &#x2212;0, but with two special values added: 2<sup
-   title="">128</sup> and &#x2212;2<sup title="">128</sup>.</p></li>
+   title="">1024</sup> and &#x2212;2<sup title="">1024</sup>.</p></li>
 
    <li><p>Let <var title="">rounded-value</var> be the number in <var
    title="">S</var> that is closest to <var title="">value</var>,
    selecting the number with an even significand if there are two
    equally close values. (The two special values 2<sup
-   title="">128</sup> and &#x2212;2<sup title="">128</sup> are
+   title="">1024</sup> and &#x2212;2<sup title="">1024</sup> are
    considered to have even significands for this purpose.)</p></li>
 
    <li><p>If <var title="">rounded-value</var> is 2<sup
-   title="">128</sup> or &#x2212;2<sup title="">128</sup>, return an
+   title="">1024</sup> or &#x2212;2<sup title="">1024</sup>, return an
    error.</p></li>
 
    <li><p>Return <var title="">rounded-value</var>.</p></li>
@@ -6280,7 +6280,7 @@
   value.</p>
 
   <p>If a reflecting IDL attribute is a floating point number type
-  (<code>float</code>), then, on getting, the content attribute must
+  (<code>double</code>), then, on getting, the content attribute must
   be parsed according to the <span>rules for parsing floating point
   number values</span>, and if that is successful, the resulting value
   must be returned. If, on the other hand, it fails, or if the
@@ -26006,7 +26006,7 @@
   const unsigned short <span title="dom-media-NETWORK_NO_SOURCE">NETWORK_NO_SOURCE</span> = 3;
   readonly attribute unsigned short <span title="dom-media-networkState">networkState</span>;
            attribute DOMString <span title="dom-media-preload">preload</span>;
-<!--v3BUF  readonly attribute float <span title="dom-media-bufferingRate">bufferingRate</span>;
+<!--v3BUF  readonly attribute double <span title="dom-media-bufferingRate">bufferingRate</span>;
   readonly attribute boolean <span title="dom-media-bufferingThrottled">bufferingThrottled</span>;
 -->  readonly attribute <span>TimeRanges</span> <span title="dom-media-buffered">buffered</span>;
   void <span title="dom-media-load">load</span>();
@@ -26022,13 +26022,13 @@
   readonly attribute boolean <span title="dom-media-seeking">seeking</span>;
 
   // playback state
-           attribute float <span title="dom-media-currentTime">currentTime</span>;
-  readonly attribute float <span title="dom-media-initialTime">initialTime</span>;
-  readonly attribute float <span title="dom-media-duration">duration</span>;
+           attribute double <span title="dom-media-currentTime">currentTime</span>;
+  readonly attribute double <span title="dom-media-initialTime">initialTime</span>;
+  readonly attribute double <span title="dom-media-duration">duration</span>;
   readonly attribute <span>Date</span> <span title="dom-media-startOffsetTime">startOffsetTime</span>;
   readonly attribute boolean <span title="dom-media-paused">paused</span>;
-           attribute float <span title="dom-media-defaultPlaybackRate">defaultPlaybackRate</span>;
-           attribute float <span title="dom-media-playbackRate">playbackRate</span>;
+           attribute double <span title="dom-media-defaultPlaybackRate">defaultPlaybackRate</span>;
+           attribute double <span title="dom-media-playbackRate">playbackRate</span>;
   readonly attribute <span>TimeRanges</span> <span title="dom-media-played">played</span>;
   readonly attribute <span>TimeRanges</span> <span title="dom-media-seekable">seekable</span>;
   readonly attribute boolean <span title="dom-media-ended">ended</span>;
@@ -26039,7 +26039,7 @@
 
   // controls
            attribute boolean <span title="dom-media-controls">controls</span>;
-           attribute float <span title="dom-media-volume">volume</span>;
+           attribute double <span title="dom-media-volume">volume</span>;
            attribute boolean <span title="dom-media-muted">muted</span>;
 <!--END w3c-html--><!--TT-->
   // timed tracks
@@ -30140,13 +30140,13 @@
 
   <hr>
 
-  <pre class="idl">[<span title="dom-TimedTrackCue">Constructor</span>(in DOMString id, in float startTime, in float endTime, in DOMString text, in optional DOMString settings, in optional DOMString voice, in optional boolean pauseOnExit)]
+  <pre class="idl">[<span title="dom-TimedTrackCue">Constructor</span>(in DOMString id, in double startTime, in double endTime, in DOMString text, in optional DOMString settings, in optional DOMString voice, in optional boolean pauseOnExit)]
 interface <dfn>TimedTrackCue</dfn> {
   readonly attribute <span>TimedTrack</span> <span title="dom-TimedTrackCue-track">track</span>;
   readonly attribute DOMString <span title="dom-TimedTrackCue-id">id</span>;
 
-  readonly attribute float <span title="dom-TimedTrackCue-startTime">startTime</span>;
-  readonly attribute float <span title="dom-TimedTrackCue-endTime">endTime</span>;
+  readonly attribute double <span title="dom-TimedTrackCue-startTime">startTime</span>;
+  readonly attribute double <span title="dom-TimedTrackCue-endTime">endTime</span>;
   readonly attribute boolean <span title="dom-TimedTrackCue-pauseOnExit">pauseOnExit</span>;
 
   readonly attribute DOMString <span title="dom-TimedTrackCue-direction">direction</span>;
@@ -32308,8 +32308,8 @@
 
   <pre class="idl">interface <dfn>TimeRanges</dfn> {
   readonly attribute unsigned long <span title="dom-TimeRanges-length">length</span>;
-  float <span title="dom-TimeRanges-start">start</span>(in unsigned long index);
-  float <span title="dom-TimeRanges-end">end</span>(in unsigned long index);
+  double <span title="dom-TimeRanges-start">start</span>(in unsigned long index);
+  double <span title="dom-TimeRanges-end">end</span>(in unsigned long index);
 };</pre>
 
   <dl class="domintro">
@@ -33016,18 +33016,18 @@
   // useful e.g. for when an image manipulation app uses <canvas> both for UI previews and the actual work
 -->
   // transformations (default transform is the identity matrix)
-  void <span title="dom-context-2d-scale">scale</span>(in float x, in float y);
-  void <span title="dom-context-2d-rotate">rotate</span>(in float angle);
-  void <span title="dom-context-2d-translate">translate</span>(in float x, in float y);
-  void <span title="dom-context-2d-transform">transform</span>(in float a, in float b, in float c, in float d, in float e, in float f);
-  void <span title="dom-context-2d-setTransform">setTransform</span>(in float a, in float b, in float c, in float d, in float e, in float f);
+  void <span title="dom-context-2d-scale">scale</span>(in double x, in double y);
+  void <span title="dom-context-2d-rotate">rotate</span>(in double angle);
+  void <span title="dom-context-2d-translate">translate</span>(in double x, in double y);
+  void <span title="dom-context-2d-transform">transform</span>(in double a, in double b, in double c, in double d, in double e, in double f);
+  void <span title="dom-context-2d-setTransform">setTransform</span>(in double a, in double b, in double c, in double d, in double e, in double f);
 <!--
   // v5 we've also received requests for:
   void skew(...);
   void reflect(...); // or mirror(...)
 -->
   // compositing
-           attribute float <span title="dom-context-2d-globalAlpha">globalAlpha</span>; // (default 1.0)
+           attribute double <span title="dom-context-2d-globalAlpha">globalAlpha</span>; // (default 1.0)
            attribute DOMString <span title="dom-context-2d-globalCompositeOperation">globalCompositeOperation</span>; // (default source-over)
 <!--
   // v5 we've also received requests for:
@@ -33041,75 +33041,75 @@
   // colors and styles
            attribute any <span title="dom-context-2d-strokeStyle">strokeStyle</span>; // (default black)
            attribute any <span title="dom-context-2d-fillStyle">fillStyle</span>; // (default black)
-  <span>CanvasGradient</span> <span title="dom-context-2d-createLinearGradient">createLinearGradient</span>(in float x0, in float y0, in float x1, in float y1);
-  <span>CanvasGradient</span> <span title="dom-context-2d-createRadialGradient">createRadialGradient</span>(in float x0, in float y0, in float r0, in float x1, in float y1, in float r1);
+  <span>CanvasGradient</span> <span title="dom-context-2d-createLinearGradient">createLinearGradient</span>(in double x0, in double y0, in double x1, in double y1);
+  <span>CanvasGradient</span> <span title="dom-context-2d-createRadialGradient">createRadialGradient</span>(in double x0, in double y0, in double r0, in double x1, in double y1, in double r1);
   <span>CanvasPattern</span> <span title="dom-context-2d-createPattern">createPattern</span>(in <span>HTMLImageElement</span> image, in DOMString repetition);
   <span>CanvasPattern</span> <span title="dom-context-2d-createPattern">createPattern</span>(in <span>HTMLCanvasElement</span> image, in DOMString repetition);
   <span>CanvasPattern</span> <span title="dom-context-2d-createPattern">createPattern</span>(in <span>HTMLVideoElement</span> image, in DOMString repetition);
 
   // line caps/joins
-           attribute float <span title="dom-context-2d-lineWidth">lineWidth</span>; // (default 1)
+           attribute double <span title="dom-context-2d-lineWidth">lineWidth</span>; // (default 1)
            attribute DOMString <span title="dom-context-2d-lineCap">lineCap</span>; // "butt", "round", "square" (default "butt")
            attribute DOMString <span title="dom-context-2d-lineJoin">lineJoin</span>; // "round", "bevel", "miter" (default "miter")
-           attribute float <span title="dom-context-2d-miterLimit">miterLimit</span>; // (default 10)
+           attribute double <span title="dom-context-2d-miterLimit">miterLimit</span>; // (default 10)
 
   // shadows
-           attribute float <span title="dom-context-2d-shadowOffsetX">shadowOffsetX</span>; // (default 0)
-           attribute float <span title="dom-context-2d-shadowOffsetY">shadowOffsetY</span>; // (default 0)
-           attribute float <span title="dom-context-2d-shadowBlur">shadowBlur</span>; // (default 0)
+           attribute double <span title="dom-context-2d-shadowOffsetX">shadowOffsetX</span>; // (default 0)
+           attribute double <span title="dom-context-2d-shadowOffsetY">shadowOffsetY</span>; // (default 0)
+           attribute double <span title="dom-context-2d-shadowBlur">shadowBlur</span>; // (default 0)
            attribute DOMString <span title="dom-context-2d-shadowColor">shadowColor</span>; // (default transparent black)
 
   // rects
-  void <span title="dom-context-2d-clearRect">clearRect</span>(in float x, in float y, in float w, in float h);
-  void <span title="dom-context-2d-fillRect">fillRect</span>(in float x, in float y, in float w, in float h);
-  void <span title="dom-context-2d-strokeRect">strokeRect</span>(in float x, in float y, in float w, in float h);
+  void <span title="dom-context-2d-clearRect">clearRect</span>(in double x, in double y, in double w, in double h);
+  void <span title="dom-context-2d-fillRect">fillRect</span>(in double x, in double y, in double w, in double h);
+  void <span title="dom-context-2d-strokeRect">strokeRect</span>(in double x, in double y, in double w, in double h);
 
   // path API
   void <span title="dom-context-2d-beginPath">beginPath</span>();
   void <span title="dom-context-2d-closePath">closePath</span>();
-  void <span title="dom-context-2d-moveTo">moveTo</span>(in float x, in float y);
-  void <span title="dom-context-2d-lineTo">lineTo</span>(in float x, in float y);
-  void <span title="dom-context-2d-quadraticCurveTo">quadraticCurveTo</span>(in float cpx, in float cpy, in float x, in float y);
-  void <span title="dom-context-2d-bezierCurveTo">bezierCurveTo</span>(in float cp1x, in float cp1y, in float cp2x, in float cp2y, in float x, in float y);
-  void <span title="dom-context-2d-arcTo">arcTo</span>(in float x1, in float y1, in float x2, in float y2, in float radius);
-  void <span title="dom-context-2d-rect">rect</span>(in float x, in float y, in float w, in float h);
-  void <span title="dom-context-2d-arc">arc</span>(in float x, in float y, in float radius, in float startAngle, in float endAngle, in boolean anticlockwise);
+  void <span title="dom-context-2d-moveTo">moveTo</span>(in double x, in double y);
+  void <span title="dom-context-2d-lineTo">lineTo</span>(in double x, in double y);
+  void <span title="dom-context-2d-quadraticCurveTo">quadraticCurveTo</span>(in double cpx, in double cpy, in double x, in double y);
+  void <span title="dom-context-2d-bezierCurveTo">bezierCurveTo</span>(in double cp1x, in double cp1y, in double cp2x, in double cp2y, in double x, in double y);
+  void <span title="dom-context-2d-arcTo">arcTo</span>(in double x1, in double y1, in double x2, in double y2, in double radius);
+  void <span title="dom-context-2d-rect">rect</span>(in double x, in double y, in double w, in double h);
+  void <span title="dom-context-2d-arc">arc</span>(in double x, in double y, in double radius, in double startAngle, in double endAngle, in boolean anticlockwise);
   void <span title="dom-context-2d-fill">fill</span>();
   void <span title="dom-context-2d-stroke">stroke</span>();
   void <span title="dom-context-2d-clip">clip</span>();
-  boolean <span title="dom-context-2d-isPointInPath">isPointInPath</span>(in float x, in float y);
+  boolean <span title="dom-context-2d-isPointInPath">isPointInPath</span>(in double x, in double y);
 
   // focus management
-  boolean <span title="dom-context-2d-drawFocusRing">drawFocusRing</span>(in <span>Element</span> element, in float xCaret, in float yCaret, in optional boolean canDrawCustom);
+  boolean <span title="dom-context-2d-drawFocusRing">drawFocusRing</span>(in <span>Element</span> element, in double xCaret, in double yCaret, in optional boolean canDrawCustom);
 
   // text
            attribute DOMString <span title="dom-context-2d-font">font</span>; // (default 10px sans-serif)
            attribute DOMString <span title="dom-context-2d-textAlign">textAlign</span>; // "start", "end", "left", "right", "center" (default: "start")
            attribute DOMString <span title="dom-context-2d-textBaseline">textBaseline</span>; // "top", "hanging", "middle", "alphabetic", "ideographic", "bottom" (default: "alphabetic")
-  void <span title="dom-context-2d-fillText">fillText</span>(in DOMString text, in float x, in float y, in optional float maxWidth);
-  void <span title="dom-context-2d-strokeText">strokeText</span>(in DOMString text, in float x, in float y, in optional float maxWidth);<!-- v5DVT
-  void <span title="dom-context-2d-fillVerticalText">fillVerticalText</span>(in DOMString text, in float x, in float y, in optional float maxHeight);
-  void <span title="dom-context-2d-strokeVerticalText">strokeVerticalText</span>(in DOMString text, in float x, in float y, in optional float maxHeight); -->
+  void <span title="dom-context-2d-fillText">fillText</span>(in DOMString text, in double x, in double y, in optional double maxWidth);
+  void <span title="dom-context-2d-strokeText">strokeText</span>(in DOMString text, in double x, in double y, in optional double maxWidth);<!-- v5DVT
+  void <span title="dom-context-2d-fillVerticalText">fillVerticalText</span>(in DOMString text, in double x, in double y, in optional double maxHeight);
+  void <span title="dom-context-2d-strokeVerticalText">strokeVerticalText</span>(in DOMString text, in double x, in double y, in optional double maxHeight); -->
   <span>TextMetrics</span> <span title="dom-context-2d-measureText">measureText</span>(in DOMString text);
 
   // drawing images
-  void <span title="dom-context-2d-drawImage">drawImage</span>(in <span>HTMLImageElement</span> image, in float dx, in float dy, in optional float dw, in float dh);
-  void <span title="dom-context-2d-drawImage">drawImage</span>(in <span>HTMLImageElement</span> image, in float sx, in float sy, in float sw, in float sh, in float dx, in float dy, in float dw, in float dh);
-  void <span title="dom-context-2d-drawImage">drawImage</span>(in <span>HTMLCanvasElement</span> image, in float dx, in float dy, in optional float dw, in float dh);
-  void <span title="dom-context-2d-drawImage">drawImage</span>(in <span>HTMLCanvasElement</span> image, in float sx, in float sy, in float sw, in float sh, in float dx, in float dy, in float dw, in float dh);
-  void <span title="dom-context-2d-drawImage">drawImage</span>(in <span>HTMLVideoElement</span> image, in float dx, in float dy, in optional float dw, in float dh);
-  void <span title="dom-context-2d-drawImage">drawImage</span>(in <span>HTMLVideoElement</span> image, in float sx, in float sy, in float sw, in float sh, in float dx, in float dy, in float dw, in float dh);
+  void <span title="dom-context-2d-drawImage">drawImage</span>(in <span>HTMLImageElement</span> image, in double dx, in double dy, in optional double dw, in double dh);
+  void <span title="dom-context-2d-drawImage">drawImage</span>(in <span>HTMLImageElement</span> image, in double sx, in double sy, in double sw, in double sh, in double dx, in double dy, in double dw, in double dh);
+  void <span title="dom-context-2d-drawImage">drawImage</span>(in <span>HTMLCanvasElement</span> image, in double dx, in double dy, in optional double dw, in double dh);
+  void <span title="dom-context-2d-drawImage">drawImage</span>(in <span>HTMLCanvasElement</span> image, in double sx, in double sy, in double sw, in double sh, in double dx, in double dy, in double dw, in double dh);
+  void <span title="dom-context-2d-drawImage">drawImage</span>(in <span>HTMLVideoElement</span> image, in double dx, in double dy, in optional double dw, in double dh);
+  void <span title="dom-context-2d-drawImage">drawImage</span>(in <span>HTMLVideoElement</span> image, in double sx, in double sy, in double sw, in double sh, in double dx, in double dy, in double dw, in double dh);
 
   // pixel manipulation
-  <span>ImageData</span> <span title="dom-context-2d-createImageData">createImageData</span>(in float sw, in float sh);
+  <span>ImageData</span> <span title="dom-context-2d-createImageData">createImageData</span>(in double sw, in double sh);
   <span>ImageData</span> <span title="dom-context-2d-createImageData">createImageData</span>(in <span>ImageData</span> imagedata);
-  <span>ImageData</span> <span title="dom-context-2d-getImageData">getImageData</span>(in float sx, in float sy, in float sw, in float sh);
-  void <span title="dom-context-2d-putImageData">putImageData</span>(in <span>ImageData</span> imagedata, in float dx, in float dy, in optional float dirtyX, in float dirtyY, in float dirtyWidth, in float dirtyHeight);
+  <span>ImageData</span> <span title="dom-context-2d-getImageData">getImageData</span>(in double sx, in double sy, in double sw, in double sh);
+  void <span title="dom-context-2d-putImageData">putImageData</span>(in <span>ImageData</span> imagedata, in double dx, in double dy, in optional double dirtyX, in double dirtyY, in double dirtyWidth, in double dirtyHeight);
 };
 
 interface <dfn>CanvasGradient</dfn> {
   // opaque object
-  void <span title="dom-canvasgradient-addColorStop">addColorStop</span>(in float offset, in DOMString color);
+  void <span title="dom-canvasgradient-addColorStop">addColorStop</span>(in double offset, in DOMString color);
 };
 
 interface <dfn>CanvasPattern</dfn> {
@@ -33117,7 +33117,7 @@
 };
 
 interface <dfn>TextMetrics</dfn> {
-  readonly attribute float <span title="dom-textmetrics-width">width</span>;
+  readonly attribute double <span title="dom-textmetrics-width">width</span>;
 };
 
 interface <dfn>ImageData</dfn> {
@@ -35794,11 +35794,14 @@
   title="">sh</var></span>), (<var title="">sx</var>, <span title=""><var
   title="">sy</var>+<var title="">sh</var></span>).</p>
 
-  <p>If the source rectangle is not entirely within the source image,
-  or if one of the <var title="">sw</var> or <var title="">sh</var>
+  <p>If one of the <var title="">sw</var> or <var title="">sh</var>
   arguments is zero, the implementation must raise an
   <code>INDEX_SIZE_ERR</code> exception.</p>
 
+  <p>Pixels of the source rectangle that are not entirely within the
+  source image must be treated as transparent black.</p> <!-- see
+  CORE-32111 http://krijnhoetmer.nl/irc-logs/whatwg/20100818#l-737 -->
+
   <p>The destination rectangle is the rectangle whose corners are the
   four points (<var title="">dx</var>, <var title="">dy</var>),
   (<span title=""><var title="">dx</var>+<var title="">dw</var></span>, <var
@@ -49761,9 +49764,9 @@
    <dt>DOM interface:</dt>
    <dd>
 <pre class="idl">interface <dfn>HTMLProgressElement</dfn> : <span>HTMLElement</span> {
-           attribute float <span title="dom-progress-value">value</span>;
-           attribute float <span title="dom-progress-max">max</span>;
-  readonly attribute float <span title="dom-progress-position">position</span>;
+           attribute double <span title="dom-progress-value">value</span>;
+           attribute double <span title="dom-progress-max">max</span>;
+  readonly attribute double <span title="dom-progress-position">position</span>;
   readonly attribute <span>HTMLFormElement</span> <span title="dom-fae-form">form</span>;
   readonly attribute <span>NodeList</span> <span title="dom-lfe-labels">labels</span>;
 };</pre>
@@ -49931,12 +49934,12 @@
    <dt>DOM interface:</dt>
    <dd>
 <pre class="idl">interface <dfn>HTMLMeterElement</dfn> : <span>HTMLElement</span> {
-           attribute float <span title="dom-meter-value">value</span>;
-           attribute float <span title="dom-meter-min">min</span>;
-           attribute float <span title="dom-meter-max">max</span>;
-           attribute float <span title="dom-meter-low">low</span>;
-           attribute float <span title="dom-meter-high">high</span>;
-           attribute float <span title="dom-meter-optimum">optimum</span>;
+           attribute double <span title="dom-meter-value">value</span>;
+           attribute double <span title="dom-meter-min">min</span>;
+           attribute double <span title="dom-meter-max">max</span>;
+           attribute double <span title="dom-meter-low">low</span>;
+           attribute double <span title="dom-meter-high">high</span>;
+           attribute double <span title="dom-meter-optimum">optimum</span>;
   readonly attribute <span>HTMLFormElement</span> <span title="dom-fae-form">form</span>;
   readonly attribute <span>NodeList</span> <span title="dom-lfe-labels">labels</span>;
 };</pre>




More information about the Commit-Watchers mailing list