[html5] r2070 - [] (0) Define a set of properties for browser detection.
whatwg at whatwg.org
whatwg at whatwg.org
Tue Aug 12 18:38:37 PDT 2008
Author: ianh
Date: 2008-08-12 18:38:35 -0700 (Tue, 12 Aug 2008)
New Revision: 2070
Modified:
index
source
Log:
[] (0) Define a set of properties for browser detection.
/home/ianh/svn/webapps/hooks/commit-email.pl: `/usr/bin/svnlook diff /home/ianh/svn/webapps -r 2070' failed with this output:
Modified: index
===================================================================
--- index 2008-08-13 00:43:39 UTC (rev 2069)
+++ index 2008-08-13 01:38:35 UTC (rev 2070)
@@ -1299,15 +1299,19 @@
</span>Notifications</a>
</ul>
- <li><a href="#browser0"><span class=secno>5.6 </span>Browser state</a>
+ <li><a href="#system"><span class=secno>5.6 </span>System state and
+ capabilities</a>
<ul class=toc>
- <li><a href="#custom-handlers"><span class=secno>5.6.1 </span>Custom
+ <li><a href="#client"><span class=secno>5.6.1 </span>Client
+ identification</a>
+
+ <li><a href="#custom-handlers"><span class=secno>5.6.2 </span>Custom
protocol and content handlers</a>
<ul class=toc>
- <li><a href="#security5"><span class=secno>5.6.1.1. </span>Security
+ <li><a href="#security5"><span class=secno>5.6.2.1. </span>Security
and privacy</a>
- <li><a href="#sample-handler-impl"><span class=secno>5.6.1.2.
+ <li><a href="#sample-handler-impl"><span class=secno>5.6.2.2.
</span>Sample user interface</a>
</ul>
</ul>
@@ -1347,7 +1351,7 @@
<li><a href="#application"><span class=secno>5.7.6 </span>Application
cache API</a>
- <li><a href="#browser1"><span class=secno>5.7.7 </span>Browser
+ <li><a href="#browser0"><span class=secno>5.7.7 </span>Browser
state</a>
</ul>
@@ -31922,7 +31926,7 @@
<a href="#window">Window</a> <a href="#open2" title=dom-open>open</a>(in DOMString url, in DOMString target, in DOMString features, in DOMString replace);
// the user agent
- readonly attribute <a href="#clientinformation">ClientInformation</a> <a href="#navigator" title=dom-navigator>navigator</a>; <!-- XXX IE6 also has window.clientInformation pointing to this same object -->
+ readonly attribute <a href="#navigator0">Navigator</a> <a href="#navigator" title=dom-navigator>navigator</a>; <!-- XXX IE6 also has window.clientInformation pointing to this same object -->
readonly attribute <a href="#storage0">Storage</a> <a href="#localstorage" title=dom-localStorage>localStorage</a>;
readonly attribute <a href="#storage0">Storage</a> <a href="#sessionstorage" title=dom-sessionStorage>sessionStorage</a>;
<a href="#database0">Database</a> <a href="#opendatabase" title=dom-opendatabase>openDatabase</a>(in DOMString name, in DOMString version, in DOMString displayName, in unsigned long estimatedSize);
@@ -33737,25 +33741,102 @@
brought to the user's attention, and the <var title="">onclick</var>
callback should then be invoked.
- <h3 id=browser0><span class=secno>5.6 </span>Browser state</h3>
+ <h3 id=system><span class=secno>5.6 </span>System state and capabilities</h3>
<p>The <dfn id=navigator title=dom-navigator><code>navigator</code></dfn>
attribute of the <code><a href="#window">Window</a></code> interface must
- return an instance of the <code><a
- href="#clientinformation">ClientInformation</a></code> interface, which
- represents the identity and state of the user agent (the client), and
- allows Web pages to register themselves as potential protocol and content
- handlers:
+ return an instance of the <code><a href="#navigator0">Navigator</a></code>
+ interface, which represents the identity and state of the user agent (the
+ client), and allows Web pages to register themselves as potential protocol
+ and content handlers:
- <pre
- class=idl>interface <dfn id=clientinformation>ClientInformation</dfn> {
+ <pre class=idl>interface <dfn id=navigator0>Navigator</dfn> {
+ // client identification<!--
+ readonly attribute DOMString <span title="dom-navigator-appCodeName">appCodeName</span>;-->
+ readonly attribute DOMString <a href="#appname" title=dom-navigator-appName>appName</a>;
+ readonly attribute DOMString <a href="#appversion" title=dom-navigator-appVersion>appVersion</a>;
+ readonly attribute DOMString <a href="#platform" title=dom-navigator-platform>platform</a>;
+ readonly attribute DOMString <a href="#useragent" title=dom-navigator-userAgent>userAgent</a>;
+
+ // system state
readonly attribute boolean <a href="#navigator.online" title=dom-navigator-onLine>onLine</a>;
void <a href="#registerprotocolhandler" title=dom-navigator-registerProtocolHandler>registerProtocolHandler</a>(in DOMString protocol, in DOMString url, in DOMString title);
void <a href="#registercontenthandler" title=dom-navigator-registerContentHandler>registerContentHandler</a>(in DOMString mimeType, in DOMString url, in DOMString title);
-<!-- XXX there are other attributes! -->};</pre>
- <!-- also, see window.external.AddSearchProvider() and similar DOM APIs from IE -->
+};</pre>
+ <!-- XXX also, see window.external.AddSearchProvider() and similar DOM APIs from IE -->
+ <!-- XXX also, see: cookieEnabled geolocator javaEnabled mimeTypes mozIsLocallyAvailable plugins preference -->
+ <!-- XXX also, could expose languages:
+ <dt><dfn title="dom-navigator-browserLanguage"><code>browserLanguage</code></dfn></dt> <!- - Opera and IE only - ->
+ <dd><p>Must return either null or a language code representing the language the browser uses in its interface.</p></dd>
+ <dt><dfn title="dom-navigator-userLanguage"><code>userLanguage</code></dfn></dt> <!- - Opera and IE only - ->
+ <dt><dfn title="dom-navigator-language"><code>language</code></dfn></dt> <!- - Opera, Safari, and Mozilla only - ->
+ <dd><p>Must return either null or a language code representing the user's preferred language.</p></dd>
+ -->
- <h4 id=custom-handlers><span class=secno>5.6.1 </span>Custom protocol and
+ <h4 id=client><span class=secno>5.6.1 </span>Client identification</h4>
+
+ <p>In certain cases, despite the best efforts of the entire industry, Web
+ browsers have bugs and limitations that Web authors are forced to work
+ around.
+
+ <p>This section defines a collection of attributes that can be used to
+ determine, from script, the kind of user agent in use, in order to work
+ around these issues.
+
+ <p>Client detection should always be limited to detecting known current
+ versions; future versions and unknown versions should always be assumed to
+ be fully compliant.
+
+ <dl><!-- redundant
+ <dt><dfn title="dom-navigator-appCodeName"><code>appCodeName</code></dfn></dt>
+ <dd><p>Must return the string "<code title="">Mozilla</code>".</p></dd>
+ -->
+ <!-- appMinorVersion: IE only. In IE8b1, returns " Beta" (with the space) -->
+
+ <dt><dfn id=appname title=dom-navigator-appName><code>appName</code></dfn>
+
+ <dd>
+ <p>Must return either the string "<code title="">Netscape</code>" or the
+ full name of the browser, e.g. "<code title="">Mellblom
+ Browsernator</code>".
+
+ <dt><dfn id=appversion
+ title=dom-navigator-appVersion><code>appVersion</code></dfn>
+
+ <dd>
+ <p>Must return either the string "<code title="">4.0</code>" or a string
+ representing the version of the browser in detail, e.g. "<code
+ title="">1.0 (VMS; en-US) Mellblomenator/9000</code>".
+ </dd>
+ <!-- buildID: Mozilla only -->
+ <!-- oscpu: Mozilla only -->
+
+ <dt><dfn id=platform
+ title=dom-navigator-platform><code>platform</code></dfn>
+
+ <dd>
+ <p>Must return a string representing the platform on which the browser is
+ executing, e.g. "<code title="">MacIntel</code>", "<code
+ title="">Win32</code>", "<code title="">FreeBSD i386</code>", "<code
+ title="">WebTV OS</code>".
+ </dd>
+ <!-- product: Mozilla and Safari only; always returns "Gecko" -->
+ <!-- productSub: Mozilla and Safari only; returns same as buildID in Mozilla, and returns the fixed string "20030107" in Safari -->
+ <!-- securityPolicy: Mozilla only; always returns "" -->
+ <!-- taintEnabled(): Opera, IE and Mozilla have this function as one that always returns false -->
+
+ <dt><dfn id=useragent
+ title=dom-navigator-userAgent><code>userAgent</code></dfn>
+
+ <dd>
+ <p>Must return the string used for the value of the "<code
+ title="">User-Agent</code>" header in HTTP requests.
+ </dd>
+ <!-- vendor: Mozilla and Safari only; always returns "" in Mozilla, and returns the fixed string "Apple Computer, Inc." in Safari -->
+ <!-- vendorSub: Mozilla and Safari only; always returns "" -->
+ </dl>
+
+ <h4 id=custom-handlers><span class=secno>5.6.2 </span>Custom protocol and
content handlers</h4>
<p>The <dfn id=registerprotocolhandler
@@ -33902,7 +33983,7 @@
non-idempotent transaction), as the remote site would not be able to fetch
the same data.
- <h5 id=security5><span class=secno>5.6.1.1. </span>Security and privacy</h5>
+ <h5 id=security5><span class=secno>5.6.2.1. </span>Security and privacy</h5>
<p>These mechanisms can introduce a number of concerns, in particular
privacy concerns.
@@ -33980,7 +34061,7 @@
trust the third-party handler, a decision many users are unable to make or
even understand).
- <h5 id=sample-handler-impl><span class=secno>5.6.1.2. </span>Sample user
+ <h5 id=sample-handler-impl><span class=secno>5.6.2.2. </span>Sample user
interface</h5>
<p><em>This section is non-normative.</em>
@@ -35575,7 +35656,7 @@
href="#applicationcache">ApplicationCache</a></code> object.
</dl>
- <h4 id=browser1><span class=secno>5.7.7 </span>Browser state</h4>
+ <h4 id=browser0><span class=secno>5.7.7 </span>Browser state</h4>
<p>The <dfn id=navigator.online
title=dom-navigator-onLine><code>navigator.onLine</code></dfn> attribute
Modified: source
===================================================================
More information about the Commit-Watchers
mailing list