aboutsummaryrefslogtreecommitdiff
path: root/files/ru/mozilla
diff options
context:
space:
mode:
authorFlorian Merz <me@fiji-flo.de>2021-02-11 14:51:05 +0100
committerFlorian Merz <me@fiji-flo.de>2021-02-11 14:51:05 +0100
commitc058fa0fb22dc40ef0225b21a97578cddd0aaffa (patch)
treedf20f8b4c724b61cb9c34cdb450a7ac77d690bd0 /files/ru/mozilla
parent8260a606c143e6b55a467edf017a56bdcd6cba7e (diff)
downloadtranslated-content-c058fa0fb22dc40ef0225b21a97578cddd0aaffa.tar.gz
translated-content-c058fa0fb22dc40ef0225b21a97578cddd0aaffa.tar.bz2
translated-content-c058fa0fb22dc40ef0225b21a97578cddd0aaffa.zip
unslug ru: move
Diffstat (limited to 'files/ru/mozilla')
-rw-r--r--files/ru/mozilla/add-ons/webextensions/internationalization/index.html (renamed from files/ru/mozilla/add-ons/webextensions/интернационализация/index.html)0
-rw-r--r--files/ru/mozilla/add-ons/webextensions/modify_a_web_page/index.html (renamed from files/ru/mozilla/add-ons/webextensions/модификация_веб_страницы/index.html)0
-rw-r--r--files/ru/mozilla/add-ons/webextensions/перевод/index.html218
-rw-r--r--files/ru/mozilla/developer_guide/introduction/index.html24
-rw-r--r--files/ru/mozilla/developer_guide/source_code/index.html (renamed from files/ru/mozilla/developer_guide/исходный_код/index.html)0
-rw-r--r--files/ru/mozilla/firefox/releases/1.5/using_firefox_1.5_caching/index.html210
-rw-r--r--files/ru/mozilla/firefox/releases/3.5/index.html312
-rw-r--r--files/ru/mozilla/firefox/releases/3/index.html299
8 files changed, 845 insertions, 218 deletions
diff --git a/files/ru/mozilla/add-ons/webextensions/интернационализация/index.html b/files/ru/mozilla/add-ons/webextensions/internationalization/index.html
index 36a37820d9..36a37820d9 100644
--- a/files/ru/mozilla/add-ons/webextensions/интернационализация/index.html
+++ b/files/ru/mozilla/add-ons/webextensions/internationalization/index.html
diff --git a/files/ru/mozilla/add-ons/webextensions/модификация_веб_страницы/index.html b/files/ru/mozilla/add-ons/webextensions/modify_a_web_page/index.html
index 0f58364706..0f58364706 100644
--- a/files/ru/mozilla/add-ons/webextensions/модификация_веб_страницы/index.html
+++ b/files/ru/mozilla/add-ons/webextensions/modify_a_web_page/index.html
diff --git a/files/ru/mozilla/add-ons/webextensions/перевод/index.html b/files/ru/mozilla/add-ons/webextensions/перевод/index.html
deleted file mode 100644
index 4ceb3eab28..0000000000
--- a/files/ru/mozilla/add-ons/webextensions/перевод/index.html
+++ /dev/null
@@ -1,218 +0,0 @@
----
-title: Отладка
-slug: Mozilla/Add-ons/WebExtensions/Перевод
-tags:
- - Firefox
- - Mozilla
- - Отладка
- - Пособие
- - Предоставление Веб-страниц
-translation_of: Mozilla/Add-ons/WebExtensions/Debugging
----
-<div>{{AddonSidebar}}</div>
-
-<div>This article explains how you can use the Firefox developer tools to debug extensions built with WebExtension APIs.</div>
-
-<p>An extension can consist of various different pieces — background scripts, popups, options pages, content scripts, sidebars — and you'll need to use a slightly different workflow to debug each piece. So each piece gets a top-level section in this article, and the intention is that these sections can be read in isolation. We'll begin by introducing the Add-on Debugger, which you'll use to debug most of the pieces of your extension.</p>
-
-<ul>
-</ul>
-
-<h2 id="The_Add-on_Debugger">The Add-on Debugger</h2>
-
-<p>For most of this article we'll use the Add-on Debugger. To open the Add-on Debugger:</p>
-
-<ul>
- <li>open Firefox</li>
- <li>enter "about:debugging" in the URL bar</li>
- <li>check the box labelled "Enable add-on debugging"</li>
- <li>click the "Debug" button next to your extension</li>
- <li>click "OK" in the warning dialog.</li>
-</ul>
-
-<p>You'll then see a new window open. The main Firefox window will be switched into the foreground, so you'll have to click on the new window to bring it in front.</p>
-
-<p>{{EmbedYouTube("G2a65ewjfj0")}}</p>
-
-<p>This new window is sometimes called a "toolbox" and contains the debugging tools we'll use. It has a tabbed interface: the row of tabs along the top lets you switch between the different tools:</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/16309/add-on-debugger.png" style="display: block; height: 472px; margin-left: auto; margin-right: auto; width: 922px;"></p>
-
-<p>In this article we'll use three debugging tools:</p>
-
-<ul>
- <li><a href="/en-US/docs/Tools/Web_Console">The Console</a>: this displays messages logged by the extension as well as error messages logged by the browser as it runs the extension. It also provides a command line enabling you to execute JavaScript in the extension's context.</li>
- <li><a href="/en-US/docs/Tools/Debugger">The Debugger</a>: this enables you to set breakpoints and watchpoints in your extension's JavaScript, and examine and modify its internal state.</li>
- <li><a href="/en-US/docs/Tools/Page_Inspector">The Inspector</a>: this enables you to examine and modify the HTML and CSS used to build your extension's pages.</li>
-</ul>
-
-<h2 id="Debugging_background_scripts">Debugging background scripts</h2>
-
-<div class="note">
-<p>The examples in this section use the "notify-link-clicks-l10n" example extension. If you'd like to play along, you can find this example in the <a href="https://github.com/mdn/webextensions-examples">webextensions-examples</a> repository.</p>
-</div>
-
-<p><a href="/en-US/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Background_scripts">Background scripts</a> stay loaded for the lifetime of the extension. They're loaded inside an invisible "background page": by default this is an empty HTML document, but you can specify your own HTML content using the <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/background">"background" key in "manifest.json"</a>.</p>
-
-<p>You can debug background scripts using the <a href="/en-US/Add-ons/WebExtensions/Debugging_(Firefox_50_onwards)#The_Add-on_Debugger">Add-on Debugger</a>.</p>
-
-<p>In the Add-on Debugger's Console you'll see logged output, including calls to <code><a href="/en-US/docs/Web/API/Console/log">console.log()</a></code> from your own background scripts and any errors the browser raises as it executes them. Note that at the moment, the console shows all errors raised by the browser, not just errors related to your extensions code.</p>
-
-<p>For example, the <a href="https://github.com/mdn/webextensions-examples/tree/master/notify-link-clicks-i18n">notify-link-clicks-i18n</a> example extension logs a message from its background script when it receives a message from one of its content scripts:</p>
-
-<p>{{EmbedYouTube("WDQsBU-rpN0")}}</p>
-
-<p>Using the Console's command line, you can access and modify the objects created by your background scripts.</p>
-
-<p>For example, here we call the <code>notify()</code> function defined in the extension's background script:</p>
-
-<p>{{EmbedYouTube("g-Qgf8Mc2wg")}}</p>
-
-<p>If you switch to the Debugger, you'll see all your extension's background scripts. You can set breakpoints, step through code, and do <a href="https://developer.mozilla.org/en-US/docs/Tools/Debugger">everything else you'd expect to be able to do in a debugger</a>.</p>
-
-<p>{{EmbedYouTube("MNeaz2jdmzY")}}</p>
-
-<p>If you press the Escape key while you're in the Debugger, the toolbox will be split, with the bottom half now occupied by the Console. While you're at a breakpoint, you can now modify the program's state using the console. See <a href="/en-US/docs/Tools/Web_Console/Split_console">Split console</a> for more on this.</p>
-
-<h2 id="Debugging_options_pages">Debugging options pages</h2>
-
-<p><a href="/en-US/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Options_pages">Options pages</a> are HTML pages that the extension developer can supply, that contain options for the extension. They are typically displayed in an iframe in the Add-ons Manager (to see the Add-ons Manager, visit the "about:addons" page).</p>
-
-<p>To debug options pages:</p>
-
-<ul>
- <li>open the <a href="/en-US/Add-ons/WebExtensions/Debugging_(Firefox_50_onwards)#The_Add-on_Debugger">Add-on Debugger</a> for your extension</li>
- <li>open your extension's option page.</li>
-</ul>
-
-<p>Any JavaScript sources it includes are then listed in the Debugger:</p>
-
-<p>{{EmbedYouTube("BUMG-M8tFF4")}}</p>
-
-<div class="note">
-<p>This video uses the <a href="https://github.com/mdn/webextensions-examples/tree/master/favourite-colourbeastify">favourite-colour</a> example extension.</p>
-</div>
-
-<p>You'll also see any messages logged by your code in the Add-on Debugger's Console.</p>
-
-<p>You can also use the Add-on Debugger to debug the page's HTML and CSS. First, though, you need to point the tools at the iframe that hosts the options page. To do this: open the options page, click the icon highlighted in the screenshot below, and select the options page from the drop-down list:</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/13863/toolbox-iframe.png" style="display: block; height: 417px; margin-left: auto; margin-right: auto; width: 876px;"></p>
-
-<p>Now switch to the Inspector tab, and you'll be able to examine and edit HTML and CSS for the page:</p>
-
-<p>{{EmbedYouTube("-2m3ubFAU94")}}</p>
-
-<h2 id="Debugging_popups">Debugging popups</h2>
-
-<p><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Popups">Popups</a> are dialogs that are attached to browser actions or page actions. They are specified using an HTML document that can include CSS and JavaScript sources for styling and behavior. Whenever the popup is visible, you can use the <a href="/en-US/Add-ons/WebExtensions/Debugging_(Firefox_50_onwards)#The_Add-on_Debugger">Add-on Debugger</a> to debug its code.</p>
-
-<p>One problem with popups is that if a popup is open and you click outside the popup, the popup is closed and its code is unloaded. This obviously makes them impossible to debug. To suppress this behavior, select Disable Popup Auto-Hide from the Elipsis menu as shown below:</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/16301/add-on-debugger.png" style="display: block; height: 612px; margin-left: auto; margin-right: auto; width: 876px;"></p>
-
-<p>Now, when you open a popup it will stay open until you press Escape.</p>
-
-<div class="note">
-<p><strong>Note:</strong> This change applies to built-in browser popups, like the Elipsis menu (<code>...</code>), as well as extension popups.</p>
-
-<p>The setting does not persist across sessions. When you close the window, the setting reverts to auto-hide popups.</p>
-Internally, this button just toggles the <code>ui.popup.disable_autohide</code> preference, which you can toggle manually using about:config.</div>
-
-<p>When the popup is open, its JavaScript sources will be listed in the Debugger. You can set breakpoints and modify the program's internal state:</p>
-
-<p>{{EmbedYouTube("hzwnR8qoz2I")}}</p>
-
-<div class="note">
-<p>This video uses the <a href="https://github.com/mdn/webextensions-examples/tree/master/beastify">beastify</a> example extension.</p>
-</div>
-
-<p>You can also use the Add-on Debugger to debug the popup's HTML and CSS. First, though, you need to point the tools at the popup's document. To do this: open the popup, then click the icon highlighted in the screenshot below and select the popup's page from the drop-down list:<img alt="" src="https://mdn.mozillademos.org/files/13863/toolbox-iframe.png" style="display: block; height: 417px; margin-left: auto; margin-right: auto; width: 876px;"></p>
-
-<p>Now switch to the Inspector, and you'll be able to examine and edit the popup's HTML and CSS:</p>
-
-<p>{{EmbedYouTube("6lvdm7jaq7Y")}}</p>
-
-<h2 id="Debugging_content_scripts">Debugging content scripts</h2>
-
-<p>You can use the Add-on Debugger to debug background pages, options pages, and popups. However, you can't use it to debug content scripts. This is because, in <a href="/en-US/docs/Mozilla/Firefox/Multiprocess_Firefox">multiprocess Firefox</a>, content scripts run in a different process from the other parts of your extension. The browser console has similar limitations.</p>
-
-<p>To debug content scripts attached to a web page, use the normal web developer tools for that page:</p>
-
-<ul>
- <li>either select "Toggle Tools" from the Web Developer submenu in the Firefox Menu (or Tools menu if you display the menu bar or are on Mac OS X)</li>
- <li>or press the <kbd>Ctrl</kbd><kbd>Shift</kbd><kbd>I</kbd> (<kbd>Command</kbd><kbd>Option</kbd><kbd>I</kbd> on OS X) keyboard shortcut.</li>
-</ul>
-
-<p>{{EmbedYouTube("f46hMLELyaI")}}</p>
-
-<p>By default, the tools are shown attached to the bottom of browser tab, to reflect the fact that they are attached to this tab. You'll see any output from <code><a href="/en-US/docs/Web/API/Console/log">console.log()</a></code> statements in your content scripts. You will also see your content scripts listed in the Debugger, where you'll be able to set breakpoints, step through the code, and so on.</p>
-
-<p>{{EmbedYouTube("Hx3GU_fEPeo")}}</p>
-
-<div class="note">
-<p>This video uses the <a href="https://github.com/mdn/webextensions-examples/tree/master/notify-link-clicks-i18n">notify-link-clicks-i18n</a> example extension.</p>
-</div>
-
-<div class="note">
-<p>If the developer tools tab was not already open when the content script was injected, sometimes the content script is not listed in the debugger panel. If you experience this, reloading the page with the developer tools tab open should fix the problem.</p>
-</div>
-
-<h2 id="Debugging_sidebars">Debugging sidebars</h2>
-
-<p><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/Sidebars">Sidebars</a> are HTML pages opened as a sidebar in the browser UI that the extension developer can supply.</p>
-
-<p>To debug sidebars:</p>
-
-<ul>
- <li>open the <a href="/en-US/Add-ons/WebExtensions/Debugging_(Firefox_50_onwards)#The_Add-on_Debugger">Add-on Debugger</a> for your extension</li>
- <li>open your extension's sidebar.</li>
-</ul>
-
-<p>Any JavaScript sources it includes are then listed in the Debugger.</p>
-
-<p>You'll also see any messages logged by your code in the Add-on Debugger's Console.</p>
-
-<p>You can also use the Add-on Debugger to debug the page's HTML and CSS. First, though, you need to point the tools at the iframe that hosts the options page. To do this: open the sidebar, click the icon highlighted in the screenshot below, and select the sidebar from the drop-down list:</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/13863/toolbox-iframe.png" style="display: block; height: 417px; margin-left: auto; margin-right: auto; width: 876px;"></p>
-
-<h2 id="Debug_runtime_permission_requests">Debug runtime permission requests</h2>
-
-<p> </p>
-
-<p>Runtime permissions granted in your extension are persistent. Therefore, if you want to test cases where the permission has not been granted you will need to add a feature to programmatically remove the permission, use the <a class="external external-icon" href="https://github.com/rpl/dev-webext-permissions-manager" rel="noopener">Extensions Permission Manager,</a> or give your extension a new ID. For more information, see <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Test_permission_requests#Retest_runtime_permission_grants">Retest runtime permission grants</a> in <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Test_permission_requests">Test permission requests</a>.</p>
-
-<p> </p>
-
-<h2 id="Debugging_developer_tools_pages_panels">Debugging developer tools pages &amp; panels</h2>
-
-<p><a href="/en-US/Add-ons/WebExtensions/Extending_the_developer_tools">Developer tools</a> are extended by loading a hidden HTML page when devtools are opened and <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/devtools.panels/create">developer tools panels</a> are HTML pages displayed as a developer tool in the browser UI that the extension developer can supply.</p>
-
-<p>To debug the developer tools page:</p>
-
-<ul>
- <li>open the <a href="/en-US/Add-ons/WebExtensions/Debugging_(Firefox_50_onwards)#The_Add-on_Debugger">Add-on Debugger</a> for your extension</li>
- <li>open the Web Developer Tools</li>
-</ul>
-
-<p>To debug developer tools panels:</p>
-
-<ul>
- <li>Follow the steps for the developer tools page above</li>
- <li>Select your developer tools panel</li>
-</ul>
-
-<p>Any JavaScript sources it includes are then listed in the Debugger.</p>
-
-<p>You'll also see any messages logged by your code in the Add-on Debugger's Console.</p>
-
-<p>You can also use the Add-on Debugger to debug the page's HTML and CSS. First, though, you need to point the tools at the iframe that hosts the options page. To do this: open the sidebar, click the icon highlighted in the screenshot below, and select the sidebar from the drop-down list:</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/13863/toolbox-iframe.png" style="display: block; height: 417px; margin-left: auto; margin-right: auto; width: 876px;"></p>
-
-<h2 id="Debugging_Browser_Restarts">Debugging Browser Restarts</h2>
-
-<p>If your extension is active in ways that might be affected by the browser restarting, such as a session being restored, then you may want to do extra testing to ensure your code works as expected in those conditions.</p>
-
-<p>See <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Testing_persistent_and_restart_features">Testing persistent and restart features</a> for more details.</p>
diff --git a/files/ru/mozilla/developer_guide/introduction/index.html b/files/ru/mozilla/developer_guide/introduction/index.html
new file mode 100644
index 0000000000..206d60c40d
--- /dev/null
+++ b/files/ru/mozilla/developer_guide/introduction/index.html
@@ -0,0 +1,24 @@
+---
+title: Введение (альтернативные проекты)
+slug: Introduction_(alternate)
+translation_of: Mozilla/Developer_guide/Introduction
+translation_of_original: Introduction_(alternate)
+---
+<p><span id="result_box" lang="ru"><span class="hps">Хотя</span> <span class="hps">Firefox</span> <span class="hps">в значительной степени</span> <span class="hps">написан на</span> <span class="hps">C++,</span> <span class="hps">есть много</span> <span class="hps">способов</span> <span class="hps">помочь сообществу</span><span>, не зная</span> <span class="hps">C++.</span></span></p>
+<h2 id="FirefoxThunderbird_и_др.">Firefox/Thunderbird/ и др.</h2>
+<p><span id="result_box" lang="ru"><span class="hps">Хотя</span> <span class="hps atn">Firefox </span><span class="hps">и другие</span> <span class="hps">продукты</span> </span><span id="result_box" lang="ru"><span>Mozilla, пост</span></span><span id="result_box" lang="ru"><span class="hps">роенные на базе</span> <span class="hps">кода</span> <span class="hps">Mozilla</span><span>, написаны на</span> <span class="hps">C++,</span> <span class="hps">у них есть много</span> <span class="hps">компонентов, написанных на</span> <span class="hps">других языках:</span></span></p>
+<ul>
+ <li>Front-end<span id="result_box" lang="ru"> <span class="hps">и много функционала</span> <span class="hps">написаны на</span> <span class="hps">HTML, CSS и</span> <span class="hps">JavaScript</span></span>.</li>
+ <li>Сборочные скрипты пишутся в Make, shell, а также на Perl и Python.</li>
+ <li>Некоторые компоненты и сторонние библиотеки (например jemalloc), написаны на С, а не на С++.</li>
+ <li>Многие инструменты (например, фрэймворки для тестирования), которые мы используем, написаны на Python и других высокоуровневых языках. Есть много вещей в этом плане, которые нам очень хотелось бы реализовать, несмотря на то, что они имеют более низкий приоритет, чем функционал.</li>
+</ul>
+<p>Для начала ознакомьтесь с <a href="/ru/Introduction" title="En/Introduction">основным руководством</a> - почти всё написанное в нём можно применить и к вышеупомянутым проблемам, в том числе поиск багов, с фикса которых можно начать, а также описание системы наставников.</p>
+<h2 id="Веб_сайты">Веб сайты</h2>
+<p>Mozilla имеет более 100 различных веб-проектов и инструментов, почти все из которых - проекты с открытым кодом. Есть ресурсы<a class="link-https" href="https://blog.mozilla.com/webdev/get-involved/" title="https://blog.mozilla.com/webdev/get-involved/"> getting started with Mozilla's main web sites</a>, а также <a class="link-https" href="https://wiki.mozilla.org/Webdev:WhoWorksOnWhat" title="https://wiki.mozilla.org/Webdev:WhoWorksOnWhat">mostly-up-to-date list of web development projects</a> с участием Mozilla, и мы постоянно стремимся расширять этот список. В этих списках Вы найдете много интересных проектов и узнаете, как помочь их развитию.</p>
+<h2 id="Проекты_на_гитхабе">Проекты на гитхабе</h2>
+<p><a class="link-https" href="https://github.com/mozilla" title="https://github.com/mozilla">Mozilla github страница</a> содержит более 100 проектов, в которых Вы можете принять участие. Эти проекты разрабатываются с использованием обычной GitHub практики, так что для начала работы над каким-либо проектом Вам нужно лишь форкнуть его. <span class="short_text" id="result_box" lang="ru"><span class="hps">Мы</span> <span class="hps">с нетерпением ждем</span> <span class="hps">Ваших запросов</span> на мёрдж<span>!</span></span> Среди этих проектов есть и такие высоко-профильные, как <a class="link-https" href="https://github.com/mozilla/jetpack" title="https://github.com/mozilla/jetpack">Jetpack</a> и <a class="link-https" href="https://github.com/mozilla" title="https://github.com/mozilla">многие другие.</a></p>
+<h2 id="Mozilla_Mercurial_репозитории">Mozilla Mercurial репозитории</h2>
+<p>Многие Mozilla-проекты лежат в своих собственных репозиториях на <a class="link-https" href="https://hg.mozilla.org/" title="https://hg.mozilla.org/">hg.mozilla.org</a>. Там можно увидеть<span id="result_box" lang="ru"> <span class="hps">иерархию </span><span class="hps">директорий </span><span class="hps">проектов</span><span>, а также</span> <span class="hps">какие из них</span> <span class="hps">в настоящее время</span> <span class="hps">поддерживается</span> <span class="hps">(подсказка</span> <span class="hps">- не все</span> <span class="hps">из них!)</span></span>. В числе таких проектов -<span id="result_box" lang="ru"> <span class="hps">многие</span> <span class="hps">основные</span> сферы деятельности <span class="hps">Mozilla</span></span>, такие как <a class="link-https" href="https://hg.mozilla.org/automation" title="https://hg.mozilla.org/automation">QA</a>, <a class="link-https" href="https://hg.mozilla.org/build" title="https://hg.mozilla.org/build">RelEng</a>, <a class="link-https" href="https://hg.mozilla.org/l10n" title="https://hg.mozilla.org/l10n">localization</a>, <a class="link-https" href="https://hg.mozilla.org/webtools" title="https://hg.mozilla.org/webtools">webtools</a>, <a class="link-https" href="https://hg.mozilla.org/users/" title="https://hg.mozilla.org/users/">core developers' user repos</a> и <a class="link-https" href="https://hg.mozilla.org" title="https://hg.mozilla.org/">другие</a>.</p>
+<h2 id="Другие_способы_принять_участие"><span class="short_text" id="result_box" lang="ru"><span class="hps">Другие способы</span> <span class="hps">принять участие</span></span></h2>
+<p><span id="result_box" lang="ru"><span class="hps">Есть много способов</span> <span class="hps">внести свой вклад в</span> сообщество <span class="hps">Mozilla</span><span>, помимо</span> <span class="hps">программирования.</span> <span class="hps">Если вы хотите</span> <span class="hps">принять участие в</span> дизайне<span class="hps">, поддержке</span><span>, переводе,</span> <span class="hps">тестировании</span> <span class="hps">или в других видах вспомогательной деятельности</span><span class="hps">,</span> <span class="hps">см.</span></span> <a class="link-https" href="https://www.mozilla.org/contribute/areas.html" title="https://www.mozilla.org/contribute/areas.html">страницу волонтеров</a>.</p>
diff --git a/files/ru/mozilla/developer_guide/исходный_код/index.html b/files/ru/mozilla/developer_guide/source_code/index.html
index f8ea35c33a..f8ea35c33a 100644
--- a/files/ru/mozilla/developer_guide/исходный_код/index.html
+++ b/files/ru/mozilla/developer_guide/source_code/index.html
diff --git a/files/ru/mozilla/firefox/releases/1.5/using_firefox_1.5_caching/index.html b/files/ru/mozilla/firefox/releases/1.5/using_firefox_1.5_caching/index.html
new file mode 100644
index 0000000000..2db6fe3556
--- /dev/null
+++ b/files/ru/mozilla/firefox/releases/1.5/using_firefox_1.5_caching/index.html
@@ -0,0 +1,210 @@
+---
+title: Использование кэширования в Firefox 1.5
+slug: Using_Firefox_1.5_caching
+translation_of: Mozilla/Firefox/Releases/1.5/Using_Firefox_1.5_caching
+---
+<div>{{FirefoxSidebar}}</div><p> </p>
+
+<h3 id="Introduction" name="Introduction">Введение</h3>
+
+<p><a href="/en/Firefox_1.5_for_developers" title="en/Firefox_1.5_for_developers">Firefox 1.5</a> использует кэширование целых Web-страниц, включая их JavaScript-состояния, в рамках сессии браузера. Переходы по посещённым страницам вперёд-назад не требуют загрузки страниц, а JavaScript-состояния сохраняются. Эта функция, обозначаемая иногда как <strong>bfcache</strong> (Back-Forward Cache), делает навигацию по страницам очень быстрой. Такое кэшированное состояние сохраняется, пока пользователь не закроет браузер.</p>
+
+<p>Есть случаи, в которых Firefox не кэширует страницы. Вот некоторые обычные программные причины того, что страница не кэширована:</p>
+
+<ul>
+ <li>страница использует обработчик <code>unload</code> или <code>beforeunload</code>;</li>
+ <li>страница устанавливает заголовок «cache-control: no-store».</li>
+ <li>доступ к сайту происходит по протоколу HTTPS, а страница устанавливает по меньшей мере один из следующих заголовков:
+ <ul>
+ <li>«Cache-Control: no-cache»</li>
+ <li>«Pragma: no-cache»</li>
+ <li>с заголовком «Expires: 0» or «Expires» со значением даты, лежащим в прошлом относительно значению заголовка «Date» (если только не указан также заголовок «Cache-Control: max-age=»);</li>
+ </ul>
+ </li>
+ <li>страница не полностью загрузилась, когда пользователь ушёл с неё, или имеет прерванные сетевые запросы по другим причинам (например, <code>XMLHttpRequest</code>));</li>
+ <li>страница имеет работающие IndexedDB-транзакции;</li>
+ <li>страница верхнего уровня содержит фреймы (например, {{ HTMLElement("iframe") }}), которые не кэшируются по одной из перечисленных здесь причин;</li>
+ <li>страница находится в фрейме и пользователь загружает новую страницу в этот фрейм (в этом случае, когда пользователь уходит со с этой страницы, последнее загруженное в фреймы содержимое есть то, что закэшировано).</li>
+</ul>
+
+<p>Эта новая функция кэширования меняет поведение загрузки страницы, так что Web-авторы могут захотеть:</p>
+
+<ul>
+ <li>узнать, когда на страницу происходит переход (когда она загружается из пользовательского кэша);</li>
+ <li>определить поведение страницы, когда пользователь уходит со страницы (позволяя всё же странице быть закэшированной).</li>
+</ul>
+
+<p>Это позволяют сделать два новых события браузера.</p>
+
+<h3 id="New_browser_events" name="New_browser_events">Новые события браузера</h3>
+
+<p>Если вы используете эти новые события, ваши страницы продолжат правильно отображаться в других браузерах (мы протестировали старые версии Firefox, Internet Explorer, Opera и Safari), а при загрузке в Firefox 1.5 добавится новая функциональность кэширования.</p>
+
+<p>Примечание: по состоянию на октябрь 2009 года разработческие версии Safari добавили поддержку этих новых событий (см. <a class="link-https" href="https://bugs.webkit.org/show_bug.cgi?id=28758" title="https://bugs.webkit.org/show_bug.cgi?id=28758">webkit-баг</a>).</p>
+
+<p>Стандартное поведение для Web-страниц следующее:</p>
+
+<ol>
+ <li>Пользователь переходит на страницу.</li>
+ <li>По мере загрузки страницы выполняются инлайновые скрипты.</li>
+ <li>Как только страница загрузилась, срабатывает обработчик <code>onload</code>.</li>
+</ol>
+
+<p>Некоторые страницы включают четвёртый шаг. Если страница использует обработчик <code>unload</code> или <code>beforeunload</code> handler, он срабатывает прежде чем пользователь уходит со страницы. Если присутствует обработчик <code>unload</code>, эта страница не будет кэширована.</p>
+
+<p>Когда пользователь переходит на кэшированную страницу, инлайновые скрипты и обработчик <code>onload</code> не запускаются (шаги 2 и 3), так как в большинстве случаев эффекты этих скриптов были сохранены.</p>
+
+<p>Если страница содержит скрипты или иное поведение, запускаемое в течение загрузки, которое вы хотите продолжить выполнять каждый раз, когда пользователь заходит на страницу, или если вы хотите знать, когда пользователь заходит на кэшированную страницу, используйте новое событие <code>pageshow</code>.</p>
+
+<p>Если у вас есть поведение, запускаемое, когда пользователь уходит со страницы, но вы хотите воспользоваться новой функциональностью кэширования, и поэтому не хотите использовать обработчик unload, используйте новое событие <code>pagehide</code>.</p>
+
+<h4 id="pageshow_event" name="pageshow_event">Событие pageshow</h4>
+
+<p>Это событие работает так же, как событие <code>load</code>, но срабатывает каждый раз при загрузке страницы (в то время как событие <code>load</code> в Firefox 1.5 не срабатывает, когда страница загружается из кэша). При первой загрузке страницы событие <code>pageshow</code> срабатывает сразу после события <code>load</code>. Событие <code>pageshow</code> использует булевское свойство <code>persisted</code>, которое выставляется в <code>false</code> при начальной загрузке. Оно выставляется в <code>true</code>, если это не начальная загрузка (то есть когда страница уже кэширована).</p>
+
+<p>Выполняйте любой JavaScript-код, который должен отработать при каждой загрузке страницы, при срабатывании событий <code>pageshow</code>.</p>
+
+<p>Вызывая JavaScript-функции в обработчике события <code>pageshow</code>, вы можете обеспечить их вызов при загрузке страницы в браузерах, отличных от Firefox 1.5, вызывая этот обработчик в обработчике события <code>load</code>, как показано в примере ниже.</p>
+
+<h4 id="pagehide_event" name="pagehide_event">Событие pagehide</h4>
+
+<p>Если вы хотите определить поведение, которое происходит, когда пользователь уходит со страницы, но не хотите использовать событие <code>unload</code> (что воспрепятствовало бы кэшированию страницы), вы можете использовать новое событие <code>pagehide</code>. Как и <code>pageshow</code>, событие <code>pagehide</code> использует булевское свойство <code>persisted</code>. Оно выставляется в <code>false</code>, если страница не кэширована в браузере, а в <code>true</code>,— если кэширована. Когда это свойство выставлено в <code>false</code>, обработчик <code>unload</code>, если он есть, вызывается сразу после события <code>pagehide</code>.</p>
+
+<p>Firefox 1.5 пытается имитировать события загрузки в том же порядке, в каком они срабатывают при начальной загрузке страницы. Фреймы обрабатываются таким же образом, что и документ верхнего уровня. Если страница содержит фреймы, то при загрузке кэшированной страницы:</p>
+
+<ul>
+ <li>События <code>pageshow</code> из каждого фрейма срабатывают перед событием <code>pageshow</code> в главном документе.</li>
+ <li>Когда пользователь уходит с кэшированной страницы, событие <code>pagehide</code> из каждого фрейма срабатывает перед событием <code>pagehide</code> в главном документе.</li>
+ <li>Для навигации, происходящей внутри отдельного фрейма, события срабатывают только в затронутом фрейме.</li>
+</ul>
+
+<h4 id="pagehide_event" name="pagehide_event">Кэширование страницы несмотря на обработчики <code>unload</code> и <code>beforeunload</code></h4>
+
+<p>Если вы хотите использовать события <code>unload</code> или <code>beforeunload</code>, сохранив кэширование страницы, вы можете просто удалить эти события в обработчике события и восстановить их в обработчике <code>pageshow</code>, если возвращаетесь на эту страницу:</p>
+
+<pre>window.addEventListener('pageshow', PageShowHandler, false);
+window.addEventListener('unload', UnloadHandler, false);
+
+function PageShowHandler() {
+ window.addEventListener('unload', UnloadHandler, false);
+}
+
+function UnloadHandler() {
+ window.removeEventListener('unload', UnloadHandler, false);
+}
+</pre>
+
+<h3 id="Пример_кода">Пример кода</h3>
+
+<p>Приведённый ниже пример реализует страницу, которая использует обработчики <code>load</code> и <code>pageshow</code>. Поведение этой страницы следующее:</p>
+
+<ul>
+ <li>В браузерах, отличных от Firefox 1.5, при каждой загрузке страницы происходит следующее: событие <code>load</code> вызывает функцию <code>onLoad</code>, которая вызывает функцию <code>onPageShow</code> (а также дополнительную функцию).</li>
+</ul>
+
+<ul>
+ <li>В Firefox 1.5 при первой загрузке страницы событие <code>load</code> работает так же, как и в других браузерах. Кроме того, срабатывает событие <code>pageshow</code>, и, так как <code>persisted</code> установлено в <code>false</code>, не предпринимается никаких дополнительных действий.</li>
+</ul>
+
+<ul>
+ <li>В Firefox 1.5 при загрузке страницы из кэша срабатывает только событие <code>pageshow</code>. Так как<code> persisted</code> установлено в <code>true</code>, вызывается только JavaScript-код в функции <code>onPageShow</code>.</li>
+</ul>
+
+<p>В этом примере:</p>
+
+<ul>
+ <li>Страница вычисляет и обображает текущие дату и время каждый раз при загрузке. Это вычисление включает секунды и миллисекунды, так что вы легко можете протестировать функциональность.</li>
+ <li>Курсор помещается в поле Name при первой загрузке страницы. В Firefox 1.5 при возвращении на страницу курсор остаётся в том поле, где он был, когда пользователь ушёл со страницы. В других браузерах курсор опять помещается в поле Name.</li>
+</ul>
+
+<pre>&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+ "http://www.w3.org/TR/html4/loose.dtd"&gt;
+&lt;HTML&gt;
+&lt;head&gt;
+&lt;title&gt;Order query : Firefox 1.5 Example&lt;/title&gt;
+&lt;style type="text/css"&gt;
+body, p {
+ font-family: Verdana, sans-serif;
+ font-size: 12px;
+ }
+&lt;/style&gt;
+&lt;script type="text/javascript"&gt;
+function onLoad() {
+ loadOnlyFirst();
+ onPageShow();
+}
+
+function onPageShow() {
+//вычисление текущего времени
+ var currentTime= new Date();
+ var year=currentTime.getFullYear();
+ var month=currentTime.getMonth()+1;
+ var day=currentTime.getDate();
+ var hour=currentTime.getHours();
+ var min=currentTime.getMinutes();
+ var sec=currentTime.getSeconds();
+ var mil=currentTime.getMilliseconds();
+ var displayTime = (month + "/" + day + "/" + year + " " +
+ hour + ":" + min + ":" + sec + ":" + mil);
+ document.getElementById("timefield").value=displayTime;
+}
+
+function loadOnlyFirst() {
+ document.zipForm.name.focus();
+}
+&lt;/script&gt;
+&lt;/head&gt;
+&lt;body onload="onLoad();" onpageshow="if (event.persisted) onPageShow();"&gt;
+&lt;h2&gt;Order query&lt;/h2&gt;
+
+&lt;form name="zipForm" action="http://www.example.com/formresult.html" method="get"&gt;
+&lt;label for="timefield"&gt;Date and time:&lt;/label&gt;
+&lt;input type="text" id="timefield"&gt;&lt;br&gt;
+&lt;label for="name"&gt;Name:&lt;/label&gt;
+&lt;input type="text" id="name"&gt;&lt;br&gt;
+&lt;label for="address"&gt;Email address:&lt;/label&gt;
+&lt;input type="text" id="address"&gt;&lt;br&gt;
+&lt;label for="order"&gt;Order number:&lt;/label&gt;
+&lt;input type="text" id="order"&gt;&lt;br&gt;
+&lt;input type="submit" name="submit" value="Submit Query"&gt;
+&lt;/form&gt;
+&lt;/body&gt;
+&lt;/html&gt;
+</pre>
+
+<p>Напротив, если приведённая выше страница не слушает событие <code>pageshow</code> и выполняет все вычисления в обработчике события <code>load</code> (если код написан так, как показано в примере ниже), как положение курсора, так и дата/время в Firefox 1.5 будут кэшированы, когда пользователь when the user navigated away from the page. When the user returned to the page, the cached date/time would display.</p>
+
+<pre>&lt;script&gt;
+function onLoad() {
+ loadOnlyFirst();
+
+//calculate current time
+ var currentTime= new Date();
+ var year = currentTime.getFullYear();
+ var month = currentTime.getMonth()+1;
+ var day = currentTime.getDate();
+ var hour=currentTime.getHours();
+ var min=currentTime.getMinutes();
+ var sec=currentTime.getSeconds();
+ var mil=currentTime.getMilliseconds();
+ var displayTime = (month + "/" + day + "/" + year + " " +
+ hour + ":" + min + ":" + sec + ":" + mil);
+ document.getElementById("timefield").value=displayTime;
+}
+
+function loadOnlyFirst() {
+ document.zipForm.name.focus();
+}
+&lt;/script&gt;
+&lt;/head&gt;
+
+&lt;body onload="onLoad();"&gt;
+</pre>
+
+<h3 id="Developing_Firefox_extensions" name="Developing_Firefox_extensions">Developing Firefox extensions</h3>
+
+<p>Firefox 1.5 <a href="/en/Building_an_Extension" title="en/Building_an_Extension">extensions</a> need to allow for this caching functionality. If you are developing a Firefox extension that you want to be compatible with both 1.5 and earlier versions, make sure that it listens for the <code>load</code> event for triggers that can be cached and listens for the <code>pageshow</code> event for triggers that shouldn’t be cached.</p>
+
+<p>For instance, the Google Toolbar for Firefox should listen for the <code>load</code> event for the autolink function and to the <code>pageshow</code> event for the PageRank function in order to be compatible with both 1.5 and earlier versions.</p>
+
+<p>{{ languages( { "it": "it/Usare_il_caching_di_Firefox_1.5", "de": "de/Benutzen_des_Zwischenspeichers_in_Firefox_1.5_(caching)", "fr": "fr/Utilisation_du_cache_de_Firefox_1.5", "ja": "ja/Using_Firefox_1.5_caching" } ) }}</p>
diff --git a/files/ru/mozilla/firefox/releases/3.5/index.html b/files/ru/mozilla/firefox/releases/3.5/index.html
new file mode 100644
index 0000000000..a3e9f4c276
--- /dev/null
+++ b/files/ru/mozilla/firefox/releases/3.5/index.html
@@ -0,0 +1,312 @@
+---
+title: Firefox 3.5 для разработчика
+slug: Firefox_3.5_для_разработчика
+translation_of: Mozilla/Firefox/Releases/3.5
+---
+<div>{{FirefoxSidebar}}</div><p><a class="external" href="http://www.firefox.com/" title="Веб-браузер Firefox">Firefox 3.5</a> вводит ряд новых возможностей, а также дополнительную и улучшенную поддержку для самых различных веб-стандартов. Данная статья представляет собой исчерпывающий перечень нововведений со ссылками на статьи, освещающие основные усовершенствования.</p>
+<h2 id="Новые_возможности_для_разработчиков">Новые возможности для разработчиков</h2>
+<h3 id="Для_разработчиков_веб-сайтов_и_веб-приложений">Для разработчиков веб-сайтов и веб-приложений</h3>
+<h4 id="Поддержка_HTML_5">Поддержка HTML 5</h4>
+<dl>
+ <dt>
+ <a class="internal" href="/En/Using_audio_and_video_in_Firefox" title="en/Using audio and video in Firefox">Использование аудио и видео</a></dt>
+ <dd>
+ В Firefox 3.5 добавлена поддержка элементов HTML 5 <a class="internal" href="/En/HTML/Element/Audio" title="en/HTML/Element/Audio"><code>audio</code></a> и <a class="internal" href="/En/HTML/Element/Video" title="en/HTML/Element/Video"><code>video</code></a>.</dd>
+ <dt>
+ <a class="internal" href="/en/Offline_resources_in_Firefox" title="en/Offline resources in Firefox">Offline resources in Firefox</a></dt>
+ <dd>
+ Firefox 3.5 now fully supports the HTML 5 offline resource specification.</dd>
+ <dt>
+ <a class="internal" href="/En/DragDrop/Drag_and_Drop" title="en/DragDrop/Drag and Drop">Drag and drop</a></dt>
+ <dd>
+ The HTML 5 drag and drop API allows support for dragging and dropping items within and between web sites.  This also provides a simpler API for use by extensions and Mozilla-based applications.</dd>
+</dl>
+<h4 id="Newly-supported_CSS_features">Newly-supported CSS features</h4>
+<dl>
+ <dt>
+ <a class="internal" href="/en/CSS/@font-face" title="en/CSS/@font-face">Downloadable fonts support</a></dt>
+ <dd>
+ The new {{ cssxref("@font-face") }} @rule lets web pages provide downloadable fonts, so that sites can be rendered exactly as the page author expects.</dd>
+ <dt>
+ <a class="internal" href="/En/CSS/Media_queries" title="en/CSS/Media queries">CSS media queries</a></dt>
+ <dd>
+ Firefox 3.5 now supports CSS media queries, which enhance support for media-dependent style sheets.</dd>
+ <dt>
+ {{ cssxref(":before") }} and {{ cssxref(":after") }} updated to CSS 2.1</dt>
+ <dd>
+ The <code>:before</code> and <code>:after</code> pseudo-elements have been updated to full CSS 2.1 support, adding support for the <code>position</code>, <code>float</code>, <code>list-style-*</code>, and some <code>display</code> properties.</dd>
+ <dt>
+ <code>ch</code> units for length</dt>
+ <dd>
+ The<code> ch </code>unit can now be used anywhere that accepts a <a class="internal" href="/en/CSS/length#Units" title="en/CSS/length#Units">unit of length</a>.<code> 1ch </code>is the width of the "0" (zero) character.</dd>
+ <dt>
+ {{ cssxref("opacity") }}</dt>
+ <dd>
+ The<code> -moz-opacity </code>Mozilla extension to CSS has been removed in favor of the standard<code> opacity </code>property.</dd>
+ <dt>
+ {{ cssxref("text-shadow") }}</dt>
+ <dd>
+ The<code> text-shadow </code>property, which allows web content to specify shadow effects to apply to text and text decorations, is now supported.</dd>
+ <dt>
+ {{ cssxref("word-wrap") }}</dt>
+ <dd>
+ This newly-supported property lets content specify whether or not lines may be broken within words in order to prevent overflow when an otherwise unbreakable string is too long to fit on one line.</dd>
+ <dt>
+ <code>white-space</code> property supports the <code>pre-line</code> value</dt>
+ <dd>
+ The {{ cssxref("white-space") }} property now accepts the <code>pre-line</code> value.</dd>
+ <dt>
+ {{ cssxref("-moz-box-shadow") }}</dt>
+ <dt>
+ {{ cssxref("-moz-border-image") }}</dt>
+ <dt>
+ {{ cssxref("-moz-column-rule") }}</dt>
+ <dt>
+ {{ cssxref("-moz-column-rule-width") }}</dt>
+ <dt>
+ {{ cssxref("-moz-column-rule-style") }}</dt>
+ <dt>
+ {{ cssxref("-moz-column-rule-color") }}</dt>
+ <dd>
+ Firefox 3.5 adds support for these Mozilla extensions to CSS.</dd>
+ <dt>
+ The {{ cssxref("color_value#Mozilla_Extensions","-moz-nativehyperlinktext") }} color value</dt>
+ <dd>
+ This new color value represents the user's system's default hyperlink color.</dd>
+ <dt>
+ The {{ cssxref("-moz-window-shadow") }} property and the {{ cssxref(":-moz-system-metric(mac-graphite-theme)") }} pseudo-class</dt>
+ <dd>
+ These new CSS features were added to facilitate theming.</dd>
+ <dt>
+ New values for {{ cssxref("-moz-appearance") }}</dt>
+ <dd>
+ The <code>-moz-win-glass</code> and <code>-moz-mac-unified-toolbar</code> values have been added to <code>-moz-appearance</code>.</dd>
+ <dt>
+ <a class="internal" href="/En/CSS/Using_CSS_transforms" title="en/CSS/Using CSS transforms">Using CSS transforms</a></dt>
+ <dd>
+ Firefox 3.5 supports CSS transforms.  See {{ cssxref("-moz-transform") }} and {{ cssxref("-moz-transform-origin") }} for details.</dd>
+ <dt>
+ {{ cssxref(":nth-child") }}</dt>
+ <dt>
+ {{ cssxref(":nth-last-child") }}</dt>
+ <dt>
+ {{ cssxref(":nth-of-type") }}</dt>
+ <dt>
+ {{ cssxref(":nth-last-of-type") }}</dt>
+ <dt>
+ {{ cssxref(":first-of-type") }}</dt>
+ <dt>
+ {{ cssxref(":last-of-type") }}</dt>
+ <dt>
+ {{ cssxref(":only-of-type") }}</dt>
+ <dd>
+ These selectors are all newly-supported in Firefox 3.5.</dd>
+</dl>
+<h4 id="Новые_возможности_DOM">Новые возможности DOM</h4>
+<dl>
+ <dt>
+ <a class="internal" href="/en/DOM/Storage#localStorage" title="en/DOM/Storage#localStorage">localStorage</a></dt>
+ <dd>
+ Firefox 3.5 adds support for the Web Storage <code>localStorage</code> property, which provides a way for web applications to store data locally on the client's computer.</dd>
+ <dt>
+ <a class="internal" href="/En/Using_web_workers" title="en/Using web workers">Using web workers</a></dt>
+ <dd>
+ Firefox 3.5 supports web workers to allow easy multi-threading support in web applications.</dd>
+ <dt>
+ <a class="internal" href="/En/Using_geolocation" title="en/Using geolocation">Using geolocation</a></dt>
+ <dd>
+ Firefox 3.5 supports the Geolocation API, which allows web applications to obtain information about the user's current location if a provider for that information is installed and enabled.</dd>
+ <dt>
+ <a class="internal" href="/En/DOM/Locating_DOM_elements_using_selectors" title="en/DOM/Locating DOM elements using selectors">Locating DOM elements using selectors</a></dt>
+ <dd>
+ The selectors API allows querying a document to locate the elements that match a given selection rule.</dd>
+ <dt>
+ <a class="internal" href="/En/DOM/Mouse_gesture_events" title="en/DOM/Mouse gesture events">Mouse gesture events</a></dt>
+ <dd>
+ Firefox 3.5 supports mouse gesture events such as trackpad swipes.</dd>
+ <dt>
+ <a class="internal" href="/En/DOM/NodeIterator" title="en/DOM/NodeIterator">The <code>NodeIterator</code> object</a></dt>
+ <dd>
+ The <code>NodeIterator</code> object provides support for iterating over the list of the nodes in a DOM subtree.</dd>
+ <dt>
+ <a class="internal" href="/en/Gecko-Specific_DOM_Events#MozAfterPaint" title="en/Gecko-Specific DOM Events#MozAfterPaint">The MozAfterPaint event</a></dt>
+ <dd>
+ This new DOM event is sent after painting updates in windows.</dd>
+ <dt>
+ <a class="internal" href="/en/Gecko-Specific_DOM_Events#MozMousePixelScroll" title="en/Gecko-Specific DOM Events#MozMousePixelScroll">The MozMousePixelScroll event</a></dt>
+ <dd>
+ This new DOM event allows detection of pixel-based mouse scroll wheel events instead of line-based scroll events.</dd>
+</dl>
+<h4 id="Новые_возможности_JavaScript">Новые возможности JavaScript</h4>
+<dl>
+ <dt>
+ <a class="internal" href="/En/New_in_JavaScript_1.8.1" title="en/New in JavaScript 1.8.1">Новое в JavaScript 1.8.1</a></dt>
+ <dd>
+ Обзор всех изменений в JavaScript 1.8.1.</dd>
+ <dt>
+ <a class="internal" href="/en/Core_JavaScript_1.5_Reference/Global_Objects/Object/GetPrototypeOf" title="Метод Object.getPrototypeOf()"><code>Object.getPrototypeOf()</code></a></dt>
+ <dd>
+ Новый метод, возвращающий прототип указанного объекта.</dd>
+ <dt>
+ <a class="internal" href="/en/Using_native_JSON" title="Использование JSON">Использование встроенного JSON</a></dt>
+ <dd>
+ Firefox 3.5 имеет встроенную поддержку <a class="internal" href="/en/JSON" title="JSON">JSON</a>.</dd>
+ <dt>
+ Новые методы обрезки строк в объекте <code>String</code></dt>
+ <dd>
+ Объект <a class="internal" href="/en/Core_JavaScript_1.5_Reference/Global_Objects/String" title="Объект String"><code>String</code></a> теперь имеет методы <a class="internal" href="/en/Core_JavaScript_1.5_Reference/Global_Objects/String/Trim" rel="internal" title="Метод String.trim()"><code>trim()</code></a>, <a class="internal" href="/en/Core_JavaScript_1.5_Reference/Global_Objects/String/TrimLeft" rel="internal" title="Метод String.trimLeft()"><code>trimLeft()</code></a> и <a class="internal" href="/en/Core_JavaScript_1.5_Reference/Global_Objects/String/TrimRight" rel="internal" title="Метод String.trimRight()"><code>trimRight()</code></a>.</dd>
+</dl>
+<h4 id="Networking">Networking</h4>
+<dl>
+ <dt>
+ <a class="internal" href="/En/HTTP_access_control" title="en/HTTP access control">Cross-site access controls for HTTP</a></dt>
+ <dd>
+ In Firefox 3.5, it's now possible for HTTP requests, including those made by <a class="internal" href="/en/XMLHttpRequest" title="en/XMLHttpRequest"><code>XMLHttpRequest</code></a>, to work across domains if the server supports it.</dd>
+ <dt>
+ <a class="internal" href="/En/Using_XMLHttpRequest#Monitoring_progress" title="en/Using XMLHttpRequest#Monitoring progress">Progress events for </a><code><a class="internal" href="/En/Using_XMLHttpRequest#Monitoring_progress" title="en/Using XMLHttpRequest#Monitoring progress">XMLHttpRequest</a></code></dt>
+ <dd>
+ Progress events are now offered to enable extensions to monitor the progress of requests.</dd>
+ <dt>
+ Improved Synchronous <code>XMLHttpRequest</code> support</dt>
+ <dd>
+ <a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=340345" title="https://bugzilla.mozilla.org/show_bug.cgi?id=340345">DOM Timeout</a> and <a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=333198" title="https://bugzilla.mozilla.org/show_bug.cgi?id=333198">Input Events</a> are now suppressed during a synchronous <code>XMLHttpRequest</code>.</dd>
+ <dt>
+ <a class="internal" href="/En/Controlling_DNS_prefetching" title="en/Controlling DNS prefetching">Controlling DNS prefetching</a></dt>
+ <dd>
+ Firefox 3.5 provides DNS prefetching, whereby it performs domain name resolution ahead of time for links included in the current page, in order to save time when links are actually clicked.  This article describes how you can tune your web site to disable prefetching, or to adjust how prefetching operates.</dd>
+</dl>
+<h4 id="New_Canvas_features">New Canvas features</h4>
+<dl>
+ <dt>
+ <a class="internal" href="/en/Drawing_text_using_a_canvas" title="en/Drawing text using a canvas">HTML 5 text API for <code>canvas</code> elements</a></dt>
+ <dd>
+ Canvas elements now support the HTML 5 text API.</dd>
+ <dt>
+ <a class="internal" href="/en/Canvas_tutorial/Applying_styles_and_colors#Shadows" title="en/Canvas tutorial/Applying styles and colors#Shadows">Shadow effects in a <code>canvas</code></a></dt>
+ <dd>
+ Canvas shadow effects are now supported.</dd>
+ <dt>
+ <a class="internal" href="/En/HTML/Canvas/Pixel_manipulation_with_canvas#Creating_an_ImageData_object" title="en/HTML/Canvas/Pixel manipulation with canvas#Creating an ImageData object"><code>createImageData()</code></a></dt>
+ <dd>
+ The canvas method <code>createImageData()</code> is now supported, allowing code to specifically create an <code>ImageData</code> object instead of requiring it to be done automatically. This can improve performance of other <code>ImageData</code> methods by preventing them from having to create the object.</dd>
+ <dt>
+ <code>moz-opaque</code> attribute</dt>
+ <dd>
+ Added the <code>moz-opaque</code> DOM attribute, which lets the canvas know whether or not translucency will be a factor.  If the canvas knows there's no translucency, painting performance can be optimized.</dd>
+</dl>
+<h4 id="New_SVG_features">New SVG features</h4>
+<dl>
+ <dt>
+ <a class="internal" href="/En/Applying_SVG_effects_to_HTML_content" title="en/Applying SVG effects to HTML content">Applying SVG effects to HTML content</a></dt>
+ <dd>
+ You can now apply SVG effects to HTML and XHTML content; this article describes how.</dd>
+</dl>
+<h4 id="Miscellaneous_new_features">Miscellaneous new features</h4>
+<dl>
+ <dt>
+ <a class="internal" href="/En/ICC_color_correction_in_Firefox" title="en/ICC color correction in Firefox">ICC color correction in Firefox</a></dt>
+ <dd>
+ Firefox 3.5 now supports ICC color correction for tagged images.</dd>
+ <dt>
+ The <code>defer</code> attribute is now supported on <a class="internal" href="/En/HTML/Element/Script" title="en/HTML/Element/script"><code>script</code></a> elements</dt>
+ <dd>
+ This attribute indicates to the browser that it <em>may</em> choose to continue to parse and render the page without waiting for the script to finish executing.</dd>
+</dl>
+<h3 id="Другие_улучшения">Другие улучшения</h3>
+<ul>
+ <li>The Text node's <code><a class="internal" href="/en/DOM/Text.wholeText" rel="internal">wholeText</a></code> property and <code><a class="internal" href="/en/DOM/Text.replaceWholeText" rel="internal">replaceWholeText()</a></code> method have been implemented.</li>
+ <li>The property <code><a class="internal" href="/en/DOM/Element.children" rel="internal">element.children</a></code> has been added. It returns a <em>collection</em> of child elements of the given element.</li>
+ <li>The Element Traversal API is now supported by the DOM <a class="internal" href="/en/DOM/element" rel="internal">Element</a> object.</li>
+ <li>HTML document nodes may now be cloned using <a class="internal" href="/En/DOM/Node.cloneNode" title="En/DOM/Node.cloneNode"><code>cloneNode()</code></a>.</li>
+ <li>The non-standard <code>getBoxObjectFor()</code> DOM method has been removed. You should be using <a class="internal" href="/en/DOM/element.getBoundingClientRect" title="en/DOM/Element.getBoundingClientRect"><code>getBoundingClientRect()</code></a> instead.</li>
+ <li>Dispatched DOM events can now be re-dispatched.  This makes Firefox 3.5 pass Acid 3 test 30.</li>
+ <li>Improvements have been made to DOM 2 Range handling.</li>
+ <li>In non-chrome scope, caught objects in exceptions are now the actual thrown object instead of an <a class="internal" href="/en/XPConnect" title="en/XPConnect">XPConnect</a> wrapper containing the thrown object.</li>
+ <li>SVG ID references are now live.</li>
+ <li>SVG filters now work for <code>foreignObject</code>.</li>
+ <li>The <code>GetSVGDocument()</code> method has been added to <a class="internal" href="/en/HTML/Element/object" title="en/HTML/Element/Object"><code>object</code></a> and <a class="internal" href="/en/HTML/Element/iframe" title="en/HTML/Element/Iframe"><code>iframe</code></a> elements for compatibility.</li>
+ <li>Implicit setting of properties in object and array initializers no longer execute setters in JavaScript. See the blog post <a class="internal" href="/web-tech/2009/04/29/object-and-array-initializers-should-not-invoke-setters-when-evaluated" title="web-tech/2009/04/29/object-and-array-initializers-should-not-invoke-setters-when-evaluated">Object and array initializers should not invoke setters when evaluated</a> for details.</li>
+ <li>The <code>gDownloadLastDir.path</code> variable has been renamed to <code>gDownloadLastDir.file</code> since it refers to an {{ interface("nsIFile") }}, not a path.</li>
+ <li>The <code>gDownloadLastDirPath</code> variable has been renamed to <code>gDownloadLastDirFile</code> since it refers to an {{ interface("nsIFile") }}, not a path.</li>
+ <li>Starting in Firefox 3.5, you can no longer use <code>data:</code> bindings in chrome packages that get <code>XPCNativeWrapper</code> automation.</li>
+</ul>
+<h3 id="Для_разработчиков_дополнений">Для разработчиков дополнений</h3>
+<p>If you're an extension developer, you should start by reading <a class="internal" href="/En/Updating_extensions_for_Firefox_3.5" title="en/Updating extensions for Firefox 3.5">Updating extensions for Firefox 3.5</a>, which offers a helpful overview of what changes may affect your extension.</p>
+<h4 id="New_components_and_functionality">New components and functionality</h4>
+<dl>
+ <dt>
+ <a class="internal" href="/En/Supporting_private_browsing_mode" title="en/Supporting private browsing mode">Supporting private browsing mode</a></dt>
+ <dd>
+ Firefox 3.5 offers Private Browsing mode, which doesn't record the user's activities.  Extensions may support private browsing following the guidelines offered by this article.</dd>
+ <dt>
+ <a class="internal" href="/En/Security_changes_in_Firefox_3.5" title="en/Security changes in Firefox 3.5">Security changes in Firefox 3.5</a></dt>
+ <dd>
+ This article covers security-related changes in Firefox 3.5.</dd>
+ <dt>
+ <a class="internal" href="/En/Theme_changes_in_Firefox_3.5" title="en/Theme changes in Firefox 3.5">Theme changes in Firefox 3.5</a></dt>
+ <dd>
+ This article covers theme-related changes in Firefox 3.5.</dd>
+ <dt>
+ <a class="internal" href="/En/Monitoring_WiFi_access_points" title="en/Monitoring WiFi access points">Monitoring WiFi access points</a></dt>
+ <dd>
+ Code with UniversalXPConnect privileges can now monitor the list of available access points, getting information on their SSIDs, MAC addresses, and signal strength.  This can be used in tandem with Geolocation to offer WiFi-based location service.</dd>
+</dl>
+<h4 id="Notable_changes_and_improvements">Notable changes and improvements</h4>
+<ul>
+ <li>The XUL <code><a class="internal" href="/en/XUL/textbox" rel="internal">textbox</a></code> widget now offers a <code><a class="internal" href="/en/XUL/Attribute/textbox.type" rel="internal">search</a></code> type, for use as search fields.</li>
+ <li>In order to support dragging and dropping tabs between windows, the <a class="internal" href="/en/XUL/browser" title="en/XUL/Browser"><code>browser</code></a> widget now has a <a class="internal" href="/En/XUL/Method/SwapDocShells" title="en/XUL/Method/SwapDocShells"><code>swapDocShells()</code></a> method.</li>
+ <li>Added the <a class="internal" href="/En/XUL/Attribute/Panel.level" title="en/XUL/Attribute/panel.level"><code>level</code></a> attribute to the <a class="internal" href="/en/XUL/panel" title="en/XUL/Panel"><code>panel</code></a> element; this specifies whether panels appear on top of other applications, or just on top of the window the panel is contained within.</li>
+ <li>Элементы XUL теперь поддерживают свойства<code> clientHeight</code>,<code> clientWidth</code>,<code> scrollHeight</code> и<code> scrollWidth</code>.</li>
+ <li>Элементы <a class="internal" href="/en/XUL/keyset" title="en/XUL/Keyset"><code>keyset</code></a> теперь имеют атрибут <code>disabled</code>.</li>
+ <li>В дополнение к этому, элементы <code>keyset</code> теперь могут быть удалены с помощью метода узла <a class="internal" href="/En/DOM/Node.removeChild" title="en/DOM/Node.removeChild"><code>removeChild()</code></a>.</li>
+ <li><span class="lang lang-en"><code><a href="/en/mozIStorageStatement" rel="internal">mozIStorageStatement</a></code> </span> had the <code>initialize()</code> method removed; consumers should use the <span class="lang lang-en"><code><a href="/en/mozIStorageConnection#createStatement()" rel="internal">createStatement()</a></code> </span> method instead to get a new statement object.</li>
+ <li>The <a class="internal" href="/en/Storage" title="en/Storage">Storage</a> API now offers support for asynchronous requests.</li>
+ <li>The <a class="internal" href="/en/nsICookie2" title="En/NsICookie2"><code>nsICookie2</code></a> interface now exposes the time at which cookies were created in its new <code>creationTime</code> attribute.</li>
+ <li>Added a flag to <code><a class="internal" href="/en/nsIProtocolHandler" rel="internal">nsIProtocolHandler</a></code> (<code>URI_IS_LOCAL_RESOURCE</code>) that is checked during chrome registration to make sure a protocol is allowed to be registered.</li>
+ <li>Firefox now looks for plugins in <code>/usr/lib/mozilla/plugins</code> on Linux, as well as the previously supported locations.</li>
+ <li>The plugin API has been updated to include support for private browsing mode; you may now use <a class="internal" href="/en/NPN_GetValue" title="en/NPN GetValue"><code>NPN_GetValue()</code></a> to query the state of private browsing mode using the variable <code>NPNVprivateModeBool</code>.</li>
+</ul>
+<h2 id="Новые_возможности_для_конечного_пользователя">Новые возможности для конечного пользователя</h2>
+<h3 id="User_experience">User experience</h3>
+<dl>
+ <dt>
+ Location aware browsing</dt>
+ <dd>
+ If you choose, you may allow Firefox 3.5 to share information about your current location with web sites.  Firefox 3.5 can use information about the network you're connected to to share your location. Of course, it asks for your permission before doing so, to ensure your privacy.</dd>
+ <dt>
+ Open audio and video support</dt>
+ <dd>
+ Firefox 3.5 supports embedded video and audio using the open Ogg format, as well as WAV for audio. No plugins, no confusing error messages about needing to install something or other that turns out not to be available on your platform anyway.</dd>
+ <dt>
+ Local data storage</dt>
+ <dd>
+ Web applications can now use Web Storage's local storage capabilities to store data on your computer.  This is great for anything from site preferences to more complex data.</dd>
+</dl>
+<h3 id="Безопасность_и_приватность">Безопасность и приватность</h3>
+<dl>
+ <dt>
+ Private Browsing</dt>
+ <dd>
+ Need to use someone else's computer? Switch on Private Browsing mode and nothing will be recorded about your session, including cookies, history, and any other potentially private information.</dd>
+ <dt>
+ Better privacy controls</dt>
+ <dd>
+ The Privacy preference pane has been completely redesigned to offer users more control over their private information. Users can choose to retain or discard anything including history information, cookies, downloads, and form field information.  In addition, users can specify whether or not to include history and/or bookmarks in the location bar's automated suggestions, so you can keep private web addresses from popping up unexpectedly while typing in the location bar.</dd>
+</dl>
+<h3 id="Производительность">Производительность</h3>
+<dl>
+ <dt>
+ Faster JavaScript performance</dt>
+ <dd>
+ JavaScript, the "J" in "AJAX," is sped up dramatically in Firefox 3.5 with the new TraceMonkey JavaScript engine.  Web applications are much faster than in Firefox 3.</dd>
+ <dt>
+ Faster page rendering</dt>
+ <dd>
+ Web content draws faster in Firefox 3.5, thanks to technologies such as "speculative parsing." Your users don't need to know what it means, other than "it makes things draw faster."</dd>
+</dl>
+<h2 id="Смотрите_также">Смотрите также</h2>
+<ul>
+ <li><a class="internal" href="/en/Firefox_3_for_developers" title="en/Firefox 3 for developers">Firefox 3 для разработчика</a></li>
+ <li><a class="internal" href="/en/Firefox_2_for_developers" title="en/Firefox 2 for developers">Firefox 2 для разработчика</a></li>
+ <li><a class="internal" href="/en/Firefox_1.5_for_developers" title="en/Firefox 1.5 for developers">Firefox 1.5 для разработчика</a></li>
+</ul>
diff --git a/files/ru/mozilla/firefox/releases/3/index.html b/files/ru/mozilla/firefox/releases/3/index.html
new file mode 100644
index 0000000000..98537faee9
--- /dev/null
+++ b/files/ru/mozilla/firefox/releases/3/index.html
@@ -0,0 +1,299 @@
+---
+title: Firefox 3 для разработчиков
+slug: Firefox_3_for_developers
+translation_of: Mozilla/Firefox/Releases/3
+---
+<div>{{FirefoxSidebar}}</div><p>Если вы разработчик и хотите познакомится со всеми возможностями Firefox 3 вы пришли по адресу. В этой статье представлен список новых статей, в которых рассказывается о новых возможностях Firefox 3. В статьях не будут представлены сведения о незначительных изменениях, однако они помогут вам познакомится с существенными обновлениями.</p>
+<h3 id="Новые_возможности_для_разработчиков_в_Firefox_3" name="Новые_возможности_для_разработчиков_в_Firefox_3">Новые возможности для разработчиков в Firefox 3</h3>
+<h4 id="Для_веб-мастеров_и_разработчиков_приложений" name="Для_веб-мастеров_и_разработчиков_приложений">Для веб-мастеров и разработчиков приложений</h4>
+<dl>
+ <dt>
+ <a href="/ru/%D0%9E%D0%B1%D0%BD%D0%BE%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2%D0%B5%D0%B1-%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9_%D0%B4%D0%BB%D1%8F_Firefox_3" title="ru/Обновление_веб-приложений_для_Firefox_3">Обновление веб-приложений для Firefox 3</a></dt>
+ <dd>
+ Предоставляет информацию об изменениях которые вам возможно нужно внести, чтобы получить выгоду от новых возможностей Firefox 3.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/Online_%D0%B8_offline_%D1%81%D0%BE%D0%B1%D1%8B%D1%82%D0%B8%D1%8F" title="en/Online_and_offline_events">Online и offline события</a></dt>
+ <dd>
+ Firefox 3 поддерживает WHATWG online и offline события, которые позволяют приложениям и расширениям определять есть ли активное Интернет соединение, и так же позволяет определять когда появляется и пропадает соединение.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/ru/%D0%92%D0%B5%D0%B1-%D0%BE%D1%80%D0%B8%D0%B5%D0%BD%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BE%D0%B1%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%87%D0%B8%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D1%82%D0%BE%D0%BA%D0%BE%D0%BB%D0%BE%D0%B2" title="ru/Веб-ориентированные_обработчики протоколов">Веб-ориентированные обработчики протоколов</a></dt>
+ <dd>
+ Теперь вы можете регистрировать веб-приложения как обработчик протокола используя метод <code>navigator.registerProtocolHandler()</code>.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/ru/%D0%A0%D0%B8%D1%81%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D1%82%D0%B5%D0%BA%D1%81%D1%82%D0%B0_%D1%81_%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%D0%BC_canvas" title="ru/Рисование_текста_с_использованием_canvas">Рисование текста с использованием canvas</a></dt>
+ <dd>
+ Теперь вы можете рисовать текст с ипользованием нестандартизированного API canvas поддерживаемого Firefox 3.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/Canvas_tutorial/Transformations#Transforms" title="en/Canvas_tutorial/Transformations#Transforms">Поддержка преобразований для canvas</a></dt>
+ <dd>
+ Firefox now supports the <code>transform()</code> and <code>setTransform()</code> methods on canvases.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/Using_microformats" title="en/Using_microformats">Using microformats</a></dt>
+ <dd>
+ Firefox now has APIs for working with microformats.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/Drag_and_drop_events" title="en/Drag_and_drop_events">Drag and drop events</a></dt>
+ <dd>
+ Firefox 3 supports new events that are sent to the source node for a drag operation when the drag begins and ends.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/Focus_management_in_HTML" title="en/Focus_management_in_HTML">Focus management in HTML</a></dt>
+ <dd>
+ The new HTML 5 <code>activeElement</code> and <code>hasFocus</code> attributes are supported.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/Offline_resources_in_Firefox" title="en/Offline_resources_in_Firefox">Offline resources in Firefox</a></dt>
+ <dd>
+ Firefox now lets web applications request that resources be cached to allow the application to be used while offline.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/CSS_improvements_in_Firefox_3" title="en/CSS_improvements_in_Firefox_3">CSS improvements in Firefox 3</a></dt>
+ <dd>
+ Firefox 3 features a number of improvements in its CSS support.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/DOM_improvements_in_Firefox_3" title="en/DOM_improvements_in_Firefox_3">DOM improvements in Firefox 3</a></dt>
+ <dd>
+ Firefox 3 offers a number of new features in Firefox 3's DOM implementation, including support for several Internet Explorer extensions to the DOM.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/New_in_JavaScript_1.8" title="en/New_in_JavaScript_1.8">JavaScript 1.8 support</a></dt>
+ <dd>
+ Firefox 3 offers JavaScript 1.8.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/EXSLT" title="en/EXSLT">EXSLT support</a></dt>
+ <dd>
+ Firefox 3 provides support for a substantial subset of the <a href="/en/EXSLT" title="en/EXSLT">EXSLT</a> extensions to <a href="/en/XSLT" title="en/XSLT">XSLT</a>.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/SVG_improvements_in_Firefox_3" title="en/SVG_improvements_in_Firefox_3">SVG improvements in Firefox 3</a></dt>
+ <dd>
+ SVG support in Firefox 3 has been upgraded significantly, with support for over two dozen new filters, several new elements and attributes, and other improvements.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/Animated_PNG_graphics" title="en/Animated_PNG_graphics">Animated PNG graphics</a></dt>
+ <dd>
+ Firefox 3 supports the animated PNG (APNG) image format.</dd>
+</dl>
+<h4 id="For_XUL_and_extension_developers" name="For_XUL_and_extension_developers">For XUL and extension developers</h4>
+<h5 id="Notable_changes_and_improvements" name="Notable_changes_and_improvements">Notable changes and improvements</h5>
+<dl>
+ <dt>
+ <a href="/en/Updating_extensions_for_Firefox_3" title="en/Updating_extensions_for_Firefox_3">Updating extensions for Firefox 3</a></dt>
+ <dd>
+ Provides a guide to the things you'll need to do to update your extension to work with Firefox 3.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/XUL_improvements_in_Firefox_3" title="en/XUL_improvements_in_Firefox_3">XUL improvements in Firefox 3</a></dt>
+ <dd>
+ Firefox 3 offers a number of new XUL elements, including new sliding scales, the date and time pickers, and spin buttons.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/Templates_in_Firefox_3" title="en/Templates_in_Firefox_3">Templates in Firefox 3</a></dt>
+ <dd>
+ Templates have been significantly improved in Firefox 3. The key improvement allows the use of custom query processors to allow data sources other than RDF to be used.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/Extension_Versioning,_Update_and_Compatibility#Securing_Updates" title="en/Extension_Versioning,_Update_and_Compatibility#Securing_Updates">Securing updates</a></dt>
+ <dd>
+ In order to provide a more secure add-on upgrade path for users, add-ons are now required to provide a secure method for obtaining updates before they can be installed. Add-ons hosted at <a class="external" href="http://addons.mozilla.org">AMO</a> automatically provide this. Any add-ons installed that do not provide a secure update method when the user upgrades to Firefox 3 will be automatically disabled. Firefox will however continue to check for updates to the extension over the insecure path and attempt to install any update offered (installation will fail if the update also fails to provide a secure update method).</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/Places_migration_guide" title="en/Places_migration_guide">Places migration guide</a></dt>
+ <dd>
+ An article about how to update an existing extension to use the Places API.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/Download_Manager_improvements_in_Firefox_3" title="en/Download_Manager_improvements_in_Firefox_3">Download Manager improvements in Firefox 3</a></dt>
+ <dd>
+ The Firefox 3 Download Manager features new and improved APIs, including support for multiple progress listeners.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/Using_nsILoginManager" title="en/Using_nsILoginManager">Using nsILoginManager</a></dt>
+ <dd>
+ The Password Manager has been replaced by the new Login Manager.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/XBL/XBL_1.0_Reference/Elements#binding" title="en/XBL/XBL_1.0_Reference/Elements#binding">Embedding XBL bindings</a></dt>
+ <dd>
+ You can now use the <code>data:</code> URL scheme from chrome code to embed XBL bindings directly instead of having them in separate XML files.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/Localizing_extension_descriptions" title="en/Localizing_extension_descriptions">Localizing extension descriptions</a></dt>
+ <dd>
+ Firefox 3 offers a new method for localizing add-on metadata. This lets the localized details be available as soon as the add-on has been downloaded, as well as when the add-on is disabled.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/Localization_and_Plurals" title="en/Localization_and_Plurals">Localization and Plurals</a></dt>
+ <dd>
+ Firefox 3 adds the new PluralForm module, which provides tools to aid in correctly pluralizing words in multiple localizations.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/Theme_changes_in_Firefox_3" title="en/Theme_changes_in_Firefox_3">Theme changes in Firefox 3</a></dt>
+ <dd>
+ Notes and information of use to people who want to create themes for Firefox 3.</dd>
+</dl>
+<h5 id="New_components_and_functionality" name="New_components_and_functionality">New components and functionality</h5>
+<dl>
+ <dt>
+ <a href="/en/FUEL" title="en/FUEL">FUEL Library</a></dt>
+ <dd>
+ FUEL is about making it easier for extension developers to be productive, by minimizing some of the XPCOM formality and adding some "modern" JavaScript ideas.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/Places" title="en/Places">Places</a></dt>
+ <dd>
+ The history and bookmarks APIs have been completely replaced by the new <a href="/en/Places" title="en/Places">Places</a> API.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/nsIIdleService" title="en/nsIIdleService">Idle service</a></dt>
+ <dd>
+ Firefox 3 offers the new {{ Interface("nsIIdleService") }} interface, which lets extensions determine how long it's been since the user last pressed a key or moved their mouse.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/nsIZipWriter" title="en/nsIZipWriter">ZIP writer</a></dt>
+ <dd>
+ The new {{ Interface("nsIZipWriter") }} interface lets extensions create ZIP archives.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/Full_page_zoom" title="en/Full_page_zoom">Full page zoom</a></dt>
+ <dd>
+ Firefox 3 improves the user experience by offering full page zoom in addition to text-only zoom.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/Interfacing_with_the_XPCOM_cycle_collector" title="en/Interfacing_with_the_XPCOM_cycle_collector">Interfacing with the XPCOM cycle collector</a></dt>
+ <dd>
+ XPCOM code can now take advantage of the cycle collector, which helps ensure that unused memory gets released instead of leaking.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/The_Thread_Manager" title="en/The_Thread_Manager">The Thread Manager</a></dt>
+ <dd>
+ Firefox 3 provides the new {{ Interface("nsIThreadManager") }} interface, along with new interfaces for threads and thread events, which provides a convenient way to create and manage threads in your code.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/JavaScript_modules" title="en/JavaScript_modules">JavaScript modules</a></dt>
+ <dd>
+ Firefox 3 now offers a new shared code module mechanism that lets you easily create modules in JavaScript that can be loaded by extensions and applications for use, much like shared libraries.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/nsIJSON" title="en/nsIJSON">The <code>nsIJSON</code> interface</a></dt>
+ <dd>
+ Firefox 3 offers the new {{ Interface("nsIJSON") }} interface, which offers high-performance encoding and decoding of <a href="/en/JSON" title="en/JSON">JSON</a> strings.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/nsIParentalControlsService" title="en/nsIParentalControlsService">The nsIParentalControlsService interface</a></dt>
+ <dd>
+ Firefox 3 now supports the Microsoft Windows Vista parental controls feature, and allows code to interact with it.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/Using_content_preferences" title="en/Using_content_preferences">Using content preferences</a></dt>
+ <dd>
+ Firefox 3 includes a new service for getting and setting arbitrary site-specific preferences that extensions as well as core code can use to keep track of their users' preferences for individual sites.</dd>
+</dl>
+<dl>
+ <dt>
+ <a href="/en/Monitoring_plugins" title="en/Monitoring_plugins">Plug-in Monitoring</a></dt>
+ <dd>
+ A new component of the plugin system is now available to measure how long it takes plugins (e.g., Macromedia Flash) to execute their calls.</dd>
+</dl>
+<h5 id="Fixed_bugs" name="Fixed_bugs">Fixed bugs</h5>
+<dl>
+ <dt>
+ <a href="/en/Notable_bugs_fixed_in_Firefox_3" title="en/Notable_bugs_fixed_in_Firefox_3">Notable bugs fixed in Firefox 3</a></dt>
+ <dd>
+ This article provides information about bugs that have been fixed in Firefox 3.</dd>
+</dl>
+<h3 id="New_features_for_end_users" name="New_features_for_end_users">New features for end users</h3>
+<h4 id="User_experience" name="User_experience">User experience</h4>
+<ul>
+ <li><strong>Easier password management.</strong> An information bar at the top of the browser window now appears to allow you to save passwords after a successful login.</li>
+ <li><strong>Simplified add-on installation.</strong> You can now install extensions from third-party download sites in fewer clicks, thanks to the removal of the add-on download site whitelist.</li>
+ <li><strong>New Download Manager.</strong> The download manager makes it easier to locate your downloaded files.</li>
+ <li><strong>Resumable downloads.</strong> You can now resume downloads after restarting the browser or resetting your network connection.</li>
+ <li><strong>Full page zoom.</strong> From the View menu and using keyboard shortcuts, you can now zoom in and out on the content of entire pages -- this scales not just the text but the layout and images as well.</li>
+ <li><strong>Tab scrolling and quickmenu.</strong> Tabs are easier to locate with the new tab scrolling and tab quickmenu features.</li>
+ <li><strong>Save what you were doing.</strong> Firefox 3 prompts you to see if you'd like to save your current tabs when you exit Firefox.</li>
+ <li><strong>Optimized Open in Tabs behavior.</strong> Opening a folder of bookmarks in tabs now appends the new tabs instead of replacing the existing ones.</li>
+ <li><strong>Easier to resize location and search bars.</strong> You can now easily resize the location and search bars using a simple resize handle between them.</li>
+ <li><strong>Text selection improvements.</strong> You can now select multiple ranges of text using the Control (Command on Macintosh) key. Double-clicking and dragging now selects in "word-by-word" mode. Triple-clicking selects an entire paragraph.</li>
+ <li><strong>Find toolbar.</strong> The Find toolbar now opens with the current selection.</li>
+ <li><strong>Plugin management.</strong> Users can now disable individual plugins in the Add-on Manager.</li>
+ <li><strong>Integration with Windows Vista.</strong> Firefox's menus now display using Vista's native theme.</li>
+ <li><strong>Integration with Mac OS X.</strong> Firefox now supports <a class="external" href="http://growl.info/">Growl</a> for notifications of completed downloads and available updates.</li>
+ <li><strong>Star button.</strong> The new star button in the location bar lets you quickly add a new bookmark with a single click. A second click lets you file and tag your new bookmark.</li>
+ <li><strong>Tags.</strong> You can now associate keywords with your bookmarks to easily sort them by topic.</li>
+ <li><strong>Location bar and auto-complete.</strong> Type the title or tag of a page in the location bar to quickly find the site you were looking for in your history and bookmarks. Favicons, bookmark, and tag indicators help you see where the results are coming from.</li>
+ <li><strong>Smart Bookmarks folder.</strong> Firefox's new Smart Bookmarks folder offers quick access to your recently bookmarked and tagged places, as well as pages you visit frequently.</li>
+ <li><strong>Bookmarks and History Organizer.</strong> The new unified bookmarks and history organizer lets you easily search your history and bookmarks with multiple views and smart folders for saving your frequent searches.</li>
+ <li><strong>Web-based protocol handlers.</strong> Web applications, such as your favorite web mail provider, can now be used instead of desktop applications for handling <code>mailto:</code> links from other sites. Similar support is provided for other protocols as well. (Note that web applications do have to register themselves with Firefox before this will work.)</li>
+ <li><strong>Easy to use Download Actions.</strong> A new Applications preferences pane provides an improved user interface for configuring handlers for various file types and protocol schemes.</li>
+ <li><strong>Improved look and feel.</strong> Graphics and font handling have been improved to make web sites look better on your screen, including sharper text rendering and better support for fonts with ligatures and complex scripts. In addition, Mac and Linux (Gnome) users will find that Firefox feels more like a native application for their platform than ever, with a new, native, look and feel.</li>
+ <li><strong>Color management support.</strong> By setting the <code>gfx.color_management.enabled</code> preference in <code>{{ mediawiki.external('about:config') }}</code>, you can ask Firefox to use the color profiles embedded in images to adjust the colors to match your computer's display.</li>
+ <li><strong>Offline support.</strong> Web applications can take advantage of new features to support being used even when you don't have an Internet connection.</li>
+</ul>
+<h4 id="Security_and_privacy" name="Security_and_privacy">Security and privacy</h4>
+<ul>
+ <li><strong>One-click site information.</strong> Want to know more about the site you're visiting? Click the site's icon in the location bar to see who owns it. Identify information is prominently displayed and easier than ever to understand.</li>
+ <li><strong>Malware protection.</strong> Firefox 3 warns you if you arrive at a web site that is known to install viruses, spyware, trojans, or other dangerous software (known as malware). You can see what the warning looks like by <a class="link-https" href="https://www.mozilla.com/firefox/its-an-attack.html">clicking here</a>.</li>
+ <li><strong>Web forgery protection enhanced.</strong> Now when you visit a page that's suspected of being a forgery, you're shown a special page instead of the contents of the page with a warning. <a class="link-https" href="https://www.mozilla.com/firefox/its-a-trap.html">Click here</a> to see what it looks like.</li>
+ <li><strong>Easier to understand SSL errors.</strong> The errors presented when an invalid SSL certificate is encountered have been clarified to make it easier to understand what the problem is.</li>
+ <li><strong>Out-of-date add-on protection.</strong> Firefox 3 now automatically checks add-on and plugin versions and disables older, insecure versions.</li>
+ <li><strong>Secure add-on updates.</strong> Add-on update security has been improved by disallowing add-ons that use an insecure update mechanism.</li>
+ <li><strong>Anti-virus integration.</strong> Firefox 3 now informs anti-virus software when executable files are downloaded.</li>
+ <li><strong>Windows Vista parental controls support.</strong> Firefox 3 supports the Vista system-wide parental control setting for disabling file downloads.</li>
+</ul>
+<h4 id="Performance" name="Performance">Performance</h4>
+<ul>
+ <li><strong>Reliability.</strong> Firefox 3 now stores bookmarks, history, cookies, and preferences in a transactionally secure database format. This means your data is protected against loss even if your system crashes.</li>
+ <li><strong>Speed.</strong> Firefox 3 has gotten a performance boost by completely replacing the part of the software that handles drawing to your screen, as well as to how page layout work is handled.</li>
+ <li><strong>Memory use reduced.</strong> Firefox 3 is more memory efficient than ever, with over 300 memory "leak" bugs fixed and new features to help automatically locate and dispose of leaked memory blocks.</li>
+</ul>
+<h3 id="See_also" name="See_also">See also</h3>
+<ul>
+ <li><a href="/en/Updating_extensions_for_Firefox_3" title="en/Updating_extensions_for_Firefox_3">Updating extensions for Firefox 3</a></li>
+ <li><a href="/en/Updating_web_applications_for_Firefox_3" title="en/Updating_web_applications_for_Firefox_3">Updating web applications for Firefox 3</a></li>
+ <li><a href="/en/Firefox_2_for_developers" title="en/Firefox_2_for_developers">Firefox 2 for developers</a></li>
+ <li><a href="/en/Firefox_1.5_for_developers" title="en/Firefox_1.5_for_developers">Firefox 1.5 for developers</a></li>
+</ul>
+<p>{{ languages( { "es": "es/Firefox_3_para_desarrolladores", "fr": "fr/Firefox_3_pour_les_d\u00e9veloppeurs", "ja": "ja/Firefox_3_for_developers", "zh-tw": "zh_tw/Firefox_3_for_developers", "ko": "ko/Firefox_3_for_developers", "pl": "pl/Firefox_3_dla_programist\u00f3w", "pt": "pt/Firefox_3_para_desenvolvedores" } ) }}</p>