- From: Sam Weinig <weinig@apple.com>
- Date: Thu, 30 Apr 2009 11:28:58 -0700
- To: Ian Hickson <ian@hixie.ch>
- Cc: Anne van Kesteren <annevk@opera.com>, WebApps WG <public-webapps@w3.org>
On Apr 30, 2009, at 9:58 AM, Ian Hickson wrote: > On Thu, 30 Apr 2009, Anne van Kesteren wrote: >> >> For environments where the global object is represented by the Window >> object XMLHttpRequest needs to be associated with a Document object >> for >> determining the origin and base URL. The problem is that the >> XMLHttpRequest interface object can be copied around, e.g. >> >> var x = frames[0].XMLHttpRequest >> >> in that scenario x needs to be associated with Document object >> associated with frames[0]. (If frames[0] is later navigated the >> Document >> object would change, so it is important that this happens at this >> point.) > > There is a 1:1 mapping from global object to Document object now > that we > have WindowProxy objects. > > So you can probably just say something like: > > "...the Document object associated with the Window object for > which the > XMLHttpRequest interface object was created..." > I am not sure this always holds. In the case of the the transition from the initial ("about:blank") document to a loaded document, the window needs to be reused at times. Take for instance, w = window.open("testForProperties.html"); w.customWindowProperty = "1"; w.document.customDocumentProperty = "2"; when testForProperties.html is done loading, customWindowProperty will still be there, but document.customDocumentProperty will not. > >> To be clear, assuming a and b are distinct global objects, in >> >> a.x = a.XMLHttpRequest >> b.x = a.x >> >> the XMLHttpRequest interface object in b.x has a pointer to the >> Document >> object associated with a. When the XMLHttpRequest constructor is >> invoked >> this pointer needs to be somehow copied to the constructed object. > > I think that is covered by the incantation above. > > -- > Ian Hickson U+1047E ) > \._.,--....,'``. fL > http://ln.hixie.ch/ U+263A /, _.. \ _ > \ ;`._ ,. > Things that are impossible just take longer. `._.-(,_..'-- > (,_..'`-.;.' >
Received on Thursday, 30 April 2009 18:29:38 UTC