mozilla

Compare Revisions

Firefox 3.5 for developers

Change Revisions

Revision 77248:

Revision 77248 by Sheppy on

Revision 77249:

Revision 77249 by wmr89502270 on

Title:
Firefox 3.5 for developers
Firefox 3.5 for developers
Slug:
Firefox_3.5_for_developers
Firefox_3.5_for_developers
Tags:
JavaScript, css, HTML, Gecko, XUL, Storage, Firefox, "Firefox 3.5", "Gecko 1.9.1"
JavaScript, css, HTML, Gecko, XUL, Storage, Firefox, "Firefox 3.5", "Gecko 1.9.1"
Content:

Revision 77248
Revision 77249
t8      {{ mediawiki.interwiki('wikimo', 'Firefox3.1', 'Firefox 3.1t8      test
>') }}, code-named "Shiretoko", will be based on Gecko 1.9.1. This 
> page will serve as a starting point for documentation for the Fi 
>refox 3.1 project. 
9    </p>
10    <div class="note">
11      <strong>Note:</strong> Shiretoko source code is in the <a c
>lass="internal" href="/en/mozilla-central" title="En/Mozilla-cent 
>ral">mozilla-central</a> repository in <a class="internal" href=" 
>/en/Mercurial" title="En/Mercurial">Mercurial</a>. See the articl 
>e <a class="internal" href="/en/Mozilla_Source_Code_(Mercurial)"  
>title="En/Mozilla Source Code (Mercurial)">Mozilla Source Code (M 
>ercurial)</a> for details on how to access the Firefox 3.1 source 
> code. 
12    </div>
13    <p>
14      Please list changes here, so they can be properly documente
>d. 
15    </p>
16    <h2>
17      Web site and application changes
18    </h2>
19    <p>
20      ICC color correction is now supported for tagged images. Se
>e <a class="external" href="http://bholley.wordpress.com/2008/09/ 
>12/so-many-colors/" title="http://bholley.wordpress.com/2008/09/1 
>2/so-many-colors/">this article</a> for further information. 
21    </p>
22    <h3>
23      CSS changes
24    </h3>
25    <h4>
26      Bug fixes
27    </h4>
28    <ul>
29      <li>The 'ch' unit can now be used anywhere like a regular <
>a class="internal" href="/en/CSS/length" title="en/CSS/length">un 
>it of length</a>, and uses the width of the '0' character to foll 
>ow the specification ({{ Bug("363706") }}). 
30      </li>
31    </ul>
32    <h4>
33      CSS 2.1 support
34    </h4>
35    <ul>
36      <li>Updated <a class="internal" href="/en/CSS/:before" titl
>e="En/CSS/:before">::before</a> and <a class="internal" href="/en 
>/CSS/:after" title="En/CSS/:after">::after</a> to CSS 2.1; they n 
>ow support positioning and floating the content. 
37      </li>
38    </ul>
39    <h4>
40      Newly supported features
41    </h4>
42    <ul>
43      <li>
44        <a class="internal" href="/En/CSS/Media_queries" title="e
>n/CSS/Media queries">CSS media queries</a> 
45      </li>
46      <li>
47        <a class="internal" href="/en/CSS/@font-face" title="En/C
>SS/@font-face"><code>@font-face</code></a> allows sites to link t 
>o downloadable fonts so that Firefox may render sites more precis 
>ely as intended (including being able to display Unicode characte 
>rs not otherwise supported). 
48      </li>
49    </ul>
50    <h4>
51      Newly supported properties
52    </h4>
53    <ul>
54      <li>{{ Cssxref("text-shadow") }}
55      </li>
56      <li>box-shadow as {{ Cssxref("-moz-box-shadow") }}
57      </li>
58      <li>border-image as {{ Cssxref("-moz-border-image") }}
59      </li>
60      <li>column-rule as {{ Cssxref("-moz-column-rule") }}, {{ Cs
>sxref("-moz-column-rule-width") }}, {{ Cssxref("-moz-column-rule- 
>style") }}, and {{ Cssxref("-moz-column-rule-color") }} 
61      </li>
62      <li>column-gap as {{ Cssxref("-moz-column-gap") }}
63      </li>
64      <li>{{ Cssxref("word-wrap") }}
65      </li>
66      <li>
67        <code>pre-line</code> as a {{ Cssxref("white-space") }} v
>alue. 
68      </li>
69      <li>Remove support for the deprecated <code>-moz-opacity</c
>ode> in favor of {{ Cssxref("opacity") }} 
70      </li>
71      <li>Added the custom color value <a class="internal" href="
>/en/CSS/color#Mozilla_Specific_Colors" title="en/CSS/color#Mozill 
>a Specific Colors"><code>-moz-nativehyperlinktext</code></a>, whi 
>ch selects the computer's native hyperlink color. 
72      </li>
73      <li>
74        <code>-moz-window-shadow</code> <span class="bz_default_h
>idden" id="summary_alias_container" style="display: inline;"><spa 
>n id="short_desc_nonedit_display">({{ Bug("450939") }}) for contr 
>olling window shadows and</span></span> <code><span class="bz_def 
>ault_hidden" id="summary_alias_container" style="display: inline; 
>"><span id="short_desc_nonedit_display">-moz-system-metric(mac-gr 
>aphite-theme)</span></span></code><span class="bz_default_hidden" 
> id="summary_alias_container" style="display: inline;"><span id=" 
>short_desc_nonedit_display">({{ Bug("448767") }}) for determining 
> the type of theme on Macs.</span></span><code><br></code> 
75      </li>
76      <li style="text-align: left;">New values for <a class="inte
>rnal" href="/en/CSS/-moz-appearance" title="En/CSS/-moz-appearanc 
>e"><code>-moz-appearance</code></a>: <code>-moz-win-glass</code>  
>and <code>-moz-mac-unified-toolbar</code>. 
77      </li>
78      <li style="text-align: left;">{{ Cssxref("-moz-transform") 
>}} and {{ Cssxref("-moz-transform-origin") }} are now supported f 
>or CSS transforms.&nbsp; See <a class="internal" href="/En/CSS/Us 
>ing_CSS_transforms" title="En/CSS/Using CSS transforms">Using CSS 
> transforms</a> for more details. 
79      </li>
80    </ul>
81    <h4>
82      Newly supported selectors
83    </h4>
84    <ul>
85      <li>{{ Cssxref(":nth-child") }}
86      </li>
87      <li>{{ Cssxref(":nth-last-child") }}
88      </li>
89      <li>{{ Cssxref(":nth-of-type") }}
90      </li>
91      <li>{{ Cssxref(":nth-last-of-type") }}
92      </li>
93      <li>{{ Cssxref(":first-of-type") }}
94      </li>
95      <li>{{ Cssxref(":last-of-type") }}
96      </li>
97      <li>{{ Cssxref(":only-of-type") }}
98      </li>
99    </ul>
100    <h3>
101      HTML changes
102    </h3>
103    <ul>
104      <li>Implemented support for the <code>defer</code> attribut
>e on the <a class="internal" href="/En/HTML/Element/Script" title 
>="En/HTML/Element/Script"><code>script</code></a> element. 
105      </li>
106      <li>
107        <code><a class="internal" href="/En/HTML/Element/Video" t
>itle="En/HTML/Element/video">video</a></code> and <code><a class= 
>"internal" href="/En/HTML/Element/Audio" title="En/HTML/Element/a 
>udio">audio</a></code> elements; see <a class="internal" href="/E 
>n/Using_audio_and_video_in_Firefox" title="En/Using audio and vid 
>eo in Firefox">Using audio and video in Firefox</a> for additiona 
>l information on the capabilities of HTML&nbsp;5 media. 
108      </li>
109    </ul>
110    <h3>
111      DOM changes
112    </h3>
113    <h4>
114      Newly supported features
115    </h4>
116    <ul>
117      <li>The selectors API&nbsp;has been added to both documents
> and elements; see <code><a class="internal" href="/En/DOM/Docume 
>nt.querySelector" title="En/DOM/Document.querySelector">document. 
>querySelector()</a></code>, <code><a class="internal" href="/En/D 
>OM/Document.querySelectorAll" title="En/DOM/Document.querySelecto 
>rAll">document.querySelectorAll()</a></code>, <code><a class="int 
>ernal" href="/En/DOM/Element.querySelector" title="En/DOM/Element 
>.querySelector">element.querySelector()</a></code>, and <code><a  
>class="internal" href="/En/DOM/Element.querySelectorAll" title="E 
>n/DOM/Element.querySelectorAll">element.querySelectorAll()</a></c 
>ode>. 
118      </li>
119      <li>
120        <a class="external" href="/En/DOM/NodeIterator" title="ht
>tp://developer.mozilla.org/editor/fckeditor/core/editor/En/DOM/No 
>deIterator">NodeIterator</a> object APIs 
121      </li>
122      <li>
123        <a class="internal" href="/En/Using_DOM_workers" title="E
>n/Using DOM workers">DOM worker threads</a><span style="font-styl 
>e: italic;">.</span> 
124      </li>
125      <li>The Text node's <code><a class="internal" href="/En/DOM
>/Text.wholeText" title="En/DOM/Text.wholeText">wholeText</a></cod 
>e> property and <code><a class="internal" href="/En/DOM/Text.repl 
>aceWholeText" title="En/DOM/Text.replaceWholeText">replaceWholeTe 
>xt()</a></code>&nbsp;method have been implemented. 
126      </li>
127      <li>The property <code><a class="internal" href="/En/DOM/El
>ement.children" title="En/DOM/Element.children">element.children< 
>/a></code> has been added. It returns a <em>collection</em> of ch 
>ild elements of the given element. 
128      </li>
129      <li>The <a class="internal" href="/En/Using_geolocation" ti
>tle="En/Using geolocation">Geolocation API</a>&nbsp;is now suppor 
>ted, allowing web applications to obtain information about the us 
>er's current position if they have a provider for that informatio 
>n installed. 
130      </li>
131      <li>The Element Traversal API&nbsp;is now supported by the 
>DOM&nbsp;<a class="internal" href="/en/DOM/element" title="En/DOM 
>/Element">Element</a> object. 
132      </li>
133      <li>The <a href="/En/DragDrop/Drag_and_Drop" title="En/Drag
>Drop/Drag_and_Drop">HTML 5 Drag and Drop API</a> allows for drag  
>and drop within and between web sites. In addition, it provides a 
> simpler API for XUL extensions and applications. ({{ Bug("356295 
>") }}) 
134      </li>
135      <li>The <a class="internal" href="/en/Gecko-Specific_DOM_Ev
>ents#MozAfterPaint" title="en/Gecko-Specific DOM Events#MozAfterP 
>aint"><code>MozAfterPaint</code></a> event was added, making it p 
>ossible to detect when painting occurs. 
136      </li>
137      <li>Added the <code>axis</code> attribute to <a class="inte
>rnal" href="/en/Gecko-Specific_DOM_Events#DOMMouseScroll" title=" 
>en/Gecko-Specific DOM Events#DOMMouseScroll"><code>DOMMouseScroll 
></code></a> events. 
138      </li>
139      <li>Added the <a class="internal" href="/en/Gecko-Specific_
>DOM_Events#MozMousePixelScroll" title="en/Gecko-Specific DOM Even 
>ts#MozMousePixelScroll"><code>MozMousePixelScroll</code></a> even 
>t ({{ Bug("350471") }}). 
140      </li>
141      <li>Finished support for the <a class="internal" href="/en/
>Offline_resources_in_Firefox" title="en/Offline resources in Fire 
>fox">HTML 5 offline specification</a>. 
142      </li>
143      <li>
144        <span class="bz_default_hidden" id="summary_alias_contain
>er" style="display: inline;"><span id="short_desc_nonedit_display 
>"><a class="internal" href="/En/Using_JSON_in_Firefox" title="en/ 
>Using JSON in Firefox">DOM binding for native JSON</a><br></span> 
></span> 
145      </li>
146      <li>
147        <p>
148          <code><span class="bz_default_hidden" style="display: i
>nline;"><span>cloneNode</span></span></code> <span class="bz_defa 
>ult_hidden" style="display: inline;"><span>on HTML nodes</span></ 
>span> <span class="bz_default_hidden" id="summary_alias_container 
>" style="display: inline;"><span id="short_desc_nonedit_display"> 
>({{ Bug("42976") }}).</span></span> 
149        </p>
150      </li>
151    </ul>
152    <h4>
153      Bug fixes
154    </h4>
155    <ul>
156      <li>Dispatched events can be redispatched; this makes Firef
>ox pass Acid 3 test 30; see {{ Bug("412567") }} for details. 
157      </li>
158      <li>DOM 2 Range improvements ({{ Bug("332148") }}).
159      </li>
160    </ul>
161    <h3>
162      JavaScript
163    </h3>
164    <h4>
165      Newly supported features
166    </h4>
167    <ul>
168      <li>
169        <a class="internal" href="/En/Core_JavaScript_1.5_Referen
>ce/Global_Objects/Object/GetPrototypeOf" title="En/Core JavaScrip 
>t 1.5 Reference/Global Objects/Object/GetPrototypeOf"><code>Objec 
>t.getPrototypeOf()</code></a> returns the prototype of a specifie 
>d object. 
170      </li>
171      <li>Added the <a class="internal" href="/En/Core_JavaScript
>_1.5_Reference/Global_Objects/String/Trim" title="En/Core JavaScr 
>ipt 1.5 Reference/Global Objects/String/Trim"><code>trim()</code> 
></a>, <a class="internal" href="/En/Core_JavaScript_1.5_Reference 
>/Global_Objects/String/TrimLeft" title="En/Core JavaScript 1.5 Re 
>ference/Global Objects/String/TrimLeft"><code>trimLeft()</code></ 
>a>, and <a class="internal" href="/En/Core_JavaScript_1.5_Referen 
>ce/Global_Objects/String/TrimRight" title="En/Core JavaScript 1.5 
> Reference/Global Objects/String/TrimRight"><code>trimRight()</co 
>de></a>&nbsp;methods to the JavaScript <a class="internal" href=" 
>/en/Core_JavaScript_1.5_Reference/Global_Objects/String" title="e 
>n/Core JavaScript 1.5 Reference/Global Objects/String">String</a> 
> object. 
172      </li>
173    </ul>
174    <h4>
175      Bug fixes
176    </h4>
177    <ul>
178      <li>In non-chrome scope, caught objects in exceptions are n
>ow the actual thrown object instead of an XPConnect wrapper conta 
>ining the thrown object ({{ Bug("446584") }}). 
179      </li>
180    </ul>
181    <h3>
182      Canvas
183    </h3>
184    <h5 name="Newly_supported_features_4">
185      Newly supported features
186    </h5>
187    <dl>
188      <dt>
189        <a class="internal" href="/en/Drawing_text_using_a_canvas
>" title="En/Drawing text using a canvas">HTML 5 text API for <cod 
>e>canvas</code> elements</a> 
190      </dt>
191      <dd>
192        The HTML&nbsp;5 text API for canvas elements is now suppo
>rted. 
193      </dd>
194      <dt>
195        <a class="internal" href="/en/Canvas_tutorial/Applying_st
>yles_and_colors#Shadows" title="En/Canvas tutorial/Applying style 
>s and colors#Shadows">Shadow effects</a> 
196      </dt>
197      <dd>
198        Canvas shadow effects are now supported.
199      </dd>
200      <dt>
201        <code>-moz-opaque</code> attribute
202      </dt>
203      <dd>
204        Added the <code>-moz-opaque</code> attribute, which lets 
>the canvas know whether or not translucency will be a factor.&nbs 
>p; If the canvas knows there's no translucency, painting performa 
>nce can be optimized.&nbsp; See {{ Bug("430906") }}.<br> 
205      </dd>
206    </dl>
207    <h3>
208      SVG
209    </h3>
210    <h4>
211      Newly supported features
212    </h4>
213    <ul>
214      <li>GetSVGDocument is added for &lt;object&gt; and &lt;ifra
>me&gt; for compatibility. 
215      </li>
216      <li>SVG effects can now be applied to HTML content.&nbsp; S
>ee <a class="external" href="/web-tech/2008/09/15/svg-effects-for 
>-html-content" title="http://developer.mozilla.org/editor/fckedit 
>or/core/editor/web-tech/2008/09/15/svg-effects-for-html-content/" 
>>this article</a> for more information. 
217      </li>
218      <li>Possible to now use SVG&nbsp;from non-XHTML&nbsp;docume
>nts via external resource loading<br> 
219        <ul>
220          <li>
221            <a class="link-https" href="https://bugzilla.mozilla.
>org/show_bug.cgi?id=433616" title="https://bugzilla.mozilla.org/s 
>how_bug.cgi?id=433616">bug 433616</a> 
222          </li>
223          <li>
224            <a class="external" href="http://web.mit.edu/bzbarsky
>/www/test.html" title="http://web.mit.edu/bzbarsky/www/test.html" 
>>http://web.mit.edu/bzbarsky/www/test.html</a> 
225          </li>
226          <li>See <a class="external" href="/web-tech/2008/10/10/
>svg-external-document-references" title="http://developer.mozilla 
>.org/editor/fckeditor/core/editor/web-tech/2008/10/10/svg-externa 
>l-document-references/">this blog post</a> for more information. 
227          </li>
228        </ul>
229      </li>
230    </ul>
231    <h4>
232      Bug fixes
233    </h4>
234    <ul>
235      <li>id references are now live ({{ Bug("344258") }}).<span 
>class="comment">Expand Me</span> 
236      </li>
237      <li>filters now works for foreignObject ({{ Bug("445079") }
>}). 
238      </li>
239    </ul>
240    <h3 name="For_XUL_and_application_developers">
241      For XUL and application developers
242    </h3>
243    <ul>
244      <li>
245        <a class="internal" href="/En/Updating_extensions_for_Fir
>efox_3.1" title="En/Updating extensions for Firefox 3.1">Updating 
> extensions for Firefox 3.1</a>&nbsp; 
246      </li>
247    </ul>
248    <h4 name="New_features">
249      New features
250    </h4>
251    <ul>
252      <li>The XUL&nbsp;<code><a class="internal" href="/en/XUL/te
>xtbox" title="En/XUL/Textbox">textbox</a></code> widget now offer 
>s a <code><a class="internal" href="/en/XUL/Attribute/textbox.typ 
>e" title="En/XUL/Attribute/Textbox.type">search</a></code> type,  
>for use as search fields ({{ Bug("388811") }}). 
253      </li>
254      <li>Drag and drop of tabs between windows ({{ Bug("113934")
> }}).&nbsp; This adds {{ XULMeth("swapDocShells") }} method to th 
>e <a class="internal" href="/en/XUL/browser" title="en/XUL/browse 
>r">browser</a> widget.. 
255      </li>
256      <li>The {{ XULAttr("panel.level") }} attribute of {{ XULEle
>m("panel") }} element is used to specify whether panels appear on 
> top of other applications or just the window the panel is contai 
>ned within. ({{ Bug("451015") }}). 
257      </li>
258      <li>
259        <a class="internal" href="/En/HTTP_access_control" title=
>"en/HTTP access control">Cross-site access controls for HTTP</a>& 
>nbsp;are now supported. 
260      </li>
261      <li>
262        <a class="internal" href="/En/Using_XMLHttpRequest#Cross-
>site%20XMLHttpRequest" title="En/Using XMLHttpRequest#Cross-site  
>XMLHttpRequest">Cross-site XMLHttpRequest</a> is now supported ({ 
>{ Bug("389508") }}). 
263      </li>
264      <li>
265        <a class="external" href="/En/Using_XMLHttpRequest#Monito
>ring_progress" title="http://developer.mozilla.org/editor/fckedit 
>or/core/editor/En/Using_XMLHttpRequest#Monitoring_progress">Progr 
>ess events for XMLHttpRequest</a> are now supported.&nbsp; See al 
>so the {{ interface("nsIDOMProgressEvent") }}, {{ interface("nsIX 
>MLHttpRequestEventTarget") }}, and {{ interface("nsIXMLHttpReques 
>tUpload") }}&nbsp;interfaces. 
266      </li>
267      <li>
268        <a class="internal" href="/En/Supporting_private_browsing
>_mode" title="En/Supporting private browsing mode">Private browsi 
>ng</a>. 
269      </li>
270      <li>DNS&nbsp;prefetching support.&nbsp; See <a class="exter
>nal" href="http://bitsup.blogspot.com/2008/11/dns-prefetching-for 
>-firefox.html" title="http://bitsup.blogspot.com/2008/11/dns-pref 
>etching-for-firefox.html">this blog post</a> and {{ bug("453403") 
> }}. 
271      </li>
272    </ul>
273    <h4 name="Changes_to_interfaces">
274      Changes to interfaces
275    </h4>
276    <p>
277      There is a <a class="external" href="http://www.oxymoronica
>l.com/experiments/apidocs/compare/platform/1.9.1b2/1.9.1b1" title 
>="http://www.oxymoronical.com/experiments/apidocs/compare/platfor 
>m/1.9.1b2/1.9.1b1"><span class="external">list of all changes to  
>interfaces</span></a> between 1.9.0 and 1.9.1b2. 
278    </p>
279    <ul>
280      <li>{{ Interface("mozIStorageStatement") }} had the <code>i
>nitialize()</code> method removed as per {{ Bug("434796") }}. Con 
>sumers should use the {{ Ifmethod("mozIStorageConnection", "creat 
>eStatement") }} method instead to get a new statement object. 
281      </li>
282      <li>Asynchronous storage statements ({{ Bug("429986") }} an
>d {{ Bug("458811") }}). 
283      </li>
284      <li>Cookie creation times are now exposed to callers via th
>e <code>creationTime</code> attribute of the {{ Interface("nsICoo 
>kie2") }} interface. 
285      </li>
286      <li>Added a flag to <a class="internal" href="/en/nsIProtoc
>olHandler" title="En/NsIProtocolHandler">nsIProtocolHandler</a> ( 
><code>URI_IS_LOCAL_RESOURCE</code>) that is checked during chrome 
> registration to make sure a protocol is allowed to be registered 
>. See also Changes to chrome registration. 
287      </li>
288    </ul>
289    <h4>
290      Changes to chrome registration
291    </h4>
292    <p>
293      In {{ Bug("466582") }}, we closed a security hole that coul
>d allow for remote chrome.&nbsp; This would impact any add-on tha 
>t created a resource in their <code>chrome.manifest</code> file t 
>hat referenced a web site.&nbsp; This bug added a flag to <a clas 
>s="internal" href="/en/nsIProtocolHandler" title="En/NsIProtocolH 
>andler">nsIProtocolHandler</a> that indicates the protocol is saf 
>e to register as chrome.&nbsp; Any add-on that creates their own  
>protocol handler and tries to register it in their <code>chrome.m 
>anifest</code> will have to add the new flag (<code>URI_IS_LOCAL_ 
>RESOURCE</code>) to work. 
294    </p>
295    <p>
296      &nbsp;
297    </p>
298    <h3 name="Notable_bugs_fixed">
299      For theme developers
300    </h3>
301    <p>
302      Please see <a class="internal" href="/En/Theme_changes_in_F
>irefox_3.1" title="En/Theme changes in Firefox 3.1">Theme changes 
> in Firefox 3.1</a>. 
303    </p>
304    <h3 name="Notable_bugs_fixed">
305      Notable bugs fixed
306    </h3>
307    <ul>
308      <li>&lt;keyset&gt;s now can be removed ({{ Bug("437640") }}
>). 
309      </li>
310    </ul>
311    <h3 name="See_also">
312      See also
313    </h3>
314    <ul>
315      <li>{{ mediawiki.interwiki('wikimo', 'Firefox3.1', 'Firefox
> 3.1 planning center') }} 
316      </li>
317      <li>
318        <a href="/en/Firefox_3_for_developers" title="en/Firefox_
>3_for_developers">Firefox 3 for developers</a> 
319      </li>
320      <li>
321        <a href="/en/Firefox_2_for_developers" title="en/Firefox_
>2_for_developers">Firefox 2 for developers</a> 
322      </li>
323      <li>
324        <a href="/en/Firefox_1.5_for_developers" title="en/Firefo
>x_1.5_for_developers">Firefox 1.5 for developers</a> 
325      </li>
326    </ul>
327    <p>
328      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp
>;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
329    </p>
330    <p>
331      {{ languages( { "fr": "fr/Firefox_3.1_pour_les_d\u00e9velop
>peurs", "ja": "ja/Firefox_3.1_for_developers", "zh-tw": "zh_tw/Fi 
>refox_3.1_技術資訊" } ) }} 

Back to History