diff options
Diffstat (limited to 'files/de/mozilla/firefox')
25 files changed, 2907 insertions, 0 deletions
diff --git a/files/de/mozilla/firefox/developer_edition/index.html b/files/de/mozilla/firefox/developer_edition/index.html new file mode 100644 index 0000000000..41bacac01d --- /dev/null +++ b/files/de/mozilla/firefox/developer_edition/index.html @@ -0,0 +1,57 @@ +--- +title: Developer Edition +slug: Mozilla/Firefox/Developer_Edition +translation_of: Mozilla/Firefox/Developer_Edition +--- +<div>{{FirefoxSidebar}}</div><p><img alt="" src="https://mdn.mozillademos.org/files/9069/firefox-dev-ed_logo-only_1024.png" style="display: block; height: 256px; margin-left: auto; margin-right: auto; width: 256px;"></p> + +<p style="text-align: center;">Eine Version von Firefox, maßgeschneidert für Webentwickler.</p> + +<p><a href="https://www.mozilla.org/de-DE/firefox/developer/" style="width: 270px; display: block; margin-left: auto; margin-right: auto; padding: 10px; text-align: center; border-radius: 4px; background-color: #81BC2E; white-space: nowrap; color: white; text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.25); box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.2), 0px -1px 0px 0px rgba(0, 0, 0, 0.3) inset;">Firefox Developer Edition herunterladen</a></p> + +<hr> +<div class="column-container"> +<div class="column-half"> +<h3 id="Die_neuesten_Firefox-Features"><strong>Die neuesten Firefox-Features</strong></h3> + +<p>Firefox Developer Edition ersetzt den Aurora-Kanal im <a href="https://wiki.mozilla.org/Release_Management/Release_Process">Firefox Release-Prozess</a>. Wie bei Aurora werden Features alle sechs Wochen in die Developer Edition einfließen, nachdem sie in den Nightly-Builds stabilisiert wurden.</p> + +<p>Indem Sie die Developer Edition nutzen, erhalten Sie Zugriff auf Tools und Plattform-Features mindestens 12 Wochen, bevor sie den Firefox Release-Kanal erreichen.</p> + +<p><a href="/en-US/Firefox/Releases/35">Finden Sie heraus, was neu in der Developer Edition ist</a>.</p> +</div> + +<div class="column-half"> +<h3 id="Experimentelle_Entwickler-Tools"><strong>Experimentelle Entwickler-Tools</strong></h3> + +<p>Wir binden experimentelle Tools ein, die noch nicht für eine allgemeine Veröffentlichung bereit sind.</p> + +<p>Zum Beispiel enthält die Developer Edition den <a href="/en-US/docs/Tools/Firefox_Tools_Adapter">Firefox Tools-Adapter</a>, mit dem Sie die <a href="/en-US/docs/Tools">Firefox Tools für Webentwickler</a> mit anderen Browsern verbinden können, wie Chrome auf Android und Safari auf iOS.</p> +</div> +</div> + +<div class="column-container"> +<div class="column-half"> +<h3 id="Ein_unabhängiges_Profil"><strong>Ein unabhängiges Profil</strong></h3> + +<p>Firefox Developer Edition benutzt ein eigenes Profil, unabhängig von anderen Firefox-Versionen auf Ihrem Gerät. Das bedeutet, dass Sie die Developer Edition leicht neben Ihrer Release- oder Beta-Version von Firefox verwenden können.</p> +</div> + +<div class="column-half"> +<h3 id="Für_Webentwickler_eingestellt"><strong>Für Webentwickler eingestellt</strong></h3> + +<p>Wir haben die Standard-Einstellungswerte für Webentwickler zugeschnitten. Zum Beispiel sind Chrome- und Remote-Debugging standardmäßig aktiviert.</p> +</div> +</div> + +<div class="column-container"> +<div class="column-half"> +<h3 id="Ein_eigenständiges_Theme"><strong>Ein eigenständiges Theme</strong></h3> + +<p>Dies beinhaltet schnelleren Zugriff auf die Entwicklertools.</p> +</div> + +<div class="column-half"> </div> +</div> + +<p> </p> diff --git a/files/de/mozilla/firefox/developer_edition/zurückkehren/index.html b/files/de/mozilla/firefox/developer_edition/zurückkehren/index.html new file mode 100644 index 0000000000..7e5b838c6c --- /dev/null +++ b/files/de/mozilla/firefox/developer_edition/zurückkehren/index.html @@ -0,0 +1,25 @@ +--- +title: Zurückkehren +slug: Mozilla/Firefox/Developer_Edition/Zurückkehren +translation_of: Mozilla/Firefox/Developer_Edition/Reverting +--- +<div>{{FirefoxSidebar}}</div><h2 id="Vom_Developer_Edition_Theme_zurück_wechseln">Vom Developer Edition Theme zurück wechseln</h2> + +<p><br> + Wenn Sie die Developer Edition nutzen wollen, aber das 'Australis'-Aussehen von Firefox und Firefox Beta bevorzugen, können Sie auf das normale Firefox Design umschalten: Öffnen Sie dazu lediglich das "Anpassen"-Feld und klicken sie die Schaltfläche "Use Firefox Developer Edition Theme" an.</p> + +<p>{{EmbedYouTube("OvJwofTjsNg")}}</p> + +<p>Bitte beachten Sie, dass das Developer Edition Design noch nicht mit minimalistischen Designs kompatibel ist. Wenn Sie also ein minimalistisches Theme verwenden wollen, so werden Sie zum Australis-Design zurück wechseln müssen.</p> + +<h2 id="Zurückkehren_zu_Firefox_Aurora">Zurückkehren zu Firefox Aurora</h2> + +<p><br> + Wenn Sie alle vor-Beta Funktionen in Firefox Developer Edition nutzen wollen, aber keine der anderen Änderungen, dann können Sie zu einer Art Firefox Aurora zurückkehren. Das ist ein Prozess in zwei Schritten, es ist wichtig, dass Sie die Reihenfolge der Anweisungen befolgen:</p> + +<ol> + <li>Öffnen Sie die Einstellungen der Developer Edition und entfernen Sie den Haken bei "Allow Firefox Developer Edition and Firefox to run at the same time". Sie werden aufgefordert, den Browser neu zu starten.</li> + <li>Nach dem Neustart können Sie vom Developer Edition Design zurückkehren, indem Sie das "Anpassen"-Feld öffnen und die Schaltfläche "Use Firefox Developer Edition Theme" anklicken.</li> +</ol> + +<p>{{EmbedYouTube("0Ofq-vlw8Qw")}}</p> diff --git a/files/de/mozilla/firefox/headless-mode/index.html b/files/de/mozilla/firefox/headless-mode/index.html new file mode 100644 index 0000000000..a2c3c424ee --- /dev/null +++ b/files/de/mozilla/firefox/headless-mode/index.html @@ -0,0 +1,237 @@ +--- +title: Headless mode +slug: Mozilla/Firefox/Headless-Mode +tags: + - Automaisierung + - Firefox + - Flag + - Flagge + - Headless Modus + - Kopflos + - Mozilla + - QA + - Testautomatisierung + - Testen + - headless + - headless mode + - node.js +translation_of: Mozilla/Firefox/Headless_mode +--- +<div>{{FirefoxSidebar}}</div> + +<p class="summary">Der Headless-Mode ist eine sehr nützliche Weise auf dem der Firefox betrieben werden kann — dabei funktioniert Firefox normal, nur dass die Oberfläche nicht sichtbar ist. Das erscheint nicht besonder sinnvoll, wenn man im Web surfen möchte, aber es ist sehr nützlich für automatisierte Tests. Dieser Artikel gibt dir alle Infos, die du brauchst um Firefox im Headless-Mode laufen zu lassen.</p> + +<h2 id="Den_Headless-Mode_verwenden">Den Headless-Mode verwenden</h2> + +<p>Dieser Bereich bietet eine grunsätzliche Anleitung wie man den Headless-Mode verwendet.</p> + +<h3 id="Grundsätzliche_Verwendung">Grundsätzliche Verwendung</h3> + +<p>Auf der Komandozeile kannst du Firefox im Headless-Mode starten indem du das <code>-headless</code> Flag anhängst. Zum Beispiel:</p> + +<pre class="brush: bash">/path/to/firefox -headless</pre> + +<h3 id="Screenshots_aufnehmen">Screenshots aufnehmen</h3> + +<p>Seit Firefox 57 ermöglicht es das <code>-screenshot</code> Flag auf Webseiten im Headless-Mode Screenshots aufzunehmen. Grundsätzlich sieht das dann so aus:</p> + +<pre class="brush: bash">/path/to/firefox -headless -screenshot https://developer.mozilla.org/</pre> + +<p>Das erzeugt einen Screenshot in voller Höhe von <code>https://developer.mozilla.com</code> in das aktuelle Verzeichnis mit dem Dateinamen <code>screenshot.png</code>, mit einer Viewport-Breite von 800px.</p> + +<p>Beachte, dass du <code>-headless</code> weg lassen kannst, wenn du <code>-screenshot</code> angibst— es ist implizit enthalten.</p> + +<pre class="brush: bash">/path/to/firefox -screenshot https://developer.mozilla.org/</pre> + +<p>Um die Default-Werte, die oben angegeben sind, zu überschreiben,kannst du folgende <code>Flags/Features</code> verwenden<code>:</code></p> + +<ul> + <li><code>-screenshot name url</code> — Setze einen beliebigen Dateinamen für den Screenshot indem du zwischen dem <code>-screenshot</code> Flag und der URL diesen angibst. Beachte, dass du auch weitere web-kompatible Bildformate wie z.B. <code>.jpg</code>, <code>.bmp</code>, etc.</li> + <li><code>--window-size=x,y</code> — Setze eine beliebige Bildbreite und -höhe für den Screenshot.</li> +</ul> + +<p>Zum Beispiel erzeugt der folgende Befehl einen Screenshot von <code>https://developer.mozilla.com </code>im aktuellen Verzeichnis mit Dateinamen <code>test.jpg</code>, mit einer Breite von 800px und einer Höhe von 1000px:</p> + +<pre class="brush: bash">/path/to/firefox -screenshot test.jpg https://developer.mozilla.org/ --window-size=480,1000</pre> + +<h3 id="Browser_support">Browser support</h3> + +<p>Headless Firefox works on Fx55+ on Linux, and 56+ on Windows/Mac.</p> + +<h2 id="Automated_testing_with_headless_mode">Automated testing with headless mode</h2> + +<p>The most useful way to use headless Firefox is to run automated tests with it, meaning that you can make your testing process much more efficient.</p> + +<h3 id="Selenium_in_Node.js">Selenium in Node.js</h3> + +<p>Here we'll create a <a href="http://www.seleniumhq.org/">Selenium</a> test using <a href="https://nodejs.org/">Node.js</a> and the <code><a href="https://www.npmjs.com/package/selenium-webdriver">selenium-webdriver</a></code> package. For this guide we'll assume that you already have basic familiarity with Selenium, Webdriver, and Node, and that you already have a testing environment set up. If you don't, work through our <a href="https://developer.mozilla.org/en-US/docs/Learn/Tools_and_testing/Cross_browser_testing/Your_own_automation_environment#Setting_up_Selenium_in_Node">Setting up Selenium in Node</a> guide first, then come back.</p> + +<p>First, of all, make sure you've got Node installed on your system, and the <code>selenium-webdriver</code> package installed, then create a new file called <code>selenium-test.js</code> and follow the steps below to populate it with test code.</p> + +<div class="note"> +<p><strong>Note</strong>: Alternatively, you could clone our <a href="https://github.com/mdn/headless-examples">headless-examples repo</a>; this also includes a package file so you can just use <code>npm install</code> to install necessary dependencies.</p> +</div> + +<ol> + <li> + <p>Let's add some code. Inside this file, start by importing the main <code>selenium-webdriver</code> module, and the <code>firefox</code> submodule:</p> + + <pre class="brush: js">var webdriver = require('selenium-webdriver'), + By = webdriver.By, + until = webdriver.until; + +var firefox = require('selenium-webdriver/firefox');</pre> + </li> + <li> + <p>Next, we will create a new <code>binary</code> object representing Firefox Nightly, and add the <code>-headless</code> argument to it so that it will be run in headless mode:</p> + + <pre class="brush: js">var binary = new firefox.Binary(firefox.Channel.NIGHTLY); +binary.addArguments("-headless");</pre> + </li> + <li> + <p>Now let's create a new driver instance for Firefox, and use <code>setFirefoxOptions()</code> to include an options object that specifies that we want to run the test using the binary we created above (this step will be unnecessary on Linux, and after headless mode lands in the release channel on Windows/Mac, but it is still useful if you want to test a Nightly-specific feature):</p> + + <pre class="brush: js">var driver = new webdriver.Builder() + .forBrowser('firefox') + .setFirefoxOptions(new firefox.Options().setBinary(binary)) + .build();</pre> + </li> + <li> + <p>Finally, add the following code, which performs a simple test on the Google search homepage:</p> + + <pre class="brush: js">driver.get('https://www.google.com'); +driver.findElement(By.name('q')).sendKeys('webdriver'); + +driver.sleep(1000).then(function() { + driver.findElement(By.name('q')).sendKeys(webdriver.Key.TAB); +}); + +driver.findElement(By.name('btnK')).click(); + +driver.sleep(2000).then(function() { + driver.getTitle().then(function(title) { + if(title === 'webdriver - Google Search') { + console.log('Test passed'); + } else { + console.log('Test failed'); + } + }); +}); + +driver.quit();</pre> + </li> + <li> + <p>Finally, run your test with following command:</p> + + <pre class="brush: bash">node selenium-test</pre> + </li> +</ol> + +<p>That's it! After a few seconds, you should see the message "Test passed" returned in the console.</p> + +<p><a href="https://mykzilla.org/2017/08/30/headless-firefox-in-node-js-with-selenium-webdriver/">Headless Firefox in Node.js with selenium-webdriver</a> by Myk Melez contains additional useful tips and tricks for running Node.js Selenium tests with headless mode.</p> + +<h3 id="Selenium_in_Java">Selenium in Java</h3> + +<div class="note"> +<p><strong>Note</strong>: Thanks a lot to nicholasdipiazza for writing these instructions!</p> +</div> + +<p>This guide assumes that you already have Geckodriver on your machine, as explained in our <a href="https://developer.mozilla.org/en-US/docs/Learn/Tools_and_testing/Cross_browser_testing/Your_own_automation_environment#Setting_up_Selenium_in_Node">Setting up Selenium in Node</a> guide, and that you have an IDE set up that supports Gradle projects.</p> + +<ol> + <li> + <p>Download our <a href="https://github.com/mdn/headless-examples/blob/master/headlessfirefox-gradle.zip">headlessfirefox-gradle.zip</a> archive (<a href="https://github.com/mdn/headless-examples/tree/master/headlessfirefox-gradle">see the source here</a>), extract it, and import the headlessfirefox folder into your IDE as a gradle project.</p> + </li> + <li> + <p>Edit the <code>build.gradle</code> file to set selenium to a later version if needed. At the time of writing, we used 3.5.3.</p> + + <pre class="brush: java">group 'com.mozilla' +version '1.0' + +apply plugin: 'java' + +sourceCompatibility = 1.8 + +repositories { + mavenCentral() +} + +dependencies { + compile('org.seleniumhq.selenium:selenium-api:3.5.3') + compile('org.seleniumhq.selenium:selenium-remote-driver:3.5.3') + compile('org.seleniumhq.selenium:selenium-server:3.5.3') + + testCompile group: 'junit', name: 'junit', version: '4.12' +}</pre> + </li> + <li> + <p>Edit the <code>webdriver.gecko.driver</code> property in the HeadlessFirefoxSeleniumExample.java file to equal the path where you installed geckodriver (see line 15 below).</p> + + <pre class="brush: java">package com.mozilla.example; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.firefox.FirefoxBinary; +import org.openqa.selenium.firefox.FirefoxDriver; +import org.openqa.selenium.firefox.FirefoxOptions; + +import java.util.concurrent.TimeUnit; + +public class HeadlessFirefoxSeleniumExample { + public static void main(String [] args) { + FirefoxBinary firefoxBinary = new FirefoxBinary(); + firefoxBinary.addCommandLineOptions("--headless"); + System.setProperty("webdriver.gecko.driver", "/opt/geckodriver"); + FirefoxOptions firefoxOptions = new FirefoxOptions(); + firefoxOptions.setBinary(firefoxBinary); + FirefoxDriver driver = new FirefoxDriver(firefoxOptions); + try { + driver.get("http://www.google.com"); + driver.manage().timeouts().implicitlyWait(4, + TimeUnit.SECONDS); + WebElement queryBox = driver.findElement(By.name("q")); + queryBox.sendKeys("headless firefox"); + WebElement searchBtn = driver.findElement(By.name("btnK")); + searchBtn.click(); + WebElement iresDiv = driver.findElement(By.id("ires")); + iresDiv.findElements(By.tagName("a")).get(0).click(); + System.out.println(driver.getPageSource()); + } finally { + driver.quit(); + } + } +}</pre> + </li> + <li> + <p>Run the java class and you should see the HTML content of this page printed in your console/terminal.</p> + </li> +</ol> + +<h3 id="Other_testing_solutions">Other testing solutions</h3> + +<ul> + <li>Slimerjs has Firefox support built in on Linux, with Mac and Windows support coming soon. See <a href="https://adriftwith.me/coding/2017/04/21/headless-slimerjs-with-firefox/">Headless SlimerJS with Firefox</a> by Brendan Dahl for more details.</li> + <li><a href="https://github.com/DevExpress/testcafe">TestCafe</a> (v.0.18.0 and higher) also supports testing in headless Firefox out of the box. See <a href="https://devexpress.github.io/testcafe/blog/testcafe-v0-18-0-released.html#testing-in-headless-firefox">the documentation</a> for the details.</li> +</ul> + +<p>In addition, you will be able to use headless Firefox to run automated tests written in most other popular testing apps, as long as they allow you to set environment variables.</p> + +<h2 id="Troubleshooting_and_further_help">Troubleshooting and further help</h2> + +<p>If you are having trouble getting headless mode to work, then do not worry — we are here to help. This section is designed to be added to as more questions arise and answers are found.</p> + +<ul> + <li>On Linux, certain libraries are currently required on your system even though headless mode doesn't use them — because Firefox links against them. See {{bug(1372998)}} for more details and progress towards a fix.</li> +</ul> + +<p>If you want to ask the engineers a question, the best place to go is the <code>#headless</code> channel on <a href="https://wiki.mozilla.org/IRC">Mozilla IRC</a>. If you are pretty sure you've found a bug, file it on <a href="https://bugzilla.mozilla.org/">Mozilla Bugzilla</a>.</p> + +<h2 id="See_also">See also</h2> + +<ul> + <li><a href="https://intoli.com/blog/running-selenium-with-headless-firefox/">Using Selenium with Headless Firefox (on Windows)</a> by Andre Perunicic (uses Python)</li> + <li><a href="https://mykzilla.org/2017/08/30/headless-firefox-in-node-js-with-selenium-webdriver/">Headless Firefox in Node.js with selenium-webdriver</a> by Myk Melez</li> + <li><a href="https://adriftwith.me/coding/2017/04/21/headless-slimerjs-with-firefox/">Headless SlimerJS with Firefox</a> by Brendan Dahl</li> + <li><a href="http://blog.rousek.name/2017/09/08/going-headless-with-firefox-since-55/">Using Selenium with Headless Firefox on Travis-CI</a> by Josef Rousek</li> +</ul> diff --git a/files/de/mozilla/firefox/index.html b/files/de/mozilla/firefox/index.html new file mode 100644 index 0000000000..57b51632bf --- /dev/null +++ b/files/de/mozilla/firefox/index.html @@ -0,0 +1,60 @@ +--- +title: Firefox +slug: Mozilla/Firefox +tags: + - Firefox + - Mozilla +translation_of: Mozilla/Firefox +--- +<div>{{FirefoxSidebar}}</div> + +<p><a class="external external-icon" href="https://www.mozilla.org/firefox/">Firefox</a> ist Mozillas beliebter Webbrowser, der für viele Betriebssysteme verfügbar ist, insbesondere Windows, OS X, Linux auf dem Desktop und mobilen Endgeräten mit Android. Durch seine umfassende Kompatibilität, den aktuellsten Web-Technologien und mächtigen Entwicklerwerkzeugen ist Firefox eine großartige Wahl für Webentwickler wie Anwender.</p> + +<p>Firefox ist ein Open-Source-Projekt. Der größte Teil des Quellcodes wird von unserer riesigen Gemeinschaft aus Freiwilligen hinzugefügt. Hier lernen Sie wie Sie zum Firefox-Projekt beitragen können und dazu finden Sie Links zu Informationen über die Entwicklung von Firefix-Add-ons, wie man die Entwickler-Werkzeuge benutzt und andere Aufgaben.</p> + +<div class="summary"> +<p>Lernen Sie, wie man Add-ons für <a class="external external-icon" href="https://www.mozilla.org/firefox/">Firefox</a> erstellt, wie man Firefox selbst entwickelt und wie die Kernelemente von Firefox und seine Unterprojekte funktionieren.</p> +</div> + +<ul class="card-grid"> + <li><span>Details zu Veröffentlichungen für Entwickler</span> + + <p><a href="/de/Firefox/Releases">Informationen zu </a><a href="/de/Firefox/Releases">Veröffentlichungen für Entwickler</a>; lernen Sie welche Fähigkeiten sowohl für Websites als auch für Add-Ons mit jeder weiteren Firefoxversion entstehen.</p> + </li> + <li><span>Projektdokumentation</span> + <p>Die neuesten informationen zu den <a href="/de/docs/Mozilla">internen Abläufen bei Firefox</a> und zum Aufbau des Systems, sodass Sie einen Zugang zum Code bekommen.</p> + </li> + <li><span>Entwickleranleitung</span> + <p>Unsere <a href="/de/docs/Developer_Guide">Anleitung für Entwickler</a> liefert Antworten, wie man an den Code von Firefox kommt, wie man ihn kompiliert, wie man sich zurechtfindet und wie man zum Projekt beitragen kann.</p> + </li> +</ul> + +<h2 id="Firefox_Entwicklungskanäle">Firefox Entwicklungskanäle</h2> + +<p>Firefox ist verfügbar in vier <strong>Kanälen</strong>.</p> + +<h3 id="Firefox_Nightly">Firefox Nightly</h3> + +<p>Jede Nacht arbeiten wir von der <a href="/de/docs/mozilla-central">Mozilla Zentrale</a> an Firefox mit dem neuesten Code. Diese Builds sind für alle Firefox Entwickler und für diejenigen die die neuesten innovativen Features ausprobieren wollen, während sie noch entwickelt werden.</p> + +<p><a class="external external-icon" href="https://www.mozilla.org/de/firefox/developer/" style="width: 250px; display: block; margin-left: auto; margin-right: auto; padding: 10px; text-align: center; border-radius: 4px; background-color: #81BC2E; white-space: nowrap; color: white; text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.25); box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.2), 0px -1px 0px 0px rgba(0, 0, 0, 0.3) inset;">Firefox Nightly herunterladen</a></p> + +<h3 id="Firefox_Developer_Edition">Firefox Developer Edition</h3> + +<p>Diese Version von Firefox ist speziell für Entwickler gedacht. Alle sechs Wochen werden die stabilsten Features von Firefox Nightly in der Firefox Developer Edition veröffentlicht. Wir veröffentlichen auch ein paar Features die nur für Entwickler in diesem Kanal verfügbar sein werden.</p> + +<p><a href="/de/Firefox/Developer_Edition">Mehr zur Developer Edition von Firefox erfahren</a>.</p> + +<p><a class="external external-icon" href="https://www.mozilla.org/firefox/developer/" style="width: 250px; display: block; margin-left: auto; margin-right: auto; padding: 10px; text-align: center; border-radius: 4px; background-color: #81BC2E; white-space: nowrap; color: white; text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.25); box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.2), 0px -1px 0px 0px rgba(0, 0, 0, 0.3) inset;">Firefox für Entwickler herunterladen</a></p> + +<h3 id="Firefox_Beta">Firefox Beta</h3> + +<p>Nach sechs Wochen in der Firefox Developer Edition, werden die stabilsten Features in die neue Firefox Beta-Version übertragen. Firefox Beta ist für Firefoxenthusiasten, die gerne die neusten Features von der nächsten Firefox-Version vorab testen möchten.</p> + +<p><a class="external external-icon" href="https://www.mozilla.org/firefox/channel/#beta" style="width: 250px; display: block; margin-left: auto; margin-right: auto; padding: 10px; text-align: center; border-radius: 4px; background-color: #81BC2E; white-space: nowrap; color: white; text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.25); box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.2), 0px -1px 0px 0px rgba(0, 0, 0, 0.3) inset;">Firefox Beta herunterladen</a></p> + +<h3 id="Firefox">Firefox</h3> + +<p>Nachdem die Features der Firefox Beta-Version nocheinmal sechs Wochen lange stabilisiert wurden, wird eine neue Firefox-Version für die Hunderte von Millionen Nutzer in Form einer neuen Version veröffentlicht.</p> + +<p><a class="external external-icon" href="https://www.mozilla.org/firefox/channel/#firefox" style="width: 250px; display: block; margin-left: auto; margin-right: auto; padding: 10px; text-align: center; border-radius: 4px; background-color: #81BC2E; white-space: nowrap; color: white; text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.25); box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.2), 0px -1px 0px 0px rgba(0, 0, 0, 0.3) inset;">Firefox herunterladen</a></p> diff --git a/files/de/mozilla/firefox/multiprocess_firefox/index.html b/files/de/mozilla/firefox/multiprocess_firefox/index.html new file mode 100644 index 0000000000..b21a7228c1 --- /dev/null +++ b/files/de/mozilla/firefox/multiprocess_firefox/index.html @@ -0,0 +1,80 @@ +--- +title: Multiprozess-Firefox +slug: Mozilla/Firefox/Multiprocess_Firefox +tags: + - NeedsTranslation + - TopicStub +translation_of: Mozilla/Firefox/Multiprocess_Firefox +--- +<div>{{FirefoxSidebar}}</div><p>In den aktuellen Desktop-Versionen des Firefox läuft der gesamte Browser in einem einzigen Betriebssystem-Prozess. Insbesondere läuft der JavaScript-Code, welcher die Browser-Benutzeroberfläche (auch "chrome code" bekannt) ausführt, im selben Prozess wie der Code von Webseiten (auch "Content" oder "Web Content" genannt).</p> + +<p>Zukünftige Versionen von Firefox werden die Browser-Benutzeroberfläche in einem vom Web Content separaten Prozess ausführen. In der ersten Iteration dieser Architektur werden alle Browser-Tabs im selben Prozess laufen, getrennt vom Prozess, in dem die Browser-Benutzeroberfläche ausgeführt wird. In zukünftigen Iterationen wollen wir mehr als einen Prozess verwenden, um die Inhalte von Webseiten darzustellen. Das Projekt, welches den Multiprozess-Firefox abliefern soll, nennt sich Electrolysis (manchmal abgekürzt als e10s).</p> + +<p>Normale Webseiten bleiben vom Multiprozess-Firefox unberührt. Die Menschen, die an Firefox selbst arbeiten sowie die Add-On-Entwickler werden von der Änderung nur beeinflusst sein, wenn ihr Code auf der Fähigkeit basiert, direkt auf Web Content zuzugreifen.</p> + +<p>Anstatt direkt auf Content zuzugreifen, muss das chrome JavaScript den <a href="/en-US/Firefox/Multiprocess_Firefox/The_message_manager">message manager</a> nutzen, um auf Content zuzugreifen. Um den Übergang zu erleichtern, haben wir <a href="/en-US/Firefox/Multiprocess_Firefox/Cross_Process_Object_Wrappers">Cross Process Object Wrappers</a> implementiert und einige <a href="/en-US/Firefox/Multiprocess_Firefox/Compatibility_shims">Kompabilitäts-Shims für Add-On-Entwickler</a> zur Verfügung gestellt. Falls du ein Add-On-Entwickler bist und dich fragst, ob du davon betroffen bist, siehe auch den <a href="/en-US/Add-ons/Working_with_multiprocess_Firefox">Guide zur Arbeit mit dem Multiprozess-Firefox</a>.</p> + +<p>Multiprozess-Firefox ist momentan in der <a class="external external-icon" href="https://www.mozilla.org/firefox/developer/">Developer Edition</a> standardmäßig aktiviert.</p> + +<hr> +<div class="column-container"> +<div class="column-half"> +<dl> + <dt><a href="/en-US/Firefox/Multiprocess_Firefox/Technical_overview">Technische Übersicht</a></dt> + <dd>Ein sehr abstrakter Überbllick über die Implementierung des Multiprozess-Firefox.</dd> + <dt><a href="https://developer.mozilla.org/en-US/Firefox/Multiprocess_Firefox/Web_content_compatibility">Web Content Kompatibilitätsanleitung</a></dt> + <dd>Leitlinien und details zu potentiellen Web-Seiten-Kompatibilitätsproblemen, die durch den Übergang entstehen könnten. Tip: Es gibt nicht sehr viele!</dd> + <dt><a href="/en-US/Firefox/Multiprocess_Firefox/Glossary">Glossar</a></dt> + <dd>Ein Nachschlagewerk für den Jargon, der in Multiprozess-Firefox benutzt wird.</dd> + <dt><a href="https://developer.mozilla.org/Firefox/Multiprocess_Firefox/Message_Manager">Message manager</a></dt> + <dd>Vollständiger Guide zu den Objekten, die für die Kommunikation zwischen Chrome (Benutzeroberfläche) und Content (Webseiten Code) benutzt werden.</dd> + <dt><a href="https://developer.mozilla.org/en-US/Mozilla/Add-ons/SDK/Guides/Multiprocess_Firefox_and_the_SDK">SDK basierte Add-ons</a></dt> + <dd>Wie Add-ons, die mit dem Add-on SDK entwickelt wurden, migriert werden können.</dd> + <dt><a href="https://developer.mozilla.org/Firefox/Multiprocess_Firefox/Which_URIs_load_where">Welche URIs laden wo</a></dt> + <dd>Eine schnelle Einführung darüber, welche URIs (chrome:, about:, file:, resource:), in welchem prozess laden.</dd> +</dl> +</div> + +<div class="column-half"> +<dl> + <dt><a href="/en-US/Firefox/Multiprocess_Firefox/Motivation">Motivation</a></dt> + <dd>Die Gründe, wieso wir den Multiprozess-Firefox implementieren: Performanz, Sicherheit und Stabilität.</dd> + <dt><a href="https://developer.mozilla.org/Mozilla/Add-ons/Working_with_multiprocess_Firefox">Add-on migrations Anleitung</a></dt> + <dd>Wenn du ein Add-on-Entwickler bist, finde heraus, ob du betroffen bist und wie du deinen Code aktuallisieren kannst.</dd> + <dt><a href="https://developer.mozilla.org/Firefox/Multiprocess_Firefox/Cross_Process_Object_Wrappers">Cross Process Object Wrappers</a></dt> + <dd>Cross Process Object Wrappers sind eine Migrationshilfe, die Chrome Code synchronen zugriff auf Content erlaubt.</dd> + <dt><a href="https://developer.mozilla.org/Firefox/Multiprocess_Firefox/Debugging_frame_scripts">Debugging von Content-Prozessen</a></dt> + <dd>Wie Code, der im Content-Prozess läuft (einschließlich Frame- und Prozessskripte), debugt werden kann.</dd> + <dt><a href="https://developer.mozilla.org/docs/Mozilla/Firefox/Multiprocess_Firefox/Tab_selection_in_multiprocess_Firefox">Tab auswahl in Multiprozess-Firefox</a></dt> + <dd>Wie Tab-Wechsel funktioniert in Multiprozess-Firefox.</dd> +</dl> +</div> +</div> + +<hr> +<div class="column-container"> +<div class="column-half"> +<dl> + <dt><a href="https://developer.mozilla.org/Firefox/Multiprocess_Firefox/Limitations_of_chrome_scripts">Einschränkungen von Chrome-Skripten</a></dt> + <dd>Praktiken, die in Chrome-Code nicht mehr funktionieren und wie man dies behebt.</dd> +</dl> +</div> + +<div class="column-half"> +<dl> + <dt><a href="https://developer.mozilla.org/Firefox/Multiprocess_Firefox/Limitations_of_frame_scripts">Einschränkungen von Frame-Skripten</a></dt> + <dd>Praktiken, die innerhalb von Frame-Skripten nicht funktionieren werden und was stattdessen zutun ist.</dd> +</dl> +</div> +</div> + +<hr> +<h2 id="Kontaktiere_uns">Kontaktiere uns</h2> + +<p>Finde mehr über das Projekt heraus, mach mit oder frag uns etwas.</p> + +<ul> + <li><strong>Electrolysis Projektseite</strong>: <a href="https://wiki.mozilla.org/Electrolysis">https://wiki.mozilla.org/Electrolysis</a></li> + <li><strong>IRC</strong>: #e10s auf <a href="https://wiki.mozilla.org/IRC">irc.mozilla.org</a></li> + <li><strong>Mailing-List</strong>: <a href="https://groups.google.com/forum/#!forum/mozilla.dev.tech.electrolysis">dev.tech.electrolysis</a></li> +</ul> diff --git a/files/de/mozilla/firefox/multiprocess_firefox/technical_overview/index.html b/files/de/mozilla/firefox/multiprocess_firefox/technical_overview/index.html new file mode 100644 index 0000000000..f0de7c5457 --- /dev/null +++ b/files/de/mozilla/firefox/multiprocess_firefox/technical_overview/index.html @@ -0,0 +1,164 @@ +--- +title: Technical overview +slug: Mozilla/Firefox/Multiprocess_Firefox/Technical_overview +translation_of: Mozilla/Firefox/Multiprocess_Firefox/Technical_overview +--- +<div>{{FirefoxSidebar}}</div><div class="note"> +<p>Diese Seite ist ein bearbeiteter Auszug aus Bill McCloskey's Blogbeitrag Multiprozess Firefox:(engl) <a class="external external-icon" href="http://billmccloskey.wordpress.com/2013/12/05/multiprocess-firefox/">http://billmccloskey.wordpress.com/2013/12/05/multiprocess-firefox/</a></p> +</div> + +<p><span id="result_box" lang="de"><span class="hps">Auf einer sehr hohen</span> <span class="hps">Ebene arbeitet</span> <span class="hps">Multiprozess</span> <span class="hps">Firefox</span> <span class="hps">wie folgt.</span> <span class="hps">Der</span> <span class="alt-edited hps">Prozess, der</span> <span class="hps">beginnt, wenn</span> <span class="hps">Firefox</span> <span class="hps">startet</span><span class="alt-edited"> wird </span><span class="alt-edited hps">übergeordneter Prozess</span><span> genannt.</span> <span class="hps">Zunächst</span> <span class="hps">arbeitet</span> <span class="hps">dieses Verfahren</span> <span class="hps">ähnlich wie</span> <span class="alt-edited hps">Einzelprozess.</span> <span class="alt-edited hps">Es</span> <span class="alt-edited hps">wird ein Firefox Fenster geöffnet</span><span class="alt-edited">, das</span> <span class="hps">alle wichtigen</span> <span class="hps">Elemente der Benutzeroberfläche für</span> <span class="hps">Firefox</span> <span class="hps">enthält</span> (</span> <span id="result_box" lang="de"><span class="hps">browser.xul</span></span><span lang="de">)<span class="alt-edited hps">.</span> <span class="hps">Firefox</span> <span class="hps">hat eine flexibles</span> <span class="hps">GUI</span>-<span class="hps">Toolkit namens</span> <span class="hps">XUL</span><span>, das </span><span class="hps">GUI-Elemente</span> <span class="hps">deklarativ</span> <span class="hps">beschreibt</span><span>, ähnlich wie bei</span> <span class="hps">Web-Content</span><span>.</span> <span class="hps">Genau wie</span> <span class="hps">Web-Inhalte</span><span>, hat das</span> <span class="hps">Firefox</span><span>-UI</span> <span class="hps">ein Fenster</span><span>-Objekt, das</span> <span class="hps">eine Dokumenteigenschaft</span> <span class="hps">hat</span><span>,</span> <span class="hps">und dieses Dokument</span> <span class="hps">enthält alle</span> <span class="hps">XML-Elemente</span> <span class="hps">aus</span> der <span class="hps">browser.xul</span><span>.</span> <span class="hps">Alle</span> <span class="hps">Firefox</span> <span class="hps">Menüs, Symbolleisten</span><span>, Seitenleisten</span> <span class="hps">und</span> <span class="hps">Tabs sind</span> <span class="hps">XML-Elemente</span> <span class="hps">in diesem Dokument.</span> <span class="hps">Jedes Register</span> <span class="hps">enthält ein</span> <span class="hps"><browser</span><span>> -Element</span> um<span class="hps"> Web-Inhalte</span> <span class="hps">anzuzeigen.</span><br> + <br> + <span class="hps">Die erste Stelle</span><span class="hps">, an der</span> <span class="hps">Multiprozess</span> <span class="hps">Firefox</span> <span class="alt-edited hps">von</span> <span class="atn hps">Single-</span><span class="alt-edited">Prozess</span> <span class="hps">Firefox</span> <span class="alt-edited hps">abweicht ist, dass jedes</span> <span class="hps"><browser</span><span>></span> <span class="alt-edited hps">Element ein</span> <span class="alt-edited hps">remote</span> <span class="hps">= "true"</span> <span class="alt-edited hps">-Attribut besitzt.</span> <span class="alt-edited hps">Wenn ein solches</span> <span class="hps">Browser</span> <span class="hps">Element</span> <span class="hps">in das Dokument eingefügt</span> <span class="alt-edited hps">wird, wird ein</span> <span class="alt-edited hps">neuer Inhaltsprozess</span> <span class="hps">gestartet</span><span>.</span> <span class="hps">Dieser Prozess wird als</span> <span class="alt-edited hps">ein untergeordneter Prozess bezeichnet</span><span>.</span> <span class="hps">Ein</span> <span class="hps">IPC-Kanal</span> <span class="alt-edited hps">erstellt, der die</span> <span class="atn hps">Eltern-Kind-</span><span class="alt-edited">Prozesse</span> <span class="hps">verknüpft</span><span>.</span> <span class="hps">Anfangs zeigt</span> <span class="hps">das Kind</span> <span class="hps">about: blank</span><span>, aber die</span> <span class="hps">Eltern können</span> <span class="hps">dem Kind einen</span> <span class="hps">Befehl</span> <span class="hps">senden, um</span> <span class="hps">an anderer Stelle</span> <span class="hps">zu navigieren.</span></span></p> + +<h2 id="Zeichnen"><span class="short_text" id="result_box" lang="de"><span class="alt-edited hps">Zeichnen</span></span></h2> + +<p>Somehow, displayed web content needs to get from the child process to the parent and then to the screen. Multiprocess Firefox depends on a new Firefox feature called <a href="http://benoitgirard.wordpress.com/2012/05/15/off-main-thread-compositing-omtc-and-why-it-matters/"><em>off main thread compositing</em></a> (OMTC). In brief, each Firefox window is broken into a series of <em>layers</em>, somewhat similar to layers in Photoshop. Each time Firefox draws, these layers are submitted to a compositor thread that clips and translates the layers and combines them together into a single image that is then drawn.</p> + +<p>Layers are structured as a tree. The root layer of the tree is responsible for the entire Firefox window. This layer contains other layers, some of which are responsible for drawing the menus and tabs. One subtree displays all the web content. Web content itself may be broken into multiple layers, but they’re all rooted at a single “content” layer.</p> + +<p>In multiprocess Firefox, the content layer subtree is actually a shim. Most of the time, it contains a placeholder node that simply keeps a reference to the IPC link with the child process. The content process retains the actual layer tree for web content. It builds and draws to this layer tree. When it’s done, it sends the structure of its layer tree to the parent process via IPC. Backing buffers are shared with the parent either through shared memory or GPU memory. References to this memory are sent as part of the layer tree. When the parent receives the layer tree, it removes its placeholder content node and replaces it with the actual tree from content. Then it composites and draws as normal. When it’s done, it puts the placeholder back.</p> + +<p>The basic architecture of how OMTC works with multiple processes has existed for some time, since it is needed for Firefox OS. However, Matt Woodrow and David Anderson have done a lot of work to get everything working properly on Windows, Mac, and Linux. One of the big challenges for multiprocess Firefox will be getting OMTC enabled on all platforms. Right now, only Macs use it by default.</p> + +<h2 id="User_input"><strong id="input">User input</strong></h2> + +<p>Events in Firefox work the same way as they do on the web. Namely, there is a DOM tree for the entire window, and events are threaded through this tree in capture and bubbling phases. Imagine that the user clicks on a button on a web page. In single-process Firefox, the root DOM node of the Firefox window gets the first chance to process the event. Then, nodes lower down in the DOM tree get a chance. The event handling proceeds down through to the XUL <code><browser></code> element. At this point, nodes in the web page’s DOM tree are given a chance to handle the event, all the way down to the button. The bubble phase follows, running in the opposite order, all the way back up to the root node of the Firefox window.</p> + +<p>With multiple processes, event handling works the same way until the <code><browser></code> element is hit. At that point, if the event hasn’t been handled yet, it gets sent to the child process by IPC, where handling starts at the root of the content DOM tree. The parent process then waits to run its bubbling phase until the content process has finished handling the event.</p> + +<h2 id="Inter-process_communication"><strong id="ipc">Inter-process communication</strong></h2> + +<p>All IPC happens using the Chromium IPC libraries. Each child process has its own separate IPC link with the parent. Children cannot communicate directly with each other. To prevent deadlocks and to ensure responsiveness, the parent process is not allowed to sit around waiting for messages from the child. However, the child is allowed to block on messages from the parent.</p> + +<p>Rather than directly sending packets of data over IPC as one might expect, we use code generation to make the process much nicer. The IPC protocol is defined in <a href="https://wiki.mozilla.org/IPDL">IPDL</a>, which sort of stands for “inter-* protocol definition language”. A typical IPDL file is <code><a href="http://mxr.mozilla.org/mozilla-central/source/netwerk/ipc/PNecko.ipdl">PNecko.ipdl</a></code>. It defines a set messages and their parameters. Parameters are serialized and included in the message. To send a message <code>M</code>, C++ code just needs to call the method <code>SendM</code>. To receive the message, it implements the method <code>RecvM</code>.</p> + +<p>IPDL is used in all the low-level C++ parts of Gecko where IPC is required. In many cases, IPC is just used to forward actions from the child to the parent. This is a common pattern in Gecko:</p> + +<pre class="brush: cpp">void AddHistoryEntry(param) { + if (XRE_GetProcessType() == GeckoProcessType_Content) { + // If we're in the child, ask the parent to do this for us. + SendAddHistoryEntry(param); + return; + } + + // Actually add the history entry... +} + +bool RecvAddHistoryEntry(param) { + // Got a message from the child. Do the work for it. + AddHistoryEntry(param); + return true; +} +</pre> + +<p>When <code>AddHistoryEntry</code> is called in the child, we detect that we’re inside the child process and send an IPC message to the parent. When the parent receives that message, it calls <code>AddHistoryEntry</code> on its side.</p> + +<p>For a more realistic illustration, consider the Places database, which stores visited URLs for populating the awesome bar. Whenever the user visits a URL in the content process, we call <a href="http://mxr.mozilla.org/mozilla-central/source/toolkit/components/places/History.cpp?rev=8b9687f6c602#2326">this code</a>. Notice the content process check followed by the <code>SendVisitURI</code> call and an immediate return. The message is received <a href="http://mxr.mozilla.org/mozilla-central/source/dom/ipc/ContentParent.cpp?rev=fecda5f4a0df#2666">here</a>; this code just calls <code>VisitURI</code> in the parent.</p> + +<p>The code for IndexedDB, the places database, and HTTP connections all runs in the parent process, and they all use roughly the same proxying mechanism in the child.</p> + +<h2 id="Frame_scripts"><strong id="contentscripts">Frame scripts</strong></h2> + +<p>IPDL takes care of passing messages in C++, but much of Firefox is actually written in JavaScript. Instead of using IPDL directly, JavaScript code relies on <a href="/en-US/Firefox/Multiprocess_Firefox/The_message_manager">the message manager</a> to communicate between processes. To use the message manager in JS, you need to get hold of a message manager object. There is a global message manager, message managers for each Firefox window, and message managers for each <code><browser></code> element. A message manager can be used to load JS code into the child process and to exchange messages with it.</p> + +<p>As a simple example, imagine that we want to be informed every time a <code>load</code> event triggers in web content. We’re not interested in any particular browser or window, so we use the global message manager. The basic process is as follows:</p> + +<pre class="brush: js">// Get the global message manager. +let mm = Cc["@<span class="skimlinks-unlinked">mozilla.org/globalmessagemanager;1</span>"]. + getService(Ci.nsIMessageListenerManager); + +// Wait for load event. +mm.addMessageListener("GotLoadEvent", function (msg) { + dump("Received load event: " + <span class="skimlinks-unlinked">msg.data.url</span> + "\n"); +}); + +// Load code into the child process to listen for the event. +mm.loadFrameScript("chrome://content/<span class="skimlinks-unlinked">content-script.js</span>", true); +</pre> + +<p>For this to work, we also need to have a file <code>content-script.js</code>:</p> + +<pre class="brush: js">// Listen for the load event. +addEventListener("load", function (e) { + // Inform the parent process. + let docURL = content.document.documentURI; + sendAsyncMessage("GotLoadEvent", {url: docURL}); +}, false); +</pre> + +<p>This file is called a <em>frame script</em>. When the <code>loadFrameScript</code> function call runs, the code for the script is run once for each <code><browser></code> element. This includes both remote browsers and regular ones. If we had used a per-window message manager, the code would only be run for the browser elements in that window. Any time a new browser element is added, the script is run automatically (this is the purpose of the <code>true</code> parameter to <code>loadFrameScript</code>). Since the script is run once per browser, it can access the browser’s window object and docshell via the <code>content</code> and <code>docShell</code> globals.</p> + +<p>The great thing about frame scripts is that they work in both single-process and multiprocess Firefox. To learn more about the message manager, see the <a href="/en-US/Firefox/Multiprocess_Firefox/The_message_manager">message manager guide</a>.</p> + +<h2 id="Cross-process_APIs"><strong id="shims">Cross-process APIs</strong></h2> + +<p>There are a lot of APIs in Firefox that cross between the parent and child processes. An example is the <code>webNavigation</code> property of XUL <code><browser></code> elements. The <code>webNavigation</code> property is an object that provides methods like <code>loadURI</code>, <code>goBack</code>, and <code>goForward</code>. These methods are called in the parent process, but the actions need to happen in the child. First I’ll cover how these methods work in single-process Firefox, and then I’ll describe how we adapted them for multiple processes.</p> + +<p>The <code>webNavigation</code> property is defined using the XML Binding Language (XBL). XBL is a declarative language for customizing how XML elements work. Its syntax is a combination of XML and JavaScript. Firefox uses XBL extensively to customize XUL elements like <code><browser></code> and <code><tabbrowser></code>. The <code><browser></code> customizations reside in <code><a href="http://mxr.mozilla.org/mozilla-central/source/toolkit/content/widgets/browser.xml?rev=754cf7fc84cd">browser.xml</a></code>. <a href="http://mxr.mozilla.org/mozilla-central/source/toolkit/content/widgets/browser.xml?rev=754cf7fc84cd#262">Here</a> is how <code>browser.webNavigation</code> is defined:</p> + +<pre class="brush: xml"><field name="_webNavigation">null</field> + +<property name="webNavigation" readonly="true"> + <getter> + <![CDATA[ + if (!this._webNavigation) + this._webNavigation = this.docShell.QueryInterface(Components.interfaces.nsIWebNavigation); + return this._webNavigation; + ]]> + </getter> +</property> +</pre> + +<p>This code is invoked whenever JavaScript code in Firefox accesses <code>browser.webNavigation</code>, where <code>browser</code> is some <code><browser></code> element. It checks if the result has already been cached in the <code>browser._webNavigation</code> field. If it hasn’t been cached, then it fetches the navigation object based off the browser’s <em>docshell</em>. The docshell is a Firefox-specific object that encapsulates a lot of functionality for loading new pages, navigating back and forth, and saving page history. In multiprocess Firefox, the docshell lives in the child process. Since the <code>webNavigation</code> accessor runs in the parent process, <code>this.docShell</code> above will just return null. As a consequence, this code will fail completely.</p> + +<p>One way to fix this problem would be to create a fake docshell in C++ that could be returned. It would operate by sending IPDL messages to the real docshell in the child to get work done. We may eventually take this route in the future. We decided to do the message passing in JavaScript instead, since it’s easier and faster to prototype things there. Rather than change every docshell-using accessor to test if we’re using multiprocess browsing, we decided to create a new XBL binding that applies only to remote <code><browser></code> elements. It is called <a href="http://mxr.mozilla.org/mozilla-central/source/toolkit/content/widgets/remote-browser.xml?rev=9583bd3099ae"><code>remote-browser.xml</code></a>, and it extends the existing <code>browser.xml</code> binding.</p> + +<p>The <code>remote-browser.xml</code> binding returns a JavaScript <em>shim object</em> whenever anyone uses <code>browser.webNavigation</code> or other similar objects. The shim object is implemented <a href="http://mxr.mozilla.org/mozilla-central/source/toolkit/modules/RemoteWebNavigation.jsm">in its own JavaScript module</a>. It uses the message manager to send messages like <code>"WebNavigation:LoadURI"</code> to <a href="http://mxr.mozilla.org/mozilla-central/source/toolkit/content/browser-child.js?rev=9583bd3099ae#107">a content script loaded by <code>remote-browser.xml</code></a>. The content script performs the actual action.</p> + +<p>The shims we provide emulate their real counterparts imperfectly. They offer enough functionality to make Firefox work, but add-ons that use them may find them insufficient. I’ll discuss strategies for making add-ons work in more detail later.</p> + +<h2 id="Cross-process_object_wrappers"><strong id="cpows">Cross-process object wrappers</strong></h2> + +<p>The message manager API does not allow the parent process to call <code>sendSyncMessage</code>; that is, the parent is not allowed to wait for a response from the child. It’s detrimental for the parent to wait on the child, since we don’t want the browser UI to be unresponsive because of slow content. However, converting Firefox code to be asynchronous (i.e., to use <code>sendAsyncMessage</code> instead) can sometimes be onerous. As an expedient, we’ve introduced a new primitive that allows code in the parent process to access objects in the child process synchronously.</p> + +<p>These objects are called cross-process object wrappers, frequently abbreviated to CPOWs. They’re created using the message manager. Consider this example content script:</p> + +<pre class="brush: js">addEventListener("load", function (e) { + let doc = content.document; + sendAsyncMessage("GotLoadEvent", <strong>{}, {document: doc}</strong>); +}, false); +</pre> + +<p>In this code, we want to be able to send a reference to the document to the parent process. We can’t use the second parameter to <code>sendAsyncMessage</code> to do this: that argument is converted to JSON before it is sent up. The optional third parameter allows us to send object references. Each property of this argument becomes accessible in the parent process as a CPOW. Here’s what the parent code might look like:</p> + +<pre class="brush: js">let mm = Cc["@<span class="skimlinks-unlinked">mozilla.org/globalmessagemanager;1</span>"]. + getService(Ci.nsIMessageListenerManager); + +mm.addMessageListener("GotLoadEvent", function (msg) { + let uri = <strong>msg.objects.document.documentURI</strong>; + dump("Received load event: " + uri + "\n"); +}); +mm.loadFrameScript("chrome://content/<span class="skimlinks-unlinked">content-script.js</span>", true); +</pre> + +<p>It’s important to realize that we’re send object <em>references</em>. The <code>msg.objects.document</code> object is only a wrapper. The access to its <code>documentURI</code> property sends a synchronous message down to the child asking for the value. The dump statement only happens after a reply has come back from the child.</p> + +<p>Because every property access sends a message, CPOWs can be slow to use. There is no caching, so 1,000 accesses to the same property will send 1,000 messages.</p> + +<p>Another problem with CPOWs is that they violate some assumptions people might have about message ordering. Consider this code:</p> + +<pre class="brush: js">mm.addMessageListener("GotLoadEvent", function (msg) { + mm.sendAsyncMessage("ChangeDocumentURI", {newURI: "<span class="skimlinks-unlinked">hello.com</span>"}); + let uri = <strong>msg.objects.document.documentURI</strong>; + dump("Received load event: " + uri + "\n"); +}); +</pre> + +<p>This code sends a message asking the child to change the current document URI. Then it accesses the current document URI via a CPOW. You might expect the value of <code>uri</code> to come back as <code>"hello.com"</code>. But it might not. In order to avoid deadlocks, CPOW messages can bypass normal messages and be processed first. It’s possible that the request for the <code>documentURI</code> property will be processed before the <code>"ChangeDocumentURI"</code> message, in which case <code>uri</code> will have some other value.</p> + +<p>For this reason, it’s best not to mix CPOWs with normal message manager messages. It’s also a bad idea to use CPOWs for anything security-related, since you may not get results that are consistent with surrounding code that might use the message manager.</p> + +<p>Despite these problems, we’ve found CPOWs to be useful for converting certain parts of Firefox to be multiprocess-compatible. It’s best to use them in cases where users are less likely to notice poor responsiveness. As an example, we use CPOWs to implement the context menu that pops up when users right-click on content elements. Whether this code is asynchronous or synchronous, the menu cannot be displayed until content has responded with data about the element that has been clicked. The user is unlikely to notice if, for example, tab animations don’t run while waiting for the menu to pop up. Their only concern is for the menu to come up as quickly as possible, which is entirely gated on the response time of the content process. For this reason, we chose to use CPOWs, since they’re easier than converting the code to be asynchronous.</p> + +<p>It’s possible that CPOWs will be phased out in the future. Asynchronous messaging using the message manager gives a user experience that is at least as good as, and often strictly better than, CPOWs. We strongly recommend that people use the message manager over CPOWs when possible. Nevertheless, CPOWs are sometimes useful.</p> diff --git a/files/de/mozilla/firefox/multiprocess_firefox/web_content_compatibility/index.html b/files/de/mozilla/firefox/multiprocess_firefox/web_content_compatibility/index.html new file mode 100644 index 0000000000..1a25906f9e --- /dev/null +++ b/files/de/mozilla/firefox/multiprocess_firefox/web_content_compatibility/index.html @@ -0,0 +1,32 @@ +--- +title: Web content compatibility +slug: Mozilla/Firefox/Multiprocess_Firefox/Web_content_compatibility +tags: + - Electrolysis + - Firefox + - Guide + - Multiprocess + - e10s +translation_of: Mozilla/Firefox/Multiprocess_Firefox/Web_content_compatibility +--- +<div>{{FirefoxSidebar}}</div><p><span class="seoSummary">While the introduction of multi-process capabilities to Firefox should be seamless and invisible to Web content, there are some exceptions and subtle changes from past behavior. This article discusses the known differences you may encounter.</span></p> + +<h2 id="Events">Events</h2> + +<p>Here you'll find information about events whose behaviors have changed due to multiprocess Firefox's implementation.</p> + +<h3 id="No_bubbling_of_events_from_<option>_to_<select>">No bubbling of events from <code><option></code> to <code><select></code></h3> + +<p>Historically, Firefox has allowed keyboard and mouse events to bubble up from the <code><option></code> element to the parent {{HTMLElement("select")}} element. This doesn't happen in Chrome, however, although this behavior is inconsistent across many browsers. For better Web compatibility (and for technical reasons), when Firefox is in multi-process mode and the <code><select></code> element is displayed as a drop-down list. This behavior is unchanged if the <code><select></code> is presented inline and it has either the <code>multiple</code> attribute defined or a <code>size</code> attribute set to more than 1.</p> + +<p>Rather than watching <code><option></code> elements for events, you should watch for {event("change")}} events on {{HTMLElement("select")}}. See {{bug(1090602)}} for details.</p> + +<h2 id="See_also">See also</h2> + +<ul> + <li>Multiprocess Firefox</li> + <li>{{HTMLElement("option")}}</li> + <li>{{HTMLElement("select")}}</li> + <li>{{domxref("HTMLOptionElement")}}</li> + <li>{{domxref("HTMLSelectElement")}}</li> +</ul> diff --git a/files/de/mozilla/firefox/nutzung_in_unternehmen/index.html b/files/de/mozilla/firefox/nutzung_in_unternehmen/index.html new file mode 100644 index 0000000000..bb01035bad --- /dev/null +++ b/files/de/mozilla/firefox/nutzung_in_unternehmen/index.html @@ -0,0 +1,142 @@ +--- +title: Firefox in einem Unternehmen nutzen +slug: Mozilla/Firefox/Nutzung_in_Unternehmen +tags: + - Administratoren + - Anleitung + - Bereitstellung + - Firefox + - Unternehmen +translation_of: Mozilla/Firefox/Enterprise_deployment_before_60 +--- +<div>{{FirefoxSidebar}}</div> + +<p>Diese Seite versucht zu dokumentieren, wie Mozilla Firefox für Windows und Mac in einem Unternehmen genutzt werden kann. Falls Sie Fragen haben, kontaktieren Sie bitte <a href="https://mail.mozilla.org/listinfo/enterprise">enterprise@mozilla.org</a>.</p> + +<h2 id="Die_richtige_Variante">Die richtige Variante</h2> + +<h3 id="RR_(Rapid_Release)">RR (Rapid Release)</h3> + +<p>Mozilla veröffentlicht alle sechs Wochen (und, je nach Bedarf, weitere Sicherheitsupdates dazwischen) neue Versionen mit höheren Versionsnummern, neuen Features und Fehlerbehebungen. Am Tag, an dem ein großes Update veröffentlicht wird, wird Mozilla in den meisten Fällen (Ausnahme, siehe unten) die Veröffentlichung von Fehlerbehebungen für die vorherige Version einstellen.</p> + +<p>Die geplanten Veröffentlichungen finden Sie in der Spalte "release date" in der <a href="https://wiki.mozilla.org/RapidRelease/Calendar#Future_branch_dates">Future branch dates</a> tabelle in der Mozilla wiki (Englisch).</p> + +<h3 id="ESR_(Extended_Support_Release)">ESR (Extended Support Release)</h3> + +<p>Jede siebte veröffentlichte Hauptversion von Firefox ist ein Extended Support Release. Diese Versionen werden für 54 Wochen (neun der sechswöchigen Veröffentlichungszyklen) sehr stark auf Probleme hin überprüft. Es überlappen sich 12 Wochen (zwei Veröffentlichungszyklen) zwischen zwei aufeinanderfolgenden ESR-Veröffentlichungen, in denen beide ESR-Versionen gleichzeitig überprüft werden.</p> + +<p>Die ESR-Veröffentlichungen waren bisher die Versionen 10, 17, 24, und 31. </p> + +<p>Viele Unternehmen und Organisationen mit zentral organisierten Netzwerksystemen bevorzugen die ESR-Version von Firefox, weil sie dann nicht alle 6 Wochen sondern nur noch alle 42 Wochen die Kompatibilität prüfen müssen. Desweiteren haben sie 12 Wochen mehr Zeit (der Überlappungszeitraum zwischen zwei ESR-Veröffentlichungen) eine Lösung für Probleme zu finden (zusätzlich zu den 6 Wochen die sie bekommen indem sie die Betaversion testen), falls Probleme auftreten.</p> + +<p>Nehmen Sie zur Kenntnis, dass unerwünschte Nebeneffekte auftreten können wenn Sie von einer RR-Version zu einer früheren ESR-Version wechseln, wie zum Beispiel von Version 26-RR zurück zu Version 24.2-ESR, selbst wenn sie am gleichen Tag veröffentlicht wurden. Der Grund dafür ist, dass oft neue Features in die RR-Versionen eingebaut werden, auch wenn sie noch unvollendet und deshalb deaktiviert sind. Schlussendlich entscheidet Mozilla die Features in einer bestimmten Version zu aktivieren. Wenn Sie dann auf eine vorherige, ältere Version wechseln, behalten alle Nutzer ihre letzten Einstellungen in ihren Profilordnern. So bleibt die Option nun angestellt, obwohl das Feature noch nicht komplett fehlerfrei läuft. Wenn Sie also von RR auf ESR wechsel wollen, sollten Sie auf eine neue ESR-Version warten.</p> + +<h2 id="Installation">Installation</h2> + +<ol> + <li>Den kompletten, weiterverteilbaren Installer bekommen Sie von <a href="http://www.mozilla.org/firefox/all/">http://www.mozilla.org/firefox/all/</a> (RR) oder <a href="https://www.mozilla.org/firefox/organizations/all.html">https://www.mozilla.org/firefox/organizations/all.html</a> (ESR).</li> + <li>Installieren Sie ihre Version, in dem Sie die Softwareverteilungsmethode ihrer Wahl nutzen. Die Kommand-Zeile für eine stille Installation ist <code>-ms</code>. </li> + <li>Optional können Sie eine INI-Datei spezifizieren, um beispielsweise die Nutzung von Tastenkürzeln und die Installation vom MaintenanceService zu verhindern. Nutzen Sie dafür <a href="https://wiki.mozilla.org/Installer:Command_Line_Arguments">Installer Command Line Arguments</a>.</li> +</ol> + +<h2 id="Konfiguration">Konfiguration</h2> + +<ol> + <li>Finden Sie den Firefox <strong>Programmverzeichnis</strong> in dem Firefox' ausführende Datei liegt. In Windows7x64 ist er meist <code>C:\Program Files (x86)\Mozilla Firefox</code>; in OSX 10.8 zumeist <code>/Applications/Firefox.app/Contents/MacOS</code>. Unterordner die unten genannt werden sind abhängig von diesem Pfad. </li> + <li>Erstellen Sie eine Javascript Datei in <code>defaults/pref</code> (für gewöhlich, <code>autoconfig.js</code> - andere Dateinamen funktionieren gleicherweise, doch um beste Resultate zu erzielen sollte es am Anfang des Alphabets stehen.) Der Inhalt dieser Datei zeigt Firefox, wo die konfigurierende Datei zu finden ist (siehe auch <a href="http://mike.kaply.com/2012/03/15/customizing-firefox-default-preference-files/">Customizing Firefox default preference files/</a>). + <p>Die zwei Zeilen die Sie brauchen sind:</p> + + <pre class="brush: js">pref("general.config.obscure_value", 0); +pref("general.config.filename", "mozilla.cfg");</pre> + </li> + <li>Erstellen Sie eine .cfg Datei (für gewöhlich, <code>mozilla.cfg</code> — es kann wirklich jeder Name sein; es muss nur zu dem passen, was in <code>general.config.filename</code> zuvor spezifiziert wurde) im Programmverzeichnis. Überspringen Sie die erste Zeile oder kommentieren Sie sie aus und fangen Sie an ihre Einstellungen vorzunehmen. Um herauszufinden welche Einstellungen Sie nutzen müssen, nutzen Sie about:config in einer Kopie von Firefox, die Sie korrekt eingestellt haben und suchen Sie alle Einstellungen die vom Nutzer eingestellt sind, oder sehen Sie sich das folgende Beispiel an. Jede Einstellung die in about:config auftaucht (und noch einige andere) können mit eine der folgenden Funktionen eingestellt werden: + <dl> + <dt><strong>pref </strong></dt> + <dd>nimmt eine Einstellung vor, als hätte der Benutzer sie eingestellt, jedes Mal wenn der Browser gestartet wird. Nutzer können zwar Änderungen an den Einstellungen vornehmen, jedoch werden diese beim nächsten Start überschrieben. Wenn Sie auf diese Weise Einstellungen vornehmen, wird die Einstellung in about:config als "<strong>vom Benutzer eingestellt</strong>" angezeigt.</dd> + <dt><strong>defaultPref</strong></dt> + <dd>wird gebraucht um die Standardeinstellung zu ändern, jedoch kann jeder Nutzer die Einstellungen ändern. Die Einstellungen werden zwischen Sitzungen gespeichert. Sollten alle Werte auf ihren Ursprung zurückgesetzt werden, werden die so geänderten Einstellungen auf den von Ihnen gesetzten Wert geändert. Taucht in about:config als "standard" auf.</dd> + <dt><strong>lockPref</strong></dt> + <dd>wird genutzt um Einstellungen zu blockieren, sodass sie nicht mehr vom Nutzer umgestellt werden können, weder über die Einstellungen, noch über about:config. Das Fenster mit den Einstellungen wird sich ändern um dies zu reflektieren, indem es nicht verstellbare Optionen weglässt oder grau färbt.Taucht in about:config auf als "<strong>blockiert</strong>". <span class="author-g-fer323ku83ypu55t">Manche Einstellungen benötigen <strong>lockPref</strong> um geändert zu werden, wie beispielsweise <strong>app.update.enabled</strong>. Es funktioniert nicht, wenn es nur mit <strong>pref</strong> geändert wird.</span></dd> + <dt><span class="author-g-fer323ku83ypu55t">clearPref</span></dt> + <dd><span class="author-g-fer323ku83ypu55t">kann benutzt werden um einige Einstellungen auszublenden. Dies kann nützlich sein, um einige Funktionen zu deaktivieren, die darauf basieren Versionsnummern zu vergleichen.</span></dd> + </dl> + </li> +</ol> + +<p>Sehen Sie sich auch <a href="http://mike.kaply.com/2012/03/16/customizing-firefox-autoconfig-files/">Firefox' autoconfig-Dateien ändern</a> und <a href="http://mike.kaply.com/2012/03/20/customizing-firefox-autoconfig-files-continued/">Firefox' autoconfig-Dateien ändern (Fortführung)</a> an, um mehr zu erfahren. Für tiefergehende Einstellungen, wie beispielsweise das Ausschalten bestimmter Elemente der graphischen Benutzeroberfläche, können Sie die <a href="http://mike.kaply.com/cck2/">CCK2</a>-Extension nutzen.</p> + +<h3 id="Beispiel_für_eine_config-Datei">Beispiel für eine config-Datei</h3> + +<p>Ihnen mag der Bezug auf "komplexe Einstellungen" auffallen, die in einer anderen Art und Weise eingestellt werden müssen; seit FF31 scheinen alle Einstellungen auf normalem Wege änderbar zu sein, ähnlich wie im folgenden Beispiel. Für genauere Informationen zu individuellen Einstellungen, durchsuchen Sie die <a href="http://kb.mozillazine.org/Knowledge_Base">Wissensdatenbank</a>.</p> + +<pre class="brush: js"><span class="brush: js">// Deaktiviert den Updater +lockPref("app.update.enabled", false); +// Stellt sicher dass er tatsächlich abgestellt ist +lockPref("app.update.auto", false); +lockPref("app.update.mode", 0); +lockPref("app.update.service.enabled", false); + +// Deaktiviert die Kompatbilitätsprüfung der Add-ons +clearPref("extensions.lastAppVersion"); + +// Deaktiviert 'Kenne deine Rechte' beim ersten Start +pref("browser.rights.3.shown", true); + +// Versteckt 'Was ist neu?' beim ersten Start nach jedem Update +pref("browser.startup.homepage_override.mstone","ignore"); + +// Stellt eine Standard-Homepage ein - Nutzer können sie ändern +defaultPref("browser.startup.homepage", "http://home.example.com"); + +// Deaktiviert den internen PDF-Viewer +pref("pdfjs.disabled", true); + +// Deaktiviert den Flash zu JavaScript Converter +pref("shumway.disabled", true); + +// Verhindert die Frage nach der Installation des Flash Plugins +pref("plugins.notifyMissingFlash", false); + +//Deaktiviert das 'plugin checking' +lockPref("plugins.hide_infobar_for_outdated_plugin", true); +clearPref("plugins.update.url"); + +// Deaktiviert den 'health reporter' +lockPref("datareporting.healthreport.service.enabled", false); + +</span>// Disable all data upload (Telemetry and FHR) +lockPref("datareporting.policy.dataSubmissionEnabled", false); +<span class="brush: js"> +// Deaktiviert den 'crash reporter' +lockPref("toolkit.crashreporter.enabled", false); +Components.classes["@mozilla.org/toolkit/crash-reporter;1"].getService(Components.interfaces.nsICrashReporter).submitReports = false;</span><em> </em> +</pre> + +<h2 id="Packaging_Extensions">Packaging Extensions</h2> + +<ol> + <li>Installieren Sie die Erweiterung auf einem Rechner zu Testzwecken. Sehen Sie in about:support unter Extensions nach um die GUID zu fnden. </li> + <li>Sehen Sie im <a href="https://support.mozilla.org/en-US/kb/profiles-where-firefox-stores-user-data">Profilverzeichnis</a> (z.B.: <code>%APPDATA%\Mozilla\Firefox\Profiles</code> auf Win7; um diesen zu finden, klicken Sie auf <strong>Ordner anzeigen</strong> in about:support), dann unter "extensions" nach dem Add-On dass Sie suchen. Beachten Sie dass es entweder eine einzelne .xpi Datei (wie eine zip Datei) oder extrahiert zu einem Ordner mit mehreren Dateien.</li> + <li>Entscheiden Sie wie Sie sie nutzen wollen. Die einfachste Methode ist, die .xpi Datei oder den Ordner in <strong>Programm<code>verzeichnis</code></strong><code>/distribution/extensions</code> zu legen, jedoch funktioniert dies nur für Profile die Installiert wurden nachdem die Erweiterung installiert wurde. Außerdem, wenn Sie Firefox manuell updaten indem Sie das Programm erneut installieren, wird dieser Programmverzeichnis gelöscht. Vergewissern SIe sich dann, ob Sie die Erweiterung ebenfalls manuell erneut installiert haben. Sehen Sie sich auch <a href="http://mike.kaply.com/2012/02/09/integrating-add-ons-into-firefox/">Integrating add-ons into Firefox/</a> (Englisch) an, um alternative Methoden zu lernen.</li> +</ol> + +<p>Beachten Sie auch: <a href="http://mike.kaply.com/2013/05/03/add-on-scopes-redux/">Add-on scopes redux/</a> (Englisch)</p> + +<h2 id="Änderungen_mit_der_Zeit">Änderungen mit der Zeit</h2> + +<h3 id="Änderungen_in_der_Verzeichnisstruktur">Änderungen in der Verzeichnisstruktur</h3> + +<p>Die Verzeichnisstruktur des Programmpfades wurde zweimal geändert. Sollten Sie einer Anleitung für eine Firefox-Version <strong>vor</strong> Version 21 folgen, dann müssen Sie vermutlich diese Änderungen beachten:</p> + +<ul> + <li>Seit Version 14, funktionieren einige der pref Einstellungen nicht mehr wenn sie in einer Datei geändert werden, die im Pfad <code>defaults/pref</code> liegt. Sie können das Problem beheben, indem Sie den Pfad <code>defaults/preferences</code> erstellen und die Datei dort ablegen.</li> + <li>Seit Version 21 wurde der neue Ordner <code>browser</code> erstellt. Die Datei <code>override.ini</code> und die Pfade <code>defaults/preferences</code>, <code>defaults/profile</code>, <code>extensions</code>, <code>plugins</code>, und <code>searchplugins</code> wurden dorthinein verlegt. Plug-ins im Ordner <code>plugins</code> können reaktiviert werden, indem die Einstellung <code>plugins.load_appdir_plugins</code> zu <strong>true</strong> geändert wird.</li> +</ul> + +<p>Die Einstellungen preferences <code>general.config.filename</code> und <code>general.config.obscure_value</code> zur AutoConfiguration können immer noch in <code>defaults/pref</code> vorgenommen werden, jedoch sollte der Dateiname mit dem Buchstaben 'a' beginnen, wie zum Beispiel <code>autoconfig.js</code>.</p> + +<p>Sollte es in <code>defaults/pref</code> in einer zuünftigen Version von Firefox nicht mehr funktionieren, probieren Sie <code>browser/defaults/preferences</code> als den wahrscheinlichsten Platz für die Datei.</p> + +<h3 id="Änderungen_in_ESR_24.x_mit_Adobe_PDF_Files">Änderungen in ESR 24.x mit Adobe PDF Files</h3> + +<p>Firefox RR 19.x änderte den Standard-Viewer für Adobe PDF Dateien zu dem internen PDF Viewer. Diese Änderung betrifft nun die ESR Versionen seit 24.x, und wird (auf Windows) angewandt, wenn von 17.x auf eine höhere Version geupgradet wird, <em>selbst wenn ein externer Viewer bereits eingestellt wurde</em>. Der Name des Dateitypes wurde von <strong>Adobe Acrobat Document</strong> zu <strong>Portable Document Format (PDF)</strong> geändert, was die Lokalisierung durch die Tools-, Options- oder Applications-Tabs erschwert. Um dies abzustellen, ändern Sie <code>pdfjs.disabled</code> zu true wie auch im oben genannten Beispiel.</p> diff --git a/files/de/mozilla/firefox/privacy/index.html b/files/de/mozilla/firefox/privacy/index.html new file mode 100644 index 0000000000..c6a9e69b09 --- /dev/null +++ b/files/de/mozilla/firefox/privacy/index.html @@ -0,0 +1,9 @@ +--- +title: Privacy +slug: Mozilla/Firefox/Privacy +tags: + - NeedsTranslation + - TopicStub +translation_of: Mozilla/Firefox/Privacy +--- +<div>{{FirefoxSidebar}}</div><p>{{ ListSubpages () }}</p> diff --git a/files/de/mozilla/firefox/privacy/tracking_protection/index.html b/files/de/mozilla/firefox/privacy/tracking_protection/index.html new file mode 100644 index 0000000000..7ebf5f19da --- /dev/null +++ b/files/de/mozilla/firefox/privacy/tracking_protection/index.html @@ -0,0 +1,88 @@ +--- +title: Verfolgungsschutz +slug: Mozilla/Firefox/Privacy/Tracking_Protection +tags: + - Privacy + - Privat + - Private browsing + - Privates Surfen + - blocking + - tracker + - tracking +translation_of: Mozilla/Firefox/Privacy/Tracking_Protection +--- +<div>{{FirefoxSidebar}}</div> + +<h2 id="Was_ist_Verfolgungsschutz">Was ist Verfolgungsschutz?</h2> + +<p>Beginnend mit Version 42 beinhalten Firefox Desktop und Firefox für Android einen eingebauten Schutz gegen Verfolgung. In privaten Browserfenstern (Tabs, in Firefox für Android) wird Firefox Inhalte, die von Domains geladen werden, die Nutzer über Seiten verfolgen, blockieren.</p> + +<p>Einige dieser blockierten Inhalte sind Teil des Seitenlayouts, weswegen Nutzer Probleme mit diesem haben können. Ist das Seitenraster so angepasst, dass andere Elemente die Lücken der blockierten Inhalte füllen, merken Nutzer keinen Unterschied.</p> + +<p>Wenn Firefox Inhalte blockiert, wird die folgende Nachricht ausgegeben:</p> + +<pre><span class="message-body-wrapper"><span class="message-flex-body"><span class="devtools-monospace message-body">Die Ressource auf "https://some/url" wurde blockiert, weil das Blockieren von Seitenelementen aktiviert ist.</span></span></span></pre> + +<div class="blockIndicator note"> +<p>Die Ausgaben auf der Konsole in Firefox für Android können über den Remote Debugger angezeigt werden.</p> +</div> + +<p>Das Firefox Benutzerinterface zeigt Nutzern an wenn Inhalte blockiert wurden und ermöglicht es ihnen diese für die Dauer der Sitzung zu entblocken. Nutzer können sich auch entscheiden, den Trackingschutz auch dauerthaft abzuschalten.</p> + +<h2 id="Wie_entscheidet_Firefox_was_blockiert_wird">Wie entscheidet Firefox was blockiert wird?</h2> + +<p>Inhalte werden auf Basis der Domain blockiert, von der sie geladen werden.</p> + +<p>Firefox kommt mit einer Liste von Seiten, die Nutzer über Seiten hinweg verfolgen. Wenn der Verfolgungschutz aktiv ist, wird Firefox Inhalte von Seiten auf dieser Liste blockieren</p> + +<p>Seiten die User tracken sind hauptsächlich externe Werbe- und Analyseseiten</p> + +<h2 id="Was_bedeutet_das_für_deine_Webseite">Was bedeutet das für deine Webseite?</h2> + +<p>Zuerst einmal bedeutet das offensichtlich, dass wenn der Trackingschutz aktiviert ist:</p> + +<ul> + <li>Inhalte die von externen Trackern bereit gestellt werden sind für User nicht sichtbar</li> + <li>deine Seite wird externe Werbe- und Analyseservices, die tracken, nicht nutzen können</li> +</ul> + +<p>Weniger offensichtlich, falls Teile deiner Seite davon abhänging sind, dass Tracker geladen werden, werden diese Teile nicht funktionieren, wenn der Trackingschutz aktiv is. Beinhaltet deine Seite beispielsweise einen Callback, der ausgeführt wird, wenn Inhalte von einer Trackingseite geladen wurde, so wird dieser Callback nicht ausgeführt.</p> + +<p>Zum Beispiel solltest du Google Analytics nicht so verwenden:</p> + +<pre class="brush:html example-bad"><a href="http://www.example.com" onclick="trackLink('http://www.example.com', event);">Visit example.com</a> +<script> +function trackLink(url,event) { + event.preventDefault(); + ga('send', 'event', 'outbound', 'click', url, { + 'transport': 'beacon', + 'hitCallback': function() { + document.location = url; + } + }); +} +</script></pre> + +<p>Stattdessen solltest du den Fall berücksichtigen, dass Google Analytics fehlt, in dem du überprüftst ob das <code>ga</code> Objekt initialisiert wurde.</p> + +<pre class="brush:html example-good"><a href="http://www.example.com" onclick="trackLink('http://www.example.com', event);">Visit example.com</a> +<script> +function trackLink(url,event) { + event.preventDefault(); + if (window.ga && <span class="pl-smi">ga</span>.loaded) { + ga('send', 'event', 'outbound', 'click', url, { + 'transport': 'beacon', + 'hitCallback': function() { document.location = url; } + }); + } else { + document.location = url; + } +} +</script> +</pre> + +<p>Mehr Informationen zu dieser Technik ist verfügbar auf <a href="https://hacks.mozilla.org/2016/01/google-analytics-privacy-and-event-tracking/">Google Analytics, Privacy, and Event Tracking</a>.</p> + +<div class="blockIndicator note"> +<p>Sich auf externe Services zu verlassen ist so oder so kein guter Stil: Es bedeutet deine Seite funktioniert nicht, wenn der Service langsam oder nicht verfügbar ist oder der Tracker von einem Addon blockiert wird.</p> +</div> diff --git a/files/de/mozilla/firefox/releases/16/index.html b/files/de/mozilla/firefox/releases/16/index.html new file mode 100644 index 0000000000..1f341acc1e --- /dev/null +++ b/files/de/mozilla/firefox/releases/16/index.html @@ -0,0 +1,104 @@ +--- +title: Firefox 16 für Entwickler +slug: Mozilla/Firefox/Releases/16 +tags: + - Firefox + - Firefox 16 +translation_of: Mozilla/Firefox/Releases/16 +--- +<div>{{FirefoxSidebar}}</div><p>Firefox 16 erschien am 9. Oktober 2012. Dieser Artikel listet die hauptsächlichen Änderungen auf, welche nicht nur für Web-Entwickler gedacht sind, aber auch Firefox- , Gecko- und AddOn-Entwickler.</p> + +<p>Möchten Sie helfen Firefox 16 zu dokumentieren? Schauen Sie auf die <a href="http://beta.elchi3.de/doctracker/#list=fx&version=16.0">Liste von Bugs, über die geschrieben werden sollte</a> und schreibe Sie dazu.</p> + +<h2 id="Änderungen_für_Web-Entwickler">Änderungen für Web-Entwickler</h2> + +<h3 id="HTML">HTML</h3> + +<ul> + <li>Das {{HTMLElement("meter")}}-Element ist nun verfügbar.</li> + + <li>Die HTML Microdata API kann nun genutzt werden. (<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=591467">bug 591467</a>)</li> + <li>{{HTMLElement("canvas")}} ist nun für alle CSS <code>currentColor</code> verfügbar. ({{bug("629882")}})</li> + <li>{{HTMLElement("input")}} erlaubt nun Filterung durch verschiedene Mimetypes in <code>accept</code>. ({{bug("565274")}})</li> + <li>Die Attribute <code>width</code> and <code>height</code> wurden zum Element {{HTMLElement("input")}} hinzugefügt. (<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=683855">bug 683855</a>)</li> +</ul> + +<h3 id="CSS">CSS</h3> + +<ul> + <li>Support for the standard, unprefixed version of <a href="/en-US/docs/CSS/Using_CSS_animations" title="CSS/Using_CSS_transforms">CSS Animations</a> has been landed. (<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=762302">bug 762302</a>)</li> + <li>Support for reverse animation direction (keywords <code>reverse</code> and <code>alternate-reverse</code> on the {{cssxref("animation-direction")}} property) has been added. (<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=655920">bug 655920</a>)</li> + <li>You can now animate the CSS {{cssxref("height")}} and {{cssxref("width")}} properties.</li> + <li>The {{cssxref("animation-duration")}} and {{cssxref("transition-duration")}} CSS properties now reject negative values (and do not handle them as <code>0s</code> anymore) (<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=773102" title="https://bugzilla.mozilla.org/show_bug.cgi?id=773102">bug 773102</a>)</li> + <li>Support for the standard, unprefixed version of <a href="/en-US/docs/CSS/Using_CSS_transforms" title="CSS/Using_CSS_transforms">CSS Transforms</a> has been landed. (<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=745523">bug 745523</a>)</li> + <li>Support for the standard, unprefixed version of <a href="/en-US/docs/CSS/Using_CSS_gradients" title="CSS/Using_CSS_gradients">CSS Gradients</a> has been landed. Note that the syntax has changed significantly since the prefixed version, so you should read up on this. (<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=752187">bug 752187</a>)</li> + <li>The {{cssxref("box-sizing", "-moz-box-sizing")}} implementation has been updated to apply to table cells too. (<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=338554">bug 338554</a>)</li> + <li>Support for the standard, unprefixed version of {{cssxref("calc")}} has been landed. (<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=771678" title="https://bugzilla.mozilla.org/show_bug.cgi?id=771678">bug 771678</a>)</li> + <li>The {{cssxref("<resolution>")}} CSS data type has been extended to support the <code>dppx</code>. (<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=741644" title="https://bugzilla.mozilla.org/show_bug.cgi?id=741644">bug 741644</a>)</li> + <li>On screen, for <a href="/en-US/docs/CSS/Media_queries" title="CSS/Media_queries">media queries</a>, <code>dppx</code>, <code>dpi</code>, and <code>dpcm</code> are now representing values based on CSS pixels and no more with the physical units. (<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=771390" title="https://bugzilla.mozilla.org/show_bug.cgi?id=771390">bug 771390</a>)</li> + <li>Three new pseudo-classes <code>:-moz-meter-optimum</code>, <code>:-moz-meter-sub-optimum</code>, and <code>:-moz-meter-sub-sub-optimum</code> have been added for accessing/styling a {{HTMLElement("meter")}} element in a paraticular state. (<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=660238" title="https://bugzilla.mozilla.org/show_bug.cgi?id=660238">bug 660238</a>)</li> + <li>The {{cssxref("-moz-appearance")}} property gains two new values: <code>meterbar</code> and <code>meterchunk</code>. They represent components inside the {{HTMLElement("meter")}} element. (<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=659999" title="https://bugzilla.mozilla.org/show_bug.cgi?id=659999">bug 659999</a>)</li> + <li>The {{cssxref("min-width")}} and {{cssxref("min-height")}} now supports the <code>auto</code> keyword for flex items (and resolves to <code>0</code> for other items). ({{bug("763689")}})</li> +</ul> + +<h3 id="DOM">DOM</h3> + +<ul> + <li>Two new properties <code>width</code> and <code>height</code> have been added to the {{domxref("HTMLInputElement")}} interface (<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=683855">bug 683855</a>).</li> + <li>IndexedDB properties and methods have been unprefixed. (<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=726378">bug 726378</a>)</li> + <li>The <a href="/en-US/docs/DOM/window.navigator.battery" title="DOM/window.navigator.battery">Battery API</a> is now unprefixed.</li> + <li>The Vibration API has been unprefixed.</li> + <li>The {{domxref("Keyboard")}} interface, still prefixed as <code>mozKeyboard</code>, now has the {{domxref("Keyboard.setSelectedOption()")}} and {{domxref("Keyboard.setValue()")}} methods, as well as the {{domxref("Keyboard.onfocuschange")}} property.</li> + <li>The <a href="/en-US/docs/LiveConnect_Reference/java" title="/en-US/docs/LiveConnect_Reference/java"><code>java</code></a> and <a href="/en-US/docs/LiveConnect_Reference/Packages" title="/en-US/docs/LiveConnect_Reference/Packages"><code>Packages</code></a> global objects have been removed. See <a href="/en-US/docs/LiveConnect" title="/en-US/docs/LiveConnect">LiveConnect</a>.</li> + <li>The <code>CSSRule.type</code> associated with {{domxref("CSSNamespaceRule")}} has been updated from <code>UNKNOWN_RULE</code> (<code>0</code>) to <code>NAMESPACE_RULE</code> (<code>10</code>). (<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=765590" title="https://bugzilla.mozilla.org/show_bug.cgi?id=765590">bug 765590</a>)</li> + <li>WebSMS API: {{domxref("SmsRequest")}} has been superseded by the more general {{domxref("DOMRequest")}}.</li> +</ul> + +<h3 id="JavaScript">JavaScript</h3> + +<ul> + <li><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number" title="JavaScript/Reference/Global_Objects/Number"><code>Number</code></a> objects now offer <code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isFinite">isFinite</a>()</code>, <code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toInteger">toInteger</a>()</code>, and <code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isInteger">isInteger</a>()</code> methods. (<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=761480">bug 761480</a>, <a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=761495">bug 761495</a>)</li> + <li>The Harmony <a href="http://wiki.ecmascript.org/doku.php?id=harmony:spread" title="http://wiki.ecmascript.org/doku.php?id=harmony:spread">spread operator</a> is now supported in <a href="/en-US/docs/JavaScript/Reference/Global_Objects/Array" title="JavaScript/Reference/Global_Objects/Array"><code>Array</code></a> initializers (<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=574130">bug 574130</a>). Note it is not yet supported in calls (<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=762363" title="https://bugzilla.mozilla.org/show_bug.cgi?id=762363">bug 762363</a>).</li> +</ul> + +<h3 id="WebGL">WebGL</h3> + +<h3 id="SVG">SVG</h3> + +<h3 id="MathML">MathML</h3> + +<ul> + <li>The <code>lspace</code> and <code>rspace</code> attributes of {{MathMLElement("mo")}} now correctly default to <code>thickmathspace</code>.</li> +</ul> + +<h3 id="Network">Network</h3> + +<h3 id="Developer_tools">Developer tools</h3> + +<ul> + <li>There's now a handy developer toolbar you can access by going to Tools > Web Developer > Developer Toolbar, or by pressing Ctrl-Shift-V (Cmd-Opt-V on Mac OS X). This toolbar offers a command line interface as well as buttons for quickly accessing useful tools. The graphical command line interface (<a href="/en-US/docs/Tools/GCLI" title="Tools/GCLI">GCLI</a>) is easy to expand and additional commands are expected in the future. Type "help" to get a list of supported commands.</li> + <li>The Web Console now displays an error count so you can quickly see how much work you have ahead of you.</li> + <li>The Scratchpad now offers a list of recently opened files.</li> +</ul> + +<h2 id="Changes_for_Open_Web_App_developers">Changes for Open Web App developers</h2> + +<ul> + <li>Initial <a href="https://developer.mozilla.org/en-US/docs/Apps/Getting_Started">Open Web App support</a> has been implemented in the desktop versions of Firefox (that is, on Windows, Mac OS X, and Linux).</li> +</ul> + +<h2 id="Changes_for_add-on_and_Mozilla_developers">Changes for add-on and Mozilla developers</h2> + +<h3 id="Interface_changes">Interface changes</h3> + +<p>{{interface("nsIPrivateDOMEvent")}} has been merged into {{interface("nsIDOMEvent")}}. ({{bug("761613")}})</p> + +<h4 id="New_interfaces">New interfaces</h4> + +<h4 id="Removed_interfaces">Removed interfaces</h4> + +<p>The following interfaces have been removed.</p> + +<h2 id="See_also">See also</h2> + +<div>{{Firefox_for_developers('15')}}</div> diff --git a/files/de/mozilla/firefox/releases/27/index.html b/files/de/mozilla/firefox/releases/27/index.html new file mode 100644 index 0000000000..cb671b3b3c --- /dev/null +++ b/files/de/mozilla/firefox/releases/27/index.html @@ -0,0 +1,56 @@ +--- +title: Firefox 27 für Entwickler +slug: Mozilla/Firefox/Releases/27 +tags: + - Firefox +translation_of: Mozilla/Firefox/Releases/27 +--- +<div>{{FirefoxSidebar}}</div><div class="overheadIndicator draft draftHeader"><strong>Diese Seite ist noch nicht fertig.</strong> +<div>Firefox 27 ist noch keine vollständige Version. Neue Features werden demnächst hinzugefügt.</div> +</div> + +<p>Möchten Sie helfen Firefox 27 zu dokumentieren? Schauen Sie auf die <a href="http://beta.elchi3.de/doctracker/#list=fx&version=27.0"><span class="external">Liste von Bugs, über die geschrieben werden sollte</span></a> und schreibe Sie dazu.</p> + +<h2 id="Änderungen_für_Web-Entwickler">Änderungen für Web-Entwickler</h2> + +<h3 id="HTML">HTML</h3> + +<p><em>Keine Änderung.</em></p> + +<h3 id="CSS">CSS</h3> + +<ul> + <li>Die Element <code>grab</code> und <code>grabbing</code> der Eigenschaft {{cssxref("cursor")}} sind nunmehr ohne Präfix (<code>-moz-grab</code> und <code>-moz-grabbing</code>).</li> +</ul> + +<h3 id="JavaScript">JavaScript</h3> + +<p><a href="/en-US/docs/Web/JavaScript/ECMAScript_6_support_in_Mozilla" title="/en-US/docs/Web/JavaScript/ECMAScript_6_support_in_Mozilla">EcmaScript 6</a> (Harmony)<span class="short_text" id="result_box" lang="de"><span class="alt-edited hps"> Implementierung</span></span> wird fortgeführt!</p> + +<ul> + <li>Der Harmony <a href="http://wiki.ecmascript.org/doku.php?id=harmony:spread">Spread Operator</a> ist nun in der Funktion calls verfügbar. ({{bug("762363")}})</li> +</ul> + +<h3 id="InterfacesAPIsDOM">Interfaces/APIs/DOM</h3> + +<p><em>Keine Änderung.</em></p> + +<h3 id="MathML">MathML</h3> + +<p><em>Keine Änderung.</em></p> + +<h3 id="SVG">SVG</h3> + +<p><em>Keine Änderung.</em></p> + +<h2 id="Veränderungen_für_AddOn-_und_Mozilla-Entwickler">Veränderungen für AddOn- und Mozilla-Entwickler</h2> + +<ul> + <li>Der <code>downloads-indicator</code>-Button wurde entfernt. Das Element <code>downloads-button</code> sollte nun verwendet werden. <span id="result_box" lang="de"><span class="alt-edited hps">Wenn Sie prüfen möchten</span><span>, dass es seine</span> <span class="hps">Overlay</span> <span class="alt-edited hps">geladen hat</span><span>,</span> <span class="alt-edited hps">überprüfen Sie das <code>indicator</code></span>-<span class="hps">Attribut</span> <span class="alt-edited hps">auf diesen Button</span> <span class="alt-edited hps">.</span></span></li> + <li>Das <code>chrome://browser/skin/downloads/indicator.css-</code>Stylesheet ist nicht länger in Firefox referenziert.</li> + <li><a href="https://developer.mozilla.org/de/docs/Mozilla/Firefox/Releases/27/Site_Compatibility"><span class="short_text" id="result_box" lang="de"><span class="alt-edited hps">Seiten-</span><span>Kompatibilität</span> <span class="hps">für</span> <span class="hps">Firefox</span> <span class="hps">27</span></span></a></li> +</ul> + +<h3 id="Ältere_Versionen">Ältere Versionen</h3> + +<p>{{Firefox_for_developers('26')}}</p> diff --git a/files/de/mozilla/firefox/releases/28/index.html b/files/de/mozilla/firefox/releases/28/index.html new file mode 100644 index 0000000000..64f7d7796e --- /dev/null +++ b/files/de/mozilla/firefox/releases/28/index.html @@ -0,0 +1,116 @@ +--- +title: Firefox 28 for developers +slug: Mozilla/Firefox/Releases/28 +translation_of: Mozilla/Firefox/Releases/28 +--- +<div>{{FirefoxSidebar}}</div> + +<p>Firefox 28 wurde am 18. März 2014 veröffentlicht. Dieser Artikel listet wichtige Änderungen, die sowohl für Webentwickler, als auch für Firefox-, Gecko- und AddOn-Entwickler nützlich sind.</p> + +<h2 id="Änderungen_für_Web-Entwickler">Änderungen für Web-Entwickler</h2> + +<h3 id="Developer_Tools">Developer Tools</h3> + +<ul> + <li>Die {{domxref("console.exception")}} Eigenschaft wurde hinzugefügt ({{bug("922214")}}).</li> + <li>Die {{domxref("console.assert")}} Eigenschaft wurde hinzugefügt ({{bug("760193")}}).</li> + <li>App Manager: ein neuer Manifest-Texteditor wurde hinzugefügt.</li> + <li>App-Manager: die Toolbox für die Fehlersuche von Apps ist jetzt in die Benutzeroberfläche des App Managers integriert.</li> + <li>Web-Konsole: ein "split console"-Modus wurde hinzugefügt - drücken Sie die Abbruchtaste, um die Konsole in anderen Tools schnell zu öffnen.</li> + <li>Web-Konsole: ein dunkles Theme wurde für den Output hinzugefügt.</li> + <li>Fehlersuche: lesbares minifiziertes JavaScript.</li> + <li>Fehlersuche: einfach den Mauszeiger über eine Variable bewegen oder diese anklicken, um ein Popup für den derzeitigen Wert anzuzeigen.</li> + <li>Inspector: ein Farbwähler und diverse Tooltips wurden der Regel-Ansicht hinzugefügt.</li> + <li>Browser Toolbox: erlaubt AddOn- und Platformentwicklern die Benutzung von fast allen Entwickler-Tools während der Erfassung des Browsers.</li> +</ul> + +<p>Mehr Einzelheiten in <a href="https://hacks.mozilla.org/2013/12/split-console-pretty-print-minified-js-and-more-firefox-developer-tools-episode-28/" title="Split console, pretty-print minified JS and more – Firefox Developer Tools Episode 28">diesem Beitrag</a>.</p> + +<h3 id="CSS">CSS</h3> + +<ul> + <li>Support for multi-line <a href="/en-US/docs/Web/Guide/CSS/Flexible_boxes">flexbox</a> has been added ({{bug("939901")}}).</li> + <li><span id="summary_alias_container"><span id="short_desc_nonedit_display">Longhand East Asian <a href="/en-US/docs/Web/CSS/list-style-type">counter styles</a></span></span> have been implemented ({{bug("934072")}}).</li> + <li><span id="summary_alias_container"><span id="short_desc_nonedit_display">Experimental support for the {{cssxref("background-blend-mode")}} property has been added, but is disabled by default</span></span> ({{bug("841601")}}).</li> + <li>The <code>none</code> value has been added to {{cssxref("font-variant-ligatures")}} ({{bug("913264")}}).</li> + <li>Support for the {{cssxref(":hover")}} user action pseudo-class on pseudo-elements has been implemented ({{bug("922669")}}).</li> +</ul> + +<h3 id="HTML">HTML</h3> + +<ul> + <li><code><input type=color></code> and <code><input type=number></code> have been implemented, disabled by default.</li> +</ul> + +<h3 id="JavaScript">JavaScript</h3> + +<ul> + <li><a href="/en-US/docs/Web/JavaScript/ECMAScript_6_support_in_Mozilla" title="/en-US/docs/Web/JavaScript/ECMAScript_6_support_in_Mozilla">ECMAScript 2015</a> implementation continues: + + <ul> + <li>New <code>Array</code> methods have been implemented: {{jsxref("Array.prototype.entries()")}} and {{jsxref("Array.prototype.keys()")}} ({{bug("894658")}}).</li> + </ul> + </li> + <li>A bug causing that {{jsxref("Object.getOwnPropertyNames()")}} did not see unresolved properties of {{jsxref("Error")}} objects has been fixed ({{bug("724768")}}).</li> +</ul> + +<h3 id="InterfacesAPIsDOM">Interfaces/APIs/DOM</h3> + +<ul> + <li><span id="summary_alias_container"><span id="short_desc_nonedit_display"><code>HTMLVideoElement.canPlayType('video/webm')</code> now reports <code>maybe</code>.</span></span> ({{bug("884275")}}).</li> + <li>The {{domxref("DocumentFragment.getElementById()")}} method has been implemented. E.g. <code>document.createDocumentFragment().getElementById()</code> ({{bug("933193")}}).</li> + <li>The {{domxref("KeyboardEvent.repeat")}} attribute has been implemented ({{bug("600117")}}).</li> + <li>The {{domxref("File")}} constructor, e.g. <code>new File(["foo"], "foo.txt")</code> has been implemented. ({{bug("819900")}}).</li> + <li>The {{domxref("NavigatorPlugins.plugins", "navigator.plugins")}} is no more enumerable, for privacy reasons ({{bug(757726)}}).</li> + <li>The two attributes {{domxref("Window.screenX")}} and {{domxref("Window.screenY")}} now return CSS pixels (and no more device pixels) ({{bug(943668)}}).</li> + <li>The two methods {{domxref("CanvasRenderingContext2D.drawSystemFocusRing()")}} and {{domxref("CanvasRenderingContext2D.drawCustomFocusRing()")}} have been implemented. The preference <code>canvas.focusring.enabled</code> must be set to <code>true</code> to activate both ({{bug(540456)}}).</li> + <li>The <code>willReadFrequently</code> context attribute for "<code>2d</code>" canvas contexts has been implemented (see {{domxref("HTMLCanvasElement.getContext()")}}) ({{bug(884226)}}).</li> + <li>The following attributes and methods of {{domxref("NavigatorID")}} have been implemented on {{domxref("WorkerNavigator")}} to allow their use in workers: {{domxref("NavigatorID.appCodeName", "appCodeName")}}, {{domxref("NavigatorID.product", "product")}}, and {{domxref("NavigatorID.taintEnabled", "taintEnabled()")}} ({{bug(925847)}}).</li> + <li>The {{domxref("NonDocumentTypeChildNode.previousElementSibling" , "previousElementSibling")}} and {domxref("NonDocumentTypeChildNode.nextElementSibling" , "nextElementSibling")}} properties has been removed from {{domxref("DocumentType")}}, because of compatibility problems ({{bug(932501)}}).</li> +</ul> + +<h3 id="MathML">MathML</h3> + +<ul> + <li>Support of <span id="summary_alias_container"><span id="short_desc_nonedit_display">the </span></span><code>mathvariant</code> attribute has been added ({{bug("114365")}}).</li> +</ul> + +<h3 id="SVG">SVG</h3> + +<p><em>No change.</em></p> + +<h3 id="AudioVideo">Audio/Video</h3> + +<ul> + <li><span id="summary_alias_container"><span id="short_desc_nonedit_display">Opus in WebM</span></span> is now supported ({{bug("887978")}}).</li> + <li><span id="summary_alias_container"><span id="short_desc_nonedit_display">The VP9 video decoder</span></span> is now supported ({{bug("833023")}}).</li> +</ul> + +<h3 id="Network">Network</h3> + +<ul> + <li>Support of <code>SPDY/2</code> has been removed.</li> +</ul> + +<h2 id="Changes_for_addon_and_Mozilla_developers">Changes for addon and Mozilla developers</h2> + +<ul> + <li>The interface of <a href="/en-US/docs/Mozilla/JavaScript_code_modules/DeferredTask.jsm">DeferredTask.jsm</a> has been changed, and the <code>isPending()</code>, <code>start()</code>, <code>flush()</code>, and <code>cancel()</code> methods have been removed ({{bug("940408")}}).</li> +</ul> + +<h2 id="Security">Security</h2> + +<ul> + <li>CSP was not enforced in sandboxed iframes. This has been fixed ({{bug(886164)}}).</li> + <li>The CSP 1.1 experimental <code>script-nonce</code> directive has been implemented. The preference <code>security.csp.experimentalEnabled</code> should be set to <code>true</code> to enable this functionality ({{bug(855326)}}).</li> +</ul> + +<h2 id="See_also">See also</h2> + +<ul> + <li><a href="https://www.fxsitecompat.com/en-US/versions/28/">Site Compatibility for Firefox 28</a></li> +</ul> + +<h3 id="Older_versions">Older versions</h3> + +<p>{{Firefox_for_developers('27')}}</p> diff --git a/files/de/mozilla/firefox/releases/3.6/index.html b/files/de/mozilla/firefox/releases/3.6/index.html new file mode 100644 index 0000000000..dcd0edcee8 --- /dev/null +++ b/files/de/mozilla/firefox/releases/3.6/index.html @@ -0,0 +1,301 @@ +--- +title: Firefox 3.6 for developers +slug: Mozilla/Firefox/Releases/3.6 +translation_of: Mozilla/Firefox/Releases/3.6 +--- +<div><section class="Quick_links" id="Quick_Links"> + <ol> + <li class="toggle"> + <details> + <summary>Firefox developer release notes</summary> + <ol> + <li><a href="/de/docs/Mozilla/Firefox/Releases">Firefox developer release notes</a></li> + </ol> + </details> + </li> + <li class="toggle"> + <details> + <summary>Add-ons</summary> + <ol> + <li><a href="/de/Add-ons/WebExtensions">Browser extensions</a></li> + <li><a href="/de/Add-ons/Themes">Themes</a></li> + </ol> + </details> + </li> + <li class="toggle"> + <details> + <summary>Firefox internals</summary> + <ol> + <li><a href="/de/docs/Mozilla/">Mozilla project</a></li> + <li><a href="/de/docs/Mozilla/Gecko">Gecko</a></li> + <li><a href="/de/docs/Mozilla/Firefox/Headless_mode">Headless mode</a></li> + <li><a href="/de/docs/Mozilla/JavaScript_code_modules">JavaScript code modules</a></li> + <li><a href="/de/docs/Mozilla/js-ctypes">JS-ctypes</a></li> + <li><a href="/de/docs/Mozilla/MathML_Project">MathML project</a></li> + <li><a href="/de/docs/Mozilla/MFBT">MFBT</a></li> + <li><a href="/de/docs/Mozilla/Projects">Mozilla projects</a></li> + <li><a href="/de/docs/Mozilla/Preferences">Preference system</a></li> + <li><a href="/de/docs/Mozilla/WebIDL_bindings">WebIDL bindings</a></li> + <li><a href="/de/docs/Mozilla/Tech/XPCOM">XPCOM</a></li> + <li><a href="/de/docs/Mozilla/Tech/XUL">XUL</a></li> + </ol> + </details> + </li> + <li class="toggle"> + <details> + <summary>Building and contributing</summary> + <ol> + <li><a href="/de/docs/Mozilla/Developer_guide/Build_Instructions">Build instructions</a></li> + <li><a href="/de/docs/Mozilla/Developer_guide/Build_Instructions/Configuring_Build_Options">Configuring build options</a></li> + <li><a href="/de/docs/Mozilla/Developer_guide/Build_Instructions/How_Mozilla_s_build_system_works">How the build system works</a></li> + <li><a href="/de/docs/Mozilla/Developer_guide/Source_Code/Mercurial">Mozilla source code</a></li> + <li><a href="/de/docs/Mozilla/Localization">Localization</a></li> + <li><a href="/de/docs/Mozilla/Mercurial">Mercurial</a></li> + <li><a href="/de/docs/Mozilla/QA">Quality assurance</a></li> + <li><a href="/de/docs/Mozilla/Using_Mozilla_code_in_other_projects">Using Mozilla code in other projects</a></li> + </ol> + </details> + </li> + </ol> +</section></div><p><a class="external" href="http://www.firefox.com/" title="http://www.firefox.com/">Firefox 3.6</a> offers support for new and developing web standards, increased performance, and an overall better experience for web users and developers. This page provides links to articles covering the new capabilities of Firefox 3.6.</p> + +<h2 id="For_web_site_and_application_developers">For web site and application developers</h2> + +<h3 id="CSS">CSS</h3> + +<dl> + <dt><a href="/en-US/docs/CSS/Using_CSS_gradients" title="en-US/docs/Using gradients">Using gradients</a></dt> + <dd>Firefox 3.6 adds support for the proposed <a href="/de/docs/Web/CSS/-moz-linear-gradient" title="Die Beschreibung hierüber wurde bisher noch nicht geschrieben. Bitte überlege, mitzuwirken!"><code>-moz-linear-gradient</code></a> and <a href="/de/docs/Web/CSS/-moz-radial-gradient" title="Die Beschreibung hierüber wurde bisher noch nicht geschrieben. Bitte überlege, mitzuwirken!"><code>-moz-radial-gradient</code></a> properties for <a href="/de/docs/Web/CSS/background" title="Die background CSS Eigenschaft ist eine Kurzschreibweise, um die verschiedenen Hintergrundwerte an einer einzigen Stelle im Stylesheet zu setzen. background kann dazu verwendet werden, einen oder mehrere der folgenden Werte zu setzen: background-clip, background-color, background-image, background-origin, background-position, background-repeat, background-size und background-attachment."><code>background</code></a>.</dd> + <dt><a href="/en-US/docs/CSS/Multiple_backgrounds" title="en-US/docs/CSS/Multiple backgrounds">Multiple backgrounds</a></dt> + <dd>The <a href="/de/docs/Web/CSS/background" title="Die background CSS Eigenschaft ist eine Kurzschreibweise, um die verschiedenen Hintergrundwerte an einer einzigen Stelle im Stylesheet zu setzen. background kann dazu verwendet werden, einen oder mehrere der folgenden Werte zu setzen: background-clip, background-color, background-image, background-origin, background-position, background-repeat, background-size und background-attachment."><code>background</code></a> property (as well as <a href="/de/docs/Web/CSS/background-color" title="Die background-color CSS Eigenschaft setzt die Hintergrundfarbe eines Elements, entweder durch einen Farbwert oder das Schlüsselwort transparent."><code>background-color</code></a>, <a href="/de/docs/Web/CSS/background-image" title="Die background-image-Eigenschaft legt ein oder mehrere Hintergrundbilder für ein Element fest. Die einzelnen Bilder werden übereinander gestapelt, wobei die erste Schicht so dargestellt wird, dass sie dem Benutzer am nächsten erscheint. Hintergrundbilder werden immer über Hintergrundfarben gelegt."><code>background-image</code></a>, <a href="/de/docs/Web/CSS/background-position" title="Die background-position Eigenschaft bestimmt die Position des Hintergrundbildes"><code>background-position</code></a>, <a href="/de/docs/Web/CSS/background-repeat" title="Die background-repeat Eigenschaft bestimmt, ob und wie Hintergrundbilder wiederholt werden."><code>background-repeat</code></a>, and <a href="/de/docs/Web/CSS/background-attachment" title="Die background-attachment Eigenschaft bestimmt, ob, das über background-image festgelegte Hintergrundbild beim Scrollen mit wandert oder an einem festen Ort fixiert ist."><code>background-attachment</code></a>) now supports multiple backgrounds. This lets you specify multiple backgrounds that are rendered atop one another in layers.</dd> + <dt><a href="/en-US/docs/CSS/Media_queries#Mozilla-specific_media_features" title="en-US/docs/CSS/Media queries#Mozilla-specific media features">Mozilla-specific media features</a></dt> + <dd>Media features have been added for Mozilla-specific system metrics, so that <a href="/en-US/docs/CSS/Media_queries" title="en-US/docs/CSS/Media queries">media queries</a> can be used to more safely check on the availability of features such as touch support.</dd> + <dt><a href="/en-US/docs/CSS/Scaling_background_images" title="en-US/docs/CSS/Scaling background images">Scaling background images</a></dt> + <dd>The <code>background-size </code>property from the <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> is now supported under the name <a href="/de/docs/Web/CSS/-moz-background-size" title="Die Beschreibung hierüber wurde bisher noch nicht geschrieben. Bitte überlege, mitzuwirken!"><code>-moz-background-size</code></a>.</dd> + <dt><a href="/en-US/docs/WOFF" title="en-US/docs/About WOFF">WOFF font support</a></dt> + <dd><a href="/de/docs/Web/CSS/@font-face" title="Die @font-face CSS at-Regel erlaubt Web-Autoren, Texte mit spezifischen Schriftarten (Fonts), die auf dem jeweiligen Webserver abgelegt sind, darzustellen. Durch die @font-face Regel sind Web-Autoren nicht mehr länger auf die eingeschränkte Zahl an Fonts angewiesen, die auf den Computern von Usern installiert ist. Die @font-face at Regel lässt sich nicht nur in der oberen CSS-Ebene einbinden, sondern auch in irgendeiner CSS conditional-group at-Regel."><code>@font-face</code></a> now supports the WOFF downloadable font file format.</dd> + <dt><a href="/en-US/docs/CSS/pointer-events" title="en-US/docs/CSS/pointer-events">Pointer events</a></dt> + <dd>The <a href="/de/docs/Web/CSS/pointer-events" title="Die CSS-Eigenschaft pointer-events erlaubt es dem Autor zu steuern, unter welchen Umständen (wenn überhaupt) ein spezifisches grafisches Element target eines Mouse-Events wird. Wenn die Eigenschaft nicht gesetzt ist, werden die Eigenschaften von visiblePainted auf den SVG Inhalt angewandt."><code>pointer-events</code></a> property lets content specify whether or not an element may be the target of mouse pointer events.</dd> +</dl> + +<h4 id="Miscellaneous_CSS_changes">Miscellaneous CSS changes</h4> + +<ul> + <li>The <a href="/en-US/docs/CSS/length#Relative_length_units" title="en-US/docs/CSS/length#Relative length units"><code>rem</code></a> length unit from <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> is now supported. <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=472195" title="FIXED: support css3 root em ('rem' or 're') units">Bug 472195</a></li> + <li><a href="/de/docs/Web/CSS/image-rendering" title="Die Beschreibung hierüber wurde bisher noch nicht geschrieben. Bitte überlege, mitzuwirken!"><code>image-rendering</code></a> is supported for images, background images, videos and canvases. <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=423756" title="FIXED: Request: Switch for authors to turn on/off bilinear filtering when enlarging images">Bug 423756</a></li> + <li><a href="/de/docs/Web/CSS/text-align" title="Die CSS Eigenschaft text-align beschreibt, wie Inlineinhalte wie Text in ihrem Elternblockelement ausgerichtet werden. text-align steuert nicht die Ausrichtung von Blockelementen selbst, nur deren Inlineinhalte."><code>text-align</code></a>:end is now supported. <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=299837" title="FIXED: [FIX]add support for text-align: end">Bug 299837</a></li> + <li>DOM changes to elements using the table <a href="/de/docs/Web/CSS/display" title="Die display Eigenschaft legt den Typ einer Rendering-Box eines Elements fest. Für HTML sind die standardmäßigen display Werte in der HTML-Spezifikation beschrieben und in den User- bzw. Browser-Stylesheets angegeben. Für XML-Dokumente ist der voreingestellte Wert inline."><code>display</code></a> types now work much better.</li> + <li>Added <a href="/de/docs/Web/CSS/:-moz-locale-dir(ltr)" title='Die :-moz-locale-dir(ltr) CSS Pseudoklasse matcht ein Element, falls die Benutzerschnittstelle von links nach rechts angezeigt wird. Dies wird durch das Setzen der Einstellung intl.uidirection.locale (wobei locale die aktuelle Sprachumgebung ist) auf "ltr" bestimmt.'><code>:-moz-locale-dir(ltr)</code></a> and <a href="/de/docs/Web/CSS/:-moz-locale-dir(rtl)" title='Die :-moz-locale-dir(rtl) CSS Pseudoklasse matcht ein Element, falls die Benutzerschnittstelle von rechts nach links angezeigt wird. Dies wird durch das Setzen der Einstellung intl.uidirection.locale (wobei locale die aktuelle Sprachumgebung ist) auf "rtl" bestimmt.'><code>:-moz-locale-dir(rtl)</code></a> to make it easier to customize layouts based on whether the user interface is being displayed using a left-to-right or a right-to-left locale. <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=478416" title="FIXED: Replace chromedir with something more sane">Bug 478416</a></li> + <li>Added support for the <a href="/de/docs/Web/CSS/:indeterminate" title='Die :indeterminate CSS Pseudoklasse repräsentiert alle &lt;input type="checkbox"> Elements, deren indeterminate DOM Eigenschaft durch JavaScript auf true gesetzt wurde. Darüber hinaus wird sie in manchen Browsern dazu verwendet, &lt;progress> Elemente in einem Zwischenstatus zu finden.'><code>:indeterminate</code></a> pseudo-class, which matches <code>checkbox</code> <a class="internal" href="/en-US/docs/HTML/Element/Input" title="en-US/docs/HTML/Element/input"><code>input</code></a> elements whose <code>indeterminate</code> attribute is <code>true</code>.</li> + <li>Windowed plugins are no longer displayed in CSS transforms, because they can't be transformed properly by the compositor.</li> +</ul> + +<h3 id="HTML">HTML</h3> + +<dl> + <dt><a href="/en-US/docs/Using_files_from_web_applications" title="en-US/docs/Using files from web applications">Using files from web applications</a></dt> + <dd>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>input type="file"</code> HTML element's new <code>multiple</code> attribute.</dd> + <dt>HTML5 video supports poster frames</dt> + <dd>The <code>poster</code> attribute is now supported for the <a class="internal" href="/en-US/docs/HTML/Element/Video" title="en-US/docs/HTML/Element/Video"><code>video</code></a> element, allowing content to specify a poster frame to be displayed until the video begins to play.</dd> + <dt>Checkboxes and radio buttons support the <code>indeterminate</code> property</dt> + <dd>HTML <a class="internal" href="/en-US/docs/HTML/Element/Input" title="en-US/docs/HTML/Element/input"><code>input</code></a> elements of types <code>checkbox</code> and <code>radio</code> now support the indeterminate property, which allows a third, "indeterminate" state.</dd> + <dt>Canvas image smoothing can be controlled</dt> + <dd>The new <a class="internal" href="/en-US/docs/Canvas_tutorial/Using_images#Controlling_image_scaling_behavior" title="en-US/docs/Canvas tutorial/Using images#Controlling image scaling behavior"><code>mozImageSmoothingEnabled</code></a> property can be used to turn on and off image smoothing when scaling in <a class="internal" href="/en-US/docs/HTML/Element/canvas" title="en-US/docs/HTML/Element/canvas"><code>canvas</code></a> elements.</dd> + <dt>Asynchronous script execution</dt> + <dd>By setting the <code>async</code> attribute on a <a href="/en-US/docs/HTML/Element/Script" title="en-US/docs/HTML/Element/Script"><code>script</code></a> element, the <code>script</code> will not block loading or display of the rest of the page. Instead the <code>script</code> executes as soon as it is downloaded.</dd> +</dl> + +<h3 id="JavaScript">JavaScript</h3> + +<p>Gecko 1.9.2 introduces JavaScript 1.8.2, which adds a number of language features from the <a href="/en-US/docs/JavaScript/ECMAScript_5_support_in_Mozilla" title="https://developer.mozilla.org/en-US/docs/JavaScript/ECMAScript_5_support_in_Mozilla">ECMAScript 5 standard</a>:</p> + +<ul> + <li><a href="/en-US/docs/JavaScript/Reference/Global_Objects/Date/parse" title="en-US/docs/Core JavaScript 1.5 Reference/Global Objects/Date/parse"><code>Date.parse()</code></a> can now parse ISO 8601 dates like YYYY-MM-DD.</li> + <li> + <p>The <a href="/en-US/docs/JavaScript/Reference/Global_Objects/Function/prototype" title="en-US/docs/Core JavaScript 1.5 Reference/Global Objects/Function/prototype"><code>prototype</code></a> property of function instances is no longer enumerable.</p> + </li> +</ul> + +<dl> +</dl> + +<h3 id="DOM">DOM</h3> + +<dl> + <dt>Web workers can now self-terminate</dt> + <dd><a href="/en-US/docs/DOM/Using_web_workers" title="en-US/docs/Using web workers">Workers</a> now support the <code><a href="https://developer.mozilla.org/de/docs/XPCOM_Interface_Reference/nsIWorkerScope#close()">nsIWorkerScope.close()</a></code> method, which allows them to terminate themselves.</dd> + <dt>Drag and drop now supports files</dt> + <dd>The <a href="/en-US/docs/DragDrop/DataTransfer" title="en-US/docs/DragDrop/DataTransfer"><code>DataTransfer</code></a> object provided to drag listeners now includes a list of files that were dragged.</dd> + <dt>Checking to see if an element matches a specified CSS selector</dt> + <dd>The new <a href="/de/docs/Web/API/Node/mozMatchesSelector" title="Die Beschreibung hierüber wurde bisher noch nicht geschrieben. Bitte überlege, mitzuwirken!"><code>element.mozMatchesSelector</code></a> method lets you determine whether or not an element matches a specified CSS selector. See <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=518003" title="FIXED: implement function to check whether element matches a CSS selector">Bug 518003</a>.</dd> + <dt><a href="/en-US/docs/Detecting_device_orientation" title="en-US/docs/Detecting device orientation">Detecting device orientation</a></dt> + <dd>Content can now detect the orientation of the device if it has a supported accelerometer, using the <a href="/en-US/docs/DOM/MozOrientation" title="en-US/docs/DOM/MozOrientation"><code>MozOrientation</code></a> event. Firefox 3.6 supports the accelerometer in Mac laptops.</dd> + <dt><a href="/en-US/docs/DOM/Detecting_document_width_and_height_changes" title="en-US/docs/DOM/Detecting document width and height changes">Detecting document width and height changes</a></dt> + <dd>The new <code>MozScrollAreaChanged</code> event is dispatched whenever the document's <code>scrollWidth</code> and/or <code>scrollHeight</code> properties change.</dd> +</dl> + +<h4 id="Miscellaneous_DOM_changes">Miscellaneous DOM changes</h4> + +<ul> + <li>The <code>getBoxObjectFor()</code> method has been <strong>removed</strong>, as it was non-standard and exposed even more non-standard stuff to the web. See <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=340571" title="FIXED: getBoxObjectFor leaking-onto-the-Web disaster">Bug 340571</a>. Also affects <a class="external" href="http://mootools.net/" title="http://mootools.net/">MooTools</a> which uses this call for Gecko detection; this has been fixed in the latest version of MooTools, so be sure to update.</li> + <li>The new <a class="internal" href="/en-US/docs/DOM/window.mozInnerScreenX" title="en-US/docs/DOM/window.mozInnerScreenX"><code>mozInnerScreenX</code></a> and <a class="internal" href="/en-US/docs/DOM/window.mozInnerScreenY" title="en-US/docs/DOM/window.mozInnerScreenY"><code>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>The new <code>mozScreenPixelsPerCSSPixel</code> attribute on the <code><a href="/de/docs/XPCOM_Interface_Referenz/nsIDOMWindowUtils" title="">nsIDOMWindowUtils</a></code> interface, 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>When the page's URI's document fragment identifier (the part after the "#" (hash) character) changes, a new <code>hashchange</code> event is sent to the page. See <a class="internal" href="/en-US/docs/DOM/window.onhashchange" title="window.onhashchange">window.onhashchange</a> for more information. <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=385434" title="FIXED: Add support for HTML5 onhashchange (event for named anchor changes)">Bug 385434</a></li> + <li>The attribute <a class="internal" href="/en-US/docs/DOM/document.readyState" title="en-US/docs/DOM/document.readyState"><code>document.readyState</code></a> is now supported. <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=347174" title='FIXED: Implement document.readystate == "complete"'>Bug 347174</a></li> + <li>Support for HTML5's <code><a class="internal" href="/en-US/docs/DOM/element.classList" title="element.classList">element.classList</a></code> to allow easier handling of the class attribute. <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=501257" title="FIXED: Implement HTML 5's HTMLElement.classList property">Bug 501257</a></li> + <li><code>localName</code> and <code>namespaceURI</code> in HTML documents now behave like they do in XHTML documents: <code>localName</code> returns in lower case and <code>namespaceURI</code> for HTML elements is <code>"<a class="external" href="http://www.w3.org/1999/xhtml" rel="freelink">http://www.w3.org/1999/xhtml</a>"</code>.</li> + <li><a href="/en-US/docs/DOM/element.getElementsByTagNameNS" title="en-US/docs/DOM/element.getElementsByTagNameNS"><code>element.getElementsByTagNameNS</code></a> no longer lowercases its argument, so upper-case ASCII letters in the argument make matches against HTML elements fail. The same is true for <a href="/en-US/docs/DOM/document.getElementsByTagNameNS" title="en-US/docs/DOM/document.getElementsByTagNameNS"><code>document.getElementsByTagNameNS</code></a>.</li> + <li>Support has been added for addresses in geolocation via the <code><a href="/de/docs/XPCOM_Interface_Referenz/nsIDOMGeoPositionAddress" title="">nsIDOMGeoPositionAddress</a></code> interface and a new field added to <code><a href="/de/docs/XPCOM_Interface_Referenz/nsIDOMGeoPosition" title="">nsIDOMGeoPosition</a></code>.</li> + <li>The <a href="/de/docs/Web/API/Window/getComputedStyle" title="Die Methode Window.getComputedStyle() gibt ein Objekt zurück, das alle CSS-Eigenschaften eines Elements enthält; und zwar nachdem alle aktiven Stylesheets geladen und Basisberechungen ausgeführt wurden."><code>window.getComputedStyle</code></a> function now returns quotes within <code>url()</code> values.</li> +</ul> + +<h3 id="XPath">XPath</h3> + +<dl> + <dt>The choose() XPath method is now supported</dt> + <dd>The <a href="/en-US/docs/XPath/Functions/choose" title="en-US/docs/XPath/Functions/choose"><code>choose()</code></a> method is now supported by our implementation of <a href="/en-US/docs/XPath" title="en-US/docs/XPath">XPath</a>.</dd> +</dl> + +<h2 id="For_XUL_and_add-on_developers">For XUL and add-on developers</h2> + +<p>If you're an extension developer, you should start by reading <a class="internal" href="/en-US/docs/Updating_extensions_for_Firefox_3.6" title="en-US/docs/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-US/docs/Updating_plug-ins_for_Firefox_3.6" title="en-US/docs/Updating plug-ins for Firefox 3.6">Updating plug-ins for Firefox 3.6</a>.</p> + +<h3 id="New_features">New features</h3> + +<dl> + <dt><a href="/en-US/docs/Detecting_device_orientation" title="en-US/docs/Detecting device orientation">Detecting device orientation</a></dt> + <dd>Content can now detect the orientation of the device if it has a supported accelerometer, using the <a href="/en-US/docs/DOM/MozOrientation" title="en-US/docs/DOM/MozOrientation"><code>MozOrientation</code></a> event. Firefox 3.6 supports the accelerometer in Mac laptops.</dd> + <dt><a href="/en-US/docs/Monitoring_HTTP_activity" title="en-US/docs/Monitoring HTTP activity">Monitoring HTTP activity</a></dt> + <dd>You can now monitor HTTP transactions to observe requests and responses in real time.</dd> + <dt><a href="/en-US/docs/Working_with_the_Windows_taskbar" title="en-US/docs/Working with the Windows taskbar">Working with the Windows taskbar</a></dt> + <dd>It's now possible to customize the appearance of windows in the taskbar in Windows 7 or later. <em>This has been disabled by default in Firefox 3.6.</em></dd> +</dl> + +<h3 id="Places">Places</h3> + +<ul> + <li>Places queries can now use the <code>redirectsMode</code> attribute on the <code><a href="/de/docs/XPCOM_Interface_Referenz/nsINavHistoryQueryOptions" title="">nsINavHistoryQueryOptions</a></code> interface to specify whether or not to include redirected pages in results.</li> + <li>Added the new <code><a href="https://developer.mozilla.org/de/docs/XPCOM_Interface_Reference/nsIFaviconService#expireAllFavicons()">nsIFaviconService.expireAllFavicons()</a></code> method to the <code><a href="/de/docs/XPCOM_Interface_Referenz/nsIFaviconService" title="">nsIFaviconService</a></code> interface.</li> +</ul> + +<h3 id="Storage">Storage</h3> + +<dl> + <dt><a href="/en-US/docs/Storage#Collation_(sorting)" title="en-US/docs/Storage#Collation (sorting)">Locale-aware collation of data is now supported by the Storage API</a></dt> + <dd>Gecko 1.9.2 added several new collation methods to provide optimized collation (sorting) of results using locale-aware techniques.</dd> + <dt><a href="/en-US/docs/mozIStorageStatementParams#Enumeration_of_properties" title="en-US/docs/mozIStorageStatementParams#Enumeration of properties">Properties on a statement can now be enumerated</a></dt> + <dd>You can now use a <code><a class="internal" href="/en-US/docs/JavaScript/Reference/Statements/for...in" title="en-US/docs/Core JavaScript 1.5 Reference/Statements/For...in">for..in</a></code> enumeration to enumerate all the properties on a statement.</dd> + <dt>mozIStorageStatement's getParameterIndex changed behavior between 3.5 and 3.6.</dt> + <dd>See <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=528166" title="mozIStorageStatement getParameterIndex causes NS_ERROR_ILLEGAL_VALUE">Bug 528166</a> for details.</dd> + <dt>Asynchronously bind multiple sets of parameters and execute a statement.</dt> + <dd>See <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=490085" title="FIXED: Add ability to bind multiple sets of parameters and execute asynchronously">Bug 490085</a> for details. Documentation coming soon.</dd> +</dl> + +<h3 id="Preferences">Preferences</h3> + +<ul> + <li>The <code><a href="/de/docs/XPCOM_Interface_Referenz/nsIContentPrefService" title="">nsIContentPrefService</a></code> interface has two new methods: <code><a href="https://developer.mozilla.org/de/docs/XPCOM_Interface_Reference/nsIContentPrefService#getPrefsByName()">nsIContentPrefService.getPrefsByName()</a></code> and <code><a href="https://developer.mozilla.org/de/docs/XPCOM_Interface_Reference/nsIContentPrefService#removePrefsByName()">nsIContentPrefService.removePrefsByName()</a></code>.</li> +</ul> + +<h3 id="Themes">Themes</h3> + +<p>See <a class="internal" href="/en-US/docs/Updating_themes_for_Firefox_3.6" title="en-US/docs/Updating themes for Firefox 3.6">Updating themes for Firefox 3.6</a> for a list of changes related to themes.</p> + +<dl> + <dt><a href="/en-US/docs/Themes/Lightweight_themes" title="en-US/docs/Themes/Lightweight themes">Lightweight themes</a></dt> + <dd>Firefox 3.6 supports lightweight themes; these are easy-to-create themes that simply apply a background to the top (URL bar and button bar) and bottom (status bar) of browser windows. This is an integration of the existing <a class="external" href="http://www.getpersonas.com/" title="http://www.getpersonas.com/">Personas</a> theme architecture into Firefox.</dd> +</dl> + +<h3 id="Miscellaneous">Miscellaneous</h3> + +<ul> + <li>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-US/docs/Migrating_raw_components_to_add-ons" title="en-US/docs/Migrating raw components to add-ons">repackage their components as XPI packages</a> so they can be installed as standard add-ons.</li> + <li><code>contents.rdf</code> is no longer supported for registering chrome in extensions. You must now use the <a class="internal" href="/en-US/docs/Install_Manifests" title="en-US/docs/Install manifests"><code>chrome.manifest</code></a> file instead. See <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=492008" title="FIXED: Drop support for contents.rdf chrome registrations">Bug 492008</a>.</li> + <li>Added support for hiding the menu bar automatically. See <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=477256" title="FIXED: Implement menubar auto-hiding in toolkit">Bug 477256</a>.</li> + <li>Added support for the <code>container-live-role</code> attribute to objects. See <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=391829" title="FIXED: Add support for container-live-role to object attributes">Bug 391829</a>.</li> + <li>The <code>tabs-closebutton</code> binding has been removed. See <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=500971" title="FIXED: Remove obsolete tabs-closebutton binding">Bug 500971</a>.</li> + <li>Added support to <code><a href="/de/docs/XPCOM_Interface_Referenz/nsISound" title="">nsISound</a></code> for playing sounds based on events that have occurred. See <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=502799" title="FIXED: add new nsISound method for the event sounds">Bug 502799</a>.</li> + <li>The syntax for the <code><a href="/de/docs/XPCOM_Interface_Referenz/nsITreeView" title="">nsITreeView</a></code> methods <code><a href="https://developer.mozilla.org/de/docs/XPCOM_Interface_Reference/nsITreeView#canDrop()">nsITreeView.canDrop()</a></code> and <code><a href="https://developer.mozilla.org/de/docs/XPCOM_Interface_Reference/nsITreeView#drop()">nsITreeView.drop()</a></code> has changed to support the new drag & drop API introduced in Gecko 1.9. See <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=455590" title="FIXED: Allow new dnd api with tree views">Bug 455590</a>.</li> + <li>Added support to snap the mouse cursor to the default button of dialog or wizard on Windows, see <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=76053" title='FIXED: Windows mouse integration: "Snap to default button in dialog boxes"'>Bug 76053</a>. This is processed automatically by dialog and wizard element. But if a XUL application creates a window using the <code>window</code> element and it has a default button, it needs to call <code><a href="https://developer.mozilla.org/de/docs/XPCOM_Interface_Reference/nsIDOMChromeWindow#notifyDefaultButtonLoaded()">nsIDOMChromeWindow.notifyDefaultButtonLoaded()</a></code> during the window's <code>onload</code> event handler.</li> + <li>The <code><a href="/de/docs/XPCOM_Interface_Referenz/nsILocalFileMac" title="">nsILocalFileMac</a></code> interface has had two methods removed: <code>setFileTypeAndCreatorFromMIMEType()</code> and <code>setFileTypeAndCreatorFromExtension()</code>.</li> + <li>The new <a class="internal" href="/en-US/docs/JavaScript_code_modules/NetUtil.jsm" title="en-US/docs/JavaScript code modules/NetUtil.jsm"><code>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>The new <a class="internal" href="/en-US/docs/JavaScript_code_modules/openLocationLastURL.jsm" title="en-US/docs/JavaScript code modules/openLocationLastURL.jsm"><code>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>On Windows, the <code><a href="/de/docs/XPCOM_Interface_Referenz/nsIScreen" title="">nsIScreen</a></code> 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>Menu bars can now be hidden on Windows, using the new <code id="a-autohide"><a href="https://developer.mozilla.org/de/docs/Mozilla/Tech/XUL/Attribute/autohide">autohide</a></code> attribute on the <code><a href="/de/docs/Mozilla/Tech/XUL/toolbar" title="toolbar">toolbar</a></code> XUL element.</li> + <li>The <span id="m-loadOneTab"><code><a href="https://developer.mozilla.org/de/docs/Mozilla/Tech/XUL/Methoden/loadOneTab">loadOneTab</a></code></span> and <span id="m-addTab"><code><a href="https://developer.mozilla.org/de/docs/Mozilla/Tech/XUL/Methoden/addTab">addTab</a></code></span> methods now accept a new <code>relatedToCurrent</code> parameter and, in addition, allow the parameters to be specified by name, since nearly all of the parameters are optional.</li> + <li>The "<a href="/en-US/docs/Install_Manifests#hidden" title="en-US/docs/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>The <code>@mozilla.org/webshell;1</code> component no longer exists; you need to use <code>@mozilla.org/docshell;1</code> instead.</li> + <li>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 <code><a href="https://developer.mozilla.org/de/docs/XPCOM_Interface_Reference/nsIUpdateTimerManager#registerTimer()">nsIUpdateTimerManager.registerTimer()</a></code> for details.</li> + <li>The <a href="/en-US/docs/NPN_GetValue" title="en-US/docs/NPN GetValue"><code>NPN_GetValue()</code></a> function no longer provides access to XPCOM through the variable values <code>NPNVserviceManager</code>, <code>NPNVDOMelement</code>, and <code>NPNVDOMWindow</code>. This is part of the work toward making plugins run in separate processes in a future version of Gecko.</li> + <li>Plugins are no longer scriptable through XPCOM (IDL) interfaces, <a href="/en-US/docs/Gecko_Plugin_API_Reference/Scripting_plugins" title="en-US/docs/Gecko Plugin API Reference:Scripting plugins">NPRuntime</a> is the API to use for making plugins scriptable, and <a href="/en-US/docs/NPP_GetValue" title="en-US/docs/NPP GetValue"><code>NPP_GetValue()</code></a> is no longer called to with the value <code>NPPVpluginScriptableInstance</code> or <code>NPPVpluginScriptableIID</code>. This is part of the work toward making plugins run in separate processes in a future version of Gecko.</li> +</ul> + +<h2 id="For_FirefoxGecko_developers">For Firefox/Gecko developers</h2> + +<p>Certain changes are only really interesting if you work on the internals of Firefox itself.</p> + +<h3 id="Interfaces_merged">Interfaces merged</h3> + +<p>The following interfaces have been combined together:</p> + +<ul> + <li><code>nsIPluginTagInfo2</code> has been merged into <code>nsIPluginTagInfo</code>.</li> + <li><code>nsIPluginInstanceInternal</code>, <code>nsIPPluginInstancePeer</code>, <code>nsIPluginInstancePeer1</code>, <code>nsIPluginInstancePeer2</code>, and <code>nsIPluginInstancePeer3</code> have all been merged into <code>nsIPluginInstance</code>.</li> + <li><code>nsIWindowlessPlugInstPeer</code> has been merged into <code>nsIPluginInstance</code>.</li> + <li><code>nsIPluginManager</code> and <code>nsIPluginManager2</code> have been merged into <code>nsIPluginHost</code>.</li> +</ul> + +<h3 id="Interfaces_removed">Interfaces removed</h3> + +<p>The following interfaces have been removed entirely because they were unused, unimplemented, or obsolete:</p> + +<ul> + <li><code>nsIFullScreen</code></li> + <li><code>nsIDOMSVGListener</code></li> + <li><code>nsIDOMSVGZoomListener</code></li> + <li><code>nsIInternetConfigService</code></li> + <li><code>nsIDKey</code></li> + <li><code>nsIEventHandler</code></li> + <li><code>nsIJRILiveConnectPIPeer</code></li> + <li><code>nsIJRILiveConnectPlugin</code></li> + <li><code>nsIScriptablePlugin</code></li> + <li><code>nsIClassicPluginFactory</code></li> + <li><code>nsIFileUtilities</code></li> +</ul> + +<h3 id="Interfaces_moved">Interfaces moved</h3> + +<p>The following interfaces have been relocated from their previous IDL files into new ones:</p> + +<ul> + <li><code>nsIDOMNSCSS2Properties</code> is now located in its own IDL file (<code>dom/interfaces/css/nsIDOMCSS2Properties.idl</code>).</li> + <li><code><a href="/de/docs/XPCOM_Interface_Referenz/nsIUpdateTimerManager" title="">nsIUpdateTimerManager</a></code> is now located in its own IDL file.</li> +</ul> + +<p>A large number of interfaces have been moved. See <a href="/en-US/docs/Interfaces_moved_in_Firefox_3.6" title="en-US/docs/Interfaces moved in Firefox 3.6">Interfaces moved in Firefox 3.6</a> for a complete list.</p> + +<h3 id="Other_interface_changes">Other interface changes</h3> + +<p>The following assorted changes have been made:</p> + +<ul> + <li>The <code>nsIPlugin</code> interface now inherits from <code><a href="/de/docs/XPCOM_Interface_Referenz/nsISupports" title="">nsISupports</a></code> instead of <code><a href="/de/docs/XPCOM_Interface_Referenz/nsIFactory" title="">nsIFactory</a></code>.</li> + <li>The <code>nsIPluginHost</code> interface now inherits from <code><a href="/de/docs/XPCOM_Interface_Referenz/nsISupports" title="">nsISupports</a></code> instead of <code><a href="/de/docs/XPCOM_Interface_Referenz/nsIFactory" title="">nsIFactory</a></code>.</li> + <li>The <code>nsIFrame</code> interface now inherits from <code>nsQueryFrame</code> instead of <code><a href="/de/docs/XPCOM_Interface_Referenz/nsISupports" title="">nsISupports</a></code>.</li> + <li>The <code><a href="/de/docs/XPCOM_Interface_Referenz/nsIDeviceContext" title="">nsIDeviceContext</a></code> method <code>getPaletteInfo()</code> has been removed, as it was never implemented.</li> + <li>The <code><a href="/de/docs/XPCOM_Interface_Referenz/nsIScriptContext" title="">nsIScriptContext</a></code> method <code>reportPendingException()</code> has been removed, since it was no longer being used.</li> +</ul> + +<h3 id="Changes_in_accessibility_code">Changes in accessibility code</h3> + +<ul> + <li>The <span style="font-family: monospace;">EVENT</span><code>_REORDER</code> <a href="/en-US/docs/XPCOM_Interface_Reference/nsIAccessibleEvent" title="en-US/docs/XPCOM Interface Reference/nsIAccessibleEvent">accessibility event</a> is now sent when the children of frames and iframes change, as well as when the main document's children change. See <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=420845" title="FIXED: Fire event_reorder on any embedded frames/iframes whos document has just loaded.">Bug 420845</a>.</li> + <li>The <code><a href="https://developer.mozilla.org/de/docs/XPCOM_Interface_Reference/nsIAccessibleTable#selectRow()">nsIAccessibleTable.selectRow()</a></code> now correctly removes any current selection before selecting the specified row.</li> +</ul> + +<h2 id="See_also">See also</h2> + +<div><div class="multiColumnList"> +<ul> +<li><a href="/de/docs/Mozilla/Firefox/Releases/3.5">Firefox 3.5 for developers</a></li><li><a href="/de/docs/Mozilla/Firefox/Releases/3">Firefox 3 for developers</a></li><li><a href="/de/docs/Mozilla/Firefox/Releases/2">Firefox 2 for developers</a></li><li><a href="/de/docs/Mozilla/Firefox/Releases/1.5">Firefox 1.5 for developers</a></li></ul> +</div></div> diff --git a/files/de/mozilla/firefox/releases/34/index.html b/files/de/mozilla/firefox/releases/34/index.html new file mode 100644 index 0000000000..b0fcd927ab --- /dev/null +++ b/files/de/mozilla/firefox/releases/34/index.html @@ -0,0 +1,107 @@ +--- +title: Firefox 34 für Entwickler +slug: Mozilla/Firefox/Releases/34 +tags: + - Firefox + - Releases +translation_of: Mozilla/Firefox/Releases/34 +--- +<div>{{FirefoxSidebar}}</div><p>Möchtest du helfen Firefox 34 zu dokumentieren? Schaue dir die <a href="http://beta.elchi3.de/doctracker/#list=fx&version=34.0">Liste der Bugs an, über die noch geschrieben werden muss</a>.</p> + +<h2 id="Änderungen_für_Webentwickler">Änderungen für Webentwickler</h2> + +<h3 id="Entwickler_Werkzeuge">Entwickler Werkzeuge</h3> + +<p>Höhepunkte:</p> + +<ul> + <li><a href="https://developer.mozilla.org/en-US/docs/Tools/Storage_Inspector">Storage Inspector: a new tool enabling you to view data stored by web pages</a></li> + <li><a href="https://developer.mozilla.org/en-US/docs/Tools/Performance">Performance tool: revamped Profiler UI and frame rate timeline</a></li> + <li><a href="https://developer.mozilla.org/en-US/docs/tools/Working_with_iframes">Frame switching: point the developer tools at a specific iframe in the page</a></li> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/Console.table">console.table support</a></li> + <li><a href="https://developer.mozilla.org/en-US/docs/Tools/Page_Inspector#Examining_event_listeners">jQuery events are visible in the Page Inspector</a></li> +</ul> + +<p><a class="external-icon external" href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&chfieldto=2014-09-02&chfield=resolution&query_format=advanced&chfieldfrom=2014-07-21&chfieldvalue=FIXED&component=Developer%20Tools&component=Developer%20Tools%3A%203D%20View&component=Developer%20Tools%3A%20Canvas%20Debugger&component=Developer%20Tools%3A%20Console&component=Developer%20Tools%3A%20Debugger&component=Developer%20Tools%3A%20Framework&component=Developer%20Tools%3A%20Graphic%20Commandline%20and%20Toolbar&component=Developer%20Tools%3A%20Inspector&component=Developer%20Tools%3A%20Memory&component=Developer%20Tools%3A%20Netmonitor&component=Developer%20Tools%3A%20Object%20Inspector&component=Developer%20Tools%3A%20Profiler&component=Developer%20Tools%3A%20Responsive%20Mode&component=Developer%20Tools%3A%20Scratchpad&component=Developer%20Tools%3A%20Source%20Editor&component=Developer%20Tools%3A%20Storage%20Inspector&component=Developer%20Tools%3A%20Style%20Editor&component=Developer%20Tools%3A%20Timeline&component=Developer%20Tools%3A%20User%20Stories&component=Developer%20Tools%3A%20Web%20Audio%20Editor&component=Developer%20Tools%3A%20WebGL%20Shader%20Editor&component=Developer%20Tools%3A%20WebIDE&component=Simulator&product=Firefox&product=Firefox%20OS&list_id=11184176">All devtools bugs fixed between Firefox 33 and Firefox 34</a>.</p> + +<h3 id="CSS">CSS</h3> + +<ul> + <li>Unsere experimentelle Implementierung der CSS Schriftarten Level 3 schreitet voran. Neu implementierte Funktionen sind: + <ul> + <li>Der Fallback Algorithmus von {{cssxref("font-variant-position")}}, erstellt synthetische Alternativen für fehlende Glyphen, basierend auf den subscript and superscript metrics supplied by the font ({{bug(1024804)}}).</li> + <li>Das <code>layout.css.font-features.enabled</code> wurde entfernt, was beudeutet, dass die folgenden Eigenschaften standartmäßig aktiviert sind : + <ul> + <li>The CSS Font Level 3 version of {{cssxref("font-variant")}} which is now a shorthand property.</li> + <li>The longhand properties {{cssxref("font-variant-caps")}}, {{cssxref("font-variant-numeric")}}, {{cssxref("font-variant-position")}}, {{cssxref("font-variant-east-asian")}}, {{cssxref("font-variant-ligatures")}}, and {{cssxref("font-variant-alternates")}}.</li> + <li>The properties {{cssxref("font-kerning")}} and {{cssxref("font-synthesis")}}</li> + <li>The properties {{cssxref("font-feature-settings")}} and {{cssxref("font-language-override")}} are unprefixed. The prefixed version are still available for some time to ease transition.</li> + </ul> + </li> + </ul> + </li> + <li>To reflect the latest specification changes, the value <code>auto</code> has been renamed in <code>main-size</code> on the {{cssxref("flex-basis")}} property. The shorthand {{cssxref("flex")}} keep an <code>auto</code> value, but it is a synonym of <code>1 1 main-size</code> ({{bug(1032922)}}). The value used for the longhand {{cssxref("flex-basis")}} when omitted in the shorthand is now <code>0%</code>, and the one for {{cssxref("flex-growth")}} is now <code>1</code>, both different than their initial value.</li> + <li>The value <code>auto</code> has been added to {{cssxref("min-width")}} and {{cssxref("min-height")}} with a different behavior than the last time ({{bug(984711)}} and {{bug(1015474)}}).</li> + <li>An experimental implementation, disabled by default, of the filter functional values of the {{cssxref("filter")}} property have been implemented. It is controlled by the <code>layout.css.filters.enabled</code> pref. ({{bug(948265)}})</li> +</ul> + +<h3 id="HTML">HTML</h3> + +<p><em>Keine Veränderungen.</em></p> + +<h3 id="JavaScript">JavaScript</h3> + +<ul> + <li>The ES6 syntax for <a href="/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer#Computed_property_names">computed property names on object literals</a> has been implemented ({{bug(924688)}}). + + <ul> + <li>This includes <a href="/en-US/docs/Web/JavaScript/Reference/Functions/get">getter</a> and <a href="/en-US/docs/Web/JavaScript/Reference/Functions/set">setter</a> method names as well ({{bug(1048384)}}) and can also be used with <a href="/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment#Computed_object_property_names_and_destructuring">destructuring</a>.</li> + </ul> + </li> + <li>The ES6<a href="/en-US/docs/Web/JavaScript/Reference/Functions/Method_definitions"> shorthand syntax for defining methods</a> on objects has been implemented ({{bug(924672)}}).</li> + <li>The ES6 <code>Object</code> method {{jsxref("Object.assign", "Object.assign()")}} has been implemented ({{bug(937855)}}).</li> + <li>ES6 <a href="/en-US/docs/Web/JavaScript/Reference/template_strings">template strings</a> and the {{jsxref("String.raw()")}} method are now supported ({{bug(1038259)}}, {{bug(1039774)}}).</li> + <li>A new ES6 object {{jsxref("WeakSet")}} has been added ({{bug(792439)}}).</li> + <li>ES6 <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol">Symbols</a> (only available in the Nightly channel) have been updated to conform with recent specification changes ({{bug(1042602)}}): + <ul> + <li>When trying to convert a symbol to a number, a <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypeError" title="The TypeError object represents an error when a value is not of the expected type."><code>TypeError</code></a> will be thrown now.</li> + <li>When using loose equality, <code>Object(sym) == sym</code> returns <code>true</code> now.</li> + </ul> + </li> + <li>The experimental {{jsxref("TypedArray.prototype.move()")}} method (only available in former Nightly and Aurora channels) has been replaced with the now implemented standard ES6 {{jsxref("TypedArray.prototype.copyWithin()")}} method ({{bug(1021379)}}).</li> + <li>In <a href="/en-US/docs/Web/JavaScript/Reference/Strict_mode">strict mode</a>, setting a <a href="/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer#Duplicate_property_names">duplicate property name in object literals</a> will no longer throw a <code>SyntaxError</code> as per ES6 specification ({{bug(1041128)}}).</li> +</ul> + +<h3 id="InterfacesAPIsDOM">Interfaces/APIs/DOM</h3> + +<ul> + <li>The {{domxref("Element.matches()")}} method has been added; it does what the non-standard <code>mozMatchesSelector()</code> was doing ({{bug(886308)}}).</li> + <li>The {{domxref("URLUtils.searchParams", "searchParams")}} property has been added to the {{domxref("Location")}} interface, available via the {{domxref("document.location")}} and {{domxref("window.location")}} properties ({{bug(1037715)}}).</li> + <li>The {{domxref("Performance.now()")}} method is now available to Web workers ({{bug(908390)}}).</li> + <li>The non-standard interface <code>MozNamedAttrMap</code> has been renamed to the standard {{domxref("NamedNodeMap")}} and {{domxref("Element.attributes")}} has been adapted to use it ({{bug(1055467)}}).</li> + <li>The non-standard methods and properties of {{domxref("Window.crypto")}} have been removed ({{bug(1030963)}}). Only methods and properties defined in the standard WebCrypto API are left.</li> +</ul> + +<h3 id="MathML">MathML</h3> + +<p><em>Keine Veränderungen.</em></p> + +<h3 id="SVG">SVG</h3> + +<p><em>Keine Veränderungen.</em></p> + +<h3 id="AudioVideo">Audio/Video</h3> + +<p><em>Keine Veränderungen</em><em>.</em></p> + +<h2 id="Sicherheit">Sicherheit</h2> + +<p><em>Keine Veränderungen</em><em>.</em></p> + +<h2 id="Änderungen_für_Add-on_und_Mozilla_Entwickler">Änderungen für Add-on und Mozilla Entwickler</h2> + +<p><em>Keine Veränderungen</em><em>.</em></p> + +<h2 id="Ältere_Versionen">Ältere Versionen</h2> + +<p>{{Firefox_for_developers('33')}}</p> diff --git a/files/de/mozilla/firefox/releases/47/index.html b/files/de/mozilla/firefox/releases/47/index.html new file mode 100644 index 0000000000..cf76445536 --- /dev/null +++ b/files/de/mozilla/firefox/releases/47/index.html @@ -0,0 +1,174 @@ +--- +title: Firefox 47 for developers +slug: Mozilla/Firefox/Releases/47 +translation_of: Mozilla/Firefox/Releases/47 +--- +<div>{{FirefoxSidebar}}</div><p> </p> + +<p><a href="https://www.mozilla.org/firefox/developer/" style="float: right; margin-bottom: 20px; padding: 10px; text-align: center; border-radius: 4px; display: inline-block; background-color: #81BC2E; white-space: nowrap; color: white; text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.25); box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.2), 0px -1px 0px 0px rgba(0, 0, 0, 0.3) inset;">To test the latest developer features of Firefox,<br> + install Firefox Developer Edition</a>Firefox 47 was released on June 6, 2016. This article lists key changes that are useful not only for web developers, but also Firefox and Gecko developers as well as add-on developers.</p> + +<h2 id="Changes_for_Web_developers">Changes for Web developers</h2> + +<h3 id="Developer_Tools">Developer Tools</h3> + +<ul> + <li><a href="https://developer.mozilla.org/en-US/docs/Browser_detection_using_the_user_agent">User-agent spoofing</a> from the <a href="https://developer.mozilla.org/en-US/docs/Tools/Responsive_Design_Mode">Responsive mode</a></li> + <li><a href="https://developer.mozilla.org/en-US/docs/Tools/Memory/Dominators_view#Retaining_Paths_panel">Retaining paths panel</a> in memory tool</li> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorker">Service workers</a> and <a href="https://developer.mozilla.org/en-US/docs/Web/API/Push_API">Push API</a> debugging + <ul> + <li><a href="https://developer.mozilla.org/en-US/docs/Tools/about:debugging">about:debugging</a> dashboard for workers</li> + <li>Cached requests are now shown in <a href="https://developer.mozilla.org/en-US/docs/Tools/Network_Monitor">Network Monitor</a></li> + <li>Support for <a href="https://developer.mozilla.org/en-US/docs/Web/API/Cache">cache storage</a> in <a href="https://developer.mozilla.org/en-US/docs/Tools/Storage_Inspector">Storage Inspector</a></li> + </ul> + </li> + <li>Ability to filter <a href="https://developer.mozilla.org/en-US/docs/Tools/Storage_Inspector">Storage Inspector</a> entries</li> + <li><a href="https://developer.mozilla.org/en-US/docs/Tools/Web_Console">Console</a> now detects incomplete input and switches multi-line mode</li> + <li>Updated breakpoint style in <a href="https://developer.mozilla.org/en-US/docs/Tools/Debugger">Debugger</a></li> + <li>Prevent panels from hiding automatically using the <a href="https://developer.mozilla.org/en-US/docs/Tools/Browser_Toolbox">Browser Toolbox</a>, to aid browser and add-on debugging</li> + <li><a href="https://developer.mozilla.org/en-US/docs/Tools/Page_Inspector/UI_Tour#Fonts_view">Font inspector</a> has been disabled by default</li> + <li><a href="https://developer.mozilla.org/en-US/docs/Tools/3D_View">3D view</a> has been removed</li> + <li>Developer tools theme refresh</li> + <li>Disable the Font Panel ({{bug(1247723)}}).</li> +</ul> + +<h3 id="HTML">HTML</h3> + +<p><em>No change.</em></p> + +<h3 id="CSS">CSS</h3> + +<ul> + <li>Support for the {{cssxref("::backdrop")}} pseudo-element has been added ({{bug(1064843)}}).</li> + <li>The case-insensitive modifier <code>i</code> (like in <code>[foo=bar i]</code>) for <a href="/en-US/docs/Web/CSS/Attribute_selectors">attribute selectors</a> has been implemented ({{bug(888190)}}).</li> + <li>An experimental implementation of CSS Mask Image properties landed. For the moment, this will only be available on Nightly versions of Firefox.y: shorthand version of {{cssxref("mask")}}, as well as {{cssxref("mask-repeat")}}, {{cssxref("mask-position")}}, {{cssxref("mask-size")}} are now available ({{bug(686281)}}).</li> + <li>The {{cssxref("clip-path")}} property now experimentally supports <code>polygon()</code>, <code>ellipse()</code>, and <code>circle()</code> on HTML elements (does not support <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1246762">inset()</a> and <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1246764">path()</a>), behind the pref <code>layout.css.clip-path-shapes.enabled</code> that defaults to <code>false</code> ({{bug(1075457)}}). Interpolation (and therefore animation) of these values is not yet supported.</li> + <li>Our still experimental grid implementation has been updated: + <ul> + <li>{{cssxref("align-content")}}: <code>normal</code> behaves now as <code>stretch</code> for grid containers ({{bug(1237754)}}).</li> + <li>The order of column/row values for {{cssxref('grid')}}, {{cssxref('grid-template')}}, and {{cssxref('grid-gap')}} properties has been swapped ({{bug(1251999)}}).</li> + </ul> + </li> + <li>The {{cssxref("@media/display-mode", "display-mode")}} media feature is now supported ({{bug("1104916")}}).</li> + <li>The value <code>true</code> of {{cssxref("text-align")}} and {{cssxref("text-align-last")}} has been renamed to <code>unsafe</code> ({{bug("1250342")}}).</li> +</ul> + +<h3 id="JavaScript">JavaScript</h3> + +<ul> + <li>The new ES2017 {{jsxref("Object.values()")}} and {{jsxref("Object.entries()")}} methods have been implemented ({{bug(1232639)}}).</li> + <li>The deprecated <a href="/en-US/docs/Archive/Web/Old_Proxy_API">old Proxy API</a> (<code>Proxy.create</code> and <code>Proxy.createFunction</code>) now presents a deprecation warning in the console and will be removed in a future version. Use the standard {{jsxref("Proxy")}} object instead ({{bug(892903)}}).</li> + <li>Support for the deprecated non-standard <code>flags</code> argument of <code>String.prototype.</code>{{jsxref("String.prototype.match", "match")}}/{{jsxref("String.prototype.search", "search")}}/{{jsxref("String.prototype.replace", "replace")}} has been dropped in non-release builds ({{bug(1245801)}}).</li> + <li>As per the new ES2016 specification, the {{jsxref("Proxy")}} <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy/handler/enumerate">enumerate</a> trap for <code><a href="/en-US/docs/Web/JavaScript/Reference/Statements/for...in">for...in</a></code> statements has been removed ({{bug(1246318)}}).</li> + <li>The {{jsxref("Array.prototype.indexOf()")}} and {{jsxref("Array.prototype.lastIndexOf()")}} methods (and their {{jsxref("TypedArray")}} equivalents) have been updated to never return <code>-0</code> as per the ECMAScript specification ({{bug(1242043)}}).</li> +</ul> + +<h3 id="InterfacesAPIsDOM">Interfaces/APIs/DOM</h3> + +<h4 id="DOM_HTML_DOM">DOM & HTML DOM</h4> + +<ul> + <li>The property {{domxref("Document.scrollingElement")}} has been implemented behind the pref <code>dom.document.scrollingElement.enabled</code> that defaults to <code>false</code> ({{bug(1153322)}}).</li> +</ul> + +<h4 id="WebGL">WebGL</h4> + +<p><em>No change.</em></p> + +<h4 id="IndexedDB">IndexedDB</h4> + +<ul> + <li>The {{domxref("IDBKeyRange.includes()")}} method has been implemented ({{bug("1251498")}}).</li> +</ul> + +<h4 id="Service_Worker_and_related_APIs">Service Worker and related APIs</h4> + +<ul> + <li>The {{domxref("Request.Request()")}} constructor can now accept a referrer option in its init object ({{bug(1251448)}}).</li> + <li>The {{domxref("Request.referrerPolicy")}} property is now supported ({{bug(1251872)}}).</li> + <li> + <p><a href="/en-US/docs/Web/API/Service_Worker_API">Service workers</a> and <a href="https://developer.mozilla.org/en-US/docs/Web/API/Push_API">Push</a> have been disabled in the <a class="external external-icon" href="https://www.mozilla.org/en-US/firefox/organizations/">Firefox 45 Extended Support Release</a> (ESR) ({{bug(1232029)}}).</p> + </li> +</ul> + +<h4 id="WebRTC">WebRTC</h4> + +<ul> + <li>Support for the {{domxref("RTCIceServer")}} dictionary has been updated in keeping with revisions to the WebGL 1.0 specification by adding support for the {{domxref("RTCIceServer.credentialType", "credentialType")}} property. This property is a string which specifies whether the credential is a password or a token. Currently, Firefox only supports <code>"password"</code>.</li> +</ul> + +<h4 id="New_APIs">New APIs</h4> + +<p><em>No change.</em></p> + +<h4 id="Others">Others</h4> + +<ul> + <li>{{domxref("Cache.add()")}} and {{domxref("Cache.addAll()")}} now raises a <code>TypeError</code> exception if the response status is not in the <code>200</code> range ({{bug(1244764)}}).</li> + <li>The <a href="/en-US/docs/Mozilla/Firefox_OS/API/App_installation_and_management_APIs">App installation and management APIs</a> (<code>navigator.mozApps.*</code>) are no longer exposed to non-Firefox OS platforms ({{bug("1238576")}}).</li> + <li><a href="/en-US/docs/Web/API/Web_Crypto_API">Web Crypto API</a> methods can now use the RSA-PSS cryptographic algorithm ({{bug (1191936)}}).</li> + <li>The <a href="/en-US/docs/Web/API/Permissions_API">Permissions API</a> has had the {{domxref("Permissions.revoke()")}} method added ({{bug("1197461")}}).</li> + <li>The <a href="/en-US/docs/Web/API/Browser_API">Browser API</a>, which extends the functionality of {{htmlelement("iframe")}}s to allow the creation of frames for displaying web content using HTML — and was previously only available in Firefox OS — is now available to desktop chrome code too ({{bug(1238160)}}).</li> + <li>The <a href="/en-US/docs/Web/API/notification">Notification API</a>'s {{domxref("Notification.requestPermission()","requestPermission()")}} method has been updated from a callback to a promised-based syntax ({{bug(1241278)}}).</li> + <li>The <a href="/en-US/docs/Web/API/Fullscreen_API">Fullscreen API</a> has been updated to the latest spec and unprefixed. Some methods have been renamed or have seen their capitalisation changed ({{bug(743198)}}). Note that this is not yet activated by default by behind the <code>full-screen-api.unprefix.enabled</code> preference ({{bug(1268749)}}).</li> +</ul> + +<h3 id="AudioVideo">Audio/Video</h3> + +<ul> + <li>Now WAV file with u-law compression encoding can be played({{bug(851530)}}).</li> + <li><a href="https://www.widevine.com/">Widevine</a> Content Decryption Module provided by Google Inc. is available via the <a href="/en-US/docs/Web/API/Encrypted_Media_Extensions_API">Encrypted Media Extensions API</a> for use with MP4 (only; see {{bug(1257716)}} for EME-with-WebM support) on Windows Vista and later and on Mac OS X enabling migration off Silverlight ({{bug(1265270)}}).</li> +</ul> + +<h2 id="HTTP">HTTP</h2> + +<p><em>No change.</em></p> + +<h2 id="Networking">Networking</h2> + +<p><em>No change.</em></p> + +<h2 id="Security">Security</h2> + +<ul> + <li>URL with the <code>view-source:</code> protocol don't open the <a href="/en-US/docs/Tools/View_source">View Source</a> tool anymore when used from a Web page ({{bug(1172165)}}).</li> + <li>The Firefox <a href="https://blog.mozilla.org/futurereleases/2013/09/24/plugin-activation-in-firefox/">click-to-activate plugin whitelist</a> has been removed: only Flash doesn't need to be clicked to be activated ({{bug(1263630)}}).</li> +</ul> + +<h2 id="Changes_for_add-on_and_Mozilla_developers">Changes for add-on and Mozilla developers</h2> + +<h3 id="Interfaces">Interfaces</h3> + +<ul> + <li>The CSS tokenizer is now available in JavaScript for add-ons ({{bug(1152033)}}).</li> +</ul> + +<h3 id="FUEL">FUEL</h3> + +<p>The <a href="/en-US/docs/Mozilla/Tech/Toolkit_API/FUEL">FUEL</a> JavaScript library, introduced back in Firefox 3, <strong>has been removed</strong>. This library was designed to aid in add-on development and with the introduction of the <a href="/en-US/docs/Mozilla/Add-ons/SDK">Add-on SDK</a> and, now, by <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions">WebExtensions</a> support, is no longer useful. ({{bug(1090880)}})</p> + +<h3 id="XUL">XUL</h3> + +<p><em>No change.</em></p> + +<h3 id="JavaScript_code_modules">JavaScript code modules</h3> + +<p><em>No change.</em></p> + +<h3 id="XPCOM">XPCOM</h3> + +<p><em>No change.</em></p> + +<h3 id="Other">Other</h3> + +<p><em>No change.</em></p> + +<h2 id="See_also">See also</h2> + +<ul> + <li><a href="https://www.fxsitecompat.com/en-US/versions/47">Site Compatibility for Firefox 47</a></li> +</ul> + +<h2 id="Older_versions">Older versions</h2> + +<p>{{Firefox_for_developers(46)}}</p> diff --git a/files/de/mozilla/firefox/releases/5/index.html b/files/de/mozilla/firefox/releases/5/index.html new file mode 100644 index 0000000000..febb262599 --- /dev/null +++ b/files/de/mozilla/firefox/releases/5/index.html @@ -0,0 +1,169 @@ +--- +title: Firefox 5 for developers +slug: Mozilla/Firefox/Releases/5 +tags: + - Firefox + - Firefox 5 + - Gecko 5.0 + - NeedsTranslation + - TopicStub +translation_of: Mozilla/Firefox/Releases/5 +--- +<div>{{FirefoxSidebar}}</div><p>Firefox 5, based on Gecko 5.0, was released on June 21, 2011. This article provides links to information about the changes that affect developers in this release.</p> + +<h2 id="Changes_for_web_developers">Changes for web developers</h2> + +<h3 id="HTML">HTML</h3> + +<ul> + <li>All HTML elements now have the {{ domxref("element.accessKey", "accessKey") }} attribute, as well as the {{ domxref("element.blur()", "blur()") }}, {{ domxref("element.click()", "click()") }}, and {{ domxref("element.focus()", "focus()") }} methods. These are specified in the {{ domxref("HTMLElement") }} interface.</li> + <li>In order to comply with the HTML5 specification, support for the UTF-7 and UTF-32 <a href="/en/Character_Sets_Supported_by_Gecko" title="en/Character Sets Supported by Gecko">character sets</a> has been removed.</li> + <li>When in quirks mode, empty {{ HTMLElement("map") }}s are no longer skipped over in favor of non-empty ones when matching. See the <a href="/en/HTML/Element/map#Gecko_notes" title="en/HTML/Element/map#Gecko notes">Gecko notes</a> on the {{ HTMLElement("map") }} element for details.</li> + <li>Firefox mobile on Android now supports WOFF fonts for {{ cssxref("@font-face") }}.</li> + <li>WebGL <a href="/en/WebGL/Cross-Domain_Textures" title="en/WebGL/Cross-Domain Textures">no longer loads textures from domains other than the originating domain</a>, as a security measure. <a href="/En/HTTP_access_control" title="en/HTTP access control">HTTP access control</a> support should be coming sometime in the future to make this possible more securely.</li> +</ul> + +<h4 id="Canvas_improvements">Canvas improvements</h4> + +<ul> + <li>The {{ HTMLElement("canvas") }} 2D drawing context now supports specifying an <code>ImageData</code> object as the input to the <code>createImageData()</code> method; this <a href="/En/HTML/Canvas/Pixel_manipulation_with_canvas#Creating_an_ImageData_object" title="En/HTML/Canvas/Pixel manipulation with canvas#Creating an ImageData object">creates a new <code>ImageData</code> object</a> initialized with the same dimensions as the specified object, but still with all pixels preset to transparent black. This was documented as implemented already but was not.</li> + <li>Specifying non-finite values when adding color stops through a call to the {{ domxref("CanvasGradient") }} method <code>addColorStop()</code> now correctly throws <code>INDEX_SIZE_ERR</code> instead of <code>SYNTAX_ERR</code>.</li> + <li>The {{ domxref("HTMLCanvasElement") }} method <code>toDataURL()</code> now correctly lower-cases the specified MIME type before matching.</li> + <li><code>getImageData()</code> now correctly accepts rectangles that extend beyond the bounds of the canvas; pixels outside the canvas are returned as transparent black.</li> + <li><code>drawImage()</code> and <code>createImageData()</code> now handle negative arguments in accordance with the specification, by flipping the rectangle around the appropriate axis. <strong>We need an article about <a class="external" href="http://dev.w3.org/csswg/css3-images/#default-sizing" title="http://dev.w3.org/csswg/css3-images/#default-sizing">CSS sizing</a> and how this works.</strong></li> + <li>Specifying non-finite values when calling <code>createImageData()</code> now properly throws a <code>NOT_SUPPORTED_ERR</code> exception.</li> + <li><code>createImageData()</code> and <code>getImageData()</code> now correctly return at least one pixel's worth of image data if a rectangle smaller than one pixel is specified.</li> + <li>Specifying a negative radius when calling <code>createRadialGradient()</code> now correctly throws <code>INDEX_SIZE_ERR</code>.</li> + <li>Specifying a <code>null</code> or <code>undefined</code> image when calling <code>createPattern()</code> or <code>drawImage()</code> now correctly throws a <code>TYPE_MISMATCH_ERR</code> exception.</li> + <li>Specifying invalid values for <code>globalAlpha</code> no longer throws a <code>SYNTAX_ERR</code> exception; these are now correctly silently ignored.</li> + <li>Specifying invalid values when calling <code>translate()</code>, <code>transform()</code>, <code>rect()</code>, <code>clearRect()</code>, <code>fillRect()</code>, <code>strokeRect()</code>, <code>lineTo()</code>, <code>moveTo()</code>, <code>quadraticCurveTo()</code>, or <code>arc()</code> no longer throws an exception; these calls are now correctly silently ignored.</li> + <li>Setting the value of <code>shadowOffsetX</code>, <code>shadowOffsetY</code>, or <code>shadowBlur</code> to an invalid value is now silently ignored.</li> + <li>Setting the value of <code>rotate</code> or <code>scale</code> to an invalid value is now silently ignored.</li> +</ul> + +<h3 id="CSS">CSS</h3> + +<dl> + <dt><a href="/en/CSS/CSS_animations" title="en/CSS/CSS animations">CSS animations</a></dt> + <dd>Support for CSS animations has been added, using the <code>-moz-</code> prefix for now.</dd> +</dl> + +<h3 id="DOM">DOM</h3> + +<ul> + <li>The {{ domxref("selection") }} object's <a href="/en/DOM/Selection/modify" title="en/DOM/Selection/modify"><code>modify()</code></a> method has been changed so that the "word" selection granularity no longer includes trailing spaces; this makes it more consistent across platforms and matches the behavior of WebKit's implementation.</li> + <li>The {{ domxref("window.setTimeout()") }} method now clamps to send no more than one timeout per second in inactive tabs. In addition, it now clamps nested timeouts to the smallest value allowed by the HTML5 specification: 4 ms (instead of the 10 ms it used to clamp to).</li> + <li>Similarly, the {{ domxref("window.setInterval()") }} method now clamps to no more than one interval per second in inactive tabs.</li> + <li><a href="/en/DOM/XMLHttpRequest" title="en/XMLHttpRequest"><code>XMLHttpRequest</code></a> now <a href="/en/DOM/XMLHttpRequest/Using_XMLHttpRequest#Detecting_any_load_end_condition" title="en/XMLHttpRequest/Using XMLHttpRequest#Detecting any load end condition">supports the <code>loadend</code> event</a> for progress listeners. This is sent after any transfer is finished (that is, after the <code>abort</code>, <code>error</code>, or <code>load</code> event). You can use this to handle any tasks that need to be performed regardless of success or failure of a transfer.</li> + <li>The {{ domxref("Blob") }} and, by extension, the {{ domxref("File") }} objects' <code>slice()</code> method has been removed and replaced with a new, proposed syntax that makes it more consistent with <a href="/en/JavaScript/Reference/Global_Objects/Array/slice" title="en/JavaScript/Reference/Global Objects/Array/slice"><code>Array.slice()</code></a> and <a href="/en/JavaScript/Reference/Global_Objects/String/slice" title="en/JavaScript/Reference/Global Objects/String/slice"><code>String.slice()</code></a> methods in JavaScript. This method is named <a href="/en/DOM/Blob#mozSlice()" title="en/DOM/Blob#mozSlice()"><code>mozSlice()</code></a> for now.</li> + <li>The value of {{ domxref("window.navigator.language") }} is now determined by looking at the value of the <code>Accept-Language</code> <a href="/en/HTTP/Headers" title="en/HTTP/Headers">HTTP header</a>.</li> + <li>The {{ domxref("Node.prefix") }} property is now read only, as required by the DOM specification.</li> + <li>The {{ domxref("HTMLVideoElement") }} now supports experimental properties to get information about video paint statistics like frame rates.</li> +</ul> + +<h3 id="JavaScript">JavaScript</h3> + +<ul> + <li>Regular expressions are no longer callable as if they were functions; this change has been made in concert with the WebKit team to ensure compatibility (see {{ WebkitBug(28285) }}. This feature had existed for a long time but was never documented (at least, not here on MDC).</li> + <li>The <a href="/en/JavaScript/Reference/Global_Objects/Function/isGenerator" title="en/JavaScript/Reference/Global Objects/Function/isGenerator"><code>Function.prototype.isGenerator()</code></a> method is now supported; this lets you determine if a function is a <a href="/en/JavaScript/Guide/Iterators_and_Generators#Generators.3a_a_better_way_to_build_Iterators" title="en/Core JavaScript 1.5 Guide/Iterators and Generators#Generators.3a a better way to build Iterators">generator</a>.</li> + <li>The following <a href="/en/JavaScript/Reference/Reserved_Words" title="en/JavaScript/Reference/Reserved Words">reserved words</a> were previously only treated as reserved when in strict mode; now they're always treated as reserved: <code>class</code>, <code>enum</code>, <code>export</code>, <code>extends</code>, <code>import</code>, and <code>super</code>.</li> + <li>DOM documents created in chrome code may no longer be exposed to sandboxed scripts.</li> + <li>The JSON parser has been re-written for improved speed and compliance. This includes a fix for {{ bug("572279") }}.</li> +</ul> + +<h3 id="SVG">SVG</h3> + +<ul> + <li>The {{ SVGAttr("class") }} SVG attribute can now be animated.</li> + <li>The following SVG-related DOM interfaces representing lists of objects are now indexable and can be accessed like arrays; in addition, they have a <code>length</code> property indicating the number of items in the lists: {{ domxref("SVGLengthList") }}, {{ domxref("SVGNumberList") }}, {{ domxref("SVGPathSegList") }}, and {{ domxref("SVGPointList") }}.</li> +</ul> + +<h3 id="HTTP">HTTP</h3> + +<ul> + <li>Firefox no longer sends the <code>Keep-Alive</code> HTTP header; we weren't formatting it correctly, and it was redundant since we were also sending the {{ httpheader("Connection") }} or {{ httpheader("Proxy-Connection") }} header with the value "keep-alive" anyway.</li> + <li>The HTTP transaction model has been updated to be more intelligent about reusing connections in the persistent connection pool; instead of treating the pool as a {{ interwiki("wikipedia", "FIFO") }} queue, Necko now attempts to sort the pool with connections with the largest {{ interwiki("wikipedia", "congestion window") }} (CWND) first. This can reduce the round-trip time (RTT) of HTTP transactions by avoiding the need to grow connections' windows in many cases.</li> + <li>Firefox now handles the <code>Content-Disposition</code> HTTP response header more effectively if both the <code>filename</code> and <code>filename*</code> parameters are provided; it looks through all provided names, using the <code>filename*</code> parameter if one is available, even if a <code>filename</code> parameter is included first. Previously, the first matching parameter would be used, thereby preventing a more appropriate name from being used. See {{ bug(588781) }}.</li> +</ul> + +<h3 id="MathML">MathML</h3> + +<ul> + <li>Support for <a class="external" href="http://www.w3.org/TR/MathML3/chapter3.html#id.3.2.5.7.3" title="http://www.w3.org/TR/MathML3/chapter3.html#id.3.2.5.7.3">embellished operators</a></li> +</ul> + +<h3 id="Developer_tools">Developer tools</h3> + +<ul> + <li>The <a href="/en/Using_the_Web_Console#The_console_object" title="en/Using the Web Console#The console object">Web Console's <code>Console</code> object</a> now has a <code>debug()</code> method, which is an alias for its <code>log()</code> method; this improves compatibility with certain existing sites.</li> +</ul> + +<h2 id="Changes_for_Mozilla_and_add-on_developers">Changes for Mozilla and add-on developers</h2> + +<p>For a guide to updating your add-on for Firefox 5, please see <a href="/en/Firefox/Updating_add-ons_for_Firefox_5" title="en/Firefox/Updating add-ons for Firefox 5">Updating add-ons for Firefox 5</a>.</p> + +<div class="note"><strong>Note:</strong> Firefox 5 requires that binary components be recompiled, as do all major releases of Firefox. See <a href="/En/Developer_Guide/Interface_Compatibility#Binary_Interfaces" title="En/Developer Guide/Interface Compatibility#Binary Interfaces">Binary Interfaces</a> for details.</div> + +<h3 id="Changes_to_JavaScript_code_modules">Changes to JavaScript code modules</h3> + +<h4 id="New_JavaScript_code_modules">New JavaScript code modules</h4> + +<ul> + <li>The <a href="/en/JavaScript_code_modules/Dict.jsm" title="en/JavaScript code modules/Dict.jsm"><code>Dict.jsm</code></a> code module was added; it provides an API for dictionaries of key/value pairs.</li> +</ul> + +<h4 id="NetUtil.jsm">NetUtil.jsm</h4> + +<ul> + <li>The <a href="/en/JavaScript_code_modules/NetUtil.jsm#asyncFetch()" title="en/JavaScript code modules/NetUtil.jsm#asyncFetch()"><code>asyncFetch()</code></a> method now supports specifying the input source as an {{ interface("nsIInputStream") }}.</li> +</ul> + +<h3 id="Interface_changes">Interface changes</h3> + +<ul> + <li>The {{ interface("nsIHttpChannelInternal") }} interface has new attributes providing access to information about the channels' endpoints' addresses and ports. This information is provided primarily for debugging purposes.</li> + <li>The {{ HTMLElement("canvas") }} element's {{ htmlattrxref("width", "canvas") }} and {{ htmlattrxref("height", "canvas") }} attributes are now reflected in IDL as unsigned integers instead of signed (see <a href="/en/DOM/HTMLCanvasElement" title="en/DOM/HTMLCanvasElement"><code>HTMLCanvasElement</code></a>).</li> + <li>The <code>nsIAppStartup2</code> and {{ interface("nsIAppStartup_MOZILLA_2_0") }} interfaces have been merged into the {{ interface("nsIAppStartup") }} interface.</li> + <li>The <code>nsIDocShell_MOZILLA_2_0_BRANCH</code> interface has been merged into the {{ interface("nsIDocShell") }} interface.</li> + <li>The <code>nsIFocusManager_MOZILLA_2_0_BRANCH</code> interface has been merged into the {{ interface("<code><code>nsIFocusManager</code></code>") }} interface.</li> + <li>The <code>nsIHTMLEditor_MOZILLA_2_0_BRANCH</code> interface has been merged into the {{ interface("nsIHTMLEditor") }} interface.</li> +</ul> + +<h4 id="New_interfaces">New interfaces</h4> + +<ul> + <li><code>nsIDOMAnimationEvent</code> added. {{domxref("AnimationEvent")}}</li> +</ul> + +<h4 id="Removed_interfaces">Removed interfaces</h4> + +<p>The following interfaces were implementation details that are no longer needed:</p> + +<ul> + <li><code>nsICiter</code> (see {{ bug("633066") }})</li> + <li><code>nsIDOM3Document</code> (see {{ bug("639849") }})</li> + <li><code>nsIFIXptrEvaluator</code></li> + <li><code>nsISelectElement</code> (see {{ bug("619996") }})</li> +</ul> + +<h3 id="Debugging_aids">Debugging aids</h3> + +<ul> + <li>The new <a href="/En/Namespace/Mozilla/DebugOnly%3CT%3E" title="En/Namespace/Mozilla/DebugOnly<T>"><code>DebugOnly<T></code></a> helper makes it possible to declare variables only for <code>DEBUG</code> builds.</li> +</ul> + +<h3 id="JavaScript_API_(SpiderMonkey)">JavaScript API (SpiderMonkey)</h3> + +<ul> + <li><a href="/en/SpiderMonkey/JSAPI_Reference/JS_DoubleToInt32" title="en/SpiderMonkey/JSAPI Reference/JS DoubleToInt32"><code>JS_DoubleToInt32()</code></a> and <a href="/en/SpiderMonkey/JSAPI_Reference/JS_DoubleToInt32" title="en/SpiderMonkey/JSAPI Reference/JS DoubleToInt32"><code>JS_DoubleToUint32()</code></a> have been added, for converting <code><a href="/en/SpiderMonkey/JSAPI_Reference/jsdouble" title="en/jsdouble">jsdouble</a></code> values into C integers and unsigned integers.</li> +</ul> + +<h3 id="Build_system_changes">Build system changes</h3> + +<ul> + <li>You can now build Firefox without a <code>mozconfig</code> file; the <a href="/en/Configuring_Build_Options#Choose_an_application" title="en/Configuring Build Options#Choose an application"><code>--enable-application</code> setting</a> now defaults to "browser". After pulling or downloading the code, you can simply <code>configure && make</code> (or <code>make -f client.mk</code>) to build Firefox.</li> +</ul> + +<h2 id="See_also">See also</h2> + +<div>{{Firefox_for_developers('4')}}</div> diff --git a/files/de/mozilla/firefox/releases/56/index.html b/files/de/mozilla/firefox/releases/56/index.html new file mode 100644 index 0000000000..0158450bdc --- /dev/null +++ b/files/de/mozilla/firefox/releases/56/index.html @@ -0,0 +1,122 @@ +--- +title: Firefox 56 for developers +slug: Mozilla/Firefox/Releases/56 +translation_of: Mozilla/Firefox/Releases/56 +--- +<div>{{FirefoxSidebar}}</div><article class="text-content" id="wikiArticle"> +<p>Dieser Artikel enthält Informationen über die Änderungen in Firefox 56, die Entwickler betreffen. Firefox 56 ist die aktuelle <a href="https://www.mozilla.org/en-US/firefox/channel/desktop/#beta">Beta-Version von Firefox</a> und wird am <a href="https://wiki.mozilla.org/RapidRelease/Calendar#Future_branch_dates">26. September 2017</a> veröffentlicht werden</p> + +<article class="text-content" id="wikiArticle"> +<h2 id="Änderungen_für_Web-Entwickler">Änderungen für Web-Entwickler</h2> + +<h3 id="Entwicklerwerkzeuge">Entwicklerwerkzeuge</h3> + +<p><em>Keine Änderungen.</em></p> + +<h3 id="HTML">HTML</h3> + +<ul> + <li>Implementiert die Label-Eigenschaft für beschreibbare Formular-Steuerelemente, zum Beispiel {{domxref("HTMLInputElement.labels")}} ({{bug(556743)}}).</li> + <li>Implementiert <code><link rel="preload"></code>; siehe <a href="/en-US/docs/Web/HTML/Preloading_content">Preloading content with rel="preload"</a> für mehr Details ({{bug(1222633)}}).</li> +</ul> + +<h3 id="CSS">CSS</h3> + +<ul> + <li>Implementiert die propietären Mozilla-spezifischen Werte {{cssxref("<color>")}} <code>-moz-win-accentcolor</code> und <code>-moz-win-accentcolortext</code> (see {{bug(1344910)}}), und die propietäre Medienabfrage <code><a href="/en-US/docs/Web/CSS/Media_Queries/Using_media_queries#-moz-windows-accent-color-in-titlebar">-moz-windows-accent-color-in-titlebar</a></code> (see {{bug(1379938)}}).</li> +</ul> + +<h3 id="SVG">SVG</h3> + +<p><em>Keine Änderungen.</em></p> + +<h3 id="JavaScript">JavaScript</h3> + +<ul> + <li>The <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl">Intl API</a> has been enabled on Firefox for Android ({{bug(1344625)}}).</li> +</ul> + +<h3 id="APIs">APIs</h3> + +<h4 id="New_APIs">New APIs</h4> + +<p><em>Keine Änderungen.</em></p> + +<h4 id="DOM">DOM</h4> + +<ul> + <li>Auf Macist jetzt {{domxref("Document.hidden")}} wahr, wenn das Fenster hinter einer anderen nicht-lichtdurchlässigen Anwendung steht {{bug(1236512)}}.</li> + <li>Die Eigenschaft {{domxref("Gamepad.displayId")}} wurde implementiert ({{bug(1375816)}}).</li> + <li>Die Methode {{domxref("CanvasRenderingContext2D.drawImage()")}} wurde aktualisiert, so dass so dass die Glättung beim Downscaling erfolgt, auch wenn <code>imageSmoothingEnabled</code> ist <code>false</code>. Dies ist nicht obligatorisch wie pro Spezifikation, sondern folgt Chromes Verhalten. Siehe {{bug(1360415)}}.</li> + <li>Die Eigenschaft {{domxref("PerformanceTiming.secureConnectionStart")}} wurde implementiert ({{bug(772589)}}).</li> + <li>Firefox verwendet<code> iso-2022-jp-2</code>, um Sequenzen zu nehmen, wenn ein iso-2022-jp {{domxref ("TextDecoder.TextDecoder", "TextDecoder ()")}} instanziiert wurde. Dies wurde nun entfernt, um die API zu vereinfachen, da keine anderen Browser oder Webseiten es unterstützen. ({{bug(715833)}}).</li> + <li>Das 4ms- Klemmeverhalten von {{domxref("WindowOrWorkerGlobalScope.setTimeout","setTimeout()")}} und {{domxref("WindowOrWorkerGlobalScope.setInterval","setInterval()")}} wurde aktualisiert, um besser in Einklang mit anderen Browsern, wie in <a href="/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout#Timeouts_throttled_to_%3E4ms">Timeouts throttled to >=4ms</a> zu sein. ({{bug(1378586)}}).</li> + <li>Der <a href="/en-US/docs/Web/API/Page_Visibility_API">Page Visibility API's</a> {{domxref("Document.onvisibilitychange")}} handler wurde hinzugefügt ({{bug("1333912")}}).</li> +</ul> + +<h4 id="DOM_events">DOM events</h4> + +<ul> + <li>{{domxref("GlobalEventHandlers.onwheel")}} ist ab sofort verfügbar {{domxref("HTMLElement")}} — es war nicht vorher ({{bug(1370550)}}).</li> +</ul> + +<h4 id="WebRTC">WebRTC</h4> + +<ul> + <li>Firefox unterstützt nun die {{domxref("RTCPeerConnection")}} Eigenschaften, die Sie die aktuellen und ausstehenden Konfigurationen der lokalen und entfernten Enden der Verbindung untersuchen lassen, um zu helfen, Änderungen in der Konfiguration zu verwalten:{{domxref("RTCPeerConnection.currentLocalDescription", "currentLocalDescription")}}, {{domxref("RTCPeerConnection.pendingLocalDescription", "pendingLocalDescription")}}, {{domxref("RTCPeerConnection.currentRemoteDescription", "currentRemoteDescription")}}, and {{domxref("RTCPeerConnection.pendingRemoteDescription", "pendingRemoteDescription")}}.</li> +</ul> + +<h3 id="Sicherheit">Sicherheit</h3> + +<p><em>Keine Änderungen.</em></p> + +<h3 id="Plugins">Plugins</h3> + +<p><em>Keine Änderungen.</em></p> + +<h3 id="Weiteres">Weiteres</h3> + +<ul> + <li>Gecko kodiert nun URLs intern als <a href="https://en.wikipedia.org/wiki/Punycode">punycode</a>, um URL-Codierungsprobleme zu vermeiden (siehe {{Bug ("945240")}}, siehe auch Diskussion in {{Bug ("942074")}}).</li> + <li>Firefox unter Windows und Mac OS X kann nun im <a href="/en-US/docs/Mozilla/Firefox/Headless_mode">headless Modus</a> mit der -headless-Flagge ausgeführt werden (siehe {{bug (1355150)}} und {{bug (1355147)}}).</li> +</ul> + +<h2 id="Von_der_Web-Plattform_entfernt">Von der Web-Plattform entfernt</h2> + +<h3 id="HTML_2">HTML</h3> + +<ul> + <li>Das {{htmlelement("isindex")}} Element wurde vom HTML parser und aus der Formularvorlage entfernt. ({{bug(1266495)}}).</li> + <li>Das {{htmlelement("applet")}} Element wurde entfernt ({{bug(1279218)}}).</li> +</ul> + +<h3 id="APIs_2">APIs</h3> + +<ul> + <li>Die {{domxref("KeyframeEffectReadOnly.spacing")}} Eigenschaft wurde von dem {{SpecName('Web Animations')}} spec entfernt, und deswegen wurde es auch von Gecko entfernt ({{bug(1339690)}}).</li> +</ul> + +<h3 id="SVG_2">SVG</h3> + +<p><em>Keine Änderungen.</em></p> + +<h2 id="Änderungen_für_add-on_und_Mozilla-Entwickler">Änderungen für add-on und Mozilla-Entwickler</h2> + +<h3 id="WebExtensions">WebExtensions</h3> + +<p><em>Keine Änderungen.</em></p> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li><a href="https://www.fxsitecompat.com/en-US/versions/56">Standortkompatibilität für Firefox 56</a></li> +</ul> +</article> + +<ul> +</ul> + +<h2 id="Ältere_Versionen">Ältere Versionen</h2> + +<p>{{Firefox_for_developers(55)}},</p> +</article> diff --git a/files/de/mozilla/firefox/releases/57/index.html b/files/de/mozilla/firefox/releases/57/index.html new file mode 100644 index 0000000000..dccbe85dea --- /dev/null +++ b/files/de/mozilla/firefox/releases/57/index.html @@ -0,0 +1,99 @@ +--- +title: Firefox 57 für Entwickler +slug: Mozilla/Firefox/Releases/57 +translation_of: Mozilla/Firefox/Releases/57 +--- +<div>{{FirefoxSidebar}}</div><div>{{draft}}</div> + +<p>Dieser Artikel enthält Informationen über die Änderungen in Firefox 57, die Entwicklern nützlich sind. Firefox 57 ist die aktuelle <a href="https://www.mozilla.org/en-US/firefox/channel/desktop/#nightly">Nightly-Version von Firefox</a> und wird am <a href="https://wiki.mozilla.org/RapidRelease/Calendar#Future_branch_dates">14. November 2017</a> veröffentlicht werden.</p> + +<article class="text-content" id="wikiArticle"> +<h2 id="Firefox_57_Firefox_Quantum">Firefox 57 = Firefox Quantum</h2> + +<p>Firefox 57 wurde Quantum genannt, weil dies der passendste Name für "Stabilität, Performance, etc." ist.</p> + +<h2 id="Änderungen_für_Web-Entwickler">Änderungen für Web-Entwickler</h2> + +<h3 id="Entwickler-Tools">Entwickler-Tools</h3> + +<p><em>Keine Änderungen.</em></p> + +<h3 id="HTML">HTML</h3> + +<p><em>Keine Änderungen.</em></p> + +<h3 id="CSS">CSS</h3> + +<p><em>Keine Änderungen.</em></p> + +<h3 id="SVG">SVG</h3> + +<p><em>Keine Änderungen.</em></p> + +<h3 id="JavaScript">JavaScript</h3> + +<p><em>Keine Änderungen.</em></p> + +<h3 id="APIs">APIs</h3> + +<h4 id="Neue_APIs">Neue APIs</h4> + +<p><em>Keine Änderungen.</em></p> + +<h4 id="DOM">DOM</h4> + +<p><em>Keine Änderungen.</em></p> + +<h4 id="DOM_events">DOM events</h4> + +<p><em>Keine Änderungen.</em></p> + +<h4 id="WebRTC">WebRTC</h4> + +<p><em>Keine Änderungen.</em></p> + +<h3 id="Sicherheit">Sicherheit</h3> + +<p><em>Keine Änderungen.</em></p> + +<h3 id="Plugins">Plugins</h3> + +<p><em>Keine Änderungen.</em></p> + +<h3 id="Anderes">Anderes</h3> + +<p><em>Keine Änderungen.</em></p> + +<h2 id="Von_der_Web-Plattform_entfernt">Von der Web-Plattform entfernt</h2> + +<h3 id="HTML_2">HTML</h3> + +<p><em>Keine Änderungen.</em></p> + +<h3 id="APIs_2">APIs</h3> + +<p><em>Keine Änderungen.</em></p> + +<h3 id="SVG_2">SVG</h3> + +<p><em>Keine Änderungen.</em></p> + +<h2 id="Änderungen_für_add-on_und_Mozilla-Entwickler">Änderungen für add-on und Mozilla-Entwickler</h2> + +<h3 id="WebExtensions">WebExtensions</h3> + +<p><em>Keine Änderungen.</em></p> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li><a href="https://www.fxsitecompat.com/en-US/versions/57">Standortkompatibilität für Firefox 57</a></li> +</ul> +</article> + +<ul> +</ul> + +<h2 id="Ältere_Versionen">Ältere Versionen</h2> + +<p>{{Firefox_for_developers(56)}}</p> diff --git a/files/de/mozilla/firefox/releases/58/index.html b/files/de/mozilla/firefox/releases/58/index.html new file mode 100644 index 0000000000..ba03bbbc43 --- /dev/null +++ b/files/de/mozilla/firefox/releases/58/index.html @@ -0,0 +1,186 @@ +--- +title: Firefox 58 for developers +slug: Mozilla/Firefox/Releases/58 +translation_of: Mozilla/Firefox/Releases/58 +--- +<div>{{FirefoxSidebar}}</div><article class="text-content" id="wikiArticle"> +<p class="summary">Dieser Artikel enthält Informationen zu den Änderungen in Firefox 58, die sich auf Entwickler auswirken. Firefox 58 ist die aktuelle <a href="https://www.mozilla.org/en-US/firefox/channel/desktop/#beta">Beta-Version von Firefox</a> und wird am <a href="https://wiki.mozilla.org/RapidRelease/Calendar#Future_branch_dates">16. Januar 2018</a> ausgeliefert.</p> + +<article class="text-content" id="wikiArticle"> +<h2 id="Änderungen_für_Web_Entwickler">Änderungen für Web Entwickler</h2> + +<h3 id="Developer_Tools">Developer Tools</h3> + +<ul> + <li>Der Code für den alten Responsive-Design-Modus (standardmäßig aktiviert vor Firefox 52) wurde jetzt aus den Devtools entfernt ({{bug (1305777)}}). Informationen zu den neuen Tools finden Sie im <a href="/en-US/docs/Tools/Responsive_Design_Mode">Responsive Design-Modus</a>.</li> + <li>Die Option zum Anzeigen von MDN-Dokumenten aus dem CSS-Bereich des Seiteninspektors wurde entfernt ({{bug (1382171)}}).</li> + <li>Der <a href="/en-US/docs/Tools/Page_Inspector/How_to/Edit_CSS_shapes">CSS-Formen-Textmarker</a> wurde standardmäßig für Formen aktiviert, die über {{cssxref ("clip-path")}} ({{bug (1405339)}}) erstellt wurden.</li> + <li>Der <a href="/en-US/docs/Tools/Network_Monitor">Netzwerkmonitor</a> verfügt jetzt über eine Schaltfläche zum <a href="/en-US/docs/Tools/Network_Monitor#Pausing_and_resume_network_traffic_recording">Anhalten / Wiedergeben der Aufzeichnung des Netzwerkverkehr</a>s ({{bug (1005755)}}).</li> + <li>Im <a href="/en-US/docs/Tools/Network_Monitor">Netzwerkmonitor </a>ist die Filterschaltfläche "Flash" nicht mehr verfügbar und Flash-Anforderungen sind im Filter "Others" enthalten ({{bug (1413540)}}).</li> +</ul> + +<h3 id="HTML">HTML</h3> + +<p><em>Keine Änderungen.</em></p> + +<h3 id="CSS">CSS</h3> + +<ul> + <li>Der Deskriptor {{cssxref ("@ font-face / font-display", "font-display")}} ist jetzt standardmäßig auf allen Plattformen verfügbar ({{bug (1317445)}}).</li> +</ul> + +<h3 id="SVG">SVG</h3> + +<p><em>Keine Änderungen</em> <em>.</em></p> + +<h3 id="JavaScript">JavaScript</h3> + +<ul> + <li>Das Objekt {{jsxref ("Global_Objects / DateTimeFormat", "Intl.DateTimeFormat")}} unterstützt jetzt die Option <code>hourCycle</code> und das <code>hc</code> Sprachen Tag ({{bug (1386146)}}).</li> +</ul> + +<h3 id="APIs">APIs</h3> + +<h4 id="Neue_APIs">Neue APIs</h4> + +<ul> + <li>Die API {{domxref ("PerformanceNavigationTiming")}} wurde implementiert ({{bug (1263722)}}). + <ul> + <li>Gecko besitzt nun eine Pref Einstellung, die verwendet werden kann, um die Schnittstelle bei Bedarf zu deaktivieren — <code>dom.enable_performance_navigation_timing</code>, Standardwert ist <code>true</code> ({{bug(1403926)}}).</li> + </ul> + </li> +</ul> + +<h4 id="DOM">DOM</h4> + +<ul> + <li>Fehler, die über Fehlerobjekte in bestimmten APIs gemeldet werden - z. B. in der <code>error</code> Eigenschaft von {{domxref ("FileReader")}}, {{domxref ("IDBRequest")}} und {{domxref ("IDBTransaction")}}, sowie wenn Anfragen über bestimmte Methoden von {{domxref ("RTCPeerConnection")}} nicht erfolgreich sind - werden jetzt durch {{domxref ("DOMException")}} Instanzen repräsentiert. {{domxref ("DOMError")}} ist veraltet und wurde aus der DOM4-Spezifikation ({{bug (1120178)}}) entfernt.</li> + <li>Die <a href="/en-US/docs/Web/API/WebVR_API">WebVR-API</a> wurde standardmäßig unter macOS aktiviert ({{bug (1374399)}}).</li> + <li>Die Eigenschaft {{domxref ("PerformanceResourceTiming.workerStart")}} wird jetzt unterstützt ({{bug (1191943)}}).</li> + <li>Budget-basierte Timeout-Throttling-Regeln wurden implementiert - siehe <a href="/en-US/docs/Web/API/Page_Visibility_API#Policies_in_place_to_aid_background_page_performance">Richtlinien zur Unterstützung der Performance von Hintergrundseiten</a> für weitere Details ({{bug (1377766)}}).</li> +</ul> + +<h4 id="DOM_Events">DOM Events</h4> + +<p><em>Keine Änderungen.</em></p> + +<h4 id="Media_and_WebRTC">Media and WebRTC</h4> + +<ul> + <li>Die vorangestellte Version von {{domxref ("HTMLMediaElement.srcObject")}} wurde entfernt. Es ist sicherzustellen, daß der Code aktualisiert wird, um das Standard-<code>srcObject</code> anstelle von <code>mozSrcObject</code> ({{bug (1183495)}}) zu verwenden.</li> +</ul> + +<h4 id="Canvas_und_WebGL">Canvas und WebGL</h4> + +<p><em>Keine Änderungen.</em></p> + +<h3 id="HTTP">HTTP</h3> + +<ul> + <li><code><a href="/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/frame-ancestors">frame-ancestors</a></code> wird nicht mehr ignoriert in {{httpheader ("Content-Security-Policy-Report-Only")}} ({{bug (1380755)}}).</li> + <li>Firefox implementiert jetzt ein TLS-Handshake-Timeout mit einem Standardwert von 30 Sekunden. Der Timeout-Wert kann durch Bearbeiten des Parameters <code>network.http.tls-handshake-timeout</code> in about:config ({{bug(1393691)}}).</li> + <li>Die <code><a href="/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/worker-src">worker-src</a></code> CSP Richtlinie wurde implementiert ({{bug(1302667)}}).</li> +</ul> + +<h3 id="Security">Security</h3> + +<p><em>Keine Änderungen.</em></p> + +<h3 id="Plugins">Plugins</h3> + +<p><em>Keine Änderungen.</em></p> + +<h3 id="Andere">Andere</h3> + +<p><em>Keine Änderungen.</em></p> + +<h2 id="Webplattform_Berichtigungen">Webplattform Berichtigungen</h2> + +<h3 id="HTML_2">HTML</h3> + +<ul> + <li>{{htmlelement ("a")}} -Elemente können nicht mehr in ein {{htmlelement ("map")}} -Element eingebettet werden, um einen Hotspot-Bereich zu erstellen - ein {{htmlelement ("area")}} -Element muss stattdessen verwendet werden ({{bug (1317937)}}).</li> +</ul> + +<h3 id="CSS_2">CSS</h3> + +<ul> + <li>Die folgenden proprietären Mozilla-Systemmetrik-Pseudoklassen sind für Webinhalte nicht mehr verfügbar ({{bug(1396066)}}): + <ul> + <li>{{Cssxref(":-moz-system-metric(images-in-menus)")}}</li> + <li>{{Cssxref(":-moz-system-metric(mac-graphite-theme)")}}</li> + <li>{{Cssxref(":-moz-system-metric(scrollbar-end-backward)")}}</li> + <li>{{Cssxref(":-moz-system-metric(scrollbar-end-forward)")}}</li> + <li>{{Cssxref(":-moz-system-metric(scrollbar-start-backward)")}}</li> + <li>{{Cssxref(":-moz-system-metric(scrollbar-start-forward)")}}</li> + <li>{{Cssxref(":-moz-system-metric(scrollbar-thumb-proportional)")}}</li> + <li>{{Cssxref(":-moz-system-metric(touch-enabled)")}}</li> + <li>{{Cssxref(":-moz-system-metric(windows-default-theme)")}}</li> + </ul> + </li> + <li>Die folgenden proprietären Mozilla-Medienfunktionen stehen nicht mehr für Webinhalte zur Verfügung ({{bug(1396066)}}): + <ul> + <li><code>-moz-color-picker-available</code></li> + <li><code>-moz-is-glyph</code></li> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@media/-moz-mac-graphite-theme"><code>-moz-mac-graphite-theme</code></a></li> + <li><code>-moz-mac-yosemite-theme</code></li> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@media/-moz-os-version"><code>-moz-os-version</code></a></li> + <li><code>-moz-overlay-scrollbars</code></li> + <li><code>-moz-physical-home-button</code></li> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@media/-moz-scrollbar-end-backward"><code>-moz-scrollbar-end-backward</code></a></li> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@media/-moz-scrollbar-end-forward"><code>-moz-scrollbar-end-forward</code></a></li> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@media/-moz-scrollbar-start-backward"><code>-moz-scrollbar-start-backward</code></a></li> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@media/-moz-scrollbar-start-forward"><code>-moz-scrollbar-start-forward</code></a></li> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@media/-moz-scrollbar-thumb-proportional"><code>-moz-scrollbar-thumb-proportional</code></a></li> + <li><code>-moz-swipe-animation-enabled</code></li> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@media/-moz-windows-accent-color-in-titlebar"><code>-moz-windows-accent-color-in-titlebar</code></a></li> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@media/-moz-windows-classic"><code>-moz-windows-classic</code></a></li> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@media/-moz-windows-compositor"><code>-moz-windows-compositor</code></a></li> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@media/-moz-windows-default-theme"><code>-moz-windows-default-theme</code></a></li> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@media/-moz-windows-glass"><code>-moz-windows-glass</code></a></li> + <li><a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@media/-moz-windows-theme"><code>-moz-windows-theme</code></a></li> + </ul> + </li> + <li>Die proprietäte Mozilla <code>:-moz-styleeditor-transitioning</code> steht nicht mehr für Webinhalte zur Verfügung ({{bug(1396099)}}).</li> +</ul> + +<h3 id="JavaScript_2">JavaScript</h3> + +<ul> + <li>Die nicht standardmäßige Methode {{jsxref ("Date.prototype.toLocaleFormat ()")}} wurde entfernt ({{bug (818634)}}). <a href="/en-US/docs/Web/JavaScript/Guide/Working_with_Objects#Defining_getters_and_setters">Siehe Warnung: Date.prototype.toLocaleFormat ist für weitere Informationen und die Migrationshilfe veraltet</a>.</li> + <li>Die nicht standardmäßigen und veralteten Methoden {{jsxref ("Object.prototype.watch ()")}} und {{jsxref ("Object.prototype.unwatch", "unwatch ()")}} wurden entfernt und werden nicht mehr angezeigt ({{bug (638054)}}). Erwägen Sie stattdessen, <a href="/en-US/docs/Web/JavaScript/Guide/Working_with_Objects#Defining_getters_and_setters">Setter und Getter</a> Methoden oder Proxys zu verwenden.</li> + <li>Das <a href="/en-US/docs/Web/JavaScript/Reference/Deprecated_and_obsolete_features/The_legacy_Iterator_protocol">Legacy-Iterator-Protokoll</a>, das <code><a href="/en-US/docs/Archive/Web/StopIteration">StopIteration</a></code> Objekt, die <a href="/en-US/docs/Web/JavaScript/Reference/Statements/Legacy_generator_function">Legacy-Generator-Funktionen</a> und die nicht standardmäßige {{jsxref ("Function.prototype.isGenerator ()")}} - Methode wurden entfernt. Verwenden Sie stattdessen die ES2015-<a href="/en-US/docs/Web/JavaScript/Reference/Iteration_protocols">Iterationsprotokolle</a> und standardkonforme <a href="/en-US/docs/Web/JavaScript/Guide/Iterators_and_Generators">Iteratoren und Generatoren</a> ({{bug (1083482)}}, {{bug (1413867)}}, {{bug (1119777)}}).</li> +</ul> + +<h3 id="APIs_2">APIs</h3> + +<ul> + <li>Die proprietären <code>moz-blob</code> und <code>moz-chunked-text</code> Werte der {{Domxref ("XMLHttpRequest.responseType")}} - Eigenschaft wurden in Firefox 58 vollständig entfernt ({{bug (1397145)}}, {{bug (1397151)}}, {{bug (1120171)}}).</li> + <li>Die Voreinstellungen <code>dom.abortController.enabled</code> und <code>dom.abortController.fetch.enabled</code>, die die Belichtung der Abort-API-Funktionalität kontrollierten, wurden nun entfernt, da diese Funktionen jetzt standardmäßig aktiviert sind ({{bug (1402317)}}).</li> + <li>Die proprietäre Eigenschaft <code>mozSrcObject</code> wurde in Firefox 58 entfernt ({{bug (1183495)}}). Verwenden Sie stattdessen die standardmäßige {{domxref ("HTMLMediaElement.srcObject")}} -Eigenschaft.</li> +</ul> + +<h3 id="SVG_2">SVG</h3> + +<p><em>Keine Änderungen.</em></p> + +<h2 id="Änderungen_für_Add-On_und_Mozilla_Entwickler">Änderungen für Add-On und Mozilla Entwickler</h2> + +<h3 id="WebExtensions">WebExtensions</h3> + +<p><em>Keine Änderungen.</em></p> + +<h2 id="Siehe_auch">Siehe auch</h2> + +<ul> + <li><a href="https://www.fxsitecompat.com/en-US/versions/58">Site Compatibility for Firefox 58</a></li> +</ul> +</article> + +<ul> +</ul> + +<h2 id="Ältere_Versionen">Ältere Versionen</h2> + +<p>{{Firefox_for_developers(57)}}</p> +</article> diff --git a/files/de/mozilla/firefox/releases/60/index.html b/files/de/mozilla/firefox/releases/60/index.html new file mode 100644 index 0000000000..2d75e69ac2 --- /dev/null +++ b/files/de/mozilla/firefox/releases/60/index.html @@ -0,0 +1,146 @@ +--- +title: Firefox 60 for developers +slug: Mozilla/Firefox/Releases/60 +translation_of: Mozilla/Firefox/Releases/60 +--- +<div>{{FirefoxSidebar}}</div><div>{{draft}}</div> + +<p class="summary">This article provides information about the changes in Firefox 60 that will affect developers. Firefox 60 is the current <a href="https://www.mozilla.org/en-US/firefox/channel/desktop/#nightly">Nightly version of Firefox</a>, and will ship on <a href="https://wiki.mozilla.org/RapidRelease/Calendar#Future_branch_dates">May 8, 2018</a>.</p> + +<h2 id="Stylo_comes_to_Firefox_for_Android_in_60">Stylo comes to Firefox for Android in 60</h2> + +<p><a href="https://hacks.mozilla.org/2017/08/inside-a-super-fast-css-engine-quantum-css-aka-stylo/">Firefox's new parallel CSS engine</a> — also known as <strong>Quantum CSS</strong> or <strong>Stylo</strong>, which was <a href="/en-US/Firefox/Releases/57#Firefox_57_Firefox_Quantum">first enabled by default in Firefox 57 for desktop</a>, has now been enabled in Firefox for Android.</p> + +<h2 id="Changes_for_web_developers">Changes for web developers</h2> + +<h3 id="Developer_tools">Developer tools</h3> + +<ul> + <li>In the CSS Pane rules view (see <a href="/en-US/docs/Tools/Page_Inspector/How_to/Examine_and_edit_CSS">Examine and edit CSS</a>), the keyboard shortcuts for precise value increments (increase/decrease by 0.1) have changed from <kbd>Alt</kbd> + <kbd>Up</kbd>/<kbd>Down</kbd> to <kbd>Ctrl</kbd> + <kbd>Up</kbd>/<kbd>Down</kbd> on Linux and Windows, to avoid clashes with default OS-level shortcuts (see {{bug("1413314")}}).</li> + <li>Also in the CSS Pane rules view, <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_variables">CSS variable names</a> will now auto-complete ({{bug(1422635)}}). If you enter <code>var(</code> into a property value and then type a dash (<code>-</code>), any variables you have declared in your CSS will then appear in an autocomplete list.</li> +</ul> + +<h3 id="HTML">HTML</h3> + +<p>Pressing the Enter key in <code>designMode</code> and <code>contenteditable</code> now inserts <code><div></code> elements when the caret is in an inline element or text node which is a child of a block level editing host — instead of inserting <code><br></code> elements like it used to. If you want to use the old behavior on your app, you can do it with <code>document.execCommand()</code>. See <a href="/en-US/docs/Web/Guide/HTML/Editable_content#Differences_in_markup_generation">Differences in markup generation</a> for more details.</p> + +<h3 id="CSS">CSS</h3> + +<ul> + <li>The {{cssxref("align-content")}}, {{cssxref("align-items")}}, {{cssxref("align-self")}}, {{cssxref("justify-content")}}, and {{cssxref("place-content")}} property values have been updated as per the latest <a href="https://drafts.csswg.org/css-align-3/">CSS Box Alignment Module Level 3</a> spec ({{bug(1430817)}}).</li> + <li>The {{cssxref("paint-order")}} property has been implemented ({{bug(1426146)}}).</li> +</ul> + +<h3 id="SVG">SVG</h3> + +<p><em>No changes.</em></p> + +<h3 id="JavaScript">JavaScript</h3> + +<p>The {{jsxref("Array.prototype.values()")}} method has been added again ({{bug(1420101)}}). It was disabled due to <a href="https://www.fxsitecompat.com/en-CA/docs/2016/array-prototype-values-breaks-some-legacy-apps/">compatibilty issues</a> in earlier versions. Make sure your code doesn't have any custom implementation of this method.</p> + +<h3 id="APIs">APIs</h3> + +<h4 id="New_APIs">New APIs</h4> + +<p><em>No changes.</em></p> + +<h4 id="DOM">DOM</h4> + +<ul> + <li>In the <a href="/en-US/docs/Web/API/Web_Authentication_API">Web Authentication API</a>, the <code>MakePublicKeyCredentialOptions</code> dictionary object has been renamed {{domxref("PublicKeyCredentialCreationOptions")}}; this change has been made in Firefox ({{bug(1436473)}}).</li> + <li>The <code>dom.workers.enabled</code> pref has been removed, meaning workers can no longer be disabled ({{bug(1434934)}}).</li> + <li>The {{domxref("Document.body","body")}} property is now implemented on the {{domxref("Document")}} interface, rather than the {{domxref("HTMLDocument")}} interface ({{bug(1276438)}}).</li> + <li>{{domxref("PerformanceResourceTiming")}} is now available in workers ({{bug(1425458)}}).</li> + <li>The {{domxref("PerformanceObserver.takeRecords()")}} method has been implemented ({{bug(1436692)}}).</li> + <li>The {{domxref("KeyboardEvent.keyCode")}} attribute of punctuation key becomes non-zero even if active keyboard layout doesn't produce ASCII character. See <a href="/en-US/docs/Web/API/KeyboardEvent/keyCode#keyCode_of_punctuation_keys_on_some_keyboard_layout">the detail</a>. Note that please do <strong>not</strong> use <code>KeyboardEvent.keyCode</code> in new applications. Please consider to use {{domxref("KeyboardEvent.key")}} or {{domxref("KeyboardEvent.code")}} instead.</li> + <li>The {{domxref("Animation.updatePlaybackRate()")}} method has been implemented ({{bug("1436659")}}).</li> + <li>New rules have been included for determining <a href="/en-US/docs/Web/API/KeyboardEvent/keyCode#keyCode_of_punctuation_keys_on_some_keyboard_layout">keyCode values of punctuation keys</a> ({{bug(1036008)}}).</li> +</ul> + +<h4 id="DOM_events">DOM events</h4> + +<p><em>No changes.</em></p> + +<h4 id="Service_workers">Service workers</h4> + +<p><em>No changes.</em></p> + +<h4 id="Media_and_WebRTC">Media and WebRTC</h4> + +<ul> + <li>When recording or sharing media obtained using {{domxref("MediaDevices.getUserMedia", "getUserMedia()")}}, muting the camera by setting the corresponding track's {{domxref("MediaStreamTrack.enabled")}} property to <code>false</code> now turns off the camera's "in use" indicator light, to help the user more easily see that the camera is not in use ({{bug(1299515)}}).</li> + <li>Removing a track from an {{domxref("RTCPeerConnection")}} using {{domxref("RTCPeerConnection.removeTrack", "removeTrack()")}} no longer removes the track's {{domxref("RTCRtpSender")}} from the peer connection's list of senders as reported by {{domxref("RTCPeerConnection.getSenders", "getSenders()")}} ({{bug(1290949)}}).</li> + <li>The {{domxref("RTCRtpContributingSource")}} and {{domxref("RTCRtpSynchronizationSource")}} objects' timestamps were previously being reported based on values returned by {{jsxref("Date.getTime()")}}. In Firefox 60, these have been fixed to correctly use the <a href="/en-US/docs/Web/API/Performance_API">Performance Timing API</a> instead ({{bug(1433576)}}).</li> +</ul> + +<h4 id="Canvas_and_WebGL">Canvas and WebGL</h4> + +<p><em>No changes.</em></p> + +<h3 id="CSSOM">CSSOM</h3> + +<p><em>No changes.</em></p> + +<h3 id="HTTP">HTTP</h3> + +<p><em>No changes.</em></p> + +<h3 id="Security">Security</h3> + +<p><em>No changes.</em></p> + +<h3 id="Plugins">Plugins</h3> + +<p><em>No changes.</em></p> + +<h3 id="Other">Other</h3> + +<p><em>No changes.</em></p> + +<h2 id="Removals_from_the_web_platform">Removals from the web platform</h2> + +<h3 id="HTML_2">HTML</h3> + +<p><em>No changes.</em></p> + +<h3 id="CSS_2">CSS</h3> + +<ul> + <li>The proprietary {{cssxref("-moz-user-input")}} property's <code>enabled</code> and <code>disabled</code> values are no longer available ({{bug("1405087")}}).</li> + <li>The proprietary {{cssxref("-moz-border-top-colors")}}, {{cssxref("-moz-border-right-colors")}}, {{cssxref("-moz-border-bottom-colors")}}, and {{cssxref("-moz-border-left-colors")}} properties have been removed from the platform completely ({{bug(1429723)}}).</li> +</ul> + +<h3 id="JavaScript_2">JavaScript</h3> + +<p>The non-standard <a href="/en-US/docs/Web/JavaScript/Reference/Operators/Expression_closures">expression closure</a> syntax has been removed ({{bug(1426519)}}).</p> + +<h3 id="APIs_2">APIs</h3> + +<p><em>No changes.</em></p> + +<h3 id="SVG_2">SVG</h3> + +<p><em>No changes.</em></p> + +<h3 id="Other_2">Other</h3> + +<p><em>No changes.</em></p> + +<h2 id="Changes_for_add-on_and_Mozilla_developers">Changes for add-on and Mozilla developers</h2> + +<h3 id="WebExtensions">WebExtensions</h3> + +<p><em>No changes.</em></p> + +<h2 id="See_also">See also</h2> + +<ul> + <li>Site compatibility for Firefox 60</li> +</ul> + +<h2 id="Older_versions">Older versions</h2> + +<p>{{Firefox_for_developers(58)}}</p> + +<p> </p> diff --git a/files/de/mozilla/firefox/releases/68/index.html b/files/de/mozilla/firefox/releases/68/index.html new file mode 100644 index 0000000000..8a5c4fa572 --- /dev/null +++ b/files/de/mozilla/firefox/releases/68/index.html @@ -0,0 +1,162 @@ +--- +title: Firefox 68 für Entwickler +slug: Mozilla/Firefox/Releases/68 +translation_of: Mozilla/Firefox/Releases/68 +--- +<p>{{FirefoxSidebar}}{{Draft}}</p> + +<p class="summary">This article provides information about the changes in Firefox 68 that will affect developers. Firefox 68 is the current <a href="https://www.mozilla.org/en-US/firefox/channel/desktop/#beta" rel="noopener">Beta version of Firefox</a>, and will ship on <a href="https://wiki.mozilla.org/RapidRelease/Calendar#Future_branch_dates" rel="noopener">July 9, 2019</a>.</p> + +<h2 id="Changes_for_web_developers">Changes for web developers</h2> + +<h3 id="Developer_tools">Developer tools</h3> + +<ul> + <li>Die Einstellung, die die Sichtbarkeit interner Erweiterungen (System-Add-Ons und versteckte Erweiterungen) auf der <a href="/en-US/docs/Tools/about:debugging">about:debugging</a>-Seite kontrolliert, wurde von <code>devtools.aboutdebugging.showSystemAddons</code> zu <code>devtools.aboutdebugging.showHiddenAddons</code> geändert ({{bug(1544372)}}).</li> + <li>Die Konsole zeigt jetzt <a href="/en-US/docs/Tools/Web_Console/Console_messages#CSS">mehr Informationen über CSS-Warnungen</a> inklusive einer Liste der Knoten der DOM-Elemente, die die Regel genutzt haben ({{bug(1093953)}}).</li> + <li>Über die <a href="/en-US/docs/Tools/Network_Monitor/request_list#Filtering_requests">Anfragen-Liste</a> der Netzwerkanalyse kann jetzt eine spezifische URL geblockt werden ({{bug(1151368)}}).</li> + <li>Es ist jetzt möglich, eine Netzwerkanfrage erneut zu senden, ohne das Verfahren, die URL, die Parameter oder die Überschrift ändern zu müssen, indem der <a href="/en-US/docs/Tools/Network_Monitor/request_list#Context_menu">Resend</a>-Befehl im Kontextmenü ausgeführt wird ({{bug(1422014)}}).</li> + <li>Es ist jetzt möglich, die <a href="/en-US/docs/Tools/Network_Monitor/request_list#Network_request_columns">Breite der Spalten</a> in der Netzwerkanalyse zu ändern, um dem Arbeitsalauf gerecht zu werden. ({{bug(1358414)}}).</li> + <li>The context menu of the <a href="/en-US/docs/Tools/Network_Monitor/request_details#Headers">Headers</a> tab now allows you to copy all or some of the header information to the clipboard in JSON format ({{bug(1442249)}}).</li> + <li>A button has been added to the <a href="/en-US/docs/Tools/Page_Inspector/How_to/Examine_and_edit_CSS#Examine_CSS_rules">rules panel</a> of the Page Inspector that allows you to toggle display of any print media queries ({{bug(1534984)}}).</li> + <li>An icon will be displayed next to invalid or unsupported <a href="/en-US/docs/Page_Inspector/How_to/Examine_and_edit_CSS#Examine_CSS_rules">CSS rules</a> in the Rules pane of the Page Inspector ({{bug(1306054)}}).</li> +</ul> + +<h4 id="Removals">Removals</h4> + +<h3 id="HTML">HTML</h3> + +<p><em>No changes.</em></p> + +<h4 id="Removals_2"> Removals</h4> + +<h3 id="CSS">CSS</h3> + +<ul> + <li><a href="/en-US/docs/Web/CSS/CSS_Scroll_Snap">CSS Scroll Snapping</a> has been updated to the latest version of the specification ({{bug(1312163)}}) and ({{bug(1544136)}}), this includes: + + <ul> + <li>The scroll-padding properties ({{bug(1373832)}})</li> + <li>The scroll-margin properties ({{bug(1373833)}})</li> + <li>{{CSSxRef("scroll-snap-align")}} ({{bug(1373835)}})</li> + </ul> + </li> + <li>The {{CSSxRef("-webkit-line-clamp")}} property has been implemented for compatibility with other browsers ({{bug(866102)}}).</li> + <li>Support {{CSSxRef("::marker")}} pseudo-element ({{bug(205202)}}) and animation for ::marker pseudos ({{bug(1538618)}})</li> + <li>Change {{CSSxRef("currentColor")}} to be a computed value (except for color property) ({{bug(760345)}}).</li> + <li>Fix support for the 'ch' length unit to match spec (fallback for no '0' glyph, vertical metrics) ({{bug(282126)}})</li> + <li>The {{CSSxRef("counter-set")}} property has been implemented. ({{bug(1518201)}})</li> + <li>Implement list numbering using a built-in 'list-item' counter - fixes list numbering bugs ({{bug(288704)}})</li> + <li>CSS Transforms are now supported in indirectly rendered things e.g.) {{SVGElement("mask")}}, {{SVGElement("marker")}}, {{SVGElement("pattern")}}, {{SVGElement("clipPath")}} ({{bug(1323962)}}).</li> +</ul> + +<h4 id="Removals_3">Removals</h4> + +<ul> + <li>{{CSSxRef("scroll-snap-coordinate")}}, {{CSSxRef("scroll-snap-destination")}}, {{CSSxRef("scroll-snap-type-x")}} and {{CSSxRef("scroll-snap-type-y")}} have been removed.</li> + <li>The {{CSSxRef("scroll-snap-type")}} property has become a longhand, so the old shorthand syntax like <code>scroll-snap-type:mandatory</code> will stop working. See the <a href="https://www.fxsitecompat.com/en-CA/docs/2019/legacy-css-scroll-snap-syntax-support-has-been-dropped/">Firefox Site Compatability</a> note.</li> +</ul> + +<h3 id="SVG">SVG</h3> + +<p><em>No changes.</em></p> + +<h4 id="Removals_4">Removals</h4> + +<h3 id="JavaScript">JavaScript</h3> + +<p><em>No changes.</em></p> + +<h4 id="Removals_5">Removals</h4> + +<h3 id="APIs">APIs</h3> + +<p><em>No changes.</em></p> + +<h4 id="New_APIs">New APIs</h4> + +<ul> + <li>Implement Resize Observer API ({{bug(1272409)}}).</li> +</ul> + +<h4 id="DOM">DOM</h4> + +<ul> + <li>The <a href="/en-US/docs/Web/API/Visual_Viewport_API">Visual Viewport API</a> has now been enabled by default on Android ({{bug(1512813)}}). Adding this API to desktop versions of Firefox is being tracked in {{bug(1551302)}}.</li> + <li>The {{domxref("HTMLImageElement.decode", "decode()")}} element on images is now implemented. this can be used to trigger loading and decoding of an image prior to adding it to the DOM ({{bug(1501794)}}).</li> + <li>The <a href="/en-US/docs/Web/API/Notifications_API">Notifications API</a> now requires that the user interact with the page before it can request permission to send notifications ({{bug(1524619)}}).</li> + <li>{{domxref("XMLHttpRequest")}} has been updated to no longer accept the non-standard <code>moz-chunked-arraybuffer</code> value for {{domxref("XMLHttpRequest.responseType", "responseType")}}. Code still using it should be updated to <a href="/en-US/docs/Web/API/Streams_API/Using_readable_streams#Consuming_a_fetch_as_a_stream">use the Fetch API as a stream</a> ({{bug(1120171)}}).</li> + <li><code>XMLHttpRequest</code> now outputs a warning to console if you perform a synchronous request while handling an {{domxref("Window.unload_event", "unload")}}, {{domxref("Window.beforeunload_event", "beforeunload")}}, or {{domxref("Window.pagehide_event", "pagehide")}} event ({{bug(980902)}}).</li> + <li>The {{domxref("Document.cookie", "cookie")}} property has moved from the {{domxref("HTMLDocument")}} interface to the {{domxref("Document")}} interface, allowing documents other than {{Glossary("HTML")}} to use cookies ({{bug(144795)}}).</li> +</ul> + +<h4 id="DOM_events">DOM events</h4> + +<h4 id="Service_workers">Service workers</h4> + +<h4 id="Media_Web_Audio_and_WebRTC">Media, Web Audio, and WebRTC</h4> + +<ul> + <li>WebRTC has been updated to recognize that a <code>null</code> candidate passed into the {{domxref("RTCPeerConnection.icecandidate", "icecandidate")}} event handler, indicating the receipt of a candidate, instead indicates that there are no further candidates coming; when this happens the ICE gathering ({{domxref("RTCPeerConnection.iceGatheringState", "iceGatheringState")}}) state reaches <code>complete</code> ({{bug(1318167)}}).</li> + <li>The {{domxref("RTCRtpReceiver")}} methods {{domxref("RTCRtpReceiver.getContributingSources", "getContributingSources()")}} and {{domxref("RTCRtpReceiver.getSynchronizationSources", "getSynchronizationSources()")}} now support video tracks; previously they only worked on audio ({{bug(1534466)}}).</li> + <li> + <p>{{domxref("MediaDevices.getUserMedia", "getUserMedia()")}} may no longer be used from a non-secure context; attempting to do so now throws a <code>NotAllowedError</code> result. Secure contexts are those loaded using HTTPS, those located using the <code>file:///</code> scheme, and those loaded from <code>localhost</code>. For now, if you must, you can re-enable the ability to perform insecure calls to <code>getUserMedia()</code> by setting the preference <code>media.getusermedia.insecure.enabled</code> to <code>true</code> ({{bug(1335740)}}).</p> + + <div class="blockIndicator note"> + <p><strong>Note:</strong> In the future, Firefox will also remove the {{domxref("navigator.mediaDevices")}} property on insecure contexts, preventing all access to the {{domxref("MediaDevices")}} APIs; see {{bug()}} for the status of this work. <strong>This is already the case in Nightly builds.</strong></p> + </div> + </li> +</ul> + +<h4 id="Canvas_and_WebGL">Canvas and WebGL</h4> + +<h4 id="Removals_6">Removals</h4> + +<ul> + <li>Removed the non-standard {{DOMxRef("XMLDocument.load()")}} method ({{bug(332175)}}).</li> + <li>Removed the non-standard {{DOMxRef("XMLDocument.async")}} property ({{bug(1328138)}}).</li> +</ul> + +<h3 id="Security">Security</h3> + +<p><em>No changes.</em></p> + +<h4 id="Removals_7">Removals</h4> + +<h3 id="Plugins">Plugins</h3> + +<p><em>No changes.</em></p> + +<h4 id="Removals_8">Removals</h4> + +<h3 id="Other">Other</h3> + +<p><em>No changes.</em></p> + +<h4 id="Removals_9">Removals</h4> + +<h2 id="Changes_for_add-on_developers">Changes for add-on developers</h2> + +<h3 id="API_changes">API changes</h3> + +<ul> + <li>The The proxy.register() and proxy.unregister() functions have been deprecated and will be removed from Firefox 71 ({{bug(1545811)}}).</li> +</ul> + +<h4 id="Removals_10">Removals</h4> + +<h3 id="Manifest_changes">Manifest changes</h3> + +<p><em>No changes.</em></p> + +<h4 id="Removals_11">Removals</h4> + +<h2 id="See_also">See also</h2> + +<ul> + <li><a href="https://www.fxsitecompat.com/en-CA/versions/68/">Site compatibility for Firefox 68</a></li> +</ul> + +<h2 id="Older_versions">Older versions</h2> + +<p>{{Firefox_for_developers(67)}}</p> diff --git a/files/de/mozilla/firefox/releases/index.html b/files/de/mozilla/firefox/releases/index.html new file mode 100644 index 0000000000..e5af49da21 --- /dev/null +++ b/files/de/mozilla/firefox/releases/index.html @@ -0,0 +1,12 @@ +--- +title: Firefox developer release notes +slug: Mozilla/Firefox/Releases +tags: + - Firefox + - NeedsTranslation + - TopicStub +translation_of: Mozilla/Firefox/Releases +--- +<div>{{FirefoxSidebar}}</div><p>This page provides links to the "Firefox X for developers" articles for each Firefox release. These notes let you see what features were added and bugs eliminated in each version of Firefox.</p> + +<div class="multiColumnList">{{ListSubpages("",1,0,1)}}</div> diff --git a/files/de/mozilla/firefox/the_about_protocol/index.html b/files/de/mozilla/firefox/the_about_protocol/index.html new file mode 100644 index 0000000000..5225af8915 --- /dev/null +++ b/files/de/mozilla/firefox/the_about_protocol/index.html @@ -0,0 +1,190 @@ +--- +title: Firefox und das "about"-Protokoll +slug: Mozilla/Firefox/The_about_protocol +tags: + - Einstellungen + - Firefox + - Guide + - Protokolle + - Referenz + - 'about:' +translation_of: Mozilla/Firefox/The_about_protocol +--- +<div>{{FirefoxSidebar}}</div> + +<div class="syntaxbox">Es gibt eine Menge wichtiger Informationen über Firefox, die sich hinter dem <code>about:</code> URL-Protokoll verbergen. Am wichtigsten ist die URL <code>about:config</code>, die Einstellungen anzeigt, die sich dort betrachten und ändern lassen. Hier ist eine komplette Liste mit allen URLs des <code>about:</code>-Pseudo-Protokolls::</div> + +<div class="syntaxbox"> </div> + +<table class="standard-table"> + <thead> + <tr> + <th scope="col"><code>about:</code> Seite</th> + <th scope="col">Beschriebung</th> + </tr> + </thead> + <tbody> + <tr> + <td><code>about:</code></td> + <td>Zeigt die Versionsnummer, Buildinformationen, Links zu den Beitragenden, Lizenzinformationen und Einstellungen zur Build-Konfiguration an.</td> + </tr> + <tr> + <td><code>about:about</code></td> + <td>Zeigt einen Überblick über alle about:-Seiten an.</td> + </tr> + <tr> + <td><code>about:accounts</code></td> + <td>Zeigt Informationen zur <a href="https://www.mozilla.org/en-US/firefox/sync/">Sync-Funktion </a>an.</td> + </tr> + <tr> + <td><code>about:addons</code></td> + <td>Öffnet den Add-ons-Manager</td> + </tr> + <tr> + <td><code>about:app-manager</code></td> + <td>Öffnet den App-Manager</td> + </tr> + <tr> + <td><code>about:buildconfig</code></td> + <td>Zeigt die für die Version von Firefox verwendete Konfiguration und Plattform an.</td> + </tr> + <tr> + <td><code>about:cache</code></td> + <td>Zeigt Informationen zum Speicher, Speichermedium und Arbeitsspeicher an.</td> + </tr> + <tr> + <td><code>about:compartments</code></td> + <td> + <div class="note"> + <p>Seit Firefox 26 können diese Informationen unter "Other Measurements" in about:memory gefunden werden.</p> + </div> + + <p>Zeigt Informationen zu einzelnen "<a href="/en-US/docs/SpiderMonkey/SpiderMonkey_compartments">Compartments"</a>.</p> + </td> + </tr> + <tr> + <td><code>about:config</code></td> + <td>Bietet eine Möglichkeit, Einstellungen in Firefox zu untersuchen und zu ändern.</td> + </tr> + <tr> + <td><code>about:crashes</code></td> + <td>Listet alle Abstürze, die während der gesamten Lebenszeit von Firefox passierten, auf.</td> + </tr> + <tr> + <td><code>about:credits</code></td> + <td>Listet alle Ünterstützer und Mitwirkenden des Firefox-Projektes auf.</td> + </tr> + <tr> + <td><code>about:customizing</code></td> + <td>Wechselt zur Anpassungsseite, die Anpassungen der Benutzeroberfläche von Firefox erlaubt.</td> + </tr> + <tr> + <td><code>about:downloads</code></td> + <td>Listet alle Downloads von Firefox aus auf.</td> + </tr> + <tr> + <td><code>about:healthreport</code></td> + <td>Zeigt Leistungsinformationen von Firefox an (nur wenn der Nutzer dies aktiviert hat).</td> + </tr> + <tr> + <td><code>about:home</code></td> + <td>Öffnet die Startseite, die beim Öffnen eines neuen Fensters erscheint.</td> + </tr> + <tr> + <td><code>about:license</code></td> + <td>Zeigt Lizenzinformationen an.</td> + </tr> + <tr> + <td><code>about:logo</code></td> + <td>Zeigt das Firefox-Logo an.</td> + </tr> + <tr> + <td><a href="/en-US/docs/Mozilla/Performance/about%3Amemory">about:memory</a></td> + <td>Bietet eine Möglichkeit, die Speicherverwendung anzuzeigen, als Bericht zu speichern oder GC und CC auszuführen.</td> + </tr> + <tr> + <td><code>about:mozilla</code></td> + <td>Diese Sonderseite zeigt eine Nachricht aus dem "The Book of Mozilla".</td> + </tr> + <tr> + <td><code>about:networking</code></td> + <td>Zeigt Netzwerk-Informationen an.</td> + </tr> + <tr> + <td><code>about:newtab</code></td> + <td>Öffnet die Startseite für einen neuen Tab.</td> + </tr> + <tr> + <td><code>about:permissions</code></td> + <td> + <div class="warning"> + <p>Wurde mit Firefox 45 entfernt. ({{bug(933917)}})</p> + </div> + + <p>Bietet eine Möglichkeit, Berechtigungen anzuzeigen und verwalten zu lassen.</p> + </td> + </tr> + <tr> + <td><code>about:plugins</code></td> + <td>Zeigt Informationen zu installierten Plugins an.</td> + </tr> + <tr> + <td><code>about:preferences</code></td> + <td>Öffnet die Einstellungen zu Firefox (auch erreichbar über das Firefox-Menü > <em>Optionen</em>)</td> + </tr> + <tr> + <td><code>about:privatebrowsing</code></td> + <td>Öffnet die Startseite, die beim Öffnen eines privaten Tabs angezeigt wird.</td> + </tr> + <tr> + <td><code>about:profiles</code></td> + <td>Zeigt und verwaltet Firefox-Profile.</td> + </tr> + <tr> + <td><code>about:rights</code></td> + <td>Zeigt rechtliche Informationen an.</td> + </tr> + <tr> + <td><code>about:robots</code></td> + <td>Diese Sonderseite zeigt Informationen zu Robots an.</td> + </tr> + <tr> + <td><code>about:serviceworkers</code></td> + <td>Zeigt aktuell laufende Service Workers an.</td> + </tr> + <tr> + <td><code>about:sessionrestore</code></td> + <td>Öffnet die Sitzungswiederherstellungsseite (wird nach einem Absturz angezeigt).</td> + </tr> + <tr> + <td><code>about:support</code></td> + <td>Öffnet die Fehlerbehebungsseite (auch erreichbar über das Firefox-Menü > <em>? (Fragezeichen)</em> > <em>Informationen zur Fehlerbehebung</em>)</td> + </tr> + <tr> + <td><code>about:sync-log</code></td> + <td>Zeigt ein Synchronisations-Protokoll bezogen auf die <a href="https://www.mozilla.org/en-US/firefox/sync/">Sync</a>-Funktion an.</td> + </tr> + <tr> + <td><code>about:sync-progress</code></td> + <td>Zeigt die Seite, die nach der Einrichtung der <a href="https://www.mozilla.org/en-US/firefox/sync/">Sync</a>-Funktion aufgerufen wird.</td> + </tr> + <tr> + <td><code>about:sync-tabs</code></td> + <td>Zeigt synchronisierbare Tabs an (für die <a href="https://www.mozilla.org/en-US/firefox/sync/">Sync</a>-Funktion).</td> + </tr> + <tr> + <td><code>about:telemetry</code></td> + <td>Zeigt die von Firefox gesammelten und an Mozilla gesendeten telemetrischen Daten an (nur wenn der Nutzer Telemetrie aktiviert hat).</td> + </tr> + <tr> + <td><code>about:webrtc</code></td> + <td>Zeigt Informationen zur Verwendung von WebRTC an.</td> + </tr> + <tr> + <td><code>about:welcomeback</code></td> + <td>Zeigt die Seite, die nach einer Zurücksetzung aufgerufen wird.</td> + </tr> + </tbody> +</table> + +<p>Diese URLs wurden in {{source("docshell/base/nsAboutRedirector.cpp")}} innerhalb des <code>kRedirMap</code>-Arrays definiert. Der Array zeigt die meisten der URLs, wie <code>config</code> in URLs im <code>chrome:</code>-Pseudo-Protokoll, wie <code>chrome://global/content/config.xul an</code>. Der Ort der about:-Informationen wurde aus {{source("docshell/build/nsDocShellModule.cpp")}} kopiert..</p> diff --git a/files/de/mozilla/firefox/updating_add-ons_for_firefox_5/index.html b/files/de/mozilla/firefox/updating_add-ons_for_firefox_5/index.html new file mode 100644 index 0000000000..f57ae8a1fc --- /dev/null +++ b/files/de/mozilla/firefox/updating_add-ons_for_firefox_5/index.html @@ -0,0 +1,69 @@ +--- +title: Updating add-ons for Firefox 5 +slug: Mozilla/Firefox/Updating_add-ons_for_Firefox_5 +translation_of: Mozilla/Firefox/Releases/5/Updating_add-ons +--- +<div>{{FirefoxSidebar}}</div><p>This article provides an overview of the changes you may need to make to your add-ons in order for them to work properly in Firefox 5. You can find a complete list of developer-related changes in Firefox 5 in <a href="/en/Firefox_5_for_developers" title="en/Firefox 5 for developers">Firefox 5 for developers</a>.</p> + +<h2 id="Do_you_need_to_do_anything_at_all">Do you need to do anything at all?</h2> + +<p>If your add-on is distributed on <a class="external" href="http://addons.mozilla.org" title="http://addons.mozilla.org/">addons.mozilla.org</a> (AMO), it's been checked by an automated compatibility verification tool. Add-ons that don't use APIs that changed in Firefox 5, and have no binary components (which <a href="/En/Developer_Guide/Interface_Compatibility#Binary_Interfaces" title="En/Developer Guide/Interface Compatibility#Binary Interfaces">need to be recompiled for every major Firefox release</a>), have automatically been updated on AMO to indicate that they work in Firefox 5.</p> + +<p>So you should start by visiting AMO and looking to see if your add-on needs any work done at all.</p> + +<div class="note"><strong>Note:</strong> You should still test your add-on on Firefox 5, even if it's been automatically upgraded. There are edge cases that may not be automatically detected.</div> + +<p>Once you've confirmed that you need to make changes, come on back to this page and read on.</p> + +<h2 id="User_interface_related_changes">User interface related changes</h2> + +<p>Due to the short development cycle (even for our rapid release cycle; Firefox 5 was on an extra-short schedule for timing reasons), there are very few UI related changes in Firefox 5.</p> + +<h3 id="Determining_the_UI_language">Determining the UI language</h3> + +<p>In the past, the {{ domxref("window.navigator.language") }} DOM property reflected the language of Firefox's user interface. This is no longer the case; instead, it reflects the value of the <code>Accept-Language</code> header for the current document. If you need to detect the UI language, you should instead look at the value of the <code>general.useragent.locale</code> preference.</p> + +<h2 id="DOM_changes">DOM changes</h2> + +<p>The behaviors of {{ domxref("window.setTimeout()") }} and {{ domxref("window.setInterval()") }} have changed; the minimum allowed time has changed, and <a href="/En/Window.setTimeout#Minimum_delay_and_timeout_nesting" title="En/Window.setTimeout#Minimum delay and timeout nesting">varies depending on the situation</a>. In addition, timeouts and intervals are clamped to one per second in inactive tabs (that is, tabs the user isn't currently looking at).</p> + +<h2 id="JavaScript_changes">JavaScript changes</h2> + +<p>The following keywords are now reserved in JavaScript, even when you're not in <a href="/en/JavaScript/Strict_mode" title="en/JavaScript/Strict mode">strict mode</a>:</p> + +<ul> + <li><code>class</code></li> + <li><code>enum</code></li> + <li><code>export</code></li> + <li><code>extends</code></li> + <li><code>import</code></li> + <li><code>super</code></li> +</ul> + +<p>Don't use those keywords anywhere in your code, even as object property names.</p> + +<div class="note"><strong>Note:</strong> This is one of those things that AMO's automatically upgrade tool may not always catch, so check your code for these if your add-on was automatically upgraded but is still not working properly.</div> + +<h2 id="Interface_changes">Interface changes</h2> + +<p>Instantiating certain services, including the {{ interface("nsICertOverrideService") }}, at startup can make Firefox unusable ({{ bug(650858) }}. This happens only if you try to instantiate a service before the <code>load</code> event is fired.</p> + +<p>To fix this, simply move your instantiation of these services into your <code>load</code> event handler:</p> + +<pre class="brush: js">var MyObject = { + comp : null, + init: function() { + this.comp = Components.classes[...].getService(...); + }, + ... +} +window.addEventListener("load", function() { MyObject.init(); }, false); +</pre> + +<p>An even better solution, of course, is to follow <a href="/en/Extensions/Performance_best_practices_in_extensions" title="en/Extensions/Performance best practices in extensions">performance best practices</a> and to not instantiate services until you need to use them.</p> + +<h2 id="See_also">See also</h2> + +<ul> + <li><a href="/en/Firefox_5_for_developers" title="en/Firefox 5 for developers">Firefox 5 for developers</a></li> +</ul> |