- From: Max Froumentin via cvs-syncmail <cvsmail@w3.org>
- Date: Fri, 18 Dec 2009 12:21:31 +0000
- To: public-dap-commits@w3.org
Update of /sources/public/2009/dap/system-info In directory hutz:/tmp/cvs-serv28426 Modified Files: Overview.html Log Message: editorial fixes Index: Overview.html =================================================================== RCS file: /sources/public/2009/dap/system-info/Overview.html,v retrieving revision 1.44 retrieving revision 1.45 diff -u -d -r1.44 -r1.45 --- Overview.html 18 Dec 2009 11:21:05 -0000 1.44 +++ Overview.html 18 Dec 2009 12:21:29 -0000 1.45 @@ -75,10 +75,10 @@ MUST acquire permission through a user interface, unless they have prearranged trust relationships with users, as described below. The user interface MUST include the URI of the document - origin, as defined in [[HTML5]]. Those permissions that are + origin, as defined in [[!HTML5]]. Those permissions that are acquired through the user interface and that are preserved beyond the current browsing session (i.e. beyond the time when - the browsing context, as defined in [HTML5], is navigated to + the browsing context, as defined in [[!HTML5]], is navigated to another URL) MUST be revocable and User Agents MUST respect revoked permissions.</p> @@ -418,7 +418,7 @@ <h4>The <a>PowerState</a> Property</h4> <p>This property reflects the state of general state of the system's power sources</p> - <li class="issue">Find the corresponding DCO properties everywhere</li> + <p class="issue">Find the corresponding DCO properties everywhere</p> <dl title="[NoInterfaceObject] interface PowerState" class="idl"> @@ -846,168 +846,7 @@ <!--******************** /Network **********************************--> - <!--******************** Display **********************************--> - <p class="issue">Move display and sound in an "output devices" section?</p> - - <section> - <h2>Display</h2> - <p>This set of properties expose information about the visual display devices available to this system.</p> - - <section> - <h4>ECMAScript Example</h4> - <pre class="sh_javascript example">// adjust the display brightness if it is too low -navigator.device.system.get("Display", success, null); - -function success(display) { - if (display.brightness <= 0.2) - navigator.device.system.set("Display", {brightness: 0.8}, adjustCallback); -}</pre> - </section> - - <section> - <h4>The <a>Display</a> Property</h4> - - <p>This property provides information on the display available on this system</p> - - <dl title='[NoInterfaceObject] interface Display' class='idl'> - <dt>const unsigned short ORIENTATION_UNKNOWN = 0</dt> - <dd>The device is not able to determine its orientation.</dd> - <dt>const unsigned short ORIENTATION_LANDSCAPE = 1</dt> - <dd>The display orientation is landscape.</dd> - <dt>const unsigned short ORIENTATION_PORTRAIT = 2</dt> - <dd>The display orientation is portrait.</dd> - <dt>const unsigned short ORIENTATION_INVERTED_LANDSCAPE = 3</dt> - <dd>The display orientation is inverted landscape.</dd> - <dt>const unsigned short ORIENTATION_INVERTED_PORTRAIT = 4</dt> - <dd>The display orientation is inverted portrait.</dd> - <dt>attribute unsigned short orientation</dt> - <dd>The display orientation from the constants listed in this object.</dd> - <dt>attribute float brightness</dt> - <dd>The current brightness, from 0 to 1</dd> - <dt>attribute float contrast</dt> - <dd>The current contrast, from 0 to 1</dd> - <dt>attribute boolean blanked</dt> - <dd><code>true</code> if this display is currently blanked, <code>false</code> otherwise</dd> - - <dt>readonly attribute DisplayDevice activeDevice</dt> - <dd>The display currently in use</dd> - - <dt>readonly attribute DisplayDevice devices[]</dt> - <dd>The sequence of all the available display devices</dd> - </dl> - - <p class="issue">Are we being short-sighted in only listing - four? Would it make sense to have it be an angle, except - that in most cases it would only change in 90° - increments?</p> - - </section> - - <section> - <h4>The <a>DisplayDevice</a> property</h4> - - <p>This property exposes information on a single display device available to the system. Is it <a>enumerable.</a></p> - - <p>The <a>DisplayDevice</a> interface defined below inherits from the <a>Screen</a> interface as defined in [[!CSSOM-VIEW]]</p> - - <dl title="[NoInterfaceObject] interface DisplayDevice : Screen" class="idl"> - <dt>readonly attribute DOMString info</dt> - <dd>A free-form string describing this device</dd> - - <dt>readonly attribute DOMString id</dt> - <dd>A free-form string identifying this device. The value of this element MUST be unique within the list reported in a <a>Display</a> object.</dd> - - <dt>readonly attribute unsigned int dotsPerInchW</dt> - <dd>Resolution of this device, along its width, in dots per inch.</dd> - - <dt>readonly attribute unsigned int dotsPerInchH</dt> - <dd>Resolution of this device, along its height, in dots per inch.</dd> - - <dt>readonly attribute float physicalWidth</dt> - <dd>The display's physical width in centimeters</dd> - - <dt>readonly attribute float physicalHeight</dt> - <dd>The display's physical height in centimeters</dd> - </dl> - - </section> - </section> - <!-- ********* /display ************************************************************* --> - - <!-- ********* Sound ************************************************************** --> - <section> - <h2>Sound</h2> - <p>The properties below expose the device's audio system.</p> - - <section> - <h4>ECMAScript Example</h4> - <pre class="sh_javascript example">//Enumerate the active speakers on the system -system.audio.get("Audio", success); - -function isSpeaker(device, index, array) { - return device.type===device.TYPE_SPEAKER; -} - -function success(audio) { - var activeSpeakers = audio.outputDevices.filter(isSpeaker); -}</pre> - </section> - <section> - <h4>The <a>Sound</a> property</h4> - <p>This property exposes information on the audio capabilities of this system</p> - - <p class="note">These properties do not provide volume - controls. An application will have to use HTML5's volume - control attributes.</p> - - <dl title='[NoInterfaceObject] interface Sound' class='idl'> - <dt>readonly attribute DOMString? info</dt> - <dd>A free-form string describing this system's sound architecture</dd> - - <dt>readonly attribute AudioOutputDevice outputDevices[]</dt> - <dd>Audio output devices attached to this device</dd> - </dl> - </section> - <section> - <h4>The <a>AudioOutputDevice</a> Property</h4> - - <p>This property exposes information on a single audio - output device available to this system. It is - <a>enumerable</a>.</p> - - <dl title='[NoInterfaceObject] interface AudioOutputDevice' class='idl'> - <dt>const unsigned short TYPE_UNKNOWN=0</dt> - <dd><code>type</code> is set to this value when the type of this device is unknown</dd> - <dt>const unsigned short TYPE_SPEAKER=1</dt> - <dd><code>type</code> is set to this value when this device is a loud speaker</dd> - <dt>const unsigned short TYPE_HEADPHONES=2</dt> - <dd><code>type</code> is set to this value when this device is a pair of headphones</dd> - <dt>readonly attribute unsigned short type</dt> - <dd>The type of audio output device. The value is one of the constants defined for this type.</dd> - - <dt>readonly attribute DOMString info</dt> - <dd>Free-form text describing this device.</dd> - - <dt>readonly attribute DOMString id</dt> - <dd>A free-form string identifying this device. The value - of this element MUST be unique within the list reported in - an <a>Audio</a> object.</dd> - - <dt>attribute boolean active</dt> - <dd>Indicates if the device is currently active, i.e. if - any sound recording will be made using this device</dd> - - <dt>readonly attribute unsigned int freqRangeLow</dt> - <dd>Frequency range, low value, in Hz</dd> - - <dt>readonly attribute unsigned int freqRangeHigh</dt> - <dd>Frequency range, high value, in Hz</dd> - </dl> - - </section> - </section> - - + <!-- ********* Sensors ************************************************************** --> <section> <h2>Sensors</h2> @@ -1207,8 +1046,6 @@ <h2>Audio and Video Codecs</h2> <p>The properties below expose the device's audio and video codec capabilities.</p> - <p class="issue">It seems better to separate software (codecs) from hardware (displays, speakers, microphone)</p> - <section> <h4>ECMAScript Example</h4> <pre class="sh_javascript example"></pre> @@ -1306,13 +1143,228 @@ </section> <!-- ********* /Codecs ************************************************************** --> + <!-- ********* Storage ************************************************************** --> + <section> + <h3>Storage</h3> + <p>This set of properties expose a device's storage units and their properties, like type (hard Disk, memory card, etc.) and capacity</p> + + <section> + <h4>The <a>Storage</a> Property</h4> + <p>This property exposes the data storage devices connected to this system.</p> + <dl title="interface Storage" class="idl"> + <dt>readonly attribute StorageUnit units[]</dt> + <dd>The array of storage units connected to this device</dd> + </dl> + </section> + + <section> + <h4>The <a>StorageUnit</a> Property</h4> + <p>This property exposes a single storage device connected to this system. It is <a>enumerable</a>.</p> + <dl title="interface StorageUnit" class="idl"> + <dt>const unsigned short TYPE_UNKNOWN=0</dt> + <dd><code>type</code> is set to this value when the type of this device is unknown to this API.</dd> + <dt>const unsigned short TYPE_HARDDISK=1</dt> + <dd>When type has this value, then this device is a hard disk</dd> + <dt>const unsigned short TYPE_FLOPPYDISK=2</dt> + <dd>When type has this value, then this device is a floppy disk</dd> + <dt>const unsigned short TYPE_OPTICAL=3</dt> + <dd>When type has this value, then this device uses optical storage technology (CD, DVD, Holographic)</dd> + <dt>const unsigned short TYPE_RAM=4</dt> + <dd>When type has this value, then this device uses solid-state RAM technology (chip, memory card)</dd> + <dt>readonly attribute unsigned short type</dt> + <dd>The type of pointing device. The value is one of the constants defined for this type.</dd> + + <dt>readonly attribute DOMString info</dt> + <dd>A free-form string describing this device</dd> + <dt>readonly attribute DOMString id</dt> + <dd>A free-form string identifying this device. The value of this element MUST be unique within the list reported in the <a>units</a> attribute of an <a>Storage</a> object.</dd> + + <dt>readonly attribute boolean isReadWrite</dt> + <dd><code>true</code> when this device suports software modification, <code>else</code> otherwise.</dd> + + <dt>readonly attribute unsigned int capacity</dt> + <dd>The amount of data that this device can hold, in bytes. A <a>watch</a> operation operating on an object of type <a>StorageUnit</a> must invoke the success callback only when this attribute has changed</dd> + + <dt>readonly attribute int availableCapacity</dt> + <dd>The amount of available data that this device can hold, in bytes</dd> + + <dt>readonly attribute boolean isRemoveable</dt> + <dd><code>true</code> if this unit can be removed from the system (e.g. a memory card unplugged, or a disk ejected), <code>false</code> otherwise</dd> + </dl> + </section> + </section> + <!-- ********* /Storage ************************************************************** --> + + <!--******************** Output **********************************--> + <section> + <h2>Output Devices</h2> + <p>This section gathers system properties related to this device's output devices: screens, sound systems, etc.</p> + + <section> + <h2>Display</h2> + <p>This set of properties expose information about the visual display devices available to this system.</p> + + <section> + <h4>ECMAScript Example</h4> + <pre class="sh_javascript example">// adjust the display brightness if it is too low +navigator.device.system.get("Display", success, null); + +function success(display) { + if (display.brightness <= 0.2) + navigator.device.system.set("Display", {brightness: 0.8}, adjustCallback); +}</pre> + </section> + + <section> + <h4>The <a>Display</a> Property</h4> + + <p>This property provides information on the display available on this system</p> + + <dl title='[NoInterfaceObject] interface Display' class='idl'> + <dt>const unsigned short ORIENTATION_UNKNOWN = 0</dt> + <dd>The device is not able to determine its orientation.</dd> + <dt>const unsigned short ORIENTATION_LANDSCAPE = 1</dt> + <dd>The display orientation is landscape.</dd> + <dt>const unsigned short ORIENTATION_PORTRAIT = 2</dt> + <dd>The display orientation is portrait.</dd> + <dt>const unsigned short ORIENTATION_INVERTED_LANDSCAPE = 3</dt> + <dd>The display orientation is inverted landscape.</dd> + <dt>const unsigned short ORIENTATION_INVERTED_PORTRAIT = 4</dt> + <dd>The display orientation is inverted portrait.</dd> + <dt>attribute unsigned short orientation</dt> + <dd>The display orientation from the constants listed in this object.</dd> + <dt>attribute float brightness</dt> + <dd>The current brightness, from 0 to 1</dd> + <dt>attribute float contrast</dt> + <dd>The current contrast, from 0 to 1</dd> + <dt>attribute boolean blanked</dt> + <dd><code>true</code> if this display is currently blanked, <code>false</code> otherwise</dd> + + <dt>readonly attribute DisplayDevice activeDevice</dt> + <dd>The display currently in use</dd> + + <dt>readonly attribute DisplayDevice devices[]</dt> + <dd>The sequence of all the available display devices</dd> + </dl> + + <p class="issue">Are we being short-sighted in only listing + four? Would it make sense to have it be an angle, except + that in most cases it would only change in 90° + increments?</p> + + </section> + + <section> + <h4>The <a>DisplayDevice</a> property</h4> + + <p>This property exposes information on a single display device available to the system. Is it <a>enumerable.</a></p> + + <p>The <a>DisplayDevice</a> interface defined below inherits from the <a>Screen</a> interface as defined in [[!CSSOM-VIEW]]</p> + + <dl title="[NoInterfaceObject] interface DisplayDevice : Screen" class="idl"> + <dt>readonly attribute DOMString info</dt> + <dd>A free-form string describing this device</dd> + + <dt>readonly attribute DOMString id</dt> + <dd>A free-form string identifying this device. The value of this element MUST be unique within the list reported in a <a>Display</a> object.</dd> + + <dt>readonly attribute unsigned int dotsPerInchW</dt> + <dd>Resolution of this device, along its width, in dots per inch.</dd> + + <dt>readonly attribute unsigned int dotsPerInchH</dt> + <dd>Resolution of this device, along its height, in dots per inch.</dd> + + <dt>readonly attribute float physicalWidth</dt> + <dd>The display's physical width in centimeters</dd> + + <dt>readonly attribute float physicalHeight</dt> + <dd>The display's physical height in centimeters</dd> + </dl> + + </section> + </section> + <!-- ********* /display ************************************************************* --> + + <!-- ********* Sound ************************************************************** --> + <section> + <h2>Sound</h2> + <p>The properties below expose the device's audio system.</p> + + <section> + <h4>ECMAScript Example</h4> + <pre class="sh_javascript example">//Enumerate the active speakers on the system + system.audio.get("Audio", success); + + function isSpeaker(device, index, array) { + return device.type===device.TYPE_SPEAKER; + } + + function success(audio) { + var activeSpeakers = audio.outputDevices.filter(isSpeaker); + }</pre> + </section> + <section> + <h4>The <a>Sound</a> property</h4> + <p>This property exposes information on the audio capabilities of this system</p> + + <p class="note">These properties do not provide volume + controls. An application should use HTML5's audio object + attributes.</p> + + <dl title='[NoInterfaceObject] interface Sound' class='idl'> + <dt>readonly attribute DOMString? info</dt> + <dd>A free-form string describing this system's sound architecture</dd> + + <dt>readonly attribute AudioOutputDevice outputDevices[]</dt> + <dd>Audio output devices attached to this device</dd> + </dl> + </section> + <section> + <h4>The <a>AudioOutputDevice</a> Property</h4> + + <p>This property exposes information on a single audio + output device available to this system. It is + <a>enumerable</a>.</p> + + <dl title='[NoInterfaceObject] interface AudioOutputDevice' class='idl'> + <dt>const unsigned short TYPE_UNKNOWN=0</dt> + <dd><code>type</code> is set to this value when the type of this device is unknown</dd> + <dt>const unsigned short TYPE_SPEAKER=1</dt> + <dd><code>type</code> is set to this value when this device is a loud speaker</dd> + <dt>const unsigned short TYPE_HEADPHONES=2</dt> + <dd><code>type</code> is set to this value when this device is a set of headphones</dd> + <dt>readonly attribute unsigned short type</dt> + <dd>The type of audio output device. The value is one of the constants defined for this type.</dd> + + <dt>readonly attribute DOMString info</dt> + <dd>Free-form text describing this device.</dd> + + <dt>readonly attribute DOMString id</dt> + <dd>A free-form string identifying this device. The value + of this element MUST be unique within the list reported in + an <a>Audio</a> object.</dd> + + <dt>attribute boolean active</dt> + <dd>Indicates if the device is currently active, i.e. if + any sound recording will be made using this device</dd> + + <dt>readonly attribute unsigned int freqRangeLow</dt> + <dd>Frequency range, low value, in Hz</dd> + + <dt>readonly attribute unsigned int freqRangeHigh</dt> + <dd>Frequency range, high value, in Hz</dd> + </dl> + + </section> + </section> + </section> + <!-- ********* /Output *************************************************************** --> <!-- ********* Input ***************************************************************** --> <section> <h3>Input Devices</h3> - - <p>Note: the watchable attributes only reflect the plugging/unplugging of hardware</p> - <p class="issue">Description to Complete</p> + + <p>The properties defines below expose the input devices connected to the system (e.g. mouse, keyboard, camera).</p> <section> <h3>The <a>InputDevices</a> Property</h3> @@ -1439,57 +1491,6 @@ </section> </section> - <!-- ********* Storage ************************************************************** --> - <section> - <h3>Storage</h3> - <p>This set of properties expose a device's storage units and their properties, like type (hard Disk, memory card, etc.) and capacity</p> - - <section> - <h4>The <a>Storage</a> Property</h4> - <p>This property exposes the data storage devices connected to this system.</p> - <dl title="interface Storage" class="idl"> - <dt>readonly attribute StorageUnit units[]</dt> - <dd>The array of storage units connected to this device</dd> - </dl> - </section> - - <section> - <h4>The <a>StorageUnit</a> Property</h4> - <p>This property exposes a single storage device connected to this system. It is <a>enumerable</a>.</p> - <dl title="interface StorageUnit" class="idl"> - <dt>const unsigned short TYPE_UNKNOWN=0</dt> - <dd><code>type</code> is set to this value when the type of this device is unknown to this API.</dd> - <dt>const unsigned short TYPE_HARDDISK=1</dt> - <dd>When type has this value, then this device is a hard disk</dd> - <dt>const unsigned short TYPE_FLOPPYDISK=2</dt> - <dd>When type has this value, then this device is a floppy disk</dd> - <dt>const unsigned short TYPE_OPTICAL=3</dt> - <dd>When type has this value, then this device uses optical storage technology (CD, DVD, Holographic)</dd> - <dt>const unsigned short TYPE_RAM=4</dt> - <dd>When type has this value, then this device uses solid-state RAM technology (chip, memory card)</dd> - <dt>readonly attribute unsigned short type</dt> - <dd>The type of pointing device. The value is one of the constants defined for this type.</dd> - - <dt>readonly attribute DOMString info</dt> - <dd>A free-form string describing this device</dd> - <dt>readonly attribute DOMString id</dt> - <dd>A free-form string identifying this device. The value of this element MUST be unique within the list reported in the <a>units</a> attribute of an <a>Storage</a> object.</dd> - - <dt>readonly attribute boolean isReadWrite</dt> - <dd><code>true</code> when this device suports software modification, <code>else</code> otherwise.</dd> - - <dt>readonly attribute unsigned int capacity</dt> - <dd>The amount of data that this device can hold, in bytes. A <a>watch</a> operation operating on an object of type <a>StorageUnit</a> must invoke the success callback only when this attribute has changed</dd> - - <dt>readonly attribute int availableCapacity</dt> - <dd>The amount of available data that this device can hold, in bytes</dd> - - <dt>readonly attribute boolean isRemoveable</dt> - <dd><code>true</code> if this unit can be removed from the system (e.g. a memory card unplugged, or a disk ejected), <code>false</code> otherwise</dd> - </dl> - </section> - </section> - <!-- ********* /Storage ************************************************************** --> </section>
Received on Friday, 18 December 2009 12:21:34 UTC