Firefox 3.6 para desenvolvedores

  • Revision slug: Firefox_3.6_para_desenvolvedores
  • Revision title: Firefox 3.6 para desenvolvedores
  • Revision id: 111056
  • Created:
  • Creator: Verruckt
  • Is current revision? Não
  • コメント no wording changes

Revision Content

O Firefox 3.6 – codinome Namoroka – será baseado no Gecko 1.9.2. Por favor colete informações sobre mudanças que afetarão os desenvolvedores aqui, e nossos felizes gnomos da documentação útil assegurarão que os artigos sejam escritos para explicar o seu trabalho pesado de codificação.

NotaPara mais informações sobre como ter certeza se as mudanças foram propriamente documentadas, por favor veja esta postagem (EN).

Firefox 3.6 beta 3  foi liberado.

Para desenvolvedores de websites e aplicações

CSS

  • A propriedade background-size do CSS 3 Backgrounds and Borders draft é suportada sob o nome {{ cssxref("-moz-background-size") }}. {{ bug("189519") }}
  • O suporte para gradientes proposto pela Mozilla, implementado pelas novas propriedades {{ cssxref("-moz-linear-gradient") }} e {{ cssxref("-moz-radial-gradient") }}, é suportado por {{ Cssxref("background-image") }}. (Note mudanças na sintaxe entre beta 1 e beta 2). {{ bug("513395") }}
  • Múltiplas imagens de fundo são agora suportadas pela propriedade {{ cssxref("background") }} e pelas propriedades para as quais há manuscrito.
  • A propriedade {{ cssxref("pointer-events") }} é agora suportada; isto permite ao conteúdo especificar quando um elemento pode ser o alvo dos eventos do ponteiro do mouse ou não.
  • A unidade de comprimento {{ cssxref("length#Relative_length_units","rem") }} do CSS3 Values and Units agora é suportada. {{ bug("472195") }}
  • {{ Cssxref("image-rendering") }} é suportada para imagens, imagens de fundo, vídeos e telas. {{ bug("423756") }}
  • {{ Cssxref("text-align") }}:end é agora suportada. {{ bug("299837") }}
  • Mudanças no DOM para elementos usando os tipos de tabela {{ Cssxref("display") }} agora funcionam muito melhor.
  • Você pode determinar quanto o conteúdo está sendo renderizado em um dispositivo com tela sensível a toque ou não, usando o novo seletor {{ Cssxref(":-moz-system-metric(touch-enabled)") }}. [ fixme: há eventos DOM também. ] {{ bug("503042") }}
  • Adicionadas {{ cssxref(":-moz-locale-dir(ltr)") }} e {{ cssxref(":-moz-locale-dir(rtl)") }} para facilitar a customização de arranjos baseados em quando a interface do usuário está sendo exibida usando uma localidade da esquerda para a direita ou da direita para a esquerda. {{ bug("478416") }}
  • Adicionado suporte para a pseudo-classe {{ cssxref(":indeterminate") }}, que corresponde elementos checkbox input aos quais o atributo indeterminate é istrue.
  • {{ cssxref("@font-face") }} agora suporta o novo formato de fontes web WOFF. {{ bug("507970") }}
  • Adicionadas novas características de mídia para Mozilla-specific system metrics. Isto permite ao conteúdo checar a disponibilidade das características como suporte à tela sensível ao toque, mais seguramente.

HTML

HTML5 video supports poster frames
The poster attribute is now supported for the video element, allowing content to specify a poster frame to be displayed until the video begins to play.
Checkboxes and radio buttons support the indeterminate property
HTML input elements of types checkbox and radio now support the indeterminate property, which allows a third, "indeterminate" state.
Canvas image smoothing can be controlled
The new mozImageSmoothingEnabled property can be used to turn on and off image smoothing when scaling in canvas elements.
Using files from web applications
Support for the new HTML5 File API has been added to Gecko, making it possible for web applications to access local files selected by the user. This includes support for selecting multiple files using the input type="file" HTML element's new multiple attribute.

JavaScript

Gecko 1.9.2 introduces JavaScript 1.8.2, which adds a number of language features from the ECMAScript 5 standard:

  • Date.parse() can now parse ISO 8601 dates like YYYY-MM-DD.
  • The prototype property of function instances is no longer enumerable.

DOM

Web workers can now self-terminate
Workers now support the {{ ifmethod("nsIWorkerScope", "close") }} method, which allows them to terminate themselves.
Drag and drop now supports files
The DataTransfer object provided to drag listeners now includes a list of files that were dragged.
Detecting device orientation
Content can now detect the orientation of the device if it has a supported accelerometer, using the MozOrientation event; see window.onmozorientation for details. Firefox 3.6 supports the accelerometer in Mac laptops.
Detecting document width and height changes
The new MozScrollAreaChanged event is dispatched whenever the document's scrollWidth and/or scrollHeight properties change.
  • The reorder event is now sent to embedded frames and iframes when their document is loaded. See {{ bug("420845") }}.
  • The getBoxObjectFor() method has been removed, as it was non-standard and exposed even more non-standard stuff to the web. See {{ bug("340571") }}. Also affects mootools which uses this call for Gecko detection. See this mootools bug.
  • The new mozInnerScreenX and mozInnerScreenY properties on DOM windows have been added; these return the screen coordinates of the top-left corner of the window's viewport.
  • The new mozScreenPixelsPerCSSPixel property, accessible only to chrome, provides a conversion factor between CSS pixels and screen pixels; this value can vary based on the zoom level of the content.
  • When the page's URI's document fragment identifier (the part after the "#" (hash) character) changes, a new hashchange event is sent to the page. Seewindow.onhashchange for more information. {{ bug("385434") }}
  • The attribute document.readyState is now supported. {{ bug("347174") }}
  • Support for HTML5's element.classList to allow easier handling of the class attribute. {{ bug("501257") }}
  • localName and namespaceURI in HTML documents now behave like they do in XHTML documents: localName returns in lower case and namespaceURI for HTML elements is "http://www.w3.org/1999/xhtml".
  • Support has been added for addresses in geolocation via the {{ interface("nsIDOMGeoPositionAddress") }} interface and a new field added to {{ interface("nsIDOMGeoPosition") }}.

XPath

The choose() XPath method is now supported
The choose() method is now supported by our implementation of XPath.

For XUL and add-on developers

If you're an extension developer, you should start by reading Updating extensions for Firefox 3.6, which offers a helpful overview of what changes may affect your extension. Plug-in developers should read Updating plug-ins for Firefox 3.6.

IID changes between beta 1 and beta 2

The following interfaces were changed for Gecko 1.9.2, but their IIDs were inadvertently left unchanged in Firefox 3.6 beta 1. They have been changed for Firefox 3.6 beta 2.

  • {{ interface("nsIDOMNSDataTransfer") }}
  • {{ interface("nsIDOMNotifyPaintEvent") }}
  • {{ interface("nsIPluginInstanceOwner") }}
  • {{ interface("nsIPluginStreamInfo") }}
  • {{ interface("nsIHandlerInfo") }}
  • {{ interface("nsIMIMEInfo") }}
  • {{ interface("nsINavHistoryResultViewer") }}
  • {{ interface("nsIMemoryReporterManager") }}
  • {{ interface("nsICrashReporter") }}

New features

Detecting device orientation
Content can now detect the orientation of the device if it has a supported accelerometer, using the MozOrientation event; see window.onmozorientation for details. Firefox 3.6 supports the accelerometer in Mac laptops.
Monitoring HTTP activity
You can now monitor HTTP transactions to observe requests and responses in real time.
Working with the Windows taskbar
It's now possible to customize the appearance of windows in the taskbar in Windows 7 or later.

Places

  • Places queries can now specify whether or not to include redirected pages in results. See {{ bug("428690") }}.
  • Added the new {{ ifmethod("nsIFaviconService", "expireAllFavicons") }} method to the {{ interface("nsIFaviconService") }} interface.

Storage

Locale-aware collation of data is now supported by the Storage API
Gecko 1.9.2 added several new collation methods to provide optimized collation (sorting) of results using locale-aware techniques.
Properties on a statement can now be enumerated
You can now use a for..in enumeration to enumerate all the properties on a statement.
Asynchronously bind multiple sets of parameters and execute a statement.
See {{ bug("490085") }} for details. Documentation coming soon.

Preferences

  • The {{ interface("nsIContentPrefService") }} interface has two new methods: {{ ifmethod("nsIContentPrefService", "getPrefsByName") }} and {{ ifmethod("nsIContentPrefService", "removePrefsByName") }}.

Themes

See Updating themes for Firefox 3.6 for details.

Miscellaneous

  • Firefox will no longer load third-party components installed in its internal components directory. This helps to ensure stability by preventing buggy third-party components from being executed. Developers that install components this way must repackage their components as XPI packages so they can be installed as standard add-ons.
  • contents.rdf is no longer supported for registering chrome in extensions. You must now use the chrome.manifest file instead. See {{ bug("492008") }}.
  • Added support for hiding the menu bar automatically. See {{ bug("477256") }}.
  • Added support for the container-live-role attribute to objects. See {{ bug("391829") }}.
  • The tabs-closebutton binding has been removed. See {{ bug("500971") }}.
  • Added support to {{ interface("nsISound") }} for playing sounds based on events that have occurred. See {{ bug("502799") }}.
  • The syntax for the {{ interface("nsITreeView") }} methods {{ ifmethod("nsITreeView", "canDrop") }} and {{ ifmethod("nsITreeView", "drop") }} has changed to support the new drag & drop API introduced in Gecko 1.9. See {{ bug("455590") }}.
  • Added support to snap the mouse cursor to the default button of dialog or wizard on Windows, see {{ bug("76053") }}. This is processed automatically by dialog and wizard element. But if a XUL application creates a window using the window element and it has a default button, it needs to call {{ ifmethod("nsIDOMChromeWindow", "notifyDefaultButtonLoaded") }} during the window's onload event handler.
  • The {{ interface("nsILocalFileMac") }} interface has had two methods removed: setFileTypeAndCreatorFromMIMEType() andsetFileTypeAndCreatorFromExtension().
  • The new NetUtils.jsm code module provides an easy-to-use method for asynchronously copying data from an input stream to an output stream.
  • The new openLocationLastURL.jsm code module makes it easy to read and change the value of the "Open Location" dialog box's remembered URL while properly taking private browsing mode into account.
  • On Windows, the {{ interface("nsIScreen") }} interface now reports 24 bit per pixel color depths when the graphics driver claims 32 bits, since 24 more accurately represents the actual number of color pixels in use.
  • The event_reorder event is now sent when the children of frames and iframes change, as well as when the main document's children change. See {{ bug("420845") }}.
  • Menu bars can now be hidden on Windows, using the new {{ XULAttr("autohide") }} attribute on the {{ XULElem("toolbar") }} XUL element.
  • The {{ xulmeth("loadOneTab") }} and {{ xulmeth("addTab") }} methods now accept a new relatedToCurrent parameter and, in addition, allow the parameters to be specified by name, since nearly all of the parameters are optional.
  • The "hidden" property is no longer supported in install manifests; it's no longer possible to prevent the user from seeing add-ons in the add-on manager window.
  • The @mozilla.org/webshell;1 component no longer exists; you need to use @mozilla.org/docshell;1 instead.
  • You can now register with the update-timer category to schedule timer events without having to instantiate the object that the timer will eventually call into; it will instead be instantiated when it's needed. See {{ ifmethod("nsIUpdateTimerManager", "registerTimer") }} for details.

Notable bug fixes

  • The {{ ifandmethod("nsIAccessibleTable", "selectRow") }} now correctly removes any current selection before selecting the specified row.

For Firefox/Gecko developers

Certain changes are only really interesting if you work on the internals of Firefox itself.

Interfaces merged

The following interfaces have been combined together:

  • nsIPluginTagInfo2 has been merged into nsIPluginTagInfo.
  • nsIPluginInstanceInternalnsIPPluginInstancePeernsIPluginInstancePeer1nsIPluginInstancePeer2, and nsIPluginInstancePeer3 have all been merged into nsIPluginInstance.
  • nsIWindowlessPlugInstPeer has been merged into nsIPluginInstance.
  • nsIPluginManager and nsIPluginManager2 have been merged into nsIPluginHost.

Interfaces removed

The following interfaces have been removed entirely because they were unused, unimplemented, or obsolete:

  • nsIFullScreen
  • nsIDOMSVGListener
  • nsIDOMSVGZoomListener
  • nsIInternetConfigService
  • nsIDKey
  • nsIEventHandler
  • nsIJRILiveConnectPIPeer
  • nsIJRILiveConnectPlugin
  • nsIScriptablePlugin
  • nsIClassicPluginFactory
  • nsIFileUtilities

Interfaces moved

The following interfaces have been relocated from their previous IDL files into new ones:

  • nsIDOMNSCSS2Properties is now located in its own IDL file (dom/interfaces/css/nsIDOMCSS2Properties.idl).
  • {{ interface("nsIUpdateTimerManager") }} is now located in its own IDL file.

A large number of interfaces have been moved. See Interfaces moved in Firefox 3.6 for a complete list.

Other interface changes

The following assorted changes have been made:

  • The nsIPlugin interface now inherits from {{ interface("nsISupports") }} instead of {{ interface("nsIFactory") }}.
  • The nsIPluginHost interface now inherits from {{ interface("nsISupports") }} instead of {{ interface("nsIFactory") }}.
  • The nsIFrame interface now inherits from nsQueryFrame instead of {{ interface("nsISupports") }}.
  • The {{ interface("nsIDeviceContext") }} method getPaletteInfo() has been removed, as it was never implemented.
  • The {{ interface("nsIScriptContext") }} method reportPendingException() has been removed, since it was no longer being used.

Veja também

{{ languages( { "en": "en/Firefox_3.6_for_developers"} ) }}

{{ languages( { "ja": "ja/Firefox_3.6_for_developers"} ) }}

Revision Source

<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">O Firefox 3.6 – codinome <a class="link-https" href="https://wiki.mozilla.org/Firefox/Namoroka" title="https://wiki.mozilla.org/Firefox/Namoroka">Namoroka</a> – será baseado no Gecko 1.9.2. Por favor colete informações sobre mudanças que afetarão os desenvolvedores aqui, e nossos felizes gnomos da documentação útil assegurarão que os artigos sejam escritos para explicar o seu trabalho pesado de codificação.</p>
<div class="note"><strong>Nota</strong><strong>: </strong>Para mais informações sobre como ter certeza se as mudanças foram propriamente documentadas, por favor <a class="external" href="http://www.bitstampede.com/2009/07/29/the-key-to-getting-developer-docs-updated/" title="http://www.bitstampede.com/2009/07/29/the-key-to-getting-developer-docs-updated/">veja esta postagem</a> (EN).</div>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><a class="external" href="/devnews/index.php/2009/11/18/firefox-beta-3-6-revision-3-now-available-for-download" title="https://developer.mozilla.org/devnews/index.php/2009/11/18/firefox-beta-3-6-revision-3-now-available-for-download">Firefox 3.6 beta 3</a>  foi liberado.</p>
<h2>Para desenvolvedores de websites e aplicações</h2>
<h3>CSS</h3>
<ul style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 25px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "> <li style="margin-bottom: 0.25em; ">A propriedade <code style="color: rgb(37, 34, 29); font-weight: inherit; ">background-size </code>do <a class="external" href="http://dev.w3.org/csswg/css3-background/" title="http://dev.w3.org/csswg/css3-background/#the-background-size-property">CSS 3 Backgrounds and Borders draft</a> é suportada sob o nome {{ cssxref("-moz-background-size") }}. {{ bug("189519") }}</li> <li style="margin-bottom: 0.25em; ">O suporte para gradientes proposto pela Mozilla, implementado pelas novas propriedades {{ cssxref("-moz-linear-gradient") }} e {{ cssxref("-moz-radial-gradient") }}, é suportado por {{ Cssxref("background-image") }}. (Note mudanças na sintaxe entre beta 1 e beta 2). {{ bug("513395") }}</li> <li style="margin-bottom: 0.25em; ">Múltiplas imagens de fundo são agora suportadas pela propriedade {{ cssxref("background") }} e pelas propriedades para as quais há manuscrito.</li> <li style="margin-bottom: 0.25em; ">A propriedade {{ cssxref("pointer-events") }} é agora suportada; isto permite ao conteúdo especificar quando um elemento pode ser o alvo dos eventos do ponteiro do mouse ou não.</li> <li style="margin-bottom: 0.25em; ">A unidade de comprimento {{ cssxref("length#Relative_length_units","rem") }} do <a class="external" href="http://www.w3.org/TR/css3-values/#lengths" title="http://www.w3.org/TR/css3-values/#lengths">CSS3 Values and Units</a> agora é suportada. {{ bug("472195") }}</li> <li style="margin-bottom: 0.25em; ">{{ Cssxref("image-rendering") }} é suportada para imagens, imagens de fundo, vídeos e telas. {{ bug("423756") }}</li> <li style="margin-bottom: 0.25em; ">{{ Cssxref("text-align") }}:end é agora suportada. {{ bug("299837") }}</li> <li style="margin-bottom: 0.25em; ">Mudanças no DOM para elementos usando os tipos de tabela {{ Cssxref("display") }} agora funcionam muito melhor.</li> <li style="margin-bottom: 0.25em; ">Você pode determinar quanto o conteúdo está sendo renderizado em um dispositivo com tela sensível a toque ou não, usando o novo seletor {{ Cssxref(":-moz-system-metric(touch-enabled)") }}. [ fixme: há eventos DOM também. ] {{ bug("503042") }}</li> <li style="margin-bottom: 0.25em; ">Adicionadas {{ cssxref(":-moz-locale-dir(ltr)") }} e {{ cssxref(":-moz-locale-dir(rtl)") }} para facilitar a customização de arranjos baseados em quando a interface do usuário está sendo exibida usando uma localidade da esquerda para a direita ou da direita para a esquerda. {{ bug("478416") }}</li> <li style="margin-bottom: 0.25em; ">Adicionado suporte para a pseudo-classe {{ cssxref(":indeterminate") }}, que corresponde elementos <code style="color: rgb(37, 34, 29); font-weight: inherit; ">checkbox</code> <a class="internal" href="/En/HTML/Element/Input" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/HTML/Element/input"><code style="color: inherit; font-weight: inherit; ">input</code></a> aos quais o atributo <code style="color: rgb(37, 34, 29); font-weight: inherit; ">indeterminate</code> é is<code style="color: rgb(37, 34, 29); font-weight: inherit; ">true</code>.</li> <li style="margin-bottom: 0.25em; ">{{ cssxref("@font-face") }} agora suporta o novo formato de fontes web WOFF. {{ bug("507970") }}</li> <li style="margin-bottom: 0.25em; ">Adicionadas novas características de mídia para <a href="/En/CSS/Media_queries#Mozilla-specific_media_features" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="En/CSS/Media queries#Mozilla-specific media features">Mozilla-specific system metrics</a>. Isto permite ao conteúdo checar a disponibilidade das características como suporte à tela sensível ao toque, mais seguramente.</li>
</ul>
<h3>HTML</h3>
<dl style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "> <dt style="font-style: normal; font-weight: bold; ">HTML5 video supports poster frames</dt> <dd style="margin-left: 0px; margin-bottom: 20px; padding-left: 16px; border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: rgb(153, 153, 153); margin-top: 0px; margin-right: 0px; padding-top: 2px; padding-right: 0px; padding-bottom: 4px; ">The <code style="color: rgb(37, 34, 29); font-weight: inherit; ">poster</code> attribute is now supported for the <a class="internal" href="/En/HTML/Element/Video" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="En/HTML/Element/Video"><code style="color: inherit; font-weight: inherit; ">video</code></a> element, allowing content to specify a poster frame to be displayed until the video begins to play.</dd> <dt style="font-style: normal; font-weight: bold; ">Checkboxes and radio buttons support the <code style="color: rgb(37, 34, 29); font-weight: inherit; ">indeterminate</code> property</dt> <dd style="margin-left: 0px; margin-bottom: 20px; padding-left: 16px; border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: rgb(153, 153, 153); margin-top: 0px; margin-right: 0px; padding-top: 2px; padding-right: 0px; padding-bottom: 4px; ">HTML <a class="internal" href="/En/HTML/Element/Input" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/HTML/Element/input"><code style="color: inherit; font-weight: inherit; ">input</code></a> elements of types <code style="color: rgb(37, 34, 29); font-weight: inherit; ">checkbox</code> and <code style="color: rgb(37, 34, 29); font-weight: inherit; ">radio</code> now support the indeterminate property, which allows a third, "indeterminate" state.</dd> <dt style="font-style: normal; font-weight: bold; ">Canvas image smoothing can be controlled</dt> <dd style="margin-left: 0px; margin-bottom: 20px; padding-left: 16px; border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: rgb(153, 153, 153); margin-top: 0px; margin-right: 0px; padding-top: 2px; padding-right: 0px; padding-bottom: 4px; ">The new <a class="internal" href="/en/Canvas_tutorial/Using_images#Controlling_image_scaling_behavior" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/Canvas tutorial/Using images#Controlling image scaling behavior"><code style="color: inherit; font-weight: inherit; ">mozImageSmoothingEnabled</code></a> property can be used to turn on and off image smoothing when scaling in <a class="internal" href="/en/HTML/Element/canvas" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/HTML/Element/canvas"><code style="color: inherit; font-weight: inherit; ">canvas</code></a> elements.</dd> <dt style="font-style: normal; font-weight: bold; "><a href="/en/Using_files_from_web_applications" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/Using files from web applications">Using files from web applications</a></dt> <dd style="margin-left: 0px; margin-bottom: 20px; padding-left: 16px; border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: rgb(153, 153, 153); margin-top: 0px; margin-right: 0px; padding-top: 2px; padding-right: 0px; padding-bottom: 4px; ">Support for the new HTML5 File API has been added to Gecko, making it possible for web applications to access local files selected by the user. This includes support for selecting multiple files using the <code style="color: rgb(37, 34, 29); font-weight: inherit; ">input type="file"</code> HTML element's new <code style="color: rgb(37, 34, 29); font-weight: inherit; ">multiple</code> attribute.</dd>
</dl>
<h3>JavaScript</h3>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">Gecko 1.9.2 introduces JavaScript 1.8.2, which adds a number of language features from the <a href="/En/JavaScript/ECMAScript_5_support_in_Mozilla" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="https://developer.mozilla.org/En/JavaScript/ECMAScript_5_support_in_Mozilla">ECMAScript 5 standard</a>:</p>
<ul style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 25px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "> <li style="margin-bottom: 0.25em; "><a href="/en/Core_JavaScript_1.5_Reference/Global_Objects/Date/parse" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/Core JavaScript 1.5 Reference/Global Objects/Date/parse"><code style="color: inherit; font-weight: inherit; ">Date.parse()</code></a> can now parse ISO 8601 dates like YYYY-MM-DD.</li> <li style="margin-bottom: 0.25em; "> <p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">The <a href="/en/Core_JavaScript_1.5_Reference/Global_Objects/Function/prototype" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/Core JavaScript 1.5 Reference/Global Objects/Function/prototype"><code style="color: inherit; font-weight: inherit; ">prototype</code></a> property of function instances is no longer enumerable.</p> </li>
</ul>
<dl style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "> <h3>DOM</h3> <dl style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "> <dt style="font-style: normal; font-weight: bold; ">Web workers can now self-terminate</dt> <dd style="margin-left: 0px; margin-bottom: 20px; padding-left: 16px; border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: rgb(153, 153, 153); margin-top: 0px; margin-right: 0px; padding-top: 2px; padding-right: 0px; padding-bottom: 4px; ">Workers now support the {{ ifmethod("nsIWorkerScope", "close") }} method, which allows them to terminate themselves.</dd> <dt style="font-style: normal; font-weight: bold; ">Drag and drop now supports files</dt> <dd style="margin-left: 0px; margin-bottom: 20px; padding-left: 16px; border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: rgb(153, 153, 153); margin-top: 0px; margin-right: 0px; padding-top: 2px; padding-right: 0px; padding-bottom: 4px; ">The <a href="/En/DragDrop/DataTransfer" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/DragDrop/DataTransfer"><code style="color: inherit; font-weight: inherit; ">DataTransfer</code></a> object provided to drag listeners now includes a list of files that were dragged.</dd> <dt style="font-style: normal; font-weight: bold; "><a href="/en/Detecting_device_orientation" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/Detecting device orientation">Detecting device orientation</a></dt> <dd style="margin-left: 0px; margin-bottom: 20px; padding-left: 16px; border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: rgb(153, 153, 153); margin-top: 0px; margin-right: 0px; padding-top: 2px; padding-right: 0px; padding-bottom: 4px; ">Content can now detect the orientation of the device if it has a supported accelerometer, using the <code style="color: rgb(37, 34, 29); font-weight: inherit; ">MozOrientation</code> event; see <a href="/en/DOM/window.onmozorientation" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/DOM/window.onmozorientation"><code style="color: inherit; font-weight: inherit; ">window.onmozorientation</code></a> for details. Firefox 3.6 supports the accelerometer in Mac laptops.</dd> <dt style="font-style: normal; font-weight: bold; "><a href="/en/DOM/Detecting_document_width_and_height_changes" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/DOM/Detecting document width and height changes">Detecting document width and height changes</a></dt> <dd style="margin-left: 0px; margin-bottom: 20px; padding-left: 16px; border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: rgb(153, 153, 153); margin-top: 0px; margin-right: 0px; padding-top: 2px; padding-right: 0px; padding-bottom: 4px; ">The new <code style="color: rgb(37, 34, 29); font-weight: inherit; ">MozScrollAreaChanged</code> event is dispatched whenever the document's <code style="color: rgb(37, 34, 29); font-weight: inherit; ">scrollWidth</code> and/or <code style="color: rgb(37, 34, 29); font-weight: inherit; ">scrollHeight</code> properties change.</dd> </dl> <ul style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 25px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "> <li style="margin-bottom: 0.25em; ">The reorder event is now sent to embedded frames and iframes when their document is loaded. See {{ bug("420845") }}.</li> <li style="margin-bottom: 0.25em; ">The <code style="color: rgb(37, 34, 29); font-weight: inherit; ">getBoxObjectFor()</code> method has been <strong>removed</strong>, as it was non-standard and exposed even more non-standard stuff to the web. See {{ bug("340571") }}. Also affects mootools which uses this call for Gecko detection. See this <a class="link-https" href="https://mootools.lighthouseapp.com/projects/2706-mootools/tickets/155" title="https://mootools.lighthouseapp.com/projects/2706-mootools/tickets/155">mootools bug</a>.</li> <li style="margin-bottom: 0.25em; ">The new <a class="internal" href="/en/DOM/window.mozInnerScreenX" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/DOM/window.mozInnerScreenX"><code style="color: inherit; font-weight: inherit; ">mozInnerScreenX</code></a> and <a class="internal" href="/en/DOM/window.mozInnerScreenY" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/DOM/window.mozInnerScreenY"><code style="color: inherit; font-weight: inherit; ">mozInnerScreenY</code></a> properties on DOM windows have been added; these return the screen coordinates of the top-left corner of the window's viewport.</li> <li style="margin-bottom: 0.25em; ">The new <a class="internal" href="/en/DOM/window.mozScreenPixelsPerCSSPixel" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/DOM/window.mozScreenPixelsPerCSSPixel"><code style="color: inherit; font-weight: inherit; ">mozScreenPixelsPerCSSPixel</code></a> property, accessible only to chrome, provides a conversion factor between CSS pixels and screen pixels; this value can vary based on the zoom level of the content.</li> <li style="margin-bottom: 0.25em; ">When the page's URI's document fragment identifier (the part after the "#" (hash) character) changes, a new <code style="color: rgb(37, 34, 29); font-weight: inherit; ">hashchange</code> event is sent to the page. See<a class="internal" href="/en/DOM/window.onhashchange" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="window.onhashchange">window.onhashchange</a> for more information. {{ bug("385434") }}</li> <li style="margin-bottom: 0.25em; ">The attribute <a class="internal" href="/en/DOM/document.readyState" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/DOM/document.readyState"><code style="color: inherit; font-weight: inherit; ">document.readyState</code></a> is now supported. {{ bug("347174") }}</li> <li style="margin-bottom: 0.25em; ">Support for HTML5's <code style="color: rgb(37, 34, 29); font-weight: inherit; "><a class="internal" href="/en/DOM/element.classList" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="element.classList">element.classList</a></code> to allow easier handling of the class attribute. {{ bug("501257") }}</li> <li style="margin-bottom: 0.25em; "><code style="color: rgb(37, 34, 29); font-weight: inherit; ">localName</code> and <code style="color: rgb(37, 34, 29); font-weight: inherit; ">namespaceURI</code> in HTML documents now behave like they do in XHTML documents: <code style="color: rgb(37, 34, 29); font-weight: inherit; ">localName</code> returns in lower case and <code style="color: rgb(37, 34, 29); font-weight: inherit; ">namespaceURI</code> for HTML elements is <code style="color: rgb(37, 34, 29); font-weight: inherit; ">"<a class=" external" href="http://www.w3.org/1999/xhtml" rel="freelink">http://www.w3.org/1999/xhtml</a>"</code>.</li> <li style="margin-bottom: 0.25em; ">Support has been added for addresses in geolocation via the {{ interface("nsIDOMGeoPositionAddress") }} interface and a new field added to {{ interface("nsIDOMGeoPosition") }}.</li> </ul> <h3>XPath</h3> <dl style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "> <dt style="font-style: normal; font-weight: bold; ">The choose() XPath method is now supported</dt> <dd style="margin-left: 0px; margin-bottom: 20px; padding-left: 16px; border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: rgb(153, 153, 153); margin-top: 0px; margin-right: 0px; padding-top: 2px; padding-right: 0px; padding-bottom: 4px; ">The <a href="/en/XPath/Functions/choose" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/XPath/Functions/choose"><code style="color: inherit; font-weight: inherit; ">choose()</code></a> method is now supported by our implementation of <a href="/en/XPath" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/XPath">XPath</a>.</dd> </dl> <h2>For XUL and add-on developers</h2> <p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">If you're an extension developer, you should start by reading <a class="internal" href="/en/Updating_extensions_for_Firefox_3.6" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/Updating extensions for Firefox 3.6">Updating extensions for Firefox 3.6</a>, which offers a helpful overview of what changes may affect your extension. Plug-in developers should read <a class="internal" href="/en/Updating_plug-ins_for_Firefox_3.6" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/Updating plug-ins for Firefox 3.6">Updating plug-ins for Firefox 3.6</a>.</p> <h3>IID changes between beta 1 and beta 2</h3> <p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">The following interfaces were changed for Gecko 1.9.2, but their IIDs were inadvertently left unchanged in Firefox 3.6 beta 1. They have been changed for Firefox 3.6 beta 2.</p> <ul style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 25px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "> <li style="margin-bottom: 0.25em; ">{{ interface("nsIDOMNSDataTransfer") }}</li> <li style="margin-bottom: 0.25em; ">{{ interface("nsIDOMNotifyPaintEvent") }}</li> <li style="margin-bottom: 0.25em; ">{{ interface("nsIPluginInstanceOwner") }}</li> <li style="margin-bottom: 0.25em; ">{{ interface("nsIPluginStreamInfo") }}</li> <li style="margin-bottom: 0.25em; ">{{ interface("nsIHandlerInfo") }}</li> <li style="margin-bottom: 0.25em; ">{{ interface("nsIMIMEInfo") }}</li> <li style="margin-bottom: 0.25em; ">{{ interface("nsINavHistoryResultViewer") }}</li> <li style="margin-bottom: 0.25em; ">{{ interface("nsIMemoryReporterManager") }}</li> <li style="margin-bottom: 0.25em; ">{{ interface("nsICrashReporter") }}</li> </ul> <h3>New features</h3> <dl style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "> <dt style="font-style: normal; font-weight: bold; "><a href="/en/Detecting_device_orientation" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/Detecting device orientation">Detecting device orientation</a></dt> <dd style="margin-left: 0px; margin-bottom: 20px; padding-left: 16px; border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: rgb(153, 153, 153); margin-top: 0px; margin-right: 0px; padding-top: 2px; padding-right: 0px; padding-bottom: 4px; ">Content can now detect the orientation of the device if it has a supported accelerometer, using the <code style="color: rgb(37, 34, 29); font-weight: inherit; ">MozOrientation</code> event; see <a href="/en/DOM/window.onmozorientation" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/DOM/window.onmozorientation"><code style="color: inherit; font-weight: inherit; ">window.onmozorientation</code></a> for details. Firefox 3.6 supports the accelerometer in Mac laptops.</dd> <dt style="font-style: normal; font-weight: bold; "><a href="/en/Monitoring_HTTP_activity" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/Monitoring HTTP activity">Monitoring HTTP activity</a></dt> <dd style="margin-left: 0px; margin-bottom: 20px; padding-left: 16px; border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: rgb(153, 153, 153); margin-top: 0px; margin-right: 0px; padding-top: 2px; padding-right: 0px; padding-bottom: 4px; ">You can now monitor HTTP transactions to observe requests and responses in real time.</dd> <dt style="font-style: normal; font-weight: bold; "><a href="/en/Working_with_the_Windows_taskbar" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/Working with the Windows taskbar">Working with the Windows taskbar</a></dt> <dd style="margin-left: 0px; margin-bottom: 20px; padding-left: 16px; border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: rgb(153, 153, 153); margin-top: 0px; margin-right: 0px; padding-top: 2px; padding-right: 0px; padding-bottom: 4px; ">It's now possible to customize the appearance of windows in the taskbar in Windows 7 or later.</dd> </dl> <h3>Places</h3> <ul style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 25px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "> <li style="margin-bottom: 0.25em; ">Places queries can now specify whether or not to include redirected pages in results. See {{ bug("428690") }}.</li> <li style="margin-bottom: 0.25em; ">Added the new {{ ifmethod("nsIFaviconService", "expireAllFavicons") }} method to the {{ interface("nsIFaviconService") }} interface.</li> </ul> <h3>Storage</h3> <dl style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "> <dt style="font-style: normal; font-weight: bold; "><a href="/en/Storage#Collation_(sorting)" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/Storage#Collation (sorting)">Locale-aware collation of data is now supported by the Storage API</a></dt> <dd style="margin-left: 0px; margin-bottom: 20px; padding-left: 16px; border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: rgb(153, 153, 153); margin-top: 0px; margin-right: 0px; padding-top: 2px; padding-right: 0px; padding-bottom: 4px; ">Gecko 1.9.2 added several new collation methods to provide optimized collation (sorting) of results using locale-aware techniques.</dd> <dt style="font-style: normal; font-weight: bold; "><a href="/en/mozIStorageStatementParams#Enumeration_of_properties" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/mozIStorageStatementParams#Enumeration of properties">Properties on a statement can now be enumerated</a></dt> <dd style="margin-left: 0px; margin-bottom: 20px; padding-left: 16px; border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: rgb(153, 153, 153); margin-top: 0px; margin-right: 0px; padding-top: 2px; padding-right: 0px; padding-bottom: 4px; ">You can now use a <code style="color: rgb(37, 34, 29); font-weight: inherit; "><a class="internal" href="/en/Core_JavaScript_1.5_Reference/Statements/for...in" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="En/Core JavaScript 1.5 Reference/Statements/For...in">for..in</a></code> enumeration to enumerate all the properties on a statement.</dd> <dt style="font-style: normal; font-weight: bold; ">Asynchronously bind multiple sets of parameters and execute a statement.</dt> <dd style="margin-left: 0px; margin-bottom: 20px; padding-left: 16px; border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: rgb(153, 153, 153); margin-top: 0px; margin-right: 0px; padding-top: 2px; padding-right: 0px; padding-bottom: 4px; ">See {{ bug("490085") }} for details. Documentation coming soon.</dd> </dl> <h3>Preferences</h3> <ul style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 25px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "> <li style="margin-bottom: 0.25em; ">The {{ interface("nsIContentPrefService") }} interface has two new methods: {{ ifmethod("nsIContentPrefService", "getPrefsByName") }} and {{ ifmethod("nsIContentPrefService", "removePrefsByName") }}.</li> </ul> <h3>Themes</h3> <p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">See <a class="internal" href="/en/Updating_themes_for_Firefox_3.6" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/Updating themes for Firefox 3.6">Updating themes for Firefox 3.6</a> for details.</p> <h3>Miscellaneous</h3> <ul style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 25px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "> <li style="margin-bottom: 0.25em; ">Firefox will no longer load third-party components installed in its internal components directory. This helps to ensure stability by preventing buggy third-party components from being executed. Developers that install components this way must <a href="/en/Migrating_raw_components_to_add-ons" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/Migrating raw components to add-ons">repackage their components as XPI packages</a> so they can be installed as standard add-ons.</li> <li style="margin-bottom: 0.25em; "><code style="color: rgb(37, 34, 29); font-weight: inherit; ">contents.rdf</code> is no longer supported for registering chrome in extensions. You must now use the <a class="internal" href="/en/Install_Manifests" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/Install manifests"><code style="color: inherit; font-weight: inherit; ">chrome.manifest</code></a> file instead. See {{ bug("492008") }}.</li> <li style="margin-bottom: 0.25em; ">Added support for hiding the menu bar automatically. See {{ bug("477256") }}.</li> <li style="margin-bottom: 0.25em; ">Added support for the <code style="color: rgb(37, 34, 29); font-weight: inherit; ">container-live-role</code> attribute to objects. See {{ bug("391829") }}.</li> <li style="margin-bottom: 0.25em; ">The <code style="color: rgb(37, 34, 29); font-weight: inherit; ">tabs-closebutton</code> binding has been removed. See {{ bug("500971") }}.</li> <li style="margin-bottom: 0.25em; ">Added support to {{ interface("nsISound") }} for playing sounds based on events that have occurred. See {{ bug("502799") }}.</li> <li style="margin-bottom: 0.25em; ">The syntax for the {{ interface("nsITreeView") }} methods {{ ifmethod("nsITreeView", "canDrop") }} and {{ ifmethod("nsITreeView", "drop") }} has changed to support the new drag &amp; drop API introduced in Gecko 1.9. See {{ bug("455590") }}.</li> <li style="margin-bottom: 0.25em; ">Added support to snap the mouse cursor to the default button of dialog or wizard on Windows, see {{ bug("76053") }}. This is processed automatically by dialog and wizard element. But if a XUL application creates a window using the <code style="color: rgb(37, 34, 29); font-weight: inherit; ">window</code> element and it has a default button, it needs to call {{ ifmethod("nsIDOMChromeWindow", "notifyDefaultButtonLoaded") }} during the window's <code style="color: rgb(37, 34, 29); font-weight: inherit; ">onload</code> event handler.</li> <li style="margin-bottom: 0.25em; ">The {{ interface("nsILocalFileMac") }} interface has had two methods removed: <code style="color: rgb(37, 34, 29); font-weight: inherit; ">setFileTypeAndCreatorFromMIMEType()</code> and<code style="color: rgb(37, 34, 29); font-weight: inherit; ">setFileTypeAndCreatorFromExtension()</code>.</li> <li style="margin-bottom: 0.25em; ">The new <a class="internal" href="/en/JavaScript_code_modules/NetUtil.jsm" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/JavaScript code modules/NetUtil.jsm"><code style="color: inherit; font-weight: inherit; ">NetUtils.jsm</code></a> code module provides an easy-to-use method for asynchronously copying data from an input stream to an output stream.</li> <li style="margin-bottom: 0.25em; ">The new <a class="internal" href="/en/JavaScript_code_modules/openLocationLastURL.jsm" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/JavaScript code modules/openLocationLastURL.jsm"><code style="color: inherit; font-weight: inherit; ">openLocationLastURL.jsm</code></a> code module makes it easy to read and change the value of the "Open Location" dialog box's remembered URL while properly taking private browsing mode into account.</li> <li style="margin-bottom: 0.25em; ">On Windows, the {{ interface("nsIScreen") }} interface now reports 24 bit per pixel color depths when the graphics driver claims 32 bits, since 24 more accurately represents the actual number of color pixels in use.</li> <li style="margin-bottom: 0.25em; ">The <code style="color: rgb(37, 34, 29); font-weight: inherit; ">event_reorder</code> event is now sent when the children of frames and iframes change, as well as when the main document's children change. See {{ bug("420845") }}.</li> <li style="margin-bottom: 0.25em; ">Menu bars can now be hidden on Windows, using the new {{ XULAttr("autohide") }} attribute on the {{ XULElem("toolbar") }} XUL element.</li> <li style="margin-bottom: 0.25em; ">The {{ xulmeth("loadOneTab") }} and {{ xulmeth("addTab") }} methods now accept a new <code style="color: rgb(37, 34, 29); font-weight: inherit; ">relatedToCurrent</code> parameter and, in addition, allow the parameters to be specified by name, since nearly all of the parameters are optional.</li> <li style="margin-bottom: 0.25em; ">The "<a href="/en/Install_Manifests#hidden" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/Install Manifests#hidden">hidden</a>" property is no longer supported in install manifests; it's no longer possible to prevent the user from seeing add-ons in the add-on manager window.</li> <li style="margin-bottom: 0.25em; ">The <code style="color: rgb(37, 34, 29); font-weight: inherit; ">@mozilla.org/webshell;1</code> component no longer exists; you need to use <code style="color: rgb(37, 34, 29); font-weight: inherit; ">@mozilla.org/docshell;1</code> instead.</li> <li style="margin-bottom: 0.25em; ">You can now register with the update-timer category to schedule timer events without having to instantiate the object that the timer will eventually call into; it will instead be instantiated when it's needed. See {{ ifmethod("nsIUpdateTimerManager", "registerTimer") }} for details.</li> </ul> <h3>Notable bug fixes</h3> <ul style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 25px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "> <li style="margin-bottom: 0.25em; ">The {{ ifandmethod("nsIAccessibleTable", "selectRow") }} now correctly removes any current selection before selecting the specified row.</li> </ul> <h2>For Firefox/Gecko developers</h2> <p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">Certain changes are only really interesting if you work on the internals of Firefox itself.</p> <h3>Interfaces merged</h3> <p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">The following interfaces have been combined together:</p> <ul style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 25px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "> <li style="margin-bottom: 0.25em; "><code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIPluginTagInfo2</code> has been merged into <code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIPluginTagInfo</code>.</li> <li style="margin-bottom: 0.25em; "><code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIPluginInstanceInternal</code>, <code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIPPluginInstancePeer</code>, <code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIPluginInstancePeer1</code>, <code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIPluginInstancePeer2</code>, and <code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIPluginInstancePeer3</code> have all been merged into <code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIPluginInstance</code>.</li> <li style="margin-bottom: 0.25em; "><code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIWindowlessPlugInstPeer</code> has been merged into <code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIPluginInstance</code>.</li> <li style="margin-bottom: 0.25em; "><code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIPluginManager</code> and <code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIPluginManager2</code> have been merged into <code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIPluginHost</code>.</li> </ul> <h3>Interfaces removed</h3> <p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">The following interfaces have been removed entirely because they were unused, unimplemented, or obsolete:</p> <ul style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 25px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "> <li style="margin-bottom: 0.25em; "><code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIFullScreen<br> </code></li> <li style="margin-bottom: 0.25em; "><code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIDOMSVGListener<br> </code></li> <li style="margin-bottom: 0.25em; "><code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIDOMSVGZoomListener<br> </code></li> <li style="margin-bottom: 0.25em; "><code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIInternetConfigService<br> </code></li> <li style="margin-bottom: 0.25em; "><code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIDKey<br> </code></li> <li style="margin-bottom: 0.25em; "><code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIEventHandler<br> </code></li> <li style="margin-bottom: 0.25em; "><code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIJRILiveConnectPIPeer<br> </code></li> <li style="margin-bottom: 0.25em; "><code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIJRILiveConnectPlugin<br> </code></li> <li style="margin-bottom: 0.25em; "><code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIScriptablePlugin<br> </code></li> <li style="margin-bottom: 0.25em; "><code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIClassicPluginFactory<br> </code></li> <li style="margin-bottom: 0.25em; "><code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIFileUtilities</code></li> </ul> <h3>Interfaces moved</h3> <p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">The following interfaces have been relocated from their previous IDL files into new ones:</p> <ul style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 25px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "> <li style="margin-bottom: 0.25em; "><code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIDOMNSCSS2Properties</code> is now located in its own IDL file (<code style="color: rgb(37, 34, 29); font-weight: inherit; ">dom/interfaces/css/nsIDOMCSS2Properties.idl</code>).</li> <li style="margin-bottom: 0.25em; ">{{ interface("nsIUpdateTimerManager") }} is now located in its own IDL file.</li> </ul> <p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">A large number of interfaces have been moved. See <a href="/en/Interfaces_moved_in_Firefox_3.6" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="en/Interfaces moved in Firefox 3.6">Interfaces moved in Firefox 3.6</a> for a complete list.</p> <h3>Other interface changes</h3> <p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">The following assorted changes have been made:</p> <ul style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 25px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "> <li style="margin-bottom: 0.25em; ">The <code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIPlugin</code> interface now inherits from {{ interface("nsISupports") }} instead of {{ interface("nsIFactory") }}.</li> <li style="margin-bottom: 0.25em; ">The <code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIPluginHost</code> interface now inherits from {{ interface("nsISupports") }} instead of {{ interface("nsIFactory") }}.</li> <li style="margin-bottom: 0.25em; ">The <code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsIFrame</code> interface now inherits from <code style="color: rgb(37, 34, 29); font-weight: inherit; ">nsQueryFrame</code> instead of {{ interface("nsISupports") }}.</li> <li style="margin-bottom: 0.25em; ">The {{ interface("nsIDeviceContext") }} method <code style="color: rgb(37, 34, 29); font-weight: inherit; ">getPaletteInfo()</code> has been removed, as it was never implemented.</li> <li style="margin-bottom: 0.25em; ">The {{ interface("nsIScriptContext") }} method <code style="color: rgb(37, 34, 29); font-weight: inherit; ">reportPendingException()</code> has been removed, since it was no longer being used.</li> </ul> <h2>Veja também</h2>
<ul style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 25px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "> <li style="margin-bottom: 0.25em; "><a href="/Pt/Firefox_3.5_para_desenvolvedores" title="Pt/Firefox 3.5 para desenvolvedores">Firefox 3.5 para desenvolvedores</a></li> <li style="margin-bottom: 0.25em; "><a class="internal" href="/pt/Firefox_3_para_desenvolvedores" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="pt/Firefox 3 para desenvolvedores">Firefox 3 para desenvolvedores</a></li> <li style="margin-bottom: 0.25em; "><a class="internal" href="/pt/Firefox_2_para_desenvolvedores" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="pt/Firefox 2 para desenvolvedores">Firefox 2 para desenvolvedores</a></li> <li style="margin-bottom: 0.25em; "><a class="internal" href="/pt/Firefox_1.5_para_Desenvolvedores" style="text-decoration: none; color: rgb(4, 137, 183) !important; cursor: default; " title="pt/Firefox 1.5 para Desenvolvedores">Firefox 1.5 para desenvolvedores</a></li>
</ul>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">{{ languages( { "en": "en/Firefox_3.6_for_developers"} ) }}</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.7em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">{{ languages( { "ja": "ja/Firefox_3.6_for_developers"} ) }}</p></dl>
Revert to this revision