Commit Graph

19 Commits

Author SHA1 Message Date
Kyle Huey
601d68ae79 Bug 648997: Implement BlobBuilder spec as MozBlobBuilder. r=sicking.
Note that there is one key difference between this implementation and the spec.  In this patch MozBlobBuilder.getBlob("content/type"); returns a Blob and clears the MozBlobBuilder.  In the spec the BlobBuilder is not cleared.  Thus,

let bb = new MozBlobBuilder();
MozBlobBuilder.append("foo");
let blob1 = MozBlobBuilder.getBlob("content/type");
// blob1 contains "foo"
MozBlobBuilder.append("bar");
let blob2 = MozBlobBuilder.getBlob("content/type");
// blob2 contains "bar", the spec says it should contain "foobar".

IMO, the spec behavior optimizes for the wrong case.  BlobBuilder will probably be used mostly as a one-shot API.  Additionally, the spec requires the BlobBuilder to hang on to potentially large amounts of memory between the getBlob() call and when the BlobBuilder is GCd.

These issues have been raised on the listserv.
2011-05-20 10:18:45 -07:00
Kyle Huey
0018d52058 Backed out changeset b8404a1d3153 2011-05-20 17:00:13 -07:00
Kyle Huey
7da7ee7e4b Bug 648997: Implement BlobBuilder spec as mozBlobBuilder. r=sicking.
Note that there is one key difference between this implementation and the spec.  In this patch mozBlobBuilder.getBlob("content/type"); returns a Blob and clears the mozBlobBuilder.  In the spec the BlobBuilder is not cleared.  Thus,

let bb = new mozBlobBuilder();
mozBlobBuilder.append("foo");
let blob1 = mozBlobBuilder.getBlob("content/type");
// blob1 contains "foo"
mozBlobBuilder.append("bar");
let blob2 = mozBlobBuilder.getBlob("content/type");
// blob2 contains "bar", the spec says it should contain "foobar".

IMO, the spec behavior optimizes for the wrong case.  BlobBuilder will probably be used mostly as a one-shot API.  Additionally, the spec requires the BlobBuilder to hang on to potentially large amounts of memory between the getBlob() call and when the BlobBuilder is GCd.

These issues have been raised on the listserv.
2011-05-20 10:18:45 -07:00
Kyle Huey
d0c0eab2e5 Bug 607114: Expose a File constructor to chrome script. r=sicking
--HG--
rename : content/canvas/test/image_yellow.png => content/base/test/chrome/fileconstructor_file.png
2011-04-13 19:41:34 -07:00
Jonas Sicking
913afe451c Bug 649672: Make File.slice arguments match Array.slice and prefix File.slice. r=khuey 2011-04-13 14:34:36 -07:00
Kyle Huey
4ae43d7d48 Bug 637683: Ensure that the underlying buffer does not go away before any streams handed out by nsDOMMemoryFile. r=sicking a=blocker 2011-03-01 18:35:53 -05:00
Jonas Sicking
e7e13b2084 Bug 575946: Implement File.slice. r=khuey sr=biesi a=beltzner 2010-10-13 16:25:33 -07:00
Kyle Huey
40924b6ff2 Bug 594964: Fix moz-filedata principal handling so that files can be dragged and dropped. r=sicking a=blocker 2010-09-17 21:22:44 -04:00
Kyle Huey
a9713881d1 Bug 565843: Implement <canvas>.mozGetAsFile(name, type). r+a=sicking
--HG--
extra : rebase_source : 1a7a635dc5a7da047967d8feb57d637e83027618
2010-09-17 21:14:59 -04:00
Kyle Huey
a846b63dba Bug 583863: Refactor <input> implementation to deal with files that aren't on the disk. r=sicking a=blocking-fennec
--HG--
extra : rebase_source : 2b3605042aea4e4c8273cdad5ec7f05af15959cc
2010-09-05 14:00:05 -04:00
Kyle Huey
73e9690f8f Backed out changeset af1365b24066 2010-09-05 11:32:57 -04:00
Kyle Huey
bde906120c Bug 583863: Refactor <input> implementation to deal with files that are not on the disk. r=sicking a=blocking-fennec 2010-09-05 09:09:04 -04:00
Jonas Sicking
aeb9ba77c3 Bug 543870: Implement File.url. r=bz sr=jst 2010-03-02 23:51:09 -08:00
Matin Movassate
4bb47ecb1e Bug 507805: Support FileRequest API for reading Files. r/sr=sicking 2009-10-07 01:30:26 -07:00
Matin Movassate
d6945be650 Fixing bug 491201. Adding ability for XMLHttpRequest.send() to accept a File object. r+sr=jonas@sicking.cc, r=cbiesinger@gmail.com 2009-09-08 16:29:41 -07:00
Johnny Stenback
dae61e5c95 Backed out changeset 7d5e1bcb4729 due to mochitest errors. 2009-08-31 14:57:45 -07:00
Matin Movassate
fb202885f6 Resolving bug 491201. Added ability for XMLHttpRequest.send() to accept an nsIDOMFile. r+sr=jonas@sicking.cc, r=cbiesinger@gmail.com 2009-08-31 14:07:16 -07:00
Peter Van der Beken
f3f2a880fb Fix for bug 460512 (Avoid AddRef/Release in scriptable helper methods for NodeList). r/sr=bz. 2008-10-22 16:31:14 +02:00
dcamp@mozilla.com
67423b50ef Add an API to access <input type="file"> data. r=smontagu (for charset stuff), r+sr=jonas 2007-07-24 21:29:47 -07:00