From 4b1a9203c547c019fc5398082ae19a3f3d4c3efe Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:41:15 -0500 Subject: initial commit --- .../mozilla/firefox/developer_edition/index.html | 57 ++++ .../zur\303\274ckkehren/index.html" | 25 ++ files/de/mozilla/firefox/headless-mode/index.html | 237 ++++++++++++++++ files/de/mozilla/firefox/index.html | 60 ++++ .../firefox/multiprocess_firefox/index.html | 80 ++++++ .../technical_overview/index.html | 164 +++++++++++ .../web_content_compatibility/index.html | 32 +++ .../firefox/nutzung_in_unternehmen/index.html | 142 ++++++++++ files/de/mozilla/firefox/privacy/index.html | 9 + .../firefox/privacy/tracking_protection/index.html | 88 ++++++ files/de/mozilla/firefox/releases/16/index.html | 104 +++++++ files/de/mozilla/firefox/releases/27/index.html | 56 ++++ files/de/mozilla/firefox/releases/28/index.html | 116 ++++++++ files/de/mozilla/firefox/releases/3.6/index.html | 301 +++++++++++++++++++++ files/de/mozilla/firefox/releases/34/index.html | 107 ++++++++ files/de/mozilla/firefox/releases/47/index.html | 174 ++++++++++++ files/de/mozilla/firefox/releases/5/index.html | 169 ++++++++++++ files/de/mozilla/firefox/releases/56/index.html | 122 +++++++++ files/de/mozilla/firefox/releases/57/index.html | 99 +++++++ files/de/mozilla/firefox/releases/58/index.html | 186 +++++++++++++ files/de/mozilla/firefox/releases/60/index.html | 146 ++++++++++ files/de/mozilla/firefox/releases/68/index.html | 162 +++++++++++ files/de/mozilla/firefox/releases/index.html | 12 + .../mozilla/firefox/the_about_protocol/index.html | 190 +++++++++++++ .../updating_add-ons_for_firefox_5/index.html | 69 +++++ 25 files changed, 2907 insertions(+) create mode 100644 files/de/mozilla/firefox/developer_edition/index.html create mode 100644 "files/de/mozilla/firefox/developer_edition/zur\303\274ckkehren/index.html" create mode 100644 files/de/mozilla/firefox/headless-mode/index.html create mode 100644 files/de/mozilla/firefox/index.html create mode 100644 files/de/mozilla/firefox/multiprocess_firefox/index.html create mode 100644 files/de/mozilla/firefox/multiprocess_firefox/technical_overview/index.html create mode 100644 files/de/mozilla/firefox/multiprocess_firefox/web_content_compatibility/index.html create mode 100644 files/de/mozilla/firefox/nutzung_in_unternehmen/index.html create mode 100644 files/de/mozilla/firefox/privacy/index.html create mode 100644 files/de/mozilla/firefox/privacy/tracking_protection/index.html create mode 100644 files/de/mozilla/firefox/releases/16/index.html create mode 100644 files/de/mozilla/firefox/releases/27/index.html create mode 100644 files/de/mozilla/firefox/releases/28/index.html create mode 100644 files/de/mozilla/firefox/releases/3.6/index.html create mode 100644 files/de/mozilla/firefox/releases/34/index.html create mode 100644 files/de/mozilla/firefox/releases/47/index.html create mode 100644 files/de/mozilla/firefox/releases/5/index.html create mode 100644 files/de/mozilla/firefox/releases/56/index.html create mode 100644 files/de/mozilla/firefox/releases/57/index.html create mode 100644 files/de/mozilla/firefox/releases/58/index.html create mode 100644 files/de/mozilla/firefox/releases/60/index.html create mode 100644 files/de/mozilla/firefox/releases/68/index.html create mode 100644 files/de/mozilla/firefox/releases/index.html create mode 100644 files/de/mozilla/firefox/the_about_protocol/index.html create mode 100644 files/de/mozilla/firefox/updating_add-ons_for_firefox_5/index.html (limited to 'files/de/mozilla/firefox') 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 +--- +
{{FirefoxSidebar}}

+ +

Eine Version von Firefox, maßgeschneidert für Webentwickler.

+ +

Firefox Developer Edition herunterladen

+ +
+
+
+

Die neuesten Firefox-Features

+ +

Firefox Developer Edition ersetzt den Aurora-Kanal im Firefox Release-Prozess. Wie bei Aurora werden Features alle sechs Wochen in die Developer Edition einfließen, nachdem sie in den Nightly-Builds stabilisiert wurden.

+ +

Indem Sie die Developer Edition nutzen, erhalten Sie Zugriff auf Tools und Plattform-Features mindestens 12 Wochen, bevor sie den Firefox Release-Kanal erreichen.

+ +

Finden Sie heraus, was neu in der Developer Edition ist.

+
+ +
+

Experimentelle Entwickler-Tools

+ +

Wir binden experimentelle Tools ein, die noch nicht für eine allgemeine Veröffentlichung bereit sind.

+ +

Zum Beispiel enthält die Developer Edition den Firefox Tools-Adapter, mit dem Sie die Firefox Tools für Webentwickler mit anderen Browsern verbinden können, wie Chrome auf Android und Safari auf iOS.

+
+
+ +
+
+

Ein unabhängiges Profil

+ +

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.

+
+ +
+

Für Webentwickler eingestellt

+ +

Wir haben die Standard-Einstellungswerte für Webentwickler zugeschnitten. Zum Beispiel sind Chrome- und Remote-Debugging standardmäßig aktiviert.

+
+
+ +
+
+

Ein eigenständiges Theme

+ +

Dies beinhaltet schnelleren Zugriff auf die Entwicklertools.

+
+ +
 
+
+ +

 

diff --git "a/files/de/mozilla/firefox/developer_edition/zur\303\274ckkehren/index.html" "b/files/de/mozilla/firefox/developer_edition/zur\303\274ckkehren/index.html" new file mode 100644 index 0000000000..7e5b838c6c --- /dev/null +++ "b/files/de/mozilla/firefox/developer_edition/zur\303\274ckkehren/index.html" @@ -0,0 +1,25 @@ +--- +title: Zurückkehren +slug: Mozilla/Firefox/Developer_Edition/Zurückkehren +translation_of: Mozilla/Firefox/Developer_Edition/Reverting +--- +
{{FirefoxSidebar}}

Vom Developer Edition Theme zurück wechseln

+ +


+ 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.

+ +

{{EmbedYouTube("OvJwofTjsNg")}}

+ +

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.

+ +

Zurückkehren zu Firefox Aurora

+ +


+ 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:

+ +
    +
  1. Ö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.
  2. +
  3. 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.
  4. +
+ +

{{EmbedYouTube("0Ofq-vlw8Qw")}}

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 +--- +
{{FirefoxSidebar}}
+ +

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.

+ +

Den Headless-Mode verwenden

+ +

Dieser Bereich bietet eine grunsätzliche Anleitung wie man den Headless-Mode verwendet.

+ +

Grundsätzliche Verwendung

+ +

Auf der Komandozeile kannst du Firefox im Headless-Mode starten indem du das -headless Flag anhängst. Zum Beispiel:

+ +
/path/to/firefox -headless
+ +

Screenshots aufnehmen

+ +

Seit Firefox 57 ermöglicht es das -screenshot Flag auf Webseiten im Headless-Mode Screenshots aufzunehmen. Grundsätzlich sieht das dann so aus:

+ +
/path/to/firefox -headless -screenshot https://developer.mozilla.org/
+ +

Das erzeugt einen Screenshot in voller Höhe von https://developer.mozilla.com in das aktuelle Verzeichnis mit dem Dateinamen screenshot.png, mit einer Viewport-Breite von 800px.

+ +

Beachte, dass du -headless  weg lassen kannst, wenn du -screenshot angibst— es ist implizit enthalten.

+ +
/path/to/firefox -screenshot https://developer.mozilla.org/
+ +

Um die Default-Werte, die oben angegeben sind, zu überschreiben,kannst du folgende Flags/Features verwenden:

+ + + +

Zum Beispiel erzeugt der folgende Befehl einen Screenshot von https://developer.mozilla.com im aktuellen Verzeichnis mit Dateinamen test.jpg, mit einer Breite von 800px und einer Höhe von 1000px:

+ +
/path/to/firefox -screenshot test.jpg https://developer.mozilla.org/ --window-size=480,1000
+ +

Browser support

+ +

Headless Firefox works on Fx55+ on Linux, and 56+ on Windows/Mac.

+ +

Automated testing with headless mode

+ +

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.

+ +

Selenium in Node.js

+ +

Here we'll create a Selenium test using Node.js and the selenium-webdriver 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 Setting up Selenium in Node guide first, then come back.

+ +

First, of all, make sure you've got Node installed on your system, and the selenium-webdriver package installed, then create a new file called selenium-test.js and follow the steps below to populate it with test code.

+ +
+

Note: Alternatively, you could clone our headless-examples repo; this also includes a package file so you can just use npm install to install necessary dependencies.

+
+ +
    +
  1. +

    Let's add some code. Inside this file, start by importing the main selenium-webdriver module, and the firefox submodule:

    + +
    var webdriver = require('selenium-webdriver'),
    +    By = webdriver.By,
    +    until = webdriver.until;
    +
    +var firefox = require('selenium-webdriver/firefox');
    +
  2. +
  3. +

    Next, we will create a new binary object representing Firefox Nightly, and add the -headless argument to it so that it will be run in headless mode:

    + +
    var binary = new firefox.Binary(firefox.Channel.NIGHTLY);
    +binary.addArguments("-headless");
    +
  4. +
  5. +

    Now let's create a new driver instance for Firefox, and use setFirefoxOptions() 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):

    + +
    var driver = new webdriver.Builder()
    +    .forBrowser('firefox')
    +    .setFirefoxOptions(new firefox.Options().setBinary(binary))
    +    .build();
    +
  6. +
  7. +

    Finally, add the following code, which performs a simple test on the Google search homepage:

    + +
    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();
    +
  8. +
  9. +

    Finally, run your test with following command:

    + +
    node selenium-test
    +
  10. +
+ +

That's it! After a few seconds, you should see the message "Test passed" returned in the console.

+ +

Headless Firefox in Node.js with selenium-webdriver by Myk Melez contains additional useful tips and tricks for running Node.js Selenium tests with headless mode.

+ +

Selenium in Java

+ +
+

Note: Thanks a lot to nicholasdipiazza for writing these instructions!

+
+ +

This guide assumes that you already have Geckodriver on your machine, as explained in our Setting up Selenium in Node guide, and that you have an IDE set up that supports Gradle projects.

+ +
    +
  1. +

    Download our headlessfirefox-gradle.zip archive (see the source here), extract it, and import the headlessfirefox folder into your IDE as a gradle project.

    +
  2. +
  3. +

    Edit the build.gradle file to set selenium to a later version if needed. At the time of writing, we used 3.5.3.

    + +
    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'
    +}
    +
  4. +
  5. +

    Edit the webdriver.gecko.driver property in the HeadlessFirefoxSeleniumExample.java file to equal the path where you installed geckodriver (see line 15 below).

    + +
    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();
    +   }
    + }
    +}
    +
  6. +
  7. +

    Run the java class and you should see the HTML content of this page printed in your console/terminal.

    +
  8. +
+ +

Other testing solutions

+ + + +

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.

+ +

Troubleshooting and further help

+ +

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.

+ + + +

If you want to ask the engineers a question, the best place to go is the #headless channel on Mozilla IRC. If you are pretty sure you've found a bug, file it on Mozilla Bugzilla.

+ +

See also

+ + 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 +--- +
{{FirefoxSidebar}}
+ +

Firefox 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.

+ +

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.

+ +
+

Lernen Sie, wie man Add-ons für Firefox erstellt, wie man Firefox selbst entwickelt und wie die Kernelemente von Firefox und seine Unterprojekte funktionieren.

+
+ + + +

Firefox Entwicklungskanäle

+ +

Firefox ist verfügbar in vier Kanälen.

+ +

Firefox Nightly

+ +

Jede Nacht arbeiten wir von der Mozilla Zentrale 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.

+ +

Firefox Nightly herunterladen

+ +

Firefox Developer Edition

+ +

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.

+ +

Mehr zur Developer Edition von Firefox erfahren.

+ +

Firefox für Entwickler herunterladen

+ +

Firefox Beta

+ +

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.

+ +

Firefox Beta herunterladen

+ +

Firefox

+ +

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.

+ +

Firefox herunterladen

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 +--- +
{{FirefoxSidebar}}

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).

+ +

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).

+ +

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.

+ +

Anstatt direkt auf Content zuzugreifen, muss das chrome JavaScript den message manager nutzen, um auf Content zuzugreifen. Um den Übergang zu erleichtern, haben wir Cross Process Object Wrappers implementiert und einige Kompabilitäts-Shims für Add-On-Entwickler zur Verfügung gestellt. Falls du ein Add-On-Entwickler bist und dich fragst, ob du davon betroffen bist, siehe auch den Guide zur Arbeit mit dem Multiprozess-Firefox.

+ +

Multiprozess-Firefox ist momentan in der Developer Edition standardmäßig aktiviert.

+ +
+
+
+
+
Technische Übersicht
+
Ein sehr abstrakter Überbllick über die Implementierung des Multiprozess-Firefox.
+
Web Content Kompatibilitätsanleitung
+
Leitlinien und details zu potentiellen Web-Seiten-Kompatibilitätsproblemen, die durch den Übergang entstehen könnten. Tip: Es gibt nicht sehr viele!
+
Glossar
+
Ein Nachschlagewerk für den Jargon, der in Multiprozess-Firefox benutzt wird.
+
Message manager
+
Vollständiger Guide zu den Objekten, die für die Kommunikation zwischen Chrome (Benutzeroberfläche) und Content (Webseiten Code) benutzt werden.
+
SDK basierte Add-ons
+
Wie Add-ons, die mit dem Add-on SDK entwickelt wurden, migriert werden können.
+
Welche URIs laden wo
+
Eine schnelle Einführung darüber, welche URIs (chrome:, about:, file:, resource:), in welchem prozess laden.
+
+
+ +
+
+
Motivation
+
Die Gründe, wieso wir den Multiprozess-Firefox implementieren: Performanz, Sicherheit und Stabilität.
+
Add-on migrations Anleitung
+
Wenn du ein Add-on-Entwickler bist, finde heraus, ob du betroffen bist und wie du deinen Code aktuallisieren kannst.
+
Cross Process Object Wrappers
+
Cross Process Object Wrappers sind eine Migrationshilfe, die Chrome Code synchronen zugriff auf Content erlaubt.
+
Debugging von Content-Prozessen
+
Wie Code, der im Content-Prozess läuft (einschließlich Frame- und Prozessskripte), debugt werden kann.
+
Tab auswahl in Multiprozess-Firefox
+
Wie Tab-Wechsel funktioniert in Multiprozess-Firefox.
+
+
+
+ +
+
+
+
+
Einschränkungen von Chrome-Skripten
+
Praktiken, die in Chrome-Code nicht mehr funktionieren und wie man dies behebt.
+
+
+ +
+
+
Einschränkungen von Frame-Skripten
+
Praktiken, die innerhalb von Frame-Skripten nicht funktionieren werden und was stattdessen zutun ist.
+
+
+
+ +
+

Kontaktiere uns

+ +

Finde mehr über das Projekt heraus, mach mit oder frag uns etwas.

+ + 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 +--- +
{{FirefoxSidebar}}
+

Diese Seite ist ein bearbeiteter Auszug aus Bill McCloskey's Blogbeitrag Multiprozess Firefox:(engl) http://billmccloskey.wordpress.com/2013/12/05/multiprocess-firefox/

+
+ +

Auf einer sehr hohen Ebene arbeitet Multiprozess Firefox wie folgt. Der Prozess, der beginnt, wenn Firefox startet wird übergeordneter Prozess genannt. Zunächst arbeitet dieses Verfahren ähnlich wie Einzelprozess. Es wird ein Firefox Fenster geöffnet, das alle wichtigen Elemente der Benutzeroberfläche für Firefox enthält ( browser.xul). Firefox hat eine flexibles GUI-Toolkit namens XUL, das GUI-Elemente deklarativ beschreibt, ähnlich wie bei Web-Content. Genau wie Web-Inhalte, hat das Firefox-UI ein Fenster-Objekt, das eine Dokumenteigenschaft hat, und dieses Dokument enthält alle XML-Elemente aus der browser.xul. Alle Firefox Menüs, Symbolleisten, Seitenleisten und Tabs sind XML-Elemente in diesem Dokument. Jedes Register enthält ein <browser> -Element um Web-Inhalte anzuzeigen.
+
+ Die erste Stelle, an der Multiprozess Firefox von Single-Prozess Firefox abweicht ist, dass jedes <browser> Element ein remote = "true" -Attribut besitzt. Wenn ein solches Browser Element in das Dokument eingefügt wird, wird ein neuer Inhaltsprozess gestartet. Dieser Prozess wird als ein untergeordneter Prozess bezeichnet. Ein IPC-Kanal erstellt, der die Eltern-Kind-Prozesse verknüpft. Anfangs zeigt das Kind about: blank, aber die Eltern können dem Kind einen Befehl senden, um an anderer Stelle zu navigieren.

+ +

Zeichnen

+ +

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 off main thread compositing (OMTC). In brief, each Firefox window is broken into a series of layers, 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.

+ +

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.

+ +

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.

+ +

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.

+ +

User input

+ +

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 <browser> 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.

+ +

With multiple processes, event handling works the same way until the <browser> 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.

+ +

Inter-process communication

+ +

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.

+ +

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 IPDL, which sort of stands for “inter-* protocol definition language”. A typical IPDL file is PNecko.ipdl. It defines a set messages and their parameters. Parameters are serialized and included in the message. To send a message M, C++ code just needs to call the method SendM. To receive the message, it implements the method RecvM.

+ +

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:

+ +
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;
+}
+
+ +

When AddHistoryEntry 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 AddHistoryEntry on its side.

+ +

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 this code. Notice the content process check followed by the SendVisitURI call and an immediate return. The message is received here; this code just calls VisitURI in the parent.

+ +

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.

+ +

Frame scripts

+ +

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 the message manager 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 <browser> element. A message manager can be used to load JS code into the child process and to exchange messages with it.

+ +

As a simple example, imagine that we want to be informed every time a load 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:

+ +
// Get the global message manager.
+let mm = Cc["@mozilla.org/globalmessagemanager;1"].
+         getService(Ci.nsIMessageListenerManager);
+
+// Wait for load event.
+mm.addMessageListener("GotLoadEvent", function (msg) {
+  dump("Received load event: " + msg.data.url + "\n");
+});
+
+// Load code into the child process to listen for the event.
+mm.loadFrameScript("chrome://content/content-script.js", true);
+
+ +

For this to work, we also need to have a file content-script.js:

+ +
// Listen for the load event.
+addEventListener("load", function (e) {
+  // Inform the parent process.
+  let docURL = content.document.documentURI;
+  sendAsyncMessage("GotLoadEvent", {url: docURL});
+}, false);
+
+ +

This file is called a frame script. When the loadFrameScript function call runs, the code for the script is run once for each <browser> 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 true parameter to loadFrameScript). Since the script is run once per browser, it can access the browser’s window object and docshell via the content and docShell globals.

+ +

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 message manager guide.

+ +

Cross-process APIs

+ +

There are a lot of APIs in Firefox that cross between the parent and child processes. An example is the webNavigation property of XUL <browser> elements. The webNavigation property is an object that provides methods like loadURI, goBack, and goForward. 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.

+ +

The webNavigation 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 <browser> and <tabbrowser>. The <browser> customizations reside in browser.xml. Here is how browser.webNavigation is defined:

+ +
<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>
+
+ +

This code is invoked whenever JavaScript code in Firefox accesses browser.webNavigation, where browser is some <browser> element. It checks if the result has already been cached in the browser._webNavigation field. If it hasn’t been cached, then it fetches the navigation object based off the browser’s docshell. 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 webNavigation accessor runs in the parent process, this.docShell above will just return null. As a consequence, this code will fail completely.

+ +

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 <browser> elements. It is called remote-browser.xml, and it extends the existing browser.xml binding.

+ +

The remote-browser.xml binding returns a JavaScript shim object whenever anyone uses browser.webNavigation or other similar objects. The shim object is implemented in its own JavaScript module. It uses the message manager to send messages like "WebNavigation:LoadURI" to a content script loaded by remote-browser.xml. The content script performs the actual action.

+ +

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.

+ +

Cross-process object wrappers

+ +

The message manager API does not allow the parent process to call sendSyncMessage; 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 sendAsyncMessage 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.

+ +

These objects are called cross-process object wrappers, frequently abbreviated to CPOWs. They’re created using the message manager. Consider this example content script:

+ +
addEventListener("load", function (e) {
+  let doc = content.document;
+  sendAsyncMessage("GotLoadEvent", {}, {document: doc});
+}, false);
+
+ +

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 sendAsyncMessage 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:

+ +
let mm = Cc["@mozilla.org/globalmessagemanager;1"].
+         getService(Ci.nsIMessageListenerManager);
+
+mm.addMessageListener("GotLoadEvent", function (msg) {
+  let uri = msg.objects.document.documentURI;
+  dump("Received load event: " + uri + "\n");
+});
+mm.loadFrameScript("chrome://content/content-script.js", true);
+
+ +

It’s important to realize that we’re send object references. The msg.objects.document object is only a wrapper. The access to its documentURI 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.

+ +

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.

+ +

Another problem with CPOWs is that they violate some assumptions people might have about message ordering. Consider this code:

+ +
mm.addMessageListener("GotLoadEvent", function (msg) {
+  mm.sendAsyncMessage("ChangeDocumentURI", {newURI: "hello.com"});
+  let uri = msg.objects.document.documentURI;
+  dump("Received load event: " + uri + "\n");
+});
+
+ +

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 uri to come back as "hello.com". 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 documentURI property will be processed before the "ChangeDocumentURI" message, in which case uri will have some other value.

+ +

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.

+ +

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.

+ +

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.

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 +--- +
{{FirefoxSidebar}}

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.

+ +

Events

+ +

Here you'll find information about events whose behaviors have changed due to multiprocess Firefox's implementation.

+ +

No bubbling of events from <option> to <select>

+ +

Historically, Firefox has allowed keyboard and mouse events to bubble up from the <option> 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 <select> element is displayed as a drop-down list. This behavior is unchanged if the <select> is presented inline and it has either the multiple attribute defined or a size attribute set to more than 1.

+ +

Rather than watching <option> elements for events, you should watch for {event("change")}} events on {{HTMLElement("select")}}. See {{bug(1090602)}} for details.

+ +

See also

+ + 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 +--- +
{{FirefoxSidebar}}
+ +

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 enterprise@mozilla.org.

+ +

Die richtige Variante

+ +

RR (Rapid Release)

+ +

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.

+ +

Die geplanten Veröffentlichungen finden Sie in der Spalte "release date" in der  Future branch dates tabelle in der Mozilla wiki (Englisch).

+ +

ESR (Extended Support Release)

+ +

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.

+ +

Die ESR-Veröffentlichungen waren bisher die Versionen 10, 17, 24, und 31. 

+ +

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.

+ +

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.

+ +

Installation

+ +
    +
  1. Den kompletten, weiterverteilbaren Installer bekommen Sie von  http://www.mozilla.org/firefox/all/ (RR) oder https://www.mozilla.org/firefox/organizations/all.html (ESR).
  2. +
  3. Installieren Sie ihre Version, in dem Sie die Softwareverteilungsmethode ihrer Wahl nutzen. Die Kommand-Zeile für eine stille Installation ist -ms
  4. +
  5. 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 Installer Command Line Arguments.
  6. +
+ +

Konfiguration

+ +
    +
  1. Finden Sie den Firefox Programmverzeichnis in dem Firefox' ausführende Datei liegt. In Windows7x64 ist er meist C:\Program Files (x86)\Mozilla Firefox; in OSX 10.8 zumeist /Applications/Firefox.app/Contents/MacOS. Unterordner die unten genannt werden sind abhängig von diesem Pfad. 
  2. +
  3. Erstellen Sie eine Javascript Datei in defaults/pref (für gewöhlich, autoconfig.js - 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 Customizing Firefox default preference files/). +

    Die zwei Zeilen die Sie brauchen sind:

    + +
    pref("general.config.obscure_value", 0);
    +pref("general.config.filename", "mozilla.cfg");
    +
  4. +
  5. Erstellen Sie eine .cfg Datei (für gewöhlich, mozilla.cfg — es kann wirklich jeder Name sein; es muss nur zu dem passen, was in  general.config.filename 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: +
    +
    pref
    +
    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 "vom Benutzer eingestellt" angezeigt.
    +
    defaultPref
    +
    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.
    +
    lockPref
    +
    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 "blockiert". Manche Einstellungen benötigen lockPref um geändert zu werden, wie beispielsweise app.update.enabled. Es funktioniert nicht, wenn es nur mit pref geändert wird.
    +
    clearPref
    +
    kann benutzt werden um einige Einstellungen auszublenden. Dies kann nützlich sein, um einige Funktionen zu deaktivieren, die darauf basieren Versionsnummern zu vergleichen.
    +
    +
  6. +
+ +

Sehen Sie sich auch Firefox' autoconfig-Dateien ändern und Firefox' autoconfig-Dateien ändern (Fortführung) an, um mehr zu erfahren. Für tiefergehende Einstellungen, wie beispielsweise das Ausschalten bestimmter Elemente der graphischen Benutzeroberfläche, können Sie die CCK2-Extension nutzen.

+ +

Beispiel für eine config-Datei

+ +

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 Wissensdatenbank.

+ +
// 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);
+
+// Disable all data upload (Telemetry and FHR)
+lockPref("datareporting.policy.dataSubmissionEnabled", false);
+
+// Deaktiviert den 'crash reporter'
+lockPref("toolkit.crashreporter.enabled", false);
+Components.classes["@mozilla.org/toolkit/crash-reporter;1"].getService(Components.interfaces.nsICrashReporter).submitReports = false; 
+
+ +

Packaging Extensions

+ +
    +
  1. Installieren Sie die Erweiterung auf einem Rechner zu Testzwecken. Sehen Sie in about:support unter Extensions nach um die GUID zu fnden. 
  2. +
  3. Sehen Sie im Profilverzeichnis (z.B.: %APPDATA%\Mozilla\Firefox\Profiles auf Win7; um diesen zu finden, klicken Sie auf Ordner anzeigen 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.
  4. +
  5. Entscheiden Sie wie Sie sie nutzen wollen. Die einfachste Methode ist, die .xpi Datei oder den Ordner in Programmverzeichnis/distribution/extensions 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 Integrating add-ons into Firefox/ (Englisch) an, um alternative Methoden zu lernen.
  6. +
+ +

Beachten Sie auch: Add-on scopes redux/ (Englisch)

+ +

Änderungen mit der Zeit

+ +

Änderungen in der Verzeichnisstruktur

+ +

Die Verzeichnisstruktur des Programmpfades wurde zweimal geändert. Sollten Sie einer Anleitung für eine Firefox-Version vor Version 21 folgen, dann müssen Sie vermutlich diese Änderungen beachten:

+ + + +

Die Einstellungen preferences general.config.filename und general.config.obscure_value zur AutoConfiguration können immer noch in defaults/pref vorgenommen werden, jedoch sollte der Dateiname mit dem Buchstaben 'a' beginnen, wie zum Beispiel autoconfig.js.

+ +

Sollte es in defaults/pref in einer zuünftigen Version von Firefox nicht mehr funktionieren, probieren Sie browser/defaults/preferences als den wahrscheinlichsten Platz für die Datei.

+ +

Änderungen in ESR 24.x mit Adobe PDF Files

+ +

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, selbst wenn ein externer Viewer bereits eingestellt wurde. Der Name des Dateitypes wurde von Adobe Acrobat Document zu Portable Document Format (PDF) geändert, was die Lokalisierung durch die Tools-, Options- oder Applications-Tabs erschwert. Um dies abzustellen, ändern Sie pdfjs.disabled zu true wie auch im oben genannten Beispiel.

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 +--- +
{{FirefoxSidebar}}

{{ ListSubpages () }}

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 +--- +
{{FirefoxSidebar}}
+ +

Was ist Verfolgungsschutz?

+ +

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.

+ +

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.

+ +

Wenn Firefox Inhalte blockiert, wird die folgende Nachricht ausgegeben:

+ +
Die Ressource auf "https://some/url" wurde blockiert, weil das Blockieren von Seitenelementen aktiviert ist.
+ +
+

Die Ausgaben auf der Konsole in Firefox für Android können über den Remote Debugger angezeigt werden.

+
+ +

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.

+ +

Wie entscheidet Firefox was blockiert wird?

+ +

Inhalte werden auf Basis der Domain blockiert, von der sie geladen werden.

+ +

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

+ +

Seiten die User tracken sind hauptsächlich externe Werbe- und Analyseseiten

+ +

Was bedeutet das für deine Webseite?

+ +

Zuerst einmal bedeutet das offensichtlich, dass wenn der Trackingschutz aktiviert ist:

+ + + +

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.

+ +

Zum Beispiel solltest du Google Analytics nicht so verwenden:

+ +
<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>
+ +

Stattdessen solltest  du den Fall berücksichtigen, dass Google Analytics fehlt, in dem du überprüftst ob das ga Objekt initialisiert wurde.

+ +
<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 && ga.loaded) {
+         ga('send', 'event', 'outbound', 'click', url, {
+         'transport': 'beacon',
+         'hitCallback': function() { document.location = url; }
+       });
+    } else {
+        document.location = url;
+    }
+}
+</script>
+
+ +

Mehr Informationen zu dieser Technik ist verfügbar auf Google Analytics, Privacy, and Event Tracking.

+ +
+

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.

+
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 +--- +
{{FirefoxSidebar}}

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.

+ +

Möchten Sie helfen Firefox 16 zu dokumentieren? Schauen Sie auf die Liste von Bugs, über die geschrieben werden sollte und schreibe Sie dazu.

+ +

Änderungen für Web-Entwickler

+ +

HTML

+ + + +

CSS

+ + + +

DOM

+ + + +

JavaScript

+ + + +

WebGL

+ +

SVG

+ +

MathML

+ + + +

Network

+ +

Developer tools

+ + + +

Changes for Open Web App developers

+ + + +

Changes for add-on and Mozilla developers

+ +

Interface changes

+ +

{{interface("nsIPrivateDOMEvent")}} has been merged into {{interface("nsIDOMEvent")}}. ({{bug("761613")}})

+ +

New interfaces

+ +

Removed interfaces

+ +

The following interfaces have been removed.

+ +

See also

+ +
{{Firefox_for_developers('15')}}
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 +--- +
{{FirefoxSidebar}}
Diese Seite ist noch nicht fertig. +
Firefox 27 ist noch keine vollständige Version. Neue Features werden demnächst hinzugefügt.
+
+ +

Möchten Sie helfen Firefox 27 zu dokumentieren? Schauen Sie auf die Liste von Bugs, über die geschrieben werden sollte und schreibe Sie dazu.

+ +

Änderungen für Web-Entwickler

+ +

HTML

+ +

Keine Änderung.

+ +

CSS

+ + + +

JavaScript

+ +

EcmaScript 6 (Harmony) Implementierung wird fortgeführt!

+ + + +

Interfaces/APIs/DOM

+ +

Keine Änderung.

+ +

MathML

+ +

Keine Änderung.

+ +

SVG

+ +

Keine Änderung.

+ +

Veränderungen für AddOn- und Mozilla-Entwickler

+ + + +

Ältere Versionen

+ +

{{Firefox_for_developers('26')}}

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 +--- +
{{FirefoxSidebar}}
+ +

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.

+ +

Änderungen für Web-Entwickler

+ +

Developer Tools

+ + + +

Mehr Einzelheiten in diesem Beitrag.

+ +

CSS

+ + + +

HTML

+ + + +

JavaScript

+ + + +

Interfaces/APIs/DOM

+ + + +

MathML

+ + + +

SVG

+ +

No change.

+ +

Audio/Video

+ + + +

Network

+ + + +

Changes for addon and Mozilla developers

+ + + +

Security

+ + + +

See also

+ + + +

Older versions

+ +

{{Firefox_for_developers('27')}}

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 +--- +

Firefox 3.6 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.

+ +

For web site and application developers

+ +

CSS

+ +
+
Using gradients
+
Firefox 3.6 adds support for the proposed -moz-linear-gradient and -moz-radial-gradient properties for background.
+
Multiple backgrounds
+
The background property (as well as background-color, background-image, background-position, background-repeat, and background-attachment) now supports multiple backgrounds. This lets you specify multiple backgrounds that are rendered atop one another in layers.
+
Mozilla-specific media features
+
Media features have been added for Mozilla-specific system metrics, so that media queries can be used to more safely check on the availability of features such as touch support.
+
Scaling background images
+
The background-size property from the CSS 3 Backgrounds and Borders draft is now supported under the name -moz-background-size.
+
WOFF font support
+
@font-face now supports the WOFF downloadable font file format.
+
Pointer events
+
The pointer-events property lets content specify whether or not an element may be the target of mouse pointer events.
+
+ +

Miscellaneous CSS changes

+ + + +

HTML

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

JavaScript

+ +

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

+ + + +
+
+ +

DOM

+ +
+
Web workers can now self-terminate
+
Workers now support the nsIWorkerScope.close() method, which allows them to terminate themselves.
+
Drag and drop now supports files
+
The DataTransfer object provided to drag listeners now includes a list of files that were dragged.
+
Checking to see if an element matches a specified CSS selector
+
The new element.mozMatchesSelector method lets you determine whether or not an element matches a specified CSS selector. See Bug 518003.
+
Detecting device orientation
+
Content can now detect the orientation of the device if it has a supported accelerometer, using the MozOrientation event. Firefox 3.6 supports the accelerometer in Mac laptops.
+
Detecting document width and height changes
+
The new MozScrollAreaChanged event is dispatched whenever the document's scrollWidth and/or scrollHeight properties change.
+
+ +

Miscellaneous DOM changes

+ + + +

XPath

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

For XUL and add-on developers

+ +

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

+ +

New features

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

Places

+ + + +

Storage

+ +
+
Locale-aware collation of data is now supported by the Storage API
+
Gecko 1.9.2 added several new collation methods to provide optimized collation (sorting) of results using locale-aware techniques.
+
Properties on a statement can now be enumerated
+
You can now use a for..in enumeration to enumerate all the properties on a statement.
+
mozIStorageStatement's getParameterIndex changed behavior between 3.5 and 3.6.
+
See Bug 528166 for details.
+
Asynchronously bind multiple sets of parameters and execute a statement.
+
See Bug 490085 for details. Documentation coming soon.
+
+ +

Preferences

+ + + +

Themes

+ +

See Updating themes for Firefox 3.6 for a list of changes related to themes.

+ +
+
Lightweight themes
+
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 Personas theme architecture into Firefox.
+
+ +

Miscellaneous

+ + + +

For Firefox/Gecko developers

+ +

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

+ +

Interfaces merged

+ +

The following interfaces have been combined together:

+ + + +

Interfaces removed

+ +

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

+ + + +

Interfaces moved

+ +

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

+ + + +

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

+ +

Other interface changes

+ +

The following assorted changes have been made:

+ + + +

Changes in accessibility code

+ + + +

See also

+ +
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 +--- +
{{FirefoxSidebar}}

Möchtest du helfen Firefox 34 zu dokumentieren? Schaue dir die Liste der Bugs an, über die noch geschrieben werden muss.

+ +

Änderungen für Webentwickler

+ +

Entwickler Werkzeuge

+ +

Höhepunkte:

+ + + +

All devtools bugs fixed between Firefox 33 and Firefox 34.

+ +

CSS

+ + + +

HTML

+ +

Keine Veränderungen.

+ +

JavaScript

+ + + +

Interfaces/APIs/DOM

+ + + +

MathML

+ +

Keine Veränderungen.

+ +

SVG

+ +

Keine Veränderungen.

+ +

Audio/Video

+ +

Keine Veränderungen.

+ +

Sicherheit

+ +

Keine Veränderungen.

+ +

Änderungen für Add-on und Mozilla Entwickler

+ +

Keine Veränderungen.

+ +

Ältere Versionen

+ +

{{Firefox_for_developers('33')}}

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 +--- +
{{FirefoxSidebar}}

 

+ +

To test the latest developer features of Firefox,
+ install Firefox Developer Edition
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.

+ +

Changes for Web developers

+ +

Developer Tools

+ + + +

HTML

+ +

No change.

+ +

CSS

+ + + +

JavaScript

+ + + +

Interfaces/APIs/DOM

+ +

DOM & HTML DOM

+ + + +

WebGL

+ +

No change.

+ +

IndexedDB

+ + + + + + + +

WebRTC

+ + + +

New APIs

+ +

No change.

+ +

Others

+ + + +

Audio/Video

+ + + +

HTTP

+ +

No change.

+ +

Networking

+ +

No change.

+ +

Security

+ + + +

Changes for add-on and Mozilla developers

+ +

Interfaces

+ + + +

FUEL

+ +

The FUEL JavaScript library, introduced back in Firefox 3, has been removed. This library was designed to aid in add-on development and with the introduction of the Add-on SDK and, now, by WebExtensions support, is no longer useful. ({{bug(1090880)}})

+ +

XUL

+ +

No change.

+ +

JavaScript code modules

+ +

No change.

+ +

XPCOM

+ +

No change.

+ +

Other

+ +

No change.

+ +

See also

+ + + +

Older versions

+ +

{{Firefox_for_developers(46)}}

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 +--- +
{{FirefoxSidebar}}

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.

+ +

Changes for web developers

+ +

HTML

+ + + +

Canvas improvements

+ + + +

CSS

+ +
+
CSS animations
+
Support for CSS animations has been added, using the -moz- prefix for now.
+
+ +

DOM

+ + + +

JavaScript

+ + + +

SVG

+ + + +

HTTP

+ + + +

MathML

+ + + +

Developer tools

+ + + +

Changes for Mozilla and add-on developers

+ +

For a guide to updating your add-on for Firefox 5, please see Updating add-ons for Firefox 5.

+ +
Note: Firefox 5 requires that binary components be recompiled, as do all major releases of Firefox. See Binary Interfaces for details.
+ +

Changes to JavaScript code modules

+ +

New JavaScript code modules

+ + + +

NetUtil.jsm

+ + + +

Interface changes

+ + + +

New interfaces

+ + + +

Removed interfaces

+ +

The following interfaces were implementation details that are no longer needed:

+ + + +

Debugging aids

+ + + +

JavaScript API (SpiderMonkey)

+ + + +

Build system changes

+ + + +

See also

+ +
{{Firefox_for_developers('4')}}
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 +--- +
{{FirefoxSidebar}}
+

Dieser Artikel enthält Informationen über die Änderungen in Firefox 56, die Entwickler betreffen. Firefox 56 ist die aktuelle Beta-Version von Firefox und wird am 26. September 2017 veröffentlicht werden

+ +
+

Änderungen für Web-Entwickler

+ +

Entwicklerwerkzeuge

+ +

Keine Änderungen.

+ +

HTML

+ +
    +
  • Implementiert die Label-Eigenschaft für beschreibbare Formular-Steuerelemente, zum Beispiel {{domxref("HTMLInputElement.labels")}} ({{bug(556743)}}).
  • +
  • Implementiert <link rel="preload">; siehe Preloading content with rel="preload" für mehr Details ({{bug(1222633)}}).
  • +
+ +

CSS

+ +
    +
  • Implementiert die propietären Mozilla-spezifischen Werte {{cssxref("<color>")}} -moz-win-accentcolor und -moz-win-accentcolortext (see {{bug(1344910)}}), und die propietäre Medienabfrage -moz-windows-accent-color-in-titlebar (see {{bug(1379938)}}).
  • +
+ +

SVG

+ +

Keine Änderungen.

+ +

JavaScript

+ +
    +
  • The Intl API has been enabled on Firefox for Android ({{bug(1344625)}}).
  • +
+ +

APIs

+ +

New APIs

+ +

Keine Änderungen.

+ +

DOM

+ +
    +
  • Auf Macist jetzt {{domxref("Document.hidden")}} wahr, wenn das Fenster hinter einer anderen nicht-lichtdurchlässigen Anwendung steht {{bug(1236512)}}.
  • +
  • Die Eigenschaft {{domxref("Gamepad.displayId")}} wurde implementiert ({{bug(1375816)}}).
  • +
  • Die Methode {{domxref("CanvasRenderingContext2D.drawImage()")}} wurde aktualisiert, so dass so dass die Glättung beim Downscaling erfolgt, auch wenn imageSmoothingEnabled ist false. Dies ist nicht obligatorisch wie pro Spezifikation, sondern folgt Chromes Verhalten. Siehe {{bug(1360415)}}.
  • +
  • Die Eigenschaft {{domxref("PerformanceTiming.secureConnectionStart")}} wurde implementiert ({{bug(772589)}}).
  • +
  • Firefox verwendet iso-2022-jp-2, 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)}}).
  • +
  • Das 4ms- Klemmeverhalten von {{domxref("WindowOrWorkerGlobalScope.setTimeout","setTimeout()")}} und {{domxref("WindowOrWorkerGlobalScope.setInterval","setInterval()")}} wurde aktualisiert, um besser in Einklang mit anderen Browsern, wie in Timeouts throttled to >=4ms zu sein. ({{bug(1378586)}}).
  • +
  • Der Page Visibility API's {{domxref("Document.onvisibilitychange")}} handler wurde hinzugefügt ({{bug("1333912")}}).
  • +
+ +

DOM events

+ +
    +
  • {{domxref("GlobalEventHandlers.onwheel")}} ist ab sofort verfügbar {{domxref("HTMLElement")}} — es war nicht vorher ({{bug(1370550)}}).
  • +
+ +

WebRTC

+ +
    +
  • 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")}}.
  • +
+ +

Sicherheit

+ +

Keine Änderungen.

+ +

Plugins

+ +

Keine Änderungen.

+ +

Weiteres

+ +
    +
  • Gecko kodiert nun URLs intern als punycode, um URL-Codierungsprobleme zu vermeiden (siehe {{Bug ("945240")}}, siehe auch Diskussion in {{Bug ("942074")}}).
  • +
  • Firefox unter Windows und Mac OS X kann nun im headless Modus mit der -headless-Flagge ausgeführt werden (siehe {{bug (1355150)}} und {{bug (1355147)}}).
  • +
+ +

Von der Web-Plattform entfernt

+ +

HTML

+ +
    +
  • Das {{htmlelement("isindex")}} Element wurde vom HTML parser und aus der Formularvorlage entfernt. ({{bug(1266495)}}).
  • +
  • Das {{htmlelement("applet")}} Element wurde entfernt ({{bug(1279218)}}).
  • +
+ +

APIs

+ +
    +
  • Die {{domxref("KeyframeEffectReadOnly.spacing")}} Eigenschaft wurde von dem {{SpecName('Web Animations')}} spec entfernt, und deswegen wurde es auch von Gecko entfernt ({{bug(1339690)}}).
  • +
+ +

SVG

+ +

Keine Änderungen.

+ +

Änderungen für add-on und Mozilla-Entwickler

+ +

WebExtensions

+ +

Keine Änderungen.

+ +

Siehe auch

+ + +
+ + + +

Ältere Versionen

+ +

{{Firefox_for_developers(55)}},

+
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 +--- +
{{FirefoxSidebar}}
{{draft}}
+ +

Dieser Artikel enthält Informationen über die Änderungen in Firefox 57, die Entwicklern nützlich sind. Firefox 57 ist die aktuelle Nightly-Version von Firefox und wird am 14. November 2017 veröffentlicht werden.

+ +
+

Firefox 57 = Firefox Quantum

+ +

Firefox 57 wurde Quantum genannt, weil dies der passendste Name für "Stabilität, Performance, etc." ist.

+ +

Änderungen für Web-Entwickler

+ +

Entwickler-Tools

+ +

Keine Änderungen.

+ +

HTML

+ +

Keine Änderungen.

+ +

CSS

+ +

Keine Änderungen.

+ +

SVG

+ +

Keine Änderungen.

+ +

JavaScript

+ +

Keine Änderungen.

+ +

APIs

+ +

Neue APIs

+ +

Keine Änderungen.

+ +

DOM

+ +

Keine Änderungen.

+ +

DOM events

+ +

Keine Änderungen.

+ +

WebRTC

+ +

Keine Änderungen.

+ +

Sicherheit

+ +

Keine Änderungen.

+ +

Plugins

+ +

Keine Änderungen.

+ +

Anderes

+ +

Keine Änderungen.

+ +

Von der Web-Plattform entfernt

+ +

HTML

+ +

Keine Änderungen.

+ +

APIs

+ +

Keine Änderungen.

+ +

SVG

+ +

Keine Änderungen.

+ +

Änderungen für add-on und Mozilla-Entwickler

+ +

WebExtensions

+ +

Keine Änderungen.

+ +

Siehe auch

+ + +
+ + + +

Ältere Versionen

+ +

{{Firefox_for_developers(56)}}

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 +--- +
{{FirefoxSidebar}}
+

Dieser Artikel enthält Informationen zu den Änderungen in Firefox 58, die sich auf Entwickler auswirken. Firefox 58 ist die aktuelle Beta-Version von Firefox und wird am 16. Januar 2018 ausgeliefert.

+ +
+

Änderungen für Web Entwickler

+ +

Developer Tools

+ +
    +
  • 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 Responsive Design-Modus.
  • +
  • Die Option zum Anzeigen von MDN-Dokumenten aus dem CSS-Bereich des Seiteninspektors wurde entfernt ({{bug (1382171)}}).
  • +
  • Der CSS-Formen-Textmarker wurde standardmäßig für Formen aktiviert, die über {{cssxref ("clip-path")}} ({{bug (1405339)}}) erstellt wurden.
  • +
  • Der Netzwerkmonitor verfügt jetzt über eine Schaltfläche zum Anhalten / Wiedergeben der Aufzeichnung des Netzwerkverkehrs ({{bug (1005755)}}).
  • +
  • Im Netzwerkmonitor ist die Filterschaltfläche "Flash" nicht mehr verfügbar und Flash-Anforderungen sind im Filter "Others" enthalten ({{bug (1413540)}}).
  • +
+ +

HTML

+ +

Keine Änderungen.

+ +

CSS

+ +
    +
  • Der Deskriptor {{cssxref ("@ font-face / font-display", "font-display")}} ist jetzt standardmäßig auf allen Plattformen verfügbar ({{bug (1317445)}}).
  • +
+ +

SVG

+ +

Keine Änderungen .

+ +

JavaScript

+ +
    +
  • Das Objekt {{jsxref ("Global_Objects / DateTimeFormat", "Intl.DateTimeFormat")}} unterstützt jetzt die Option hourCycle und das hc Sprachen Tag ({{bug (1386146)}}).
  • +
+ +

APIs

+ +

Neue APIs

+ +
    +
  • Die API {{domxref ("PerformanceNavigationTiming")}} wurde implementiert ({{bug (1263722)}}). +
      +
    • Gecko besitzt nun eine Pref Einstellung, die verwendet werden kann, um die Schnittstelle bei Bedarf zu deaktivieren — dom.enable_performance_navigation_timing, Standardwert ist true ({{bug(1403926)}}).
    • +
    +
  • +
+ +

DOM

+ +
    +
  • Fehler, die über Fehlerobjekte in bestimmten APIs gemeldet werden - z. B. in der error 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.
  • +
  • Die WebVR-API wurde standardmäßig unter macOS aktiviert ({{bug (1374399)}}).
  • +
  • Die Eigenschaft {{domxref ("PerformanceResourceTiming.workerStart")}} wird jetzt unterstützt ({{bug (1191943)}}).
  • +
  • Budget-basierte Timeout-Throttling-Regeln wurden implementiert - siehe Richtlinien zur Unterstützung der Performance von Hintergrundseiten für weitere Details ({{bug (1377766)}}).
  • +
+ +

DOM Events

+ +

Keine Änderungen.

+ +

Media and WebRTC

+ +
    +
  • Die vorangestellte Version von {{domxref ("HTMLMediaElement.srcObject")}} wurde entfernt. Es ist sicherzustellen, daß der Code aktualisiert wird, um das Standard-srcObject anstelle von mozSrcObject ({{bug (1183495)}}) zu verwenden.
  • +
+ +

Canvas und WebGL

+ +

Keine Änderungen.

+ +

HTTP

+ +
    +
  • frame-ancestors wird nicht mehr ignoriert in {{httpheader ("Content-Security-Policy-Report-Only")}} ({{bug (1380755)}}).
  • +
  • Firefox implementiert jetzt ein TLS-Handshake-Timeout mit einem Standardwert von 30 Sekunden. Der Timeout-Wert kann durch Bearbeiten des Parameters network.http.tls-handshake-timeout in about:config ({{bug(1393691)}}).
  • +
  • Die worker-src CSP Richtlinie wurde implementiert ({{bug(1302667)}}).
  • +
+ +

Security

+ +

Keine Änderungen.

+ +

Plugins

+ +

Keine Änderungen.

+ +

Andere

+ +

Keine Änderungen.

+ +

Webplattform Berichtigungen

+ +

HTML

+ +
    +
  • {{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)}}).
  • +
+ +

CSS

+ + + +

JavaScript

+ + + +

APIs

+ +
    +
  • Die proprietären moz-blob und moz-chunked-text Werte der {{Domxref ("XMLHttpRequest.responseType")}} - Eigenschaft wurden in Firefox 58 vollständig entfernt ({{bug (1397145)}}, {{bug (1397151)}}, {{bug (1120171)}}).
  • +
  • Die Voreinstellungen dom.abortController.enabled und dom.abortController.fetch.enabled, die die Belichtung der Abort-API-Funktionalität kontrollierten, wurden nun entfernt, da diese Funktionen jetzt standardmäßig aktiviert sind ({{bug (1402317)}}).
  • +
  • Die proprietäre Eigenschaft mozSrcObject wurde in Firefox 58 entfernt ({{bug (1183495)}}). Verwenden Sie stattdessen die standardmäßige {{domxref ("HTMLMediaElement.srcObject")}} -Eigenschaft.
  • +
+ +

SVG

+ +

Keine Änderungen.

+ +

Änderungen für Add-On und Mozilla Entwickler

+ +

WebExtensions

+ +

Keine Änderungen.

+ +

Siehe auch

+ + +
+ + + +

Ältere Versionen

+ +

{{Firefox_for_developers(57)}}

+
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 +--- +
{{FirefoxSidebar}}
{{draft}}
+ +

This article provides information about the changes in Firefox 60 that will affect developers. Firefox 60 is the current Nightly version of Firefox, and will ship on May 8, 2018.

+ +

Stylo comes to Firefox for Android in 60

+ +

Firefox's new parallel CSS engine — also known as Quantum CSS or Stylo, which was first enabled by default in Firefox 57 for desktop, has now been enabled in Firefox for Android.

+ +

Changes for web developers

+ +

Developer tools

+ + + +

HTML

+ +

Pressing the Enter key in designMode and contenteditable now inserts <div> 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 <br> elements like it used to. If you want to use the old behavior on your app, you can do it with document.execCommand(). See Differences in markup generation for more details.

+ +

CSS

+ + + +

SVG

+ +

No changes.

+ +

JavaScript

+ +

The {{jsxref("Array.prototype.values()")}} method has been added again ({{bug(1420101)}}). It was disabled due to compatibilty issues in earlier versions. Make sure your code doesn't have any custom implementation of this method.

+ +

APIs

+ +

New APIs

+ +

No changes.

+ +

DOM

+ + + +

DOM events

+ +

No changes.

+ +

Service workers

+ +

No changes.

+ +

Media and WebRTC

+ + + +

Canvas and WebGL

+ +

No changes.

+ +

CSSOM

+ +

No changes.

+ +

HTTP

+ +

No changes.

+ +

Security

+ +

No changes.

+ +

Plugins

+ +

No changes.

+ +

Other

+ +

No changes.

+ +

Removals from the web platform

+ +

HTML

+ +

No changes.

+ +

CSS

+ + + +

JavaScript

+ +

The non-standard expression closure syntax has been removed ({{bug(1426519)}}).

+ +

APIs

+ +

No changes.

+ +

SVG

+ +

No changes.

+ +

Other

+ +

No changes.

+ +

Changes for add-on and Mozilla developers

+ +

WebExtensions

+ +

No changes.

+ +

See also

+ + + +

Older versions

+ +

{{Firefox_for_developers(58)}}

+ +

 

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 +--- +

{{FirefoxSidebar}}{{Draft}}

+ +

This article provides information about the changes in Firefox 68 that will affect developers. Firefox 68 is the current Beta version of Firefox, and will ship on July 9, 2019.

+ +

Changes for web developers

+ +

Developer tools

+ + + +

Removals

+ +

HTML

+ +

No changes.

+ +

 Removals

+ +

CSS

+ + + +

Removals

+ + + +

SVG

+ +

No changes.

+ +

Removals

+ +

JavaScript

+ +

No changes.

+ +

Removals

+ +

APIs

+ +

No changes.

+ +

New APIs

+ + + +

DOM

+ + + +

DOM events

+ +

Service workers

+ +

Media, Web Audio, and WebRTC

+ + + +

Canvas and WebGL

+ +

Removals

+ + + +

Security

+ +

No changes.

+ +

Removals

+ +

Plugins

+ +

No changes.

+ +

Removals

+ +

Other

+ +

No changes.

+ +

Removals

+ +

Changes for add-on developers

+ +

API changes

+ + + +

Removals

+ +

Manifest changes

+ +

No changes.

+ +

Removals

+ +

See also

+ + + +

Older versions

+ +

{{Firefox_for_developers(67)}}

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 +--- +
{{FirefoxSidebar}}

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.

+ +
{{ListSubpages("",1,0,1)}}
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 +--- +
{{FirefoxSidebar}}
+ +
Es gibt eine Menge wichtiger Informationen über Firefox, die sich hinter dem about: URL-Protokoll verbergen. Am wichtigsten ist die URL about:config, die Einstellungen anzeigt, die sich dort betrachten und ändern lassen. Hier ist eine komplette Liste mit allen URLs  des about:-Pseudo-Protokolls::
+ +
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
about: SeiteBeschriebung
about:Zeigt die Versionsnummer, Buildinformationen, Links zu den Beitragenden, Lizenzinformationen und Einstellungen zur Build-Konfiguration an.
about:aboutZeigt einen Überblick über alle about:-Seiten an.
about:accountsZeigt Informationen zur Sync-Funktion an.
about:addonsÖffnet den Add-ons-Manager
about:app-managerÖffnet den App-Manager
about:buildconfigZeigt die für die Version von Firefox verwendete Konfiguration und Plattform an.
about:cacheZeigt Informationen zum Speicher, Speichermedium und Arbeitsspeicher an.
about:compartments +
+

Seit Firefox 26 können diese Informationen unter "Other Measurements" in about:memory gefunden werden.

+
+ +

Zeigt Informationen zu einzelnen "Compartments".

+
about:configBietet eine Möglichkeit, Einstellungen in Firefox zu untersuchen und zu ändern.
about:crashesListet alle Abstürze, die während der gesamten Lebenszeit von Firefox passierten, auf.
about:creditsListet alle Ünterstützer und Mitwirkenden des Firefox-Projektes auf.
about:customizingWechselt zur Anpassungsseite, die Anpassungen der Benutzeroberfläche von Firefox erlaubt.
about:downloadsListet alle Downloads von Firefox aus auf.
about:healthreportZeigt Leistungsinformationen von Firefox an (nur wenn der Nutzer dies aktiviert hat).
about:homeÖffnet die Startseite, die beim Öffnen eines neuen Fensters erscheint.
about:licenseZeigt Lizenzinformationen an.
about:logoZeigt das Firefox-Logo an.
about:memoryBietet eine Möglichkeit, die Speicherverwendung anzuzeigen, als Bericht zu speichern oder GC und CC auszuführen.
about:mozillaDiese Sonderseite zeigt eine Nachricht aus dem "The Book of Mozilla".
about:networkingZeigt Netzwerk-Informationen an.
about:newtabÖffnet die Startseite für einen neuen Tab.
about:permissions +
+

Wurde mit Firefox 45 entfernt. ({{bug(933917)}})

+
+ +

Bietet eine Möglichkeit, Berechtigungen anzuzeigen und verwalten zu lassen.

+
about:pluginsZeigt Informationen zu installierten Plugins an.
about:preferencesÖffnet die Einstellungen zu Firefox (auch erreichbar über das Firefox-Menü > Optionen)
about:privatebrowsingÖffnet die Startseite, die beim Öffnen eines privaten Tabs angezeigt wird.
about:profilesZeigt und verwaltet Firefox-Profile.
about:rightsZeigt rechtliche Informationen an.
about:robotsDiese Sonderseite zeigt Informationen zu Robots an.
about:serviceworkersZeigt aktuell laufende Service Workers an.
about:sessionrestoreÖffnet die Sitzungswiederherstellungsseite (wird nach einem Absturz angezeigt).
about:supportÖffnet die Fehlerbehebungsseite (auch erreichbar über das Firefox-Menü > ? (Fragezeichen) > Informationen zur Fehlerbehebung)
about:sync-logZeigt ein Synchronisations-Protokoll bezogen auf die Sync-Funktion an.
about:sync-progressZeigt die Seite, die nach der Einrichtung der Sync-Funktion aufgerufen wird.
about:sync-tabsZeigt synchronisierbare Tabs an (für die Sync-Funktion).
about:telemetryZeigt die von Firefox gesammelten und an Mozilla gesendeten telemetrischen Daten an (nur wenn der Nutzer Telemetrie aktiviert hat).
about:webrtcZeigt Informationen zur Verwendung von WebRTC an.
about:welcomebackZeigt die Seite, die nach einer Zurücksetzung aufgerufen wird.
+ +

Diese URLs wurden in {{source("docshell/base/nsAboutRedirector.cpp")}} innerhalb des kRedirMap-Arrays definiert. Der Array zeigt die meisten der URLs, wie config in URLs im chrome:-Pseudo-Protokoll, wie chrome://global/content/config.xul an.  Der Ort der about:-Informationen wurde aus {{source("docshell/build/nsDocShellModule.cpp")}} kopiert..

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 +--- +
{{FirefoxSidebar}}

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 Firefox 5 for developers.

+ +

Do you need to do anything at all?

+ +

If your add-on is distributed on addons.mozilla.org (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 need to be recompiled for every major Firefox release), have automatically been updated on AMO to indicate that they work in Firefox 5.

+ +

So you should start by visiting AMO and looking to see if your add-on needs any work done at all.

+ +
Note: 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.
+ +

Once you've confirmed that you need to make changes, come on back to this page and read on.

+ + + +

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.

+ +

Determining the UI language

+ +

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 Accept-Language header for the current document. If you need to detect the UI language, you should instead look at the value of the general.useragent.locale preference.

+ +

DOM changes

+ +

The behaviors of {{ domxref("window.setTimeout()") }} and {{ domxref("window.setInterval()") }} have changed; the minimum allowed time has changed, and varies depending on the situation. In addition, timeouts and intervals are clamped to one per second in inactive tabs (that is, tabs the user isn't currently looking at).

+ +

JavaScript changes

+ +

The following keywords are now reserved in JavaScript, even when you're not in strict mode:

+ + + +

Don't use those keywords anywhere in your code, even as object property names.

+ +
Note: 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.
+ +

Interface changes

+ +

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 load event is fired.

+ +

To fix this, simply move your instantiation of these services into your load event handler:

+ +
var MyObject = {
+  comp : null,
+  init: function() {
+    this.comp = Components.classes[...].getService(...);
+  },
+  ...
+}
+window.addEventListener("load", function() { MyObject.init(); }, false);
+
+ +

An even better solution, of course, is to follow performance best practices and to not instantiate services until you need to use them.

+ +

See also

+ + -- cgit v1.2.3-54-g00ecf