- From: CVS User ihickson <cvsmail@w3.org>
- Date: Tue, 18 Dec 2012 22:29:51 +0000
- To: public-html-commits@w3.org
Update of /sources/public/html5/webstorage In directory roscoe:/tmp/cvs-serv21474 Modified Files: Overview.html Log Message: Try to clarify how 'storage' events are sent. (whatwg r7592) --- /sources/public/html5/webstorage/Overview.html 2012/12/04 23:56:10 1.209 +++ /sources/public/html5/webstorage/Overview.html 2012/12/18 22:29:51 1.210 @@ -215,7 +215,7 @@ <p><a href="http://www.w3.org/"><img alt="W3C" height="48" src="http://www.w3.org/Icons/w3c_home" width="72"></a></p> <h1>Web Storage</h1> - <h2 class="no-num no-toc" id="editor-s-draft-4-december-2012">Editor's Draft 4 December 2012</h2> + <h2 class="no-num no-toc" id="editor-s-draft-18-december-2012">Editor's Draft 18 December 2012</h2> <dl><dt>Latest Published Version:</dt> <dd><a href="http://www.w3.org/TR/webstorage/">http://www.w3.org/TR/webstorage/</a></dd> <dt>Latest Editor's Draft:</dt> @@ -351,7 +351,7 @@ </dl><p>The W3C <a href="http://www.w3.org/2008/webapps/">Web Applications Working Group</a> is the W3C working group responsible for this specification's progress along the W3C Recommendation track. - This specification is the 4 December 2012 Editor's Draft. + This specification is the 18 December 2012 Editor's Draft. </p> @@ -671,10 +671,9 @@ be emptied of all key/value pairs, if there are any. If there are none, then the method must do nothing.</p> - <p class="note">When the <code title="dom-Storage-setItem"><a href="#dom-storage-setitem">setItem()</a></code>, <code title="dom-Storage-removeItem"><a href="#dom-storage-removeitem">removeItem()</a></code>, and <code title="dom-Storage-clear"><a href="#dom-storage-clear">clear()</a></code> methods are invoked, events - are fired on other <code>Document</code> objects that can access the - newly stored or removed data, as defined in the sections on the - <code title="dom-sessionStorage"><a href="#dom-sessionstorage">sessionStorage</a></code> and <code title="dom-localStorage"><a href="#dom-localstorage">localStorage</a></code> attributes.</p> + <p class="note">When the <code title="dom-Storage-setItem"><a href="#dom-storage-setitem">setItem()</a></code>, <code title="dom-Storage-removeItem"><a href="#dom-storage-removeitem">removeItem()</a></code>, and <code title="dom-Storage-clear"><a href="#dom-storage-clear">clear()</a></code> methods are invoked, events are fired on the + <code>Window</code> objecys of other <code>Document</code>s that can access the newly stored or + removed data, as defined in the sections on the <code title="dom-sessionStorage"><a href="#dom-sessionstorage">sessionStorage</a></code> and <code title="dom-localStorage"><a href="#dom-localstorage">localStorage</a></code> attributes.</p> <p class="note">This specification does not require that the above methods wait until the data has been physically written to @@ -751,13 +750,10 @@ on, however, the two session storage areas must be considered separate, not affecting each other in any way.</p> - <p id="sessionStorageEvent">When the <code title="dom-Storage-setItem"><a href="#dom-storage-setitem">setItem()</a></code>, <code title="dom-Storage-removeItem"><a href="#dom-storage-removeitem">removeItem()</a></code>, and <code title="dom-Storage-clear"><a href="#dom-storage-clear">clear()</a></code> methods are called on a - <code><a href="#storage-0">Storage</a></code> object <var title="">x</var> that is associated - with a session storage area, if the methods did something, then in - every <code>Document</code> object whose <code>Window</code> - object's <code title="dom-sessionStorage"><a href="#dom-sessionstorage">sessionStorage</a></code> - attribute's <code><a href="#storage-0">Storage</a></code> object is associated with the same - storage area, other than <var title="">x</var>, a <code title="event-storage"><a href="#event-storage">storage</a></code> event must be fired, as <a href="#event-storage" title="event-storage">described below</a>.</p> + <p id="sessionStorageEvent">When the <code title="dom-Storage-setItem"><a href="#dom-storage-setitem">setItem()</a></code>, <code title="dom-Storage-removeItem"><a href="#dom-storage-removeitem">removeItem()</a></code>, and <code title="dom-Storage-clear"><a href="#dom-storage-clear">clear()</a></code> methods are called on a <code><a href="#storage-0">Storage</a></code> object <var title="">x</var> that is associated with a session storage area, if the methods did something, + then for every <code>Document</code> object whose <code>Window</code> object's <code title="dom-sessionStorage"><a href="#dom-sessionstorage">sessionStorage</a></code> attribute's <code><a href="#storage-0">Storage</a></code> object is + associated with the same storage area, other than <var title="">x</var>, <a href="#send-a-storage-notification">send a storage + notification</a>. <h3 id="the-localstorage-attribute"><span class="secno">4.3 </span>The <code title="dom-localStorage"><a href="#dom-localstorage">localStorage</a></code> attribute</h3> @@ -808,11 +804,12 @@ </ol><p id="localStorageEvent">When the <code title="dom-Storage-setItem"><a href="#dom-storage-setitem">setItem()</a></code>, <code title="dom-Storage-removeItem"><a href="#dom-storage-removeitem">removeItem()</a></code>, and <code title="dom-Storage-clear"><a href="#dom-storage-clear">clear()</a></code> methods are called on a <code><a href="#storage-0">Storage</a></code> object <var title="">x</var> that is associated - with a local storage area, if the methods did something, then in + with a local storage area, if the methods did something, then for every <code>Document</code> object whose <code>Window</code> object's <code title="dom-localStorage"><a href="#dom-localstorage">localStorage</a></code> attribute's <code><a href="#storage-0">Storage</a></code> object is associated with the same - storage area, other than <var title="">x</var>, a <code title="event-storage"><a href="#event-storage">storage</a></code> event must be fired, as <a href="#event-storage" title="event-storage">described below</a>.</p> + storage area, other than <var title="">x</var>, <a href="#send-a-storage-notification">send a storage + notification</a>. <p id="localStorageMutex">Whenever the properties of a <code title="dom-localStorage"><a href="#dom-localstorage">localStorage</a></code> attribute's <code><a href="#storage-0">Storage</a></code> object are to be examined, returned, set, or @@ -842,24 +839,21 @@ <h3 id="the-storage-event"><span class="secno">4.4 </span>The <code title="event-storage"><a href="#event-storage">storage</a></code> event</h3> - <p>The <dfn id="event-storage" title="event-storage"><code>storage</code></dfn> event - is fired when a storage area changes, as described in the previous - two sections (<a href="#sessionStorageEvent">for session - storage</a>, <a href="#localStorageEvent">for local - storage</a>).</p> - - <p>When this happens, the user agent must <span>queue a task</span> to <span title="concept-event-fire">fire</span> a <span title="concept-events-trusted">trusted</span> event - with the name <code><a href="#storage-0">storage</a></code>, which does not bubble and is not cancelable, and which uses - the <code><a href="#storageevent">StorageEvent</a></code> interface, at each <code>Window</code> object whose - <code>Document</code> object has a <code><a href="#storage-0">Storage</a></code> object that is affected.</p> - - <p class="note">This includes <code>Document</code> objects that are - not <span>fully active</span>, but events fired on those are ignored - by the <span>event loop</span> until the <code>Document</code> - becomes <span>fully active</span> again.</p> + <p>The <dfn id="event-storage" title="event-storage"><code>storage</code></dfn> event is fired on a + <code>Document</code>'s <code>Window</code> object when a storage area changes, as described in + the previous two sections (<a href="#sessionStorageEvent">for session storage</a>, <a href="#localStorageEvent">for local storage</a>).</p> + + <p>When a user agent is to <dfn id="send-a-storage-notification">send a storage notification</dfn> for a <code>Document</code>, the + user agent must <span>queue a task</span> to <span title="concept-event-fire">fire</span> a <span title="concept-events-trusted">trusted</span> event with the name <code><a href="#storage-0">storage</a></code>, which does + not bubble and is not cancelable, and which uses the <code><a href="#storageevent">StorageEvent</a></code> interface, at the + <code>Document</code> object's <code>Window</code> object.</p> + + <p class="note">Such a <code>Document</code> object is not necessarily <span>fully active</span>, + but events fired on such objects are ignored by the <span>event loop</span> until the + <code>Document</code> becomes <span>fully active</span> again.</p> - <p>The <span>task source</span> for this task is the <span>DOM - manipulation task source</span>.</p> + <p>The <span>task source</span> for these tasks is the <span>DOM manipulation task + source</span>.</p> <p>If the event is being fired due to an invocation of the <code title="dom-Storage-setItem"><a href="#dom-storage-setitem">setItem()</a></code> or <code title="dom-Storage-removeItem"><a href="#dom-storage-removeitem">removeItem()</a></code> methods, the event must have its <code title="dom-StorageEvent-key"><a href="#dom-storageevent-key">key</a></code>
Received on Tuesday, 18 December 2012 22:29:52 UTC