mozilla

Compare Revisions

Firefox 3.5 for developers

Change Revisions

Revision 77249:

Revision 77249 by wmr89502270 on

Revision 77250:

Revision 77250 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 77249
Revision 77250
t8      testt8      {{ mediawiki.interwiki('wikimo', 'Firefox3.1', 'Firefox 3.1
 >') }}, 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